스물두줄

정보관리기술사 · 개념서 · 데이터 분석 및 통계

혼동행렬

설명 영상 혼동행렬 · 2:43

왜 배우는가: 혼동행렬은 분류 모델의 성능을 한 장의 표로 보여 주는 가장 기본적인 평가 도구다. 실무에서는 정확도만 보고 모델을 고르면 불균형 데이터에서 잘못된 결론을 내리기 쉬우므로, 정밀도·재현율·F1-score를 함께 읽는 법을 알아야 한다. 기술사 시험에서는 TP·FP·FN·TN 정의와 지표 계산 문제가 반복해서 출제된다.

출제 이력: 제136회 3교시 5번, 제111회 4교시 1번

1. 한 줄 정의와 핵심 키워드

혼동행렬은 분류 모델의 예측값과 실제값을 TP·FP·FN·TN 네 칸으로 나눠 정리한 2×2 표이며, 이로부터 정확도·정밀도·재현율·F1-score 등 성능 지표를 계산한다.

핵심 키워드는 다음과 같다.

  • 혼동행렬(Confusion Matrix)
  • 참양성(True Positive, TP)
  • 거짓양성(False Positive, FP)
  • 거짓음성(False Negative, FN)
  • 참음성(True Negative, TN)
  • 정밀도(Precision)
  • 재현율(Recall)
  • F1-score

2. 개념 풀이

쉽게 말하면 모델이 "맞췄다"와 "틀렸다"를 종류별로 세어 보는 표다. 행은 실제값, 열은 예측값으로 놓는 경우가 많다. 양성을 양성으로 맞히면 TP, 음성을 음성으로 맞히면 TN이다.

정식으로는 실제 클래스와 예측 클래스의 조합별 빈도를 담은 표이다. 두 클래스 문제에서는 2행 2열이 된다. 표의 네 칸 값을 기준으로 여러 지표가 파생된다. 표 그 자체는 평가 결과의 원자료이고, 지표는 그 원자료를 요약한 값이다.

  • 참양성(TP): 실제 양성을 양성으로 올바르게 예측한 경우다.
  • 거짓음성(FN, 제2종 오류): 실제 양성을 음성으로 잘못 예측한 경우다.
  • 거짓양성(FP, 제1종 오류): 실제 음성을 양성으로 잘못 예측한 경우다.
  • 참음성(TN): 실제 음성을 음성으로 올바르게 예측한 경우다.

정밀도와 재현율은 서로 다른 질문에 답한다. 정밀도는 "양성이라고 한 것 중 실제 양성의 비율"이고, 재현율은 "실제 양성 중 찾아낸 비율"이다. 두 지표는 보통 반대로 움직이므로 하나만 높이면 다른 쪽이 떨어지는 경우가 많다.

TP/(TP+FP) 와 TP/(TP+FN) 이 두 식이 정밀도와 재현율의 정의다. 분모가 다르다는 점을 답안에서 분명히 써야 한다.

3. 등장 배경과 필요성

초기 분류 평가에서는 정답 비율인 정확도(Accuracy)를 주로 썼다. 그러나 양성 사례가 극히 적은 불균형 데이터에서는 모두 음성이라고 예측해도 정확도가 높게 나온다. 예를 들어 양성이 1%인 데이터에서 전부 음성으로 예측하면 정확도는 99%가 된다. 이런 왜곡을 막으려고 클래스별 오류를 나눠 보는 혼동행렬이 평가의 출발점이 되었다.

오류의 종류마다 비용이 다르다는 점도 필요성을 높였다. 질병 진단에서 FN(놓친 환자)은 FP(잘못 호출된 환자)보다 치명적일 수 있다. 혼동행렬은 이런 비용 차이를 드러내고, 임계값을 어디에 둘지 판단하는 근거가 된다. 그래서 정확도 하나가 아니라 여러 지표를 함께 보는 체계가 필요해졌다.

오류의 유형을 구분하는 용어인 제1종 오류와 제2종 오류는 통계적 가설 검정에서 온 개념이다. 혼동행렬은 이를 분류 모델 평가에 옮겨 쓴 것이다.

4. 구성요소·원리·절차

혼동행렬은 실제 클래스와 예측 클래스의 조합을 2×2 표로 나눈 것이다. 행은 실제값, 열은 예측값으로 두는 방식이 널리 쓰인다. 네 칸은 TP, FP, FN, TN 으로 부른다. 이 네 칸이 모든 성능 지표의 원자료가 된다.

구성요소의미오류 유형예시(양성=환자)
TP(True Positive)실제 양성을 양성으로 예측정답환자를 환자로 판정
TN(True Negative)실제 음성을 음성으로 예측정답정상을 정상으로 판정
FP(False Positive)실제 음성을 양성으로 예측제1종 오류정상을 환자로 오판
FN(False Negative)실제 양성을 음성으로 예측제2종 오류환자를 정상으로 놓침

