머신러닝 성능지표
머신러닝 성능지표는 혼동행렬의 네 값을 조합해 모델의 예측 정확성과 오류 유형을 수치로 나타낸다. 정확도 하나로 평가하면 불균형 데이터에서 잘못된 결론을 내리기 쉽다. 이 장에서는 혼동행렬에서 출발해 정밀도, 재현율, F1을 차례로 계산하고 해석한다. 혼동행렬은 예측…
주요 장면
대본
한 줄 정의
머신러닝 성능지표는 혼동행렬의 네 값을 조합해 모델의 예측 정확성과 오류 유형을 수치로 나타낸다.
정확도 하나로 평가하면 불균형 데이터에서 잘못된 결론을 내리기 쉽다.
이 장에서는 혼동행렬에서 출발해 정밀도, 재현율, F1을 차례로 계산하고 해석한다.
혼동행렬
혼동행렬은 예측 결과를 실제 값과 예측 값의 조합에 따라 네 칸으로 나눈 표다.
참양성 TP, 거짓양성 FP, 거짓음성 FN, 참음성 TN이 모든 지표의 기본 단위가 된다.
FP는 음성을 양성으로 잘못 판정한 것이고, FN은 양성을 음성으로 놓친 것이다.
정밀도와 재현율
정밀도는 양성으로 예측한 것 중 실제 양성인 비율이다. 분모는 TP와 FP의 합이다.
재현율은 실제 양성 중 모델이 양성으로 찾아낸 비율이다. 분모는 TP와 FN의 합이다.
정밀도는 거짓 경보가 비쌀 때, 재현율은 양성을 놓치면 안 될 때 중요하다.
두 값은 분모가 달라 한쪽을 높이면 다른 쪽이 떨어지는 경향이 있다.
F1과 정확도의 함정
F1 Score는 정밀도와 재현율의 조화평균이다. 두 값 중 작은 쪽에 더 민감하다.
양성 비율이 1%인 데이터에서는 전부 음성이라고 답해도 정확도가 99%다.
예제에서 TP는 70, FP는 4930, FN은 13930, TN은 981070이다. 정확도는 0.98114다.
정밀도는 0.014, 재현율은 0.005, F1은 약 0.0074다. 정확도만 보면 모델을 잘못 평가한다.
지표 선택 원칙
지표는 업무의 오류 비용에 따라 고른다. 스팸 필터는 정밀도, 질병 진단은 재현율이 우선이다.
정확도는 클래스 비율이 한쪽으로 치우치면 무의미해진다. 그래서 불균형 데이터에서는 정밀도와 재현율을 함께 본다.
가중 F-beta는 β에 따라 재현율 쪽 또는 정밀도 쪽에 무게를 준다.
시험에서는 지표를 고른 이유를 FN과 FP의 업무 비용으로 설명해야 한다.
정리
정리하면 성능지표는 혼동행렬의 네 값에서 계산한다.
정확도는 전체 맞힌 비율, 정밀도는 양성 예측의 신뢰성, 재현율은 실제 양성의 검출률이다.
업무의 오류 비용을 정한 뒤 그에 맞는 지표를 고른다.