ROC Curve
binary classification 모델의 평가 방법 중 하나.
TPR/FPR
TPR : 양성인 케이스에 대해 실제로 양성으로 잘 예측한 비율.
FPR : 음성인 케이스에 대해 양성으로 잘못 예측한 비율.
-> TPR이 높으면서, 1-FPR이 낮은 지점을 찾는 것이 중요할 것이고, 이를 위한 방법 중 하나가 ROC-Curve
ROC Curve는 다음과 같이, 생겼고 curve-밑 부분의 넓이를 AUC라고 한다.
curve가 이렇게 생긴 이유?, 어떻게 유도된 것일까?
양성인 분포와, 음성인 분포가 그림과 같다 가정하고 β값 이상을 가지면 무조건 양성이라고 판단하자.
그러면 그림과 같이 TP, TN, FP, FN이 나올 것이다.
β값이 극단적으로 커지면, TPR, FPR이 모두 낮아지고, 반대에서는 모두 커지게 된다.
즉, 이 기준선에 따라서 TPR, FPR을 계산할 수 있고, 이를 점으로 찍어 표현한 것이 ROC Curve 가 된다.
또한, 두 클래스가 잘 분리될수록, 현이 좌상쪽으로 휘게 될 것이다. (FPR 대비, TPR이 더 빠르게 커질것이다.)
비용민감 곡선?
f1-score나, ROC Curve의 경우는 binary classification에서 발생하는 두 오차의 상황에 동일한 cost를 부여.
-> 실제 상황에서는 그렇지 않기에 cost-sensitive한 상황을 생각해야 함.
예측 음성 | 예측 양성 | |
실제 음성 | a | |
실제 양성 | b |
즉, 두 개의 cost를 따로 분류해서 볼 수 있을 것이다. 이를 토대로 expected-cost를 구하는 과정이 cost-curve가 된다.
실제로, x축은 양성율 비용을 pa / (pa+ (1-p)b) 로 두고, y축은 (FNR * pa + FPR * (1-p)b) / (pa+ (1-p)b) 로 두어 거짓으로분류되는 확률을 normalize 시킨다. (p : 양성분류 확률)
'Archive > TIL' 카테고리의 다른 글
[TIL] 0805 아침스터디 - 나이브 베이즈 복습 (0) | 2022.08.05 |
---|---|
[TIL] 0729 아침스터디 - Kernel Trick (0) | 2022.07.29 |
[TIL] 0713 아침스터디 - hyperparameter tuning(2) (0) | 2022.07.13 |
[TIL] 0711 아침스터디 - Hyper Parameter tuning(1) (0) | 2022.07.11 |
[TIL] 0708 아침스터디 / 표본추출 + Python의 랜덤 (0) | 2022.07.08 |