위 표는 실제 판정 결과의 네 가지 경우를 정리한다. FP 는 허위 양성, FN 은 허위 음성이라고도 한다. 두 칸은 서로 다른 비용을 가지므로 구분해서 읽어야 한다.

혼동행렬은 TP·FP·FN·TN 네 칸을 조합해 여러 지표를 계산하는 원자료다

원리는 다음과 같다. 테스트 데이터마다 예측과 실제를 비교해 네 칸에 횟수를 센다. 네 칸의 합은 전체 테스트 건수와 같다. 이 값으로 정확도, 정밀도, 재현율 같은 비율을 구한다. 단일 지표만 보면 불균형 데이터에서 판단이 왜곡되므로 여러 지표를 함께 본다.

절차는 다음과 같다.

  • 학습된 분류 모델로 테스트 데이터의 예측값을 얻는다.
  • 실제 클래스와 예측 클래스를 짝지어 TP·FP·FN·TN 건수를 센다.
  • 네 칸을 2×2 행렬로 배열하고 합계가 전체 건수와 일치하는지 확인한다.
  • 행렬에서 정확도, 정밀도, 재현율, 특이도, F1-score 를 산출한다.
  • 비즈니스 비용에 따라 FP 와 FN 중 줄여야 할 쪽을 정하고 임계값을 조정한다.

다중 클래스의 경우 행렬은 클래스 수만큼 커진다. 각 클래스를 양성으로 두고 나머지를 음성으로 묶어 TP·FP·FN·TN 을 다시 세는 방식으로 지표를 구한다. 이후 클래스별 값을 평균하는 마이크로 평균 또는 매크로 평균을 쓴다.

성능 지표의 기본 산식은 다음과 같다.

$정확도 = \frac{TP+TN}{TP+TN+FP+FN}$

$정밀도 = \frac{TP}{TP+FP},\quad 재현율 = \frac{TP}{TP+FN}$

여기서 TP 는 양성 정답 건수, FP 는 음성을 양성으로 잘못 낸 건수, FN 은 양성을 음성으로 놓친 건수다.

혼동행렬 산출 구조

5. 관련 법령·기준·표준

혼동행렬과 성능 지표는 법령으로 정해진 기준이 아니다. 학계와 산업계의 공통 정의를 따른다. 따라서 지표 자체는 조문 번호가 없다. 대신 분야별 기준으로 요구되는 값이 있을 때 그 값이 판단 기준이 된다.

구분지표산식해석 기준
정확도Accuracy(TP+TN)/전체불균형 데이터에서 과대평가 가능
정밀도PrecisionTP/(TP+FP)FP 를 줄이는 목표에 사용
재현율Recall(민감도)TP/(TP+FN)FN 을 줄이는 목표에 사용
특이도SpecificityTN/(TN+FP)음성 판별 능력
F1-scoreF12TP/(2TP+FP+FN)정밀도·재현율 균형

정확도를 높이면 정밀도와 재현율이 함께 높아진다는 보장은 없다. 두 지표는 임계값에 따라 반대로 움직이는 경향이 있다.

정확도 100%의 의미: 전체 정답 비율은 불균형 데이터에서 판단을 흐린다. 음성이 대다수인 데이터에서 모두 음성으로 찍어도 정확도가 높게 나온다. 따라서 정밀도·재현율 병행 보고가 필요하다.

산업 분야에서는 기준을 별도로 정하는 경우가 많다. 의료 진단은 재현율 기준을, 스팸 필터는 정밀도 기준을 우선하는 편이다. 기준 수치는 발주 기관이나 사내 규정이 정하는 값을 따른다. 본 교재는 특정 기준 수치를 법정값으로 제시하지 않는다.

개정 연혁: 혼동행렬과 F-score 의 정의는 오랜 기간 동일하게 유지되어 왔다. 최근에는 PR 곡선과 ROC 곡선을 함께 보는 평가 방식이 강조되는 추세다.

6. 유형과 비교

혼동행렬에서 얻는 지표는 무엇을 중시하느냐에 따라 선택이 달라진다. 네 칸 중 어느 칸을 분자와 분모에 쓰는지가 지표의 의미를 결정한다.

지표산식분모의 의미중시하는 오류
정확도(TP+TN)/전체전체 건수양쪽 모두
정밀도TP/(TP+FP)양성으로 예측한 건수FP(오탐)
재현율TP/(TP+FN)실제 양성 건수FN(미탐)
특이도TN/(TN+FP)실제 음성 건수FP(오탐)

정밀도와 재현율은 TP를 공유하지만 분모가 달라 값이 따로 움직인다. 정밀도는 양성 예측의 신뢰도를, 재현율은 실제 양성을 놓치지 않는 완전성을 나타낸다. 특이도는 실제 음성을 음성으로 맞히는 비율이어서 음성 클래스 쪽의 재현율에 해당한다.

이어지는 내용

로그인하면 하루 2페이지까지 무료로 전체를 읽을 수 있습니다.

앱에서 이 단원 읽기