빅데이터분석기사 핵심 토픽, 혼동행렬과 정밀도·재현율·F1 제대로 읽기

분류 모델을 만들었다면 그다음은 얼마나 잘 맞히는지를 말해야 합니다. 이때 정확도 하나만 보면 전혀 쓸모없는 모델이 좋은 모델처럼 보이는 일이 생깁니다. 빅데이터분석기사 필기와 실기에서 평가지표가 반복되는 이유도 여기에 있습니다.

이 글의 구성

  • 혼동행렬의 네 칸
  • 숫자 하나로 보는 정확도의 함정
  • 정밀도, 재현율, F1, 특이도
  • ROC 곡선과 AUC

혼동행렬의 네 칸

혼동행렬은 실제 값과 예측 값을 교차해 센 표입니다. 양성(찾고 싶은 쪽)을 기준으로 이름이 붙습니다.

  • TP: 실제 양성을 양성으로 맞힘
  • FN: 실제 양성인데 음성으로 놓침
  • FP: 실제 음성인데 양성이라고 잘못 판정
  • TN: 실제 음성을 음성으로 맞힘

용어가 헷갈린다면 뒤 글자(P/N)는 모델의 예측, 앞 글자(T/F)는 그 예측이 맞았는지 틀렸는지라고 기억하면 됩니다.

정확도의 함정을 숫자로 보기

1,000명 중 양성이 50명인 데이터를 가정하겠습니다. 모델이 TP 40, FN 10, FP 20, TN 930을 냈다고 해 보죠. 계산은 직접 실행해 확인했습니다.

정확도는 (40 + 930) / 1,000 = 0.97입니다. 높아 보이지만, 아무것도 양성이라고 하지 않는 모델도 음성 950명을 맞혀 정확도 0.95가 나옵니다. 불균형 데이터에서는 정확도가 높아도 정작 찾아야 할 양성을 못 찾을 수 있다는 뜻입니다.

정밀도, 재현율, F1, 특이도

정밀도(Precision)는 양성이라고 예측한 것 중 실제 양성의 비율로 TP / (TP + FP)입니다. 위 예시에서는 40 / 60, 약 0.667입니다. 재현율(Recall, 민감도)은 실제 양성 중 찾아낸 비율로 TP / (TP + FN)이고 40 / 50 = 0.8입니다. F1 점수는 두 값의 조화평균 2PR / (P + R)이며 약 0.727입니다. 특이도(Specificity)는 실제 음성 중 음성으로 맞힌 비율 TN / (TN + FP)로 930 / 950, 약 0.979입니다.

산술평균이 아니라 조화평균을 쓰는 이유는 둘 중 하나라도 낮으면 점수가 크게 떨어지게 하려는 것입니다. 정밀도 1.0, 재현율 0.1이어도 산술평균은 0.55지만 F1은 약 0.18에 불과합니다.

상황별 선택: 환자 선별이나 사기 탐지처럼 놓치면 큰일인 경우에는 재현율을, 스팸 필터처럼 정상 메일을 잘못 걸러내면 곤란한 경우에는 정밀도를 더 중시합니다. 둘의 균형이 필요하면 F1을 봅니다.

ROC 곡선과 AUC

분류 모델은 보통 양성일 확률을 내놓고, 기준 임곗값(대개 0.5)을 넘으면 양성으로 판정합니다. 임곗값을 바꿔 가며 FPR(= 1 – 특이도)을 가로축, TPR(재현율)을 세로축으로 그린 것이 ROC 곡선입니다. 곡선 아래 면적인 AUC가 1에 가까울수록 구분 능력이 좋고, 0.5는 무작위 추측 수준입니다. AUC는 임곗값에 상관없이 모델의 순위 능력을 보기 때문에 모델끼리 비교할 때 편리합니다. 다만 양성이 매우 적은 데이터에서는 정밀도-재현율 곡선을 함께 보는 편이 낫다고 알려져 있습니다.

다중 분류에서의 평균 방식

