분류(Classification)과 정확도(Accurancy)에 대해 알아보겠습니다.
자, 차근차근히 알아볼텐데, 이진 분류 문제에서 정확도 예측을 어떻게 하느냐? 를 물어봅니다.
예를 들면 "암"에 걸린 경우 암의 양성(positivie)데이터와 음성(negative)데이터를 가지고 있다고 생각해봅시다.
위의 경우 양성, 밑의 경우 음성인 그림을 볼 수 있는데, 현실 세계에서는 저렇게 아름답게 데이터가 분류되지 않습니다.
위의 그림처럼, 애매하게 Classification 이 걸쳐있어, False Positive 부분과 False Negative부분이 생깁니다.
이 때문에 100%의 정확도로 예측할 수 없습니다.(물론 현실 세계의 사람도 마찬가지입니다.)
자 얘네들을 표로 나타내보면
Positive | Negative | ||
Positive | TP(True Positive) | FN(False Nagative) | P(Positive) |
Negative | FP(False Positive) | N(True Nagative) | N(Negative) |
이렇게 됩니다. 자 그러면 애네들을 이용해서 뭘 할 수 있나? 하면 정확도를 구해볼 수 있습니다.
정확도(Accuracy) = True Positive + True Nagative / 전체 데이터( P + N)
이렇게 구해볼 수 있습니다.
그리고 정밀도(Precision)와 재현율(Recall)이라는 것도 나옵니다.
정밀도는 모델이 True라고 한 것들 중에 실제 True의 비율이고
정밀도 = TP / TP + FP
재현률은, 실제 True인 애들 중에 모델이 True라고 한 것입니다.
재현률 = TP / TP + FN
참고
'개발 > 파이썬 머신러닝 완벽가이드 정리' 카테고리의 다른 글
결정트리 (0) | 2020.01.24 |
---|---|
ROC, AUC (0) | 2020.01.24 |
데이터 전처리 (0) | 2020.01.22 |
하이퍼파라미터, GridSearchCV (0) | 2020.01.22 |
교차검증 (0) | 2020.01.22 |