전체 글 102

ROC Curve

Precision and Recall in an anomaly detection situation reference : document : sklearn.metrics.plot_roc_curve Classification - ROC & AUC ROC Curve, devopedia Measuring Performance: AUC(AUROC) ROC 커브는 False Positive Rate(FPR)을 기준으로 True Positive Rate(TPR)의 변화도를 표현한다. 아래 첫번째 분포곡선에서 임계값(beta)이 이동함에 따라 TPR과 FPR이 변화한다는 것을 예상해볼 수 있다. 임계값이 우측으로 이동하면 FPR과 TPR 모두 줄어든다. 반대로 임계값이 좌측으로 이동하면 FPR과 TPR모두 커진다. 즉..

LGBM

LGBM(Light Gradient Boosting Machine) LightGBM's documentation LightGBM 주요 파라미터 정리 LightGBM이란? LGBM은 'Light'(==fast)하고 또 'Light'(==low memory)하다. 그만큼 또 예민하다는 단점이 있다. 예민하다는 것은 과적합(Overfitting)되기 쉽다는 것이며 1만 개 이하의 적은 데이터셋을 다루기에는 적합하지 않은 모델이다. LGBM을 사용할 때에는 과적합에 특히 유의해야 하며 아래의 하이퍼파라미터들을 통해 학습을 조절할 필요가 있다. max_depth Tree의 깊이가 깊을 수록 당연하게도 train set에 더 가까운 가중치를 학습하게 된다. 다른 모델을 사용할 때보다 현저하게 max_depth를 줄..

xgboost

XGBoost(eXtreme Gradient Boost) 캐글로 배우는 머신러닝 #10 XGBoost 파이썬 Scikit-Learn 형식 XGBoost 파라미터 XGBoost 알고리즘의 개념 이해 머신러닝 앙상블(ensemble) xgboost란? XGBoost는 기존 Gradient Boosting 방식의 느리고, training set에 overfitting되는 문제를 어느 정도 해결한 고성능 ensemble 기법이다. 규제 Overfitting을 방지하도록 하이퍼파라미터를 통해 규제할 수 있다. reg_alpha : L1 규제 reg_lambda : L2 규제 early stopping 주로 딥러닝 학습에 파라미터로 사용되는 early stopping을 지원한다. model.fit(X_train, ..

sklearn - GridSearchCV

GridSearchCV reference : sklearn.model_selection.GridSearchCV(scikit-learn.org) 모형최적화, 데이터사이언스스쿨 [Chapter 4. 분류] 랜덤포레스트(Random Forest) 머신러닝 모델의 하이퍼파라미터를 조정하는 일은 매우 까다롭다. 아주 미묘한 파라미터 값 변화가 모델의 성능을 좌우하고, 모델마다 다양한 파라미터들이 유기적으로 얽혀있기 때문이다. GridSearchCV를 통하면 다양한 하이퍼파라미터 값을 미리 입력하고, 최적의 값과 해당 값으로 표현된 모델 정확도를 돌려받을 수 있다. from sklearn.model_selection import GridSearchCV params = {'n_estimators' : [10, 100..

sklearn - GradientBoostingClassifier

GradientBoostingClassifier Gradient Boosting Model sklearn.ensemble.GradientBoostingClassifier 지도학습 - 그래디언트 부스팅 2.3.6 결정 트리의 앙상블, 텐서 플로우 블로그 GradientBoosting 모델은 RandomForest 모델과 달리 learning_rate를 통해 오차를 줄여나가는 학습 방식을 사용한다. RandomForest 모델은 말그대로 Random하게 Bagging, Tree를 생성한다. 하지만 GradientBoosting 모델은 Tree를 생성할 때마다 이전 Tree보다 오차를 줄이게 된다. 또한 개별 Tree의 깊이는 얕게 만들어내면서 오차가 줄어든 Tree를 계속해서 연결해나가는 구조다.(때문에, ..

파이썬 퀀트 분석 패키지 - ffn(Financial Functions for Python)

https://github.com/pmorissette/ffn GitHub - pmorissette/ffn: ffn - a financial function library for Python ffn - a financial function library for Python. Contribute to pmorissette/ffn development by creating an account on GitHub. github.com Python ffn 패키지는 퀀트 분석을 편하게 하도록 작성된 라이브러리다. 유용한 함수들을 많이 제공하고 있는데, 그중에서도 어렵지 않게 써먹을만한 함수들을 빠르게 익혀보자. Step 1. 데이터 추출 기본적으로 야후 파이낸스를 통해 데이터를 가져오게 되어있고, 데이터 로드 속도..

K-Nearest Neighbor Algorithm

K-Nearest Neighbor Algorithm(최근접 이웃 알고리즘) Reference : K-NN 알고리즘(K-최근접이웃) 개념 파이썬 라이브러리를 활용한 머신러닝, 한빛미디어 Classification Regression 1. Classification (n = 1) 기존에 분포하는 값 중 가장 가까운 값의 label을 현재 Test값의 label로 지정한다. (n > 1) 기존에 분포하는 값 중 가장 가까운 순서대로 n개의 값을 찾고, 가장 많이 나오는 label을 현재 Test값의 label로 지정한다. ex. N = 3일 때, 탐색 방식 ex. N = 3일 때, 코드 예시 from sklearn.model_selection import train_test_split X, y = mglear..

Precision vs Recall

Precision and Recall in an anomaly detection situation reference : Classification : Precision and Recall 분류성능평가지표 - Precision(정밀도), Recall(재현률) and Accuracy(정확도) Examples : Anomaly Detection 실제 이상 징후 : 1 실제 정상 징후 : 0 Timeseries1112131415161718192022232425 Actual-Anm 0 0 0 0 0 0 0 0 0 1 0 1 1 1 threshold > Detect_Anm 0 0 0 0 0 0 0 0 0 0 0 1 1 1 True-Pstv T T T False-Ngtv F True-Ngtv T T T T T T T..

파이썬으로 최적의 포트폴리오 비율 찾기 (한국 주식,국채 + 미국 주식,국채)

주식 시장의 난이도가 올라가면서 개인 투자자들도 자산 배분을 고려하고 있다. 자산 배분의 방식에는 여러 가지가 있겠지만 이번에는 미국과 한국 2개의 시장에만 투자하고, 각 시장에 대해 채권과 주식을 고르게 배분하는 전략으로 전개하고자 한다. 안전자산인 채권과 위험자산 주식을 어떤 비율로 분배하는 것이 가장 효율적일까? Step 1. 야후 파이낸스 데이터 추출 Step 2. 일일 수익률 및 최종 수익률 확인 Step 3. 일일 수익률간 상관관계 시각화 Step 4. 변동성(위험) 대비 수익률 시각화 Step 5. 샤프 지수에 따른 포트폴리오 비율 시각화 Step 6. 사프 지수에 따른 포트폴리오 수익률 및 변동성 시각화 Step 7. 최적의 포트폴리오 비율 Step 1. 야후 파이낸스 데이터 추출 데이터는..

1 2 3 4 5 6 7 8 ··· 11