AP30 — AI 모델 평가, 데이터, 통계적 해석

응용정보기술자시험 과목 A에 필요한 학습·검증·테스트 데이터 분할, 과적합과 데이터 누수, 혼동행렬로 구하는 정확도·정밀도·재현율·F값, 불균형 데이터, 표본과 편향을 풀이 예제와 오리지널 연습 문제 4문항으로 익힙니다.

応用情報技術者試験科目A機械学習モデル評価統計

AP 과목 A 제30편 · 2026년도·실라버스 Ver.7.2 기준의 독립 학습 자료입니다. IPA와 제휴하지 않으며 합격을 보장하지 않습니다. 시리즈 허브 보기

학습 지표와 출처

  • IPA 범위 A: 대분류 1 기초이론(基礎理論) → 중분류 1 기초이론 → 3 정보에 관한 이론 → (9) AI에 관한 기술 → ② 기계학습(機械学習), PDF 10쪽/인쇄 5쪽.
  • IPA 범위 B: 대분류 9 기업과 법무(企業と法務) → 중분류 22 기업활동(企業活動) → 2 업무분석·데이터 활용 → (2) 데이터 활용 → ② 데이터 가공·분석 및 ③ 데이터 분석의 통계적 방법, PDF 130쪽/인쇄 126쪽.
  • 범위 출처(확인일 2026-10-21): IPA 실라버스 PDF · 개요 · 개정 정보.
  • 개정 이력: 2026-10-28 다음 편(AP31) 안내를 실제 범위인 법무·표준화로 바로잡음.
  • 보충 공식 기술 자료: scikit-learn 데이터 누출 · 분류 평가 지표. 구현 실무의 보충 설명이며 시험 범위의 근거는 위 IPA 실라버스다.
  • 선수 학습: AP3 확률·통계. 확률과 기술통계의 기초는 AP3을 참고하며 여기서 반복하지 않는다.
  • 시리즈 맥락: 이전 회차인 AP29 회계, 손익분기점, 투자평가를 포함한 모든 회차는 공개 시리즈 목차에서 볼 수 있다.

이 학습 자료는 가상의 집계 데이터만 사용하며 IPA와 제휴하거나 승인받지 않았고 합격을 보장하지 않는다.

1. 목적에 따라 데이터 나누기

  • **학습 데이터(訓練データ)**는 회귀계수나 트리 분기 같은 모델 파라미터를 적합한다.
  • **검증 데이터(検証データ)**는 하이퍼파라미터, 모델, 특징량, 판정 임계값을 선택한다.
  • 개발 선택을 고정한 뒤 손대지 않은 **테스트 데이터(テストデータ)**로 최종 일반화 성능(汎化性能)을 추정한다.

교차검증(交差検証)은 개발 과정 안에서 수행한다. 개발용 데이터를 폴드로 나누고 학습 폴드에서 적합해 보류 폴드에서 검증한 점수를 합친다. 최종 테스트 세트는 이 반복 밖에 둔다. 테스트 결과를 여러 번 보고 모델을 바꾸면 테스트 세트가 사실상 검증 데이터가 되어 편향 없는 최종 추정값을 주지 못한다.

무작위 분할이 늘 안전한 것은 아니다. 같은 사람·기기·조직의 연관 레코드는 그룹 분할로 한쪽에만 둔다. 예측 등 시간 데이터는 미래가 과거에 들어오지 않도록 학습 시점이 평가 시점보다 앞서는 시간 순서 분할을 쓴다.

2. 과적합과 데이터 누출 막기

**과적합(過学習)**은 학습 데이터의 잡음까지 익힌 상태다. 학습 오차는 계속 줄지만 검증·테스트 오차는 더 좋아지지 않거나 나빠진다. 정규화, 단순한 모델, 대표성 있는 데이터, 개발용 교차검증이 도움을 주지만 최종 성능은 손대지 않은 테스트 세트로 확인한다.

데이터 누출은 실제 예측 때 사용할 수 없는 정보가 학습에 들어오는 것이다. 전체 데이터로 표준화 값이나 특징을 선택하는 경우, 정답을 입력 특징에 포함하는 경우, 과거를 예측하면서 미래 정보를 쓰는 경우가 예다.

안전한 순서는 다음과 같다.

  1. 먼저 분할한다.
  2. 결측치 대체, 스케일링, 인코딩, 특징 선택을 학습 데이터에만 적합한다.
  3. 검증·테스트 데이터에는 학습 데이터에서 구한 값을 그대로 변환 적용하며 다시 적합하지 않는다.
  4. 변환된 학습 데이터로 모델을 적합하고 검증 데이터로 설정을 선택한 뒤 테스트 데이터에서 한 번 평가한다.

파이프라인을 쓰면 각 교차검증 폴드의 변환도 그 폴드의 학습 부분에서만 배우도록 전처리와 모델을 묶을 수 있다.

3. 혼동행렬 읽기

양성 클래스를 먼저 명시한다. 여기서는 “점검 필요”가 양성이다. 100건의 결과는 다음과 같다.

실제 / 예측 양성 음성
양성 TP=24 FN=8
음성 FP=6 TN=62

원래 정수로 계산하고 최종 백분율만 소수점 이하 둘째 자리까지 표시한다(셋째 자리에서 반올림).

  • 정확도(正解率) = (TP+TN)/N = 86/100 = 86.00%.
  • 정밀도·적합률(適合率, Precision) = TP/(TP+FP) = 24/30 = 80.00%. 분모는 양성 예측 수다.
  • 재현율(再現率, Recall) = TP/(TP+FN) = 24/32 = 75.00%. 분모는 실제 양성 수다.
  • 특이도 = TN/(TN+FP) = 62/68 = 91.18%. 분모는 실제 음성 수다.
  • F1(F値) = 2×정밀도×재현율/(정밀도+재현율) = 48/62 = 77.42%.

임계값을 낮추면 보통 양성을 더 많이 잡는 대신 거짓 양성이 늘어 정밀도와 재현율 사이의 교환이 생긴다. 거짓 음성·거짓 양성의 비용에 따라 지표와 임계값을 고른다. ROC 곡선은 임계값별 참양성률과 거짓양성률, PR 곡선은 정밀도와 재현율을 비교하며 양성이 드물 때 PR이 특히 유용할 수 있다. AUC는 곡선을 요약하지만 운영 임계값이나 오류 비용을 정해 주지 않는다.

4. 불균형 데이터와 정확도의 함정

음성 990건, 양성 10건에서 항상 음성만 예측하면 정확도는 **99.00%**지만 양성 재현율은 0.00%, F1은 **0.00%**다. 양성 예측이 없어 TP+FP=0이므로 정밀도는 수학적으로 정의되지 않는다. 보고할 때는 “정의 불가(경고와 함께 0으로 표시하도록 소프트웨어 설정)”처럼 관례를 밝혀야 하며 수학적 값이 0이라고 단정하면 안 된다.

따라서 클래스 수, 혼동행렬, 클래스별 지표, 임계값별 곡선을 함께 본다. 정확도도 쓸 수 있지만 소수 클래스 오류가 중요할 때 단독으로 쓰면 안 된다.

5. 통계적 근거의 한계 안에서 해석하기

**모집단(母集団)**은 결론을 적용하려는 집단이고 **표본(標本)**은 실제 관측한 일부다. 표본 불확실성 때문에 다른 표본은 다른 추정값을 낼 수 있으며 소수점 자릿수를 늘려도 없어지지 않는다.

  • 선택 바이어스(選択バイアス): 데이터 포함 여부가 결과와 관련되어 표본이 목표 모집단을 대표하지 못한다.
  • 정보 바이어스(情報バイアス): 측정값·라벨·기록이 체계적으로 부정확하다.
  • 교란 바이어스(交絡バイアス): 제3의 요인이 추정 원인과 결과 모두에 영향을 주어 관련성을 왜곡한다.

상관관계만으로 인과관계를 입증할 수 없다. 예측 모델이 연관성을 이용해도 어떤 특징을 바꾸면 결과가 바뀐다는 뜻은 아니다. 정당한 근거 없이 표집·데이터 생성 과정을 넘어 일반화해서는 안 된다. 측정 대상과 방법, 라벨 생성, 시기·환경, 결측, 배포 환경 차이를 확인한다.

용어 핵심 구별
학습 / 검증 / 테스트 파라미터 적합 / 설정·임계값 선택 / 최종 일반화 추정
과적합 / 누출 학습 고유 잡음 학습 / 사용 불가·평가 정보 사용
정밀도 / 재현율 양성 예측 중 정답 / 실제 양성 중 발견
ROC / PR TPR-대-FPR / 정밀도-대-재현율
모집단 / 표본 결론 적용 대상 / 관측한 일부

연습문제 — 모두 창작 문제

문제 1

최종 테스트 추정값을 누출로부터 가장 잘 보호하는 절차는?

  1. 먼저 분할하고 학습 데이터로 전처리와 모델을 적합하며 검증 데이터로 조정한 뒤 손대지 않은 테스트 데이터에서 한 번 평가한다.
  2. 전체 데이터를 표준화한 뒤 학습·테스트로 나눈다.
  3. 하이퍼파라미터를 바꿀 때마다 테스트 정확도를 확인해 최댓값을 남긴다.
  4. 라벨이 있는 전체 데이터로 특징을 선택한 뒤 교차검증한다.

정답: 1

  • 1: 정답. 평가 데이터가 전처리를 가르치거나 개발 결정을 이끌지 않는다.
  • 2: 오답. 전체 통계로 표준화하면 평가 데이터 정보가 누출된다.
  • 3: 오답. 재사용한 테스트 세트는 모델 선택에 참여한다.
  • 4: 오답. 특징 선택도 각 학습 폴드 안에서 해야 한다.

문제 2

“점검 필요”가 양성이고 TP=24, FP=6, FN=8, TN=62일 때 옳은 조합은?

  1. 정밀도 75.00%, 재현율 80.00%
  2. 정밀도 80.00%, 재현율 75.00%
  3. 정확도 91.18%, 특이도 86.00%
  4. F1 80.00%, 정확도 77.42%

정답: 2

  • 1: 오답. 정밀도와 재현율을 뒤바꿨다.
  • 2: 정답. 24/(24+6)=80.00%, 24/(24+8)=75.00%다.
  • 3: 오답. 정확도는 86.00%, 특이도는 91.18%다.
  • 4: 오답. F1은 77.42%, 정확도는 86.00%다.

문제 3

1,000건 중 양성이 10건일 때 항상 음성인 분류기를 옳게 설명한 것은?

  1. 정확도 99%, 양성 재현율 0%, F1 0이며 양성 예측이 없어 정밀도는 정의되지 않는다.
  2. 정확도 1%, 양성 재현율 99%, 정밀도 100%다.
  3. 정확도 99%이므로 오류 비용과 무관하게 적합하다.
  4. 실제 양성이 10건이므로 양성 재현율은 정의되지 않는다.

정답: 1

  • 1: 정답. 음성 990건은 맞히지만 양성을 하나도 찾지 못하며 정밀도 표시 관례를 밝혀야 한다.
  • 2: 오답. 결과를 뒤집고 존재하지 않는 양성 예측을 만들었다.
  • 3: 오답. 정확도가 소수 클래스의 완전한 실패를 숨긴다.
  • 4: 오답. 재현율 분모는 10이며 값은 0이다.

문제 4

통계적으로 타당한 설명은?

  1. 상관관계는 한 변수를 바꾸면 다른 변수가 변한다는 인과관계를 입증한다.
  2. 큰 편의표본은 자동으로 모든 미래 사용자를 대표한다.
  3. 교란요인은 추정 원인과 결과 모두에 영향을 주어 관련성을 왜곡할 수 있다.
  4. 소수점 자릿수를 늘리면 표본 불확실성이 사라진다.

정답: 3

  • 1: 오답. 연관성만으로 인과성을 입증하지 못한다.
  • 2: 오답. 크기만으로 선택 편향이나 분포 변화를 고치지 못한다.
  • 3: 정답. 교란의 핵심 구조다.
  • 4: 오답. 표시 정밀도가 표본 불확실성을 없애지 않는다.

출제 이력과 다음 편

4문제는 모두 창작 문제다. 기출 연도, 시기, AP 표기, 원 시간대, 문제 번호, 번역·각색, 공식 정답 비교는 모두 N/A이며 IPA 기출문제를 사용하지 않았다.

다음 편은 **AP31 — 법무·표준화**다.

블로그로