혼동행렬 (Confusion Matrix)

컴퓨터과학·AI 통계
한 줄 정의: 분류 모델이 예측한 결과와 실제 정답을 맞춰보며, 맞춘 경우와 틀린 경우를 종류별로 정리한 표입니다.
혼동행렬혼동행렬: 혼동행렬 아래에 TP, FP, FN, TN.혼동행렬실제×예측TP양성을 양성으로FP음성을 양성으로FN양성을 음성으로TN음성을 음성으로정밀도=TP/(TP+FP), 재현율=TP/(TP+FN)혼동행렬혼동행렬: 혼동행렬 아래에 TP, FP, FN, TN.혼동행렬실제×예측TP양성을 양성으로FP음성을 양성으로FN양성을 음성으로TN음성을 음성으로정밀도=TP/(TP+FP), 재현율=TP/(TP+FN)

쉽게 풀면

병원에서 질병 검사를 했다고 해봅시다. 결과는 네 가지로 나뉩니다. 아픈 사람을 "아프다"고 맞게 진단한 경우, 안 아픈 사람을 "안 아프다"고 맞게 진단한 경우, 안 아픈데 "아프다"고 잘못 진단한 경우(거짓양성), 아픈데 "안 아프다"고 놓친 경우(거짓음성)입니다. 혼동행렬은 이 네 가지 경우의 개수를 표로 정리한 것입니다. 단순히 "몇 % 맞췄다"는 정확도 하나만 보는 것보다, 어떤 종류의 실수를 얼마나 했는지를 한눈에 볼 수 있어서 모델의 약점을 파악하는 데 유용합니다.

왜 중요한가

분류 모델을 다루는 논문에서는 단일 정확도 수치만으로는 모델이 실제로 어떤 실수를 하는지 알기 어렵기 때문에, 혼동행렬이 실험 결과를 검증하는 기본 도구로 자주 등장합니다. 특히 의료 진단, 이상 탐지, 스팸 필터링처럼 놓치는 경우와 잘못 잡아내는 경우의 대가가 서로 다른 문제에서는, 혼동행렬을 통해 어느 쪽 오류가 더 심각한지 구체적으로 논의할 수 있습니다. 이 때문에 새로운 모델을 제안하는 논문에서는 정확도 외에 혼동행렬이나 이로부터 파생된 지표를 함께 제시하는 것이 관례처럼 자리 잡고 있습니다.

계산과 범위

이진 분류의 혼동행렬은 실제 상태(행)와 예측(열)을 교차한 2×2 표입니다. 오차행렬(error matrix)이라고도 부릅니다.

예측 양성예측 음성
실제 양성 (P)TP (참양성)FN (거짓음성)
실제 음성 (N)FP (거짓양성)TN (참음성)

해석 기준

혼동행렬에는 ‘이 정도면 좋다’는 보편적 기준값이 없습니다. 어느 오류가 더 치명적인지에 따라 볼 지표가 달라집니다. 가상의 예로 1,000명 가운데 실제 양성이 60명인 선별검사 모형을 봅시다.

예측 양성예측 음성
실제 양성 (60)TP = 40FN = 20
실제 음성 (940)FP = 10TN = 930

세 범주의 가상 예(행은 실제, 열은 예측)도 봅시다.

예측 A예측 B예측 C
실제 A5055
실제 B103010
실제 C0545

범주별 정밀도는 A 0.833, B 0.750, C 0.750이고 재현율은 A 0.833, B 0.600, C 0.900입니다. 매크로 평균 정밀도와 재현율은 둘 다 약 0.778이고, 전체 160건 중 125건이 맞아 정확도와 마이크로 평균이 0.781입니다(단일 라벨 다중분류에서는 마이크로 평균 정밀도·재현율이 정확도와 같습니다). 대각선에서 벗어난 값을 보면 B가 A와 C로 자주 새는 것을 알 수 있습니다.

보고 방법

논문에서는 이렇게 쓰입니다

실제 논문에서

국내 학술지 논문에서 이 용어가 쓰인 문장을 그대로 옮겼습니다. 제목·학술지·연도와 원문 링크를 함께 적었습니다.

