카테고리 없음

False negative(미탐), False positive(오탐), Precision(정밀도), Recall(재현율), Accuracy(정확도), F score

KUO88 2017. 7. 10. 21:14

매번 헷갈리는 개념들이다.

알고리즘의 성능 측정을 위한 지표들을 정리했다


 

정답

Positive

Negative 

실험결과

Positive

True positive

False positive

Negative

False negative

True negative



True (올바르게 판단하다) Positive (옳은 것을)

True (올바르게 판단하다) Negative (틀린 것을)

False (잘못 판단하다) Positive (옳다고) -> 오탐

False (잘못 판단하다) Negative (틀리다고) -> 미탐

 

Precision (정밀도) = TP / (TP + FP)

Recall (재현율) = TP / (TP + FN)

Accuracy (정확도) = (TP + TN) / (TP + TN + FP + FN)

 

Accuracy는 ground truth에 따라 제대로 성능 평가를 할 수 없는 경우가 있다. 

예로 "7월 9일까지의 차트를 분석해서 2,080여개의 코스피 코스닥 종목 중 10일에 상한가 간 종목 찾기" 에 대한 알고리즘을 제작했다고 하자. 실제 10일에는 총 2 종목이 상한가를 갔으므로 어떤 알고리즘이든간에 실험 결과 중 Negative (상한가 안갈 종목으로 판단)가 많을 수 밖에 없다. 이렇게 ground truth가 bias된 상태에서는 Accuracy로는 알고리즘의 성능을 올바르게 측정할 수 없다.

이와 같은 이유로 Precision과 Recall의 조화평균인 F1 (=F score)이 대안으로 제시되었다.

 

F Score = 2 x (Precision x Recall) / (Precision + Recall)