클래스가 셋 이상이면 지표를 클래스별로 계산한 뒤 어떻게 합칠지 정해야 합니다. 매크로(macro) 평균은 클래스별 값을 단순 평균하므로 작은 클래스도 동등하게 반영합니다. 마이크로(micro) 평균은 모든 클래스의 TP, FP, FN을 먼저 합산해서 계산하므로 큰 클래스의 영향이 큽니다. 가중(weighted) 평균은 클래스별 표본 수로 가중해 평균을 냅니다. 불균형이 심할 때 어떤 평균을 보고 있는지 모르면 같은 모델도 전혀 다르게 평가될 수 있습니다.

임곗값을 낮추면 재현율은 올라가고 정밀도는 내려가는 경향이 있습니다. 둘은 서로 맞바꾸는 관계이므로, 모델을 바꾸기 전에 임곗값만 조정해도 목적에 맞는 균형을 찾을 수 있습니다.

회귀 지표와 헷갈리지 않기

시험에서는 분류 지표와 회귀 지표를 섞어 내기도 합니다. 정밀도, 재현율, F1, AUC는 범주를 맞히는 분류용이고, 연속값을 예측하는 회귀에서는 MAE, MSE, RMSE, 결정계수(R²)를 씁니다. 같은 오차라도 MSE는 큰 오차를 제곱해서 더 크게 벌주기 때문에 이상치에 민감하고, MAE는 오차의 평균 크기를 그대로 보여 해석이 쉽습니다. 문제에서 무엇을 예측하는지 먼저 확인하면 지표를 고르는 데 실수가 줄어듭니다.

한 줄 정리

정확도만 믿지 말고 혼동행렬 네 칸을 먼저 확인하세요. 놓침과 오경보 중 어느 쪽 비용이 큰지에 따라 재현율과 정밀도 사이에서 균형을 정하고, 모델끼리 비교할 때는 AUC와 F1을 함께 보는 것이 안전합니다.

공부 팁 3가지

  1. 혼동행렬을 직접 그려 놓고 각 지표의 분자와 분모에 해당하는 칸을 색으로 칠해 보세요.
  2. 문제가 주어진 상황의 비용(놓침과 오경보 중 무엇이 더 아픈가)을 먼저 읽고 지표를 고르는 연습을 하세요.
  3. 실기에서는 sklearn.metrics의 confusion_matrix, classification_report, roc_auc_score 사용법을 익혀 두면 시간이 절약됩니다.

이 글은 학습용 정리이며 실제 시험 출제 범위와 다를 수 있습니다. 최신 시험 범위와 일정은 한국데이터산업진흥원 공식 공지를 확인하세요.

zerg96

Recent Posts

DSR 계산기 – 스트레스 금리 적용 대출 한도와 총부채원리금상환비율 계산

DSR 계산기연소득과 기존 대출을 반영한 DSR과 스트레스 금리 적용 전후의 최대 대출 가능액을 한 번에…

2시간 ago

청약가점 계산기 – 무주택기간·부양가족·통장 가입기간 84점 만점 계산

청약가점 계산기무주택 기간, 부양가족, 청약통장 가입기간을 입력하면 84점 만점 기준 가점과 다음 가점 상승일까지 보여줍니다.계산기…

2시간 ago

IT Stack 계산기 센터 – 청약가점·DSR 계산기 모음

IT Stack 계산기 센터청약가점과 DSR을 몇 번의 입력으로 가늠해 보세요. 가입도, 저장도 필요 없습니다.계산기 센터청약가점…

2시간 ago

빅데이터분석기사 핵심 토픽, 표준화·정규화 차이와 데이터 누수 막는 법

표준화와 정규화는 이름이 비슷해서 시험에서 서로 바꿔 내기 좋은 개념입니다. 더 중요한 것은 개념 구분이…

3시간 ago

빅데이터분석기사 핵심 토픽, 결측치와 이상치 처리 기준 정리

데이터 분석에서 모델링보다 시간이 더 걸리는 작업이 전처리입니다. 빅데이터분석기사에서도 결측치와 이상치는 필기의 탐색 영역과 실기…

3시간 ago

2026년 11월 정보처리기능사 시험 일정 (접수·시험·발표)

11월에 일정이 있는 정보처리기능사 시험을 정리했습니다. 접수, 시험, 합격 발표 날짜를 한 번에 볼 수…

5시간 ago