분류모델의 검증

Seung Joo·2021년 6월 17일
0

1. 정확도 (Accuracy)

Accuracy=TP+TNTotalAccuracy = {TP+TN \over Total}
전체 데이터 중 올바르게 예측한 비율

2. 정밀도 (Precision)

Precision=TPTP+FPPrecision = {TP \over TP+FP}
양성이라고 출력한 샘플 중 실제로 양성에 속하는 샘플 수의 비율

1종 오류가 치명적일 때 선택
예) 스팸메일 확인시 스팸메일이 아닌데 스팸메일이라고 판단하는 경우

3. 재현율 (Recall)

Recall=TPTP+FNRecall = {TP \over TP + FN}
실제 양성에 속한 표본 중에 양성에 속한다고 출력한 표본의 수의 비율

2종 오류가 치명적일 때 선택
예) 암환자 양성 진단시 암인데 암이 아니라고 판정하는 경우

4. F beta score

정의

재현율과 정밀도의 조화평균

재현율과 정밀도가 얼마나 조화를 이루는지, 한쪽으로 치우치지는 않았는지를 나타낸다.

한쪽으로 치우치면 F1 score의 값이 낮게 나온다.

재현율과 정밀도는 상충관계(Trade Off)이다.
만약 재현율이 높아진다면 정밀도는 낮아지고, 정밀도가 높아진다면 재현율이 낮아지는 특성이 있다.

Fβ=(1+β2)precisionrecall(β2precision+recall)F_\beta = (1+\beta^2)\cdot \frac{precision \cdot recall}{(\beta^2 \cdot precision + recall)}

F1Score=2precisionrecallprecision+recallF1Score = 2\cdot{precision \cdot recall \over precision + recall}

F_2 : 재현율에 정밀도의 2배만큼 가중치를 부여한다. (beta = 2)
F_1 : F1 Score (beta = 1)
F_0.5 : 정밀도에 재현율의 2배만큼 가중치를 부여하는 것이다. (beta = 0.5)

5. 임계값 (Threshold)

정의

임계값을 조절하는 방법으로 정밀도나 재현율을 높일 수 있다.

임계값의 기준점은 0.5이다.

임계값을 낮추면 정밀도는 올라가지만 재현율은 떨어진다.
반대로 임계값을 높이면 재현율은 올라가고, 정밀도는 떨어지게 된다.

6. ROC Curve, AUC

1) ROC Curve, AUC

ROC curve, AUC를 사용하면 분류문제에서 여러 임계값 설정에 대한 모델의 성능을 구할 수 있다.
ROC curve는 여러 임계값에 대해 TPR(True Positive Rate, recall)과 FPR(False Positive Rate) 그래프를 나타낸다.
AUC는 ROC curve의 아래 면적을 말한다.

2) Recall (TPR)

TPR=TPTP+FNTPR = \frac{TP}{TP+FN}

3) Fall-out(위양성율)

FPR=FPFP+TNFPR = \frac{FP}{FP+TN}

4)ROC curve의 특징

재현율을 높이기 위해서는 Positive로 판단하는 임계값을 계속 낮추어 모두 Positive로 판단하게 만들면 된다.
하지만 이렇게 하면 동시에 Negative이지만 Positive로 판단하는 위양성률도 같이 높아지게 된다.
재현율은 최대화 하고 위양성률은 최소화 하는 임계값이 최적의 임계값이다.

ROC_curve와 AUC는 1에 가까울수록 좋은 모델이라고 할 수 있다.

이미지출처: medcalc.org

profile
조금씩 천천히

0개의 댓글