1. Accuracy란?

전체 샘플 개수 중에 나의 알고리즘이 예측한 개수를 나타냅니다. 

예를 들어, Accuracy가 80인 경우 100개중 80개의 정답을 맞춘 것 입니다. 

 

여기서 중요한 것은 무조건 balanced data의 경우에만 이 지표를 사용하는 것이 맞습니다. 

 

예를 들어, 암환자는 1명, 암환자가 아닌 사람은 999명인 상황에서 우리가 만든 모델이 

'암환자가 아닌 환자로 모두 판별하는 모델'로 만들어 졌다면, 

Accuracy는 전체 1000명중 999명을 암환자가 아닌것으로 판단하였기 때문에 99%의 Accuracy값을 갖게됩니다. 

 

이말은, 쉽게 말해 암환자가 아니라고만 말하고 찍어도 99프로 이상의 정답률을 낸다는 것입니다. 

 

2. Precision과 Recall, 둘의 조화평균 F1-score

Precision(정밀도)는 PPV(Positive Positive Value)와 같은 의미를 가진 용어입니다.

의미를 살펴본다면, 내 알고리즘이 Positive(양성)이라고 예측한 것 들중에 실제로 Positive인 것들이 몇개나 되는지를 나타냅니다. 

 

Recall(재현율)은 Sensitivity(민감도)와 같은 의미를 가진 용어입니다. 

실제 Positive인 데이터들 중 내 알고리즘이 Positive라고 예측한 것이 몇개나 되는지를 나타냅니다. 

 

F1-score는 Precision과 Recall을 모두 고려하고 싶을때 사용하는 지표로 약간씩 다른 관점에서 Positive를 얼마나 잘 예측하는지 성능평가하는 값입니다. 

 

보통은, ROC커브를 그려 AUC로 성능을 평가하지만, Precision과 Recall을 이용한 경우는 Precision-Recall Curve를 그려서 확인합니다. 

 

3. Precision-Recall Curve

 

Threshold에 따라, Precision과 Recall은 trade-off관계를 가지며 threshold에 의한 함수라는것을 알 수 있습니다. 

Threshold를 조정하여 Precision-Recall Plot을 그리는 것을 설명해놓은 좋은 블로그를 공유해 놓습니다. 

 

https://ardentdays.tistory.com/20

 

 

Precision-Recall Curves 설명 및 그리기(Python)

Precision-Recall Curves 설명 및 그리기(Python) Goal 이 페이지에서는 Precision-Recall Curve가 무엇이고, 어떻게 그려지는지 알아보겠습니다. 이를 위해서 필요하다고 생각되는 Precision과 Recall, 그리..

ardentdays.tistory.com

 

 

+ Recent posts