예시 문장

아래는 용어의 쓰임을 보여 주려고 만든 예시로, 실제 논문에서 가져온 문장이 아닙니다.

"제안한 모델의 혼동행렬을 분석한 결과, 거짓 음성(false negative) 비율이 상대적으로 높게 나타났다."

이 문장은 모델이 실제로는 양성인 사례를 음성으로 잘못 판단하는 경우가 많았다는 것을 혼동행렬을 통해 확인했다는 뜻입니다.

"테스트 데이터셋에 대한 혼동행렬을 살펴보면, 클래스 간 오분류가 특정 범주에 집중되어 있음을 확인할 수 있다."

모델이 모든 범주에서 고르게 틀리는 것이 아니라, 특정 범주끼리 혼동하는 경향이 있다는 것을 혼동행렬로 확인했다는 의미입니다. 여러 범주를 구분하는 다중 분류 문제에서 자주 나오는 서술입니다.

"영상 기반 이상 탐지 실험에서 혼동행렬을 통해 정상 신호를 이상으로 오탐지하는 비율을 비교하였다."

이상 탐지처럼 정상과 비정상을 구분하는 과제에서, 혼동행렬을 이용해 잘못된 경보(오탐)가 얼마나 발생했는지 다른 방법과 비교했다는 뜻입니다.

조금 더 깊게 보면

혼동행렬을 실제로 읽을 때는 단순히 표 안의 숫자를 보는 것을 넘어, 여기서 계산되는 정밀도(precision), 재현율(recall), F1 점수 같은 파생 지표를 함께 살펴보는 경우가 많습니다. 범주가 셋 이상인 다중 분류 문제에서는 혼동행렬이 2x2가 아니라 더 큰 정방행렬 형태가 되며, 대각선에서 벗어난 값들이 어느 범주와 어느 범주가 자주 혼동되는지를 보여줍니다. 또한 여러 범주에 걸친 지표를 하나로 요약할 때는 범주별 지표를 단순 평균하는 매크로 평균과, 데이터 개수 비중을 반영하는 마이크로 평균 등 서로 다른 집계 방식이 쓰이므로, 논문에서 어떤 방식을 사용했는지 확인하는 것이 결과를 정확히 해석하는 데 도움이 됩니다.

주의할 점

혼동행렬 자체는 숫자를 정리한 표일 뿐이며, 여기서 계산되는 정밀도와 재현율 같은 지표를 함께 봐야 모델 성능을 제대로 판단할 수 있습니다. 특히 한 범주의 데이터가 다른 범주보다 훨씬 많은 불균형 데이터에서는 정확도만으로 판단하면 오해가 생기기 쉽습니다.

헷갈리기 쉬운 용어

용어한 줄 설명혼동행렬과의 관계
혼동행렬실제와 예측을 교차해 네 가지 결과의 개수를 센 표모든 지표의 재료
정밀도·재현율맞다고 한 것 중 진짜 맞은 비율, 진짜 맞는 것 중 찾아낸 비율혼동행렬의 열과 행에서 각각 계산
F1 점수정밀도와 재현율을 하나로 합친 지표혼동행렬에서 정밀도·재현율을 구한 뒤 계산
ROC 곡선분류 기준을 바꿔 가며 구분 성능을 보여 주는 그래프임계값마다 하나의 혼동행렬이 나옴
민감도·특이도병이 있는 사람을 찾아내는 정도와 병이 없는 사람을 걸러내는 정도재현율은 민감도와 같은 식

참고 문헌

  1. Fawcett, T. (2006). An introduction to ROC analysis. Pattern Recognition Letters, 27(8), 861–874.
  2. Sokolova, M., & Lapalme, G. (2009). A systematic analysis of performance measures for classification tasks. Information Processing & Management, 45(4), 427–437.
  3. Stehman, S. V. (1997). Selecting and interpreting measures of thematic classification accuracy. Remote Sensing of Environment, 62(1), 77–89.

표의 기준값은 위 문헌에 근거한 관례이며, 분야·학술지마다 다른 기준을 쓸 수 있습니다.

관련 용어