본문 바로가기
Study/Machine learning

[Machine learning] ROC 와 ROC-AUC 평가 방법 (Confusion matrix, Recall, Precision, TPR, FPR, Threshold)

by 후이 (hui) 2020. 11. 10.
728x90
반응형

# Recall 재현율 , precision 정밀도 

 

Recall 재현율 : 실제 양성 중에 양성으로 예측된 것  ( TP / TP +  FN )  실제를 얼마나 잘 재현

Precision 정밀도 : 양성으로 예측된 것 중에 실제 양성인 것 ( TP / TP + FP ) 예측을 얼마나 정밀하게

 

ROC curve : 재현율과 1- 특이도 의 곡선을 그린 것 

 

TPR : True Positive Rate ( = 재현율 / 민감도, Recall)

양성인 케이스에 대해 양성으로 잘 예측한 비율.(암환자를 진찰해서 암이라고 진단 함)

TP / (TP+FN)

 

TNR : True Negative Rate(=특이도)

음성인 케이스에 대해 음성으로 잘 예측한 비율 (정상환자를 잔찰해서 정상이라고 진단)

 

FPR:  False Positive Rate (=1-TNR, false accept rate)
음성인 케이스에 대해 양성로 잘못 예측한 비율. (정상환자를 암이라고 진단 함)

 

 

 

  분홍색 
재현율, 1- 특이도 둘다 높은 경우
파란색
재현율, 1- 특이도 둘다 낮은 경우 
재현율 (= TPR) TPR 높음 
양성인 케이스에 대해
양성로 예측된 데이터가 많다는 것 
TPR 이 낮음
양성인 케이스에 대해
양성로 예측된 데이터가 적다는 것 (음성 많음)
1-특이도
(= 1 - TNR)
(= FPR)
1 - TNR 이 높음 (= FPR 이 낮음 )
음성인 케이스에 대해
음성으로 예측된 데이터가 적다는 것(양성많음)

1 - TNR 이 낮음 (= FPR 이 높음) 

음성인 케이스에 대해
음성으로 예측된 데이터가 많다는 것 

 
정리 TPR 과 1 - TNR 동시에 높은건
모든 값이 양성으로 쏠렸다
TPR 과 1 - TNR 동시에 낮은건
모든 값이 음성으로 쏠렸다

 결론은 TPR이 높으면서 1 - FPR이 낮은 (재현율, 특이도 모두 높은) 지점인  연두색이 가장 이상적인 수치이다.

 

# ROC 를 통해서 Threshold 정하기 

여기서 핵심은 Threshold를 잡는 것이다. (위의 검은색 선)

검은색 선 좌측은 암환자가 아닌 것으로 판정 (negative)

검은색 선 우측은 암환자인 것으로 판정 (positive)

 

따라서 검은색 선을 좌측에 가깝게 잡게 되면 모든 데이터가 positive

따라서 검은색 선을 우측에 가깝게 잡게 되면 모든 데이터가 negative

 

 

움식이는 이미지를 통해 보자면, 

 

Threshold를 좌측에 가깝게 잡으면 : TPR, FPR 모두 높은 상황 즉, 모든 값이 positive 분류된 상황이다. 

Threshold를 우측에 가깝게 잡으면 : TPR, FPR 모두 낮은 상황 즉, 모든 값이 negative 분류된 상황이다. 

 

우리는 TPR은 높고, FPR은 낮은 적절한 Threshold를 찾기 위해서

위의 ROC curve에서 연두색점일 때의 Threshold를 구하고 이걸 기준으로 평가한다. 

 

ROC - AUC  : ROC  커브 아래의 면적 Area Under the Curve 

1) TPR과 FPR을 복합적으로 평가할 수 있음

2) 아래의 면적이 커지면 커질 수록 이상적인 2진 분류기

 

 

 

 

 

https://angeloyeo.github.io/2020/08/05/ROC.html

 

ROC curve - 공돌이의 수학정리노트

 

angeloyeo.github.io

 

 

newsight.tistory.com/53

 

ROC curve, ROC_AUC, PR_AUC, 민감도, 특이도

ROC curve (Receiver Operating Characteristic curve) : FPR과 TPR을 각각 x,y축으로 놓은 그래프. ROC curve는 X,Y가 둘다 [0,1]의 범위이고, (0,0) 에서 (1,1)을 잇는 곡선이다. - ROC 커브는 그 면적이 1에..

newsight.tistory.com

 

nittaku.tistory.com/297

 

15. ROC(Receiver Operating Characteristic) curve 와 AUC(Area Under the Curve)

그림 및 글작성에 대한 도움 출저 : 유튜브 - 테리 엄태웅님의 딥러닝 토크 개요 딥러닝에 있어서, Accuracy말고도 여러가지 metric을 보아야하는 것 중 하나가 ROC커브이다. 저번시간에 다룬 아래의 4

nittaku.tistory.com

 

728x90
반응형

댓글