본문 바로가기

데이터과학

혼동 행렬, 분류성능평가지표

 

혼동행렬 confusion matrix

혼동행렬(confusion matrix)은 기계학습분야, 특별히 통계분류(statistical classification)문제 분야에서 오류 행렬이라고도하며, 일반적으로 지도학습에서 알고리즘의 성능을 시각화 할 수 있는 표입니다. 비지도 학습에서는 일반적으로 일치 행렬(matching matrix)이라고합니다.

분류 모델을 학습하는 것의 목적은, 주어진 데이터를 의도에 맞게 잘 분류해내기 위한 것이다. 그렇다면 이러한 모델을 평가하는 기준이 필요할 것이다. 모델을 평가할때는 모델이 얼마나 정밀한지, 얼마나 실용적인 분류를 해내었는지, 얼마나 정확한 분류를 했는지를 평가해야 한다.

이러한 내용들을 모두 포함하고 있는 것이 Confusion Matrix이다.

 

먼저 모델의 성능을 평가하기 위해 혼동행렬과 함께 필요한 네 가지 개념이 있습니다.

 

TP(True Positive) - 맞는 것을 올바르게 맞다고 예측한 것 (정답)

TN(True Negative) - 아닌 것을 올바르게 틀리다고 예측한 것 (정답)

FP(False Positive) - 아닌 것을 올바르지 않게 맞다고 예측한 것 (오답)

FN(False Negative) - 맞는 것을 올바르지 않게 틀리다고 예측한 것 (오답)

 

 

Prediction

P

N

Actual

P

True Positive

(TP)

False Negative

(FN)

N

False Positive

(FP)

True Negative

(TN)

 

True Positives : 1 인 레이블을 1 이라 하는 경우를 True Positives라고 한다.

                    -> 관심 범주를 정확하게 분류한 값.

False Negatives : 1 인 레이블을 0 이라 하는 경우를 False Negatives라고 한다.

                    -> 관심 범주가 아닌것으로 잘못 분류함.

False Positives : 0 인 레이블을 1 이라 하는 경우를 False Positives라고 한다.

                    -> 관심 범주라고 잘못 분류함.

True Negatives : 0 인 레이블을 0 이라 하는 경우를 True Negatives라고 한다.

                    -> 관심 범주가 아닌것을 정확하게 분류.

 

Precision(정밀도), Recall(재현율) and Accuracy(정확도)

정밀도란 모델이 True라고 분류한 것 중에서 실제 True인 것의 비율입니다. 즉, 아래와 같은 식으로 표현할 수 있습니다.

 

 

Positive 정답률, PPV(Positive Predictive Value)라고도 불립니다. 날씨 예측 모델이 맑다로 예측했는데, 실제 날씨가 맑았는지를 살펴보는 지표라고 할 수 있겠습니다.

 

재현율이란 실제 True인 것 중에서 모델이 True라고 예측한 것의 비율입니다. 

 



통계학에서는 sensitivity으로, 그리고 다른 분야에서는 hit rate라는 용어로도 사용합니다. 실제 날씨가 맑은 날 중에서 모델이 맑다고 예측한 비율을 나타낸 지표인데, 정밀도(Precision)와 True Positive의 경우를 다르게 바라보는 것입니다. 즉, Precision이나 Recall은 모두 실제 True인 정답을 모델이 True라고 예측한 경우에 관심이 있으나, 바라보고자 하는 관점만 다릅니다. Precision은 모델의 입장에서, 그리고 Recall은 실제 정답(data)의 입장에서 정답을 정답이라고 맞춘 경우를 바라보고 있습니다. 

 

정확도(Accuracy)는 True를 True라고 옳게 예측한 경우와 False를 False라고 예측한 경우도 옳은 경우이며, 이때 해당 경우를 고려하는 지표. 식으로는 다음과 같이 나타냅니다.

 

 

정확도는 가장 직관적으로 모델의 성능을 나타낼 수 있는 평가 지표입니다.

 

F1 score는 Precision과 Recall의 조화평균입니다.

 

 

F1 score는 데이터 label이 불균형 구조일 때, 모델의 성능을 정확하게 평가할 수 있으며, 성능을 하나의 숫자로 표현할 수 있다. 

 

Fall-out FPR(False Positive Rate)으로도 불리며, 실제 False인 data 중에서 모델이 True라고 예측한 비율입니다. 즉, 모델이 실제 false data인데 True라고 잘못 예측(분류)한 것으로 다음과 같이 표현할 수 있습니다.

 

ROC(Receiver Operating Characteristic) curve, 수신자 조작 특성 곡선

여러 임계값들을 기준으로 Recall-Fallout의 변화를 시각화한 것입니다. Fallout은 실제 False인 data 중에서 모델이 True로 분류한, 그리고 Recall은 실제 True인 data 중에서 모델이 True로 분류한 비율을 나타낸 지표로써, 이 두 지표를 각각 x, y의 축으로 놓고 그려지는 그래프를 해석합니다. 아래 예시를 보죠.

 

 

