Receiver Operating Characteristics (수신자 조작 특성)
Sensitivity(Recall)와 1-Specificity의 관계를 나타낸다.
▶ 민감도 : TP/(TP+FN)
실제로 양성인 데이터들에 대해 모델이 양성이라 예측한 비율
▶ 1-특이도 : 1-TN/(FP+TN) = FP/(FP+TN)
실제로 음성인 데이터들에 대해 모델이 양성이라 예측한 비율
Precision과 Racall의 관계를 나타낸다.
▶ 정밀도 : TP/(TP+FP)
모델이 양성이라 예측한 데이터들 중 실제로 양성인 데이터의 비율
▶ 재현율 : TP/(TP+FN)
실제로 양성인 데이터들에 대해 모델이 양성이라 예측한 비율
▲ 이미지1
class 0은 음성, class 1은 양성을 나타낸다.
prediction score가 threshold보다 높은 데이터만을 양성이라 예측하는 모델을 시각적으로 표현한 자료로서; 왼쪽은 threshold에 따라 예측결과가 변화하는 과정을, 오른쪽은 threshold에 따라 ROC 및 PR이 변화하며 곡선을 그리는 과정을 나타낸다.
threshold가 낮을 때는 양성은 양성으로 잘 분류하지만 음성까지 양성으로 분류함
threshold가 높을 때는 음성은 음성으로 잘 분류하지만 양성까지 음성으로 분류함
▲ 이미지2
※ 혼동행렬 기반 평가지표의 특징
모든 지표가 A/(A+B)의 형태로서 A보다 B의 변화에 민감하다. 이는 곧 분모에 영향을 많이 받는다고 볼 수 있으므로 분모의 특성을 이해하면 지표의 특성에 대해서도 이해할 수 있다.
ROC곡선 : 민감도(y축)는 양성GT, 1-특이도(x축)는 음성GT가 분모로 들어가며 모델의 성능이 분모에 영향을 주지 못하므로 양성음성의 비율과 관계없이 언제나 일정한 수치를 가진다. 따라서 같은 모델에 양성 음성의 분포만 바꿔 각각 추론시켰을 때 ROC은 항상 일정한 곡선을 그린다. 다시말해 양vs음 분포에 영향을 받지 않고 순수하게 모델의 성능만을 나타내는 지표라고 볼 수 있다.
P-R곡선 : 정밀도의 분모가 GT가 아닌 Pred이므로 양음 비율이 바뀌면, 특히 음성이 늘어나서 음성을 양성으로 잘못 예측하는 FP가 늘어나면 분모(Pred)가 크게 변하게 된다. 이는 곧 양vs음 분포에 따라 곡선이 쉽게 바뀌는 지표라는 것을 의미한다. 이미지2의 (c)와 (d)에서 FP가 10배 증가했을 때 P-R곡선이 극적으로 바뀌는 모습을 볼 수 있다.
ROC 곡선의 경우 클래스 간 비율에 상관없이 모델 성능을 일정하게 반영한다.
P-R 곡선은 클래스 간 불균형이 심할 때 그에 따른 모델의 대응력, 즉 class imbalance에 얼마나 robust한지를 반영한다.
그러나 양성보다 음성이 훨씬 많더라도 무조건 P-R곡선이 좋은 것은 아니다. 해결하고자 하는 문제의 성격에 따라 어떤 곡선을 사용할 것인지 결정하는 것이 필요하다.
예를 들어 랭킹, 추천, 광고 등 분야에서는 데이터셋 내의 Class 분포가 중요하지 않아서 분포에 따라 흔들리는 지표가 아닌 안정적인 지표을 사용하기 위해 ROC 곡선을 더 자주 이용한다. 그러나 이상치 탐지 분야에서는 Class 분포의 변화를 민감하게 받아들일 필요가 있으므로 P-R 곡선을 사용할 때 더 정확한 평가가 가능하다.