hard: class를 0, 1로 분류 예측하는 이진 분류일 때 결과 값에 대한 다수 class를 사용
예) 분류를 예측한 값이 1,0,0,1,1 이였다면 1이 3표, 0이 2표이므로 1이 최종값으로 예측 결과가 됨
soft: 각각의 확률의 평균값을 계산한 다음 가장 확률이 높은 값으로 확정
예) class0이 나올 확률이 (0.4,0.9,0.9,0.4,0.4)이고, class1이 나올 확률이 (0.6,0.1,0.1,0.6,0.6)이라면 -> class0이 나올 최종 확률은 (0.4+0.9+0.9+0.4+0.4)/5 = 0.6이며 class1이 나올 최종 확률은 (0.6+0.1+0.1+0.6+0.6)/5 = 0.4가 되기 때문에 class0이 최종적으로 확률이 높은 것으로 판정
배깅(Bagging): 샘플 중복 생성을 통해 결과를 도출
같은 알고리즘 내에서 다른 sample 조합을 사용
Bagging은 Bootstrap Aggregating의 줄임말
Bootstrap은 여러개의 dataset을 중첩을 허용하여 샘플링하고 분할하는 방식을 뜻함
예) 데이터셋의 구성이 [1,2,3,4,5]로 되어있다면
group1 = [1,2,3]
group2 = [1,3,4]
group3 = [2,3,5]
대표적인 Bagging 앙상블 모델은 Random Forest, Bagging 등
부스팅(Boosting): 이전 오차를 보완해가면서 가중치를 부여
장점: 성능이 매우 우수함
단점: 잘못된 레이블이나 아웃라이어에 대해 필요 이상으로 민감. 다른 앙상블 대비 학습시간이 오래걸릴 수 있음
대표적인 부스팅 모델은 lightGBM, XGBoost 등
스태킹(Stacking): 여러 모델을 기반으로 예측된 결과를 통해 meta 모델이 다시 한 번 예측
장점: 성능을 극으로 끌어올릴 때 활용
단점: 과대적합을 유발할 수 있음(특히 데이터셋이 적은 경우)
ROC Curve
이진 분류의 성능을 측정하는 도구
FPR(False Positive Rate): 특이도
거짓 양성 비율(실제값은 음성이지만 양성으로 잘 못 분류)
FP/TN+FP
TPR(True Positive Rate): 민감도
참인 양성 비율(실제로도 양성이괴 양성으로 잘 분류)
TP/FN+TP
AUC
Area Under the ROC Curve의 줄임말
ROC커브와 직성 사이의 면적을 의미
AUC 값의 범위는 0.5 ~ 1이며 값이 클수록 예측의 정확도가 높음
Feature Importances(피쳐 중요도)
결정 트리에서 노드를 분기할 때, 해당 피쳐가 클래스를 나누는데 얼마나 영향을 미쳤는지 표기하는 척도
0이면 클래스를 구분하는데 해당 피쳐가 선택되지 않았다는 것이며, 1이면 해당 피쳐가 클래스를 완벽하게 나누었다는 것을 의미
스케일링
데이터를 특정한 스케일로 통일하는 것
데이터를 모델링하기 전에 스케일링 과정을 거치는 것이 좋음
다차원의 값들을 비교 분석하기 쉽게 만들어주며 자료의 오버플로우나 언더플로우를 방지하여 최적화 과정에서의 안정성 및 수령 속도를 향상
스케일링의 종류
StandardScaler: 평균과 표준 편차를 사용. (X-평균/표준편차)
MinMaxScaler: 최대/최소값이 각각 1과 0이 되도록 스케일링. (X-min/max-min)
RoburtScaler: 중앙값과 IQR사용, 아웃라이어의 영향을 최소화. (X-Q2/Q3-Q1)