정확도가 높다고 무조건 좋은 모델링이 아님. 무엇을 맞히고 무엇을 틀렸는지 중요

불균형 데이터 : 한 클래스가 극소수인 상황 (e.g. 사기, 암 환자, 스팸)
-> "모두 음성(정상인 경우, 일반적인 상황)"으로 예측 시 Accuracy가 높아도, 불균형 데이터의 양상을 전혀 찾지 못하면 의미 없음
Positive(양성) : 내가 찾고 싶은 대상, 관심 있는 대상
-> 앞으로 나올 평가기준은 positive를 기준으로 함.
Negative(음성) : 비교 대상
e.g. positive = 암 환자, negative = 건강한 사람
※ Accuracy = 전체 성적표(positive든 negative든 전부 포함) --> 진짜 알고 싶은 관심 대상에 대한 디테일을 놓칠 수 있음
그 외 Recall, Precision, F1, ROC, PR = positive 중심 성적표

TN = 324 : 음성(0)을 음성으로 맞힘 -> 많음 (좋음)
FP = 0 : 음성을 양성으로 틀림 -> 없음
FN = 36 : 양성(1)을 음성으로 틀림 -> 전부! (문제)
TP = 0 : 양성을 양성으로 맞힘 -> 없음 (큰 문제)

정밀도(Precision) : 양성이라고 했는데 정말 양성이 맞나? 모델이 positive라고 예측한 것 중 실제 positive의 비율 --- 내가 던진 예측이 헛발질은 아니었는가?
높으면 오탐(FP)이 적음
e.g. 스팸 필터가 정상 메일을 스팸으로 잘못 분류하면 안 됨
재현율(Recall) : 진짜 양성 중 얼마나 찾았나? 실제 positive 중에서 모델이 positive라고 예측한 비율 --- 내가 관심있는 대상을 놓치지 않았는가?
높으면 누락(FN)이 적음
e.g. 암 진단에서 암 환자를 놓치면 안 됨
※ Recall과 Precision은 trade-off 관계. 하나를 무리하게 올리면 다른 하나가 떨어지기 쉬움
F1 : Precision과 Recall의 조화평균
-> 둘 중 하나가 0이면 F1도 0에 가까워짐 (균형을 강하게 요구)

보통 0.5로 설정
확률 >= 임계값 : 양성(1)
확률 < 임계값 : 음성(0)
임계값을 낮추면? 더 많이 양성으로 잡음(누락 ↓, 오탐 ↑ -> Recall↑)
임계값을 높이면? 확실할 때만 양성(오탐 ↓, 누락 ↑ -> Precision↑)
임계값 조절 = 정책 선택