AUC(Area Under Curve)

ROC curve는 그래프이기 때문에 명확한 수치로써 비교하기가 어렵습니다. 따라서 그래프 아래의 면적값을 이용합니다. 이것이 바로 AUC(Area Under Curve)입니다. 최대값은 1이며 좋은 모델(즉, Fall-out에 비해 Recall 값이 클수록) 1에 가까운 값이 나옵니다.

 

ROC 곡선(수신자 조작 특성 곡선)은 모든 분류 임계값에서 분류 모델의 성능을 보여주는 그래프입니다. 이 곡선은 다음 두 매개변수를 표시합니다.

참 양성 비율(TPR)

허위 양성 비율(FPR)

참 양성 비율(TPR)은 재현율의 동의어이며 이에 따라 다음과 같이 정의됩니다.

TPR=TP/(TP+FN)

허위 양성 비율(FPR)은 다음과 같이 정의됩니다.

FPR=FP/(FP+TN)

ROC 곡선은 다양한 분류 임계값의 TPR 및 FPR을 나타냅니다. 분류 임계값을 낮추면 더 많은 항목이 양성으로 분류되므로 거짓양성과 참양성이 모두 증가합니다. 다음 그림에서는 일반 ROC 곡선을 보여줍니다.

다양한 분류 임계값의 참 양성(TP) 및 허위 양성(FP) 비율

ROC 곡선의 점을 계산하기 위해 분류 임계값이 다른 로지스틱 회귀 모형을 여러 번 평가할 수 있지만 이 방법은 효율적이지 않습니다. 다행히 이 정보를 제공할 수 있는 효율적인 정렬 기반 알고리즘이 있는데, 이를 AUC라고 합니다.

AUC: ROC 곡선 아래 영역

AUC는 'ROC 곡선 아래 영역'을 의미합니다. 즉, AUC는 (0,0)에서 (1,1)까지 전체 ROC 곡선 아래에 있는 전체 2차원 영역을 측정합니다.(적분을 생각해 보세요).

AUC(ROC 곡선 아래 영역)

 

AUC는 가능한 모든 분류 임계값에서 성능의 집계 측정값을 제공합니다. AUC를 해석하는 한 가지 방법은 모델이 임의 양성 예제를 임의 음성 예제보다 더 높게 평가할 확률입니다. 예를 들어 다음 예에서는 로지스틱 회귀 예측의 오름차순으로 왼쪽에서 오른쪽으로 정렬되어 있습니다.

로지스틱 회귀 점수를 오름차순으로 평가한 예측

AUC는 임의의 양성(초록색) 예제가 임의의 음성(빨간색) 예제의 오른쪽에 배치되는 확률을 나타냅니다.

AUC 값의 범위는 0~1입니다. 예측이 100% 잘못된 모델의 AUC는 0.0이고 예측이 100% 정확한 모델의 AUC는 1.0입니다.

AUC는 다음 두 가지 이유로 이상적입니다.

AUC는 척도 불변입니다. AUC는 절대값이 아니라 예측이 얼마나 잘 평가되는지 측정합니다.

AUC는 분류 임계값 불변입니다. AUC는 어떤 분류 임계값이 선택되었는지와 상관없이 모델의 예측 품질을 측정합니다.

하지만 이러한 두 이유는 특정 사용 사례에서 AUC의 유용성을 제한할 수 있다는 단점이 있습니다.

척도 불변이 항상 이상적인 것은 아닙니다. 예를 들어 잘 보정된 확률 결과가 필요한 경우가 있는데 AUC로는 이 정보를 알 수 없습니다.

분류 임계값 불변이 항상 이상적인 것은 아닙니다. 허위 음성(FN) 비용과 허위 양성(FP) 비용에 큰 차이가 있는 경우 한 가지 유형의 분류 오류를 최소화하는 것은 위험할 수 있습니다. 예를 들어 이메일 스팸 감지를 실행할 때 허위 양성(FP)의 최소화로 인해 허위 음성(FN)이 크게 증가한다고 해도 허위 양성(FP) 최소화를 우선시하고 싶을 수 있습니다. AUC는 이런 유형의 최적화에 유용한 측정항목이 아닙니다.

출처 : 구글 머신러닝 단기집중과정

 

 

분류: ROC 및 AUC  |  머신러닝 단기집중과정  |  Google Developers

예상 시간: 8분 ROC 곡선 ROC 곡선(수신자 조작 특성 곡선)은 모든 분류 임계값에서 분류 모델의 성능을 보여주는 그래프입니다. 이 곡선은 다음 두 매개변수를 표시합니다. 참 양성 비율(TPR) 허위

developers.google.com

 

'데이터과학' 카테고리의 다른 글

k-최근접 이웃 알고리즘  (0) 2021.06.09
데이터 마이닝, 머신러닝(기계학습)  (0) 2021.06.04
RFM 분석  (0) 2021.04.21
몬테카를로 방법  (0) 2021.04.19
탐욕 알고리즘 (Greedy algorithm)  (0) 2021.04.19