CS 229 - 기계 학습

머신러닝 팁과 트릭 치트시트
Star

아프신 아미디셰르빈 아미디


Wooil Jeong 에 의해 번역됨

분류 측정 항목

이진 분류 상황에서 모델의 성능을 평가하기 위해 눈 여겨 봐야하는 주요 측정 항목이 여기에 있습니다.

혼동 행렬 혼동 행렬은 모델의 성능을 평가할 때, 보다 큰 그림을 보기위해 사용됩니다. 이는 다음과 같이 정의됩니다:

예측된 클래스
+ -
실제 클래스 + TP
True Positives
FN
False Negatives
Type II error
- FP
False Positives
Type I error
TN
True Negatives

주요 측정 항목들 다음 측정 항목들은 주로 분류 모델의 성능을 평가할 때 사용됩니다:

측정 항목 공식 해석
정확도 $\displaystyle\frac{\textrm{TP}+\textrm{TN}}{\textrm{TP}+\textrm{TN}+\textrm{FP}+\textrm{FN}}$ 전반적인 모델의 성능
정밀도 $\displaystyle\frac{\textrm{TP}}{\textrm{TP}+\textrm{FP}}$ 예측된 양성이 정확한 정도
리콜 $\displaystyle\frac{\textrm{TP}}{\textrm{TP}+\textrm{FN}}$ 실제 양성의 예측 정도
Specificity $\displaystyle\frac{\textrm{TN}}{\textrm{TN}+\textrm{FP}}$ 실제 음성의 예측 정도
F1 스코어 $\displaystyle\frac{2\textrm{TP}}{2\textrm{TP}+\textrm{FP}+\textrm{FN}}$ 불균형 클래스에 유용한 하이브리드 측정 항목

ROC ROC 곡선은 임계값의 변화에 따른 TPR 대 FPR의 플롯입니다. 이 측정 항목은 아래 표에 요약되어 있습니다:

측정 항목 공식 같은 측도
True Positive Rate
TPR
$\displaystyle\frac{\textrm{TP}}{\textrm{TP}+\textrm{FN}}$ 리콜
False Positive Rate
FPR
$\displaystyle\frac{\textrm{FP}}{\textrm{TN}+\textrm{FP}}$ 1-specificity

AUC AUC 또는 AUROC라고도 하는 이 측정 항목은 다음 그림과 같이 ROC 곡선 아래의 영역입니다:


ROC AUC

회귀 측정 항목

기본 측정 항목 회귀 모델 $f$가 주어졌을때, 다음의 측정 항목들은 모델의 성능을 평가할 때 주로 사용됩니다:

총 제곱합 설명된 제곱합 잔차 제곱합
$\displaystyle\textrm{SS}_{\textrm{tot}}=\sum_{i=1}^m(y_i-\overline{y})^2$ $\displaystyle\textrm{SS}_{\textrm{reg}}=\sum_{i=1}^m(f(x_i)-\overline{y})^2$ $\displaystyle\textrm{SS}_{\textrm{res}}=\sum_{i=1}^m(y_i-f(x_i))^2$

결정 계수 종종 $R^2$ 또는 $r^2$로 표시되는 결정 계수는 관측된 결과가 모델에 의해 얼마나 잘 재현되는지를 측정하는 측도로서 다음과 같이 정의됩니다:

\[\boxed{R^2=1-\frac{\textrm{SS}_\textrm{res}}{\textrm{SS}_\textrm{tot}}}\]

주요 측정 항목들 다음 측정 항목들은 주로 변수의 수를 고려하여 회귀 모델의 성능을 평가할 때 사용됩니다:

Mallow's Cp AIC BIC Adjusted $R^2$
$\displaystyle\frac{\textrm{SS}_{\textrm{res}}+2(n+1)\widehat{\sigma}^2}{m}$ $\displaystyle2\Big[(n+2)-\log(L)\Big]$ $\displaystyle\log(m)(n+2)-2\log(L)$ $\displaystyle1-\frac{(1-R^2)(m-1)}{m-n-1}$

