끄적거림

혼동행렬(Confusion Matrix)와 ROC, PR - curve 설명 본문

개인 공부 정리/ML&Statistic

혼동행렬(Confusion Matrix)와 ROC, PR - curve 설명

Signing 2020. 11. 19. 22:01
728x90
반응형

 

Confusion Matrix (출처 : https://bcho.tistory.com/tag/PR%20curve)

위의 표는 혼동행렬(Confusion Matrix)이라 불리는 도수 분포표라고 보면 된다.(분류된 빈도를 가지고 나타낸 도표)

위의 상황은 Binary Classification의 경우이며, 클래스가 더 많아진다면 그 이상도 가능하다.

흔히 Binary Classification을 진행하면 softmax나 logistic function을 사용해서 0~1 사이의 값(확률값이라 부르고 싶진 않다.)으로 결과가 떨어지는데,

threshold(default = 0.5)를 기준으로 분류를 하여 얻을 수 있는 대표적인 지표는 아래와 같다.

  • Accuracy(정확도) : ( TP + TN ) / ( P + N )
  • Precision(정밀도) : TP / ( TP + FP )
  • Recall(재현도, Sensitive) : TP / ( TP + FN )
  • Specificity(특이도) : TN / ( TN + FP )

정확도(Accuracy)는 전체 분류 중에서 정답을 얼마나 잘 맞췄는지이고,

정밀도(Precision)는 실제 양성 중에서 양성이라고 판단한 경우를 나타낸 정도이고,

재현도(Recall)는 양성이라 예측 분류한 것 중에 실제 양성이라 판단한 경우를 나타낸 정도이다.

특이도(Specificity)는 실제 음성 중에서 음성이라 판단한 경우이다.(정밀도와 반대)

 

이런 기준으로 아래와 같은 curve들을 만들 수 있다.

 

(좌) PR-curve / (우) ROC-curve

ROC-curve는 세로가 TPR, 가로가 FPR로 주어져 있다.

여기서 TPR은 sensitivity(특이도) 혹은 recall(복원도)를 나타내며, FPR은 1-specificity(특이도)를 나타내며,

각 x,y축들은 threshold의 변화를 기준으로 서로 다른 값들을 가지게 되는데 그를 표현한 것이 바로 위의 ROC-curve이다.

학부시절 배운 ROC-curve의 용도는 크게 두 가지였다.

모델이 얼마나 괜찮은지를 판단하기 위해서 y=x라는 base model과 비교 했을 때 얼마나 차이가 있는지로 확인할 수 있었고, 이를 보다 정량적으로 확인하기 위해 AUC 지수라는 척도를 사용했다.

또한, Binary Classification Task였다면, 최적의 분류 threshold를 찾을 수 있게 도와주기도 하였다.

 

반면에, PR-curve는 세로가 precision, 가로가 recall로 되어 있고, 이 역시 threshold값을 기준으로 구성된 그림이다.

PR-curve도 모델의 성능이 좋은지를 AUC로 판단하기도 한다.

또한 Base Model과의 성능 비교도 가능한데, ROC와 다른 점이 있다면, y=-x,가 아니라, P/(P+N)을 사용한다는 것이다.

 

가로와 세로축이 서로 trade-off관계에 있어서 우리는 또하나의 지표로써 F1-score를 생각해 볼 수 있다.

 

F1 score는 precision과 recall을 조화평균 낸 지표이다.

F1-score 공식

조화평균이란 관측치들에 대해 역수를 취한 뒤 산술평균을 적용한 후 다시 역수를 취해주는 지표이다.

 

여담으로 이렇게 역수의 평균의 역수를 취하는 일은 왜 할까?

 

바로 outlier의 가중치를 줄여주기 위함이다.

하나의 예로 1, 10000 두 숫자가 있다고 가정해보자.

그냥 산술 평균은 (1 + 10000)/2 = 5000.5 로 계산될 것이다.

반면에, 조화평균은 2/(1/1 + 1/10000) = 20000/10001 = 1.999 정도가 될 것이다.

 

 

 

 

참고 :

bcho.tistory.com/tag/PR%20curve

bskyvision.com/465

 

물체 검출 알고리즘 성능 평가방법 AP(Average Precision)의 이해

물체 검출(object detection) 알고리즘의 성능은 precision-recall 곡선과 average precision(AP)로 평가하는 것이 대세다. 이에 대해서 이해하려고 한참을 구글링했지만 초보자가 이해하기에 적당한 문서는 찾

bskyvision.com

 

728x90
반응형

'개인 공부 정리 > ML&Statistic' 카테고리의 다른 글

[논문 리뷰] Active Learning by Feature Mixing  (0) 2023.03.31
inductive bias 참고글  (0) 2021.08.06
Parameterization 개념  (0) 2021.03.19
Comments