머신러닝, 딥러닝/머신러닝

[머신러닝] Confusion Matrix, ROC 곡선 개념

mingenie 2023. 12. 1. 09:01

📚 Confusion Matrix 

 

• 종속변수의 실제값과 예측값에 따른 관측치의 분포를 나타내는 매트릭스로 classification 문제의 주요 평가 지표로 사용된다.

'잘못' 예측한 경우 'False'가 붙는다. 

 

 

 

사이킷런의 classfication_report 클래스를 이용하면 편하게 계산할 수 있다. 

• support는 각각 0,1인 관측치의 갯수 

 

• macro avg : 0,1일 때의 값을 단순 평균 

=(0.83+0.94)/2

 

• weighted avg : 전체 데이터에서 0,1에 해당하는 관측치의 갯수에 대해서 가중치를 부여해서 평균을 계산한다. 

=(0.83*11/30)+(0.94*19/30)

 

 


 

📚AUC 

 

•종속변수 값을 무엇으로 예측할 지 기준이 되는 cutoff(threshold) 값을 0부터 1까지 변화시키면서 테스트 했을 때, 

각각의 경우에 대한 TPR과 FPR의 비율을 그림으로 나타낸 것. 

 

• 0~1 사이의 값을 취하고 1에 가까울수록 성능이 좋은 것 ​

https://towardsdatascience.com/understanding-the-roc-curve-in-three-visual-steps-795b1399481c

 

• TPR : True Positive Ratio = Recall for positive = sensitivity 와 동일함 

값이 커질수록 모델의 성능이 좋아짐 

 

• FPR : False Positive Ratio =positive로 예측했는데 실제로는 negative 인 관측치의 비율 

값이 커질수록 모델의 성능이 나쁜 것 

 

• 모델의 성능이 좋을수록 곡선이 전체적으로 좌측 상단으로 넓어지면서, AUC 면적이 커진다.