여기서 $L$은 가능도이고 $\widehat{\sigma}^2$는 각각의 반응과 관련된 분산의 추정값입니다.


모델 선택

어휘 모델을 선택할 때 우리는 다음과 같이 가지고 있는 데이터를 세 부분으로 구분합니다:

학습 세트 검증 세트 테스트 세트
• 모델 훈련
• 주로 데이터 세트의 80%
• 모델 평가
• 주로 데이터 세트의 20%
• 홀드아웃 또는 개발 세트라고도하는
• 모델 예측
• 보지 않은 데이터

모델이 선택되면 전체 데이터 세트에 대해 학습을 하고 보지 않은 데이터에서 테스트합니다. 이는 아래 그림에 나타나있습니다.

Partition of the dataset

교차-검증 CV라고도하는 교차-검증은 초기의 학습 세트에 지나치게 의존하지 않는 모델을 선택하는데 사용되는 방법입니다. 다양한 유형이 아래 표에 요약되어 있습니다:

k-fold Leave-p-out
• $k-1$ 폴드에 대한 학습과 나머지 1폴드에 대한 평가
• 일반적으로 $k=5$ 또는 10
• $n-p$개 관측치에 대한 학습과 나머지 $p$개 관측치에 대한 평가
• $p=1$인 케이스는 leave-one-out

가장 일반적으로 사용되는 방법은 $k$-폴드 교차-검증이라고하며 이는 학습 데이터를 $k$개의 폴드로 분할하고, 그 중 $k-1$개의 폴드로 모델을 학습하는 동시에 나머지 1개의 폴드로 모델을 검증합니다. 이 작업을 $k$번 수행합니다. 오류는 $k$ 폴드에 대해 평균화되고 교차-검증 오류라고 부릅니다.

Cross-validation

정규화 정규화 절차는 데이터에 대한 모델의 과적합을 피하고 분산이 커지는 문제를 처리하는 것을 목표로 합니다. 다음의 표는 일반적으로 사용되는 정규화 기법의 여러 유형을 요약한 것입니다:

LASSO Ridge Elastic Net
• 계수를 0으로 축소
• 변수 선택에 좋음
계수를 작게 함 변수 선택과 작은 계수 간의 트래이드오프
Lasso Ridge Elastic Net
$...+\lambda||\theta||_1$
$\lambda\in\mathbb{R}$
$...+\lambda||\theta||_2^2$
$\lambda\in\mathbb{R}$
$...+\lambda\Big[(1-\alpha)||\theta||_1+\alpha||\theta||_2^2\Big]$
$\lambda\in\mathbb{R},\alpha\in[0,1]$

진단

편향 모델의 편향은 기대되는 예측과 주어진 데이터 포인트에 대해 예측하려고하는 올바른 모델 간의 차이입니다.


분산 모델의 분산은 주어진 데이터 포인트에 대한 모델 예측의 가변성입니다.


편향/분산 트래이드오프 모델이 간단할수록 편향이 높아지고 모델이 복잡할수록 분산이 커집니다.


Underfitting Just right Overfitting
증상 • 높은 학습 오류
• 테스트 오류에 가까운 학습 오류
• 높은 편향
• 테스트 에러 보다 약간 낮은 학습 오류 • 매우 낮은 학습 오류
• 테스트 오류보다 훨씬 낮은 학습 오류
• 높은 분산
회귀 일러스트레이션 Underfit in regression Right fit in regression Overfit in regression
분류 일러스트레이션 Underfit in classification Right fit in classification Overfit in classification
딥러닝 일러스트레이션 Underfit in deep learning Right fit in deep learning Overfit in deep learning
가능한 처리방법 • 모델 복잡화
• 특징 추가
• 학습 증대
• 정규화 수행
• 추가 데이터 수집

오류 분석 오류 분석은 현재 모델과 완벽한 모델 간의 성능 차이의 근본 원인을 분석합니다.


애블러티브 분석 애블러티브 분석은 현재 모델과 베이스라인 모델 간의 성능 차이의 근본 원인을 분석합니다.