PART 03 · 데이터 분석  │  CHAPTER 05 · 정형 데이터 마이닝
교재 p.415–418 · 29회 기출 24번
학습 시각화 · 계산 예제 · 기출문제

의사결정나무의
불순도 측도

카이제곱 통계량 · 지니지수 · 엔트로피를 비교하고, 어떤 분할이 더 좋은지 계산으로 확인해 봅니다.

ROOT
01

불순도 측도 한눈에 비교

Impurity · Purity · Split Criterion

불순도(Impurity)는 하나의 노드에 서로 다른 클래스가 얼마나 섞여 있는지를 나타냅니다. 분할 전후의 값을 비교하여 분류규칙을 선택합니다.

Chi-square

카이제곱 통계량

실제도수(O)와 독립을 가정한 기대도수(E)의 차이를 통해 분할 변수와 목표변수의 연관성을 살핍니다.

χ² = Σ (O − E)² / E
기대도수 = (행 합계 × 열 합계) / 전체
Gini Index

지니지수

클래스별 비율의 제곱을 이용하여 노드의 클래스 혼합 정도를 계산합니다.

Gini(T) = 1 − Σ pᵢ²
이진분류에서는 2p(1−p) · 최대 0.5
Entropy

엔트로피 지수

클래스가 섞여 있을 때의 불확실성을 정보이론 관점에서 측정합니다.

H(T) = − Σ pᵢ log₂ pᵢ
이진분류에서는 최대 1 bit · 0log₂0=0
분할을 평가할 때지니·엔트로피 → 자식노드 가중평균 ↓카이제곱 → 연관성 ↑
주의: 지니지수·엔트로피는 ‘낮을수록 순수’합니다. 카이제곱 값은 직접적인 불순도 수치가 아니며, 값이 크면 일반적으로 연관성의 증거가 강하다는 의미입니다(표본 수와 자유도도 함께 고려).
02

직접 바꿔 보는 클래스 비율과 불순도

슬라이더를 움직이면 지니·엔트로피 값과 곡선이 동시에 변합니다

노드 안의 클래스 비율 설정

클래스 A 비율 p50%
A 50%
B 50%
지니지수 Gini0.500
엔트로피 Entropy1.000

50:50일 때 두 클래스가 가장 많이 섞여 있습니다.

확률 p에 따른 불순도 곡선

00.51.0클래스 A 비율 p00.51.0
지니지수(최대 0.5)엔트로피(최대 1)

p=0 또는 1이면 두 지표 모두 0이며, 이진분류에서 p=0.5이면 최대값을 갖습니다.

03

교재 표로 계산해 보는 3가지 지표

p.416 예제 · Good/Bad × Left/Right · 전체 300개

관측도수 O 괄호는 기대도수 E

실제 등급LeftRight합계
Good32 (56)178 (154)210
Bad48 (24)42 (66)90
합계80220300

기대도수 계산 예 · Good & Left = 210 × 80 / 300 = 56

표의 괄호 (56), (154), (24), (66)은 실제 관측한 건수가 아니라 ‘두 변수 사이에 연관성이 없다’는 가정에서 기대하는 건수입니다.

분할 전 → 분할 후

부모 노드 · 300개Good 210 / Bad 90
Gini = 0.4200
Left · 80개Good 32 / Bad 48
Gini = 0.4800
Right · 220개Good 178 / Bad 42
Gini ≈ 0.3088

자식 노드 가중평균: 왼쪽은 80/300, 오른쪽은 220/300의 비율로 반영합니다.

① 카이제곱 통계량 χ²
46.7532
분할 전 Good/Bad와 Left/Right 사이의 연관성
(32−56)²/56 + (178−154)²/154
+ (48−24)²/24 + (42−66)²/66
② 분할 후 가중 지니지수
0.3545
부모 Gini 0.4200 → 자식 가중평균 0.3545
(80/300)×0.4800 +
(220/300)×0.3088
지니 감소량 ≈ 0.0655
③ 분할 후 가중 엔트로피
0.7747
부모 Entropy 0.8813 → 자식 가중평균 0.7747
(80/300)×H(32/80,48/80)
+ (220/300)×H(178/220,42/220)
정보이득 ≈ 0.1066
이 예제에서 지니지수와 엔트로피는 자식 노드들의 표본 수를 반영한 가중평균으로 계산합니다. 개별 자식 노드의 지수만 단순 평균하는 방식과 구별하세요.
04

최적 분할 찾기 · Temperature 예제

p.417 · 14개 관측치 기준 · 가중 지니지수가 가장 작은 분할을 선택

온도 범주 Hot · Mild · Cold로 분할할 수 있는 세 가지 이진 분할을 비교해 보세요. 아래 선택지를 누르면 자식 노드의 클래스 구성과 지니지수가 바뀝니다.

선택: Left = {Mild}, Right = {Hot, Cold}

Left · 6개
P 5개 / N 1개
Right · 8개
P 3개 / N 5개

가중 지니지수 = 0.3869 · 세 후보 중 가장 작은 값 → 최적 분리

※ 온도 예제의 P/N 구성은 교재 p.417에 제공된 14개 관측치를 바탕으로 계산했습니다. 세 가지 후보 중 Left={Mild}의 가중 지니지수가 가장 작습니다.
05

시험 직전 핵심 개념 체크

자주 혼동되는 표현과 정확한 해석을 함께 기억하기

지니지수 · 엔트로피

  • 클래스가 한 종류만 있으면 모두 0 → 순수도가 가장 높음.
  • 이진분류에서 50:50일 때 지니 0.5, 엔트로피 1 → 가장 불순함.
  • 최적 분할은 일반적으로 자식 노드의 가중평균 불순도가 작은 분할.
  • 지니지수는 다중분류에도 적용 가능하며 이진분류 전용이 아님.

카이제곱 · 문제 풀이 주의

  • 기대도수: 행 합계 × 열 합계 ÷ 전체.
  • 카이제곱은 실제도수와 기대도수 차이에 기반한 연관성 평가.
  • “지니가 작을수록 더 이질적” → 반대. 더 순수한 상태.
  • “지니지수는 오직 이진분류에서만 가능” → 잘못된 일반화.
06

핵심개념 체크 · 기출문제

29회 기출 · 문제 24 · 객관식 선택 후 정답과 해설 확인
29회 기출문제 24불순도 · 지니지수
다음 중 지니지수의 설명 중 부적절한 것은?
보기

정답: ②

핵심 해설: 지니지수가 작을수록 서로 다른 클래스가 덜 섞여 순수도는 높아집니다. 지니지수의 범위는 클래스 개수에 따라 달라지며, 이진분류에서는 0~0.5입니다.

① 대체로 적절
지니지수는 노드의 클래스 혼합 정도를 나타내는 불순도 척도입니다.
② 부적절 · 정답
지니지수가 낮으면 이질성이 아니라 동질성과 순수도가 높아집니다.
③ 표현상 주의
클래스 비율의 불순도를 수치화한다는 취지이나, 일반적인 연속형 자료의 분산(variance)과 동일한 통계량은 아닙니다.
④ 출제 표현상 한계
지니지수는 CART의 이진 분할 등에 널리 활용되지만, 다중 클래스 노드에도 계산할 수 있으므로 ‘이진분류에만 사용’된다고 외우면 안 됩니다.
정답은 교재 기준 ②입니다. 다만 ③·④의 문장은 엄밀한 이론 설명으로는 보완이 필요한 표현이므로 문제 풀이와 학습 개념을 구분해 두세요.
학습 정리: PART 03 데이터 분석 · 5장 정형 데이터 마이닝 · pp.415–418. 제공된 교재 텍스트의 계산과 데이터를 기준으로 구성했으며, 학습용 해설에서 개념의 엄밀성을 보완했습니다. · 오프라인에서도 실행되는 단일 HTML 파일