← 개념서모바일 버전
3과목 · 빅데이터 모델링·4

분류분석

의사결정나무의 분리 기준(지니지수·엔트로피·카이제곱)과 가지치기, CART·C4.5·CHAID 비교, KNN, 나이브베이즈, SVM의 초평면·마진·커널을 다룹니다.

의사결정나무

데이터를 분류 규칙의 나무 구조로 표현하는 지도학습 기법입니다. 결과가 if-then 규칙으로 나와 해석이 쉽고, 비선형 관계와 범주형 변수를 그대로 다룰 수 있습니다.

구성요소 의미
뿌리 노드(Root) 전체 데이터를 담은 최상위 노드
자식/부모 노드 분리로 생긴 하위 노드 / 그 상위 노드
끝 노드(Terminal, Leaf) 더 이상 분리하지 않는 노드. 예측값이 확정되는 곳
깊이(Depth) 뿌리에서 끝 노드까지의 층 수
가지(Branch) 뿌리에서 끝 노드까지의 규칙 경로

분석 절차는 ① 성장(Growing) → ② 가지치기(Pruning) → ③ 타당성 평가 → ④ 해석·예측 입니다.

분리 기준 — 불순도 측정

기준 종속변수 값의 범위
지니 지수(Gini) 1 - Σpᵢ² 이산형 0 ~ 0.5(2범주)
엔트로피(Entropy) -Σ pᵢ log₂ pᵢ 이산형 0 ~ 1(2범주)
카이제곱 통계량 Σ (관측 - 기대)² / 기대 이산형 p-값이 작을수록 분리
분산 감소량 / F통계량 분산의 감소 연속형

지니지수·엔트로피는 작을수록 순수하고, 분리 기준은 불순도 감소량(정보 이득)이 가장 큰 변수·분할점을 고릅니다.

수치 예제 — 한 노드에 A 6개, B 4개 (총 10개)

  • p(A) = 0.6, p(B) = 0.4
  • 지니지수 = 1 - (0.6² + 0.4²) = 1 - (0.36 + 0.16) = 1 - 0.52 = 0.48
  • 엔트로피 = -(0.6 × log₂0.6 + 0.4 × log₂0.4) = -(0.6 × (-0.737) + 0.4 × (-1.322)) = 0.442 + 0.529 = 0.971

극단값 확인. A 5개·B 5개(완전 혼합) → 지니 = 1 - (0.25+0.25) = 0.5, 엔트로피 = 1. A 10개·B 0개(완전 순수) → 지니 = 1 - 1² = 0, 엔트로피 = 0.

정보 이득 계산. 부모 노드(A6·B4, 지니 0.48)를 두 자식으로 나눠 왼쪽 4개가 A4·B0(지니 0), 오른쪽 6개가 A2·B4(지니 = 1 - (0.333²+0.667²) = 1 - (0.111+0.444) = 0.444)라면 가중 지니 = (4/10)×0 + (6/10)×0.444 = 0.267 → 불순도 감소량 = 0.48 - 0.267 = 0.213.

지니와 엔트로피를 헷갈리면 실점합니다. 지니 = 1 - 제곱의 합, 엔트로피 = 마이너스 시그마 p 로그 p. 2범주에서 최대값이 지니는 0.5, 엔트로피는 1이라는 점으로 서로 구별합니다.

정지 규칙과 가지치기

구분 내용
정지 규칙(Stopping rule) 더 이상 분리하지 않는 조건 — 최대 깊이 도달, 노드 최소 관측치 수 미달, 불순도 감소량이 기준 미만
가지치기(Pruning) 다 자란 나무의 끝 노드를 잘라 단순화해 과대적합을 방지

가지치기는 비용복잡도(cost-complexity) 를 기준으로, 검증 데이터의 오분류율이 최소가 되는 크기로 자릅니다.

"가지치기는 나무를 더 크게 만든다"는 오답입니다. 가지치기의 목적은 과대적합 방지이며 결과는 더 작고 단순한 나무입니다. 정지 규칙은 성장 중에 멈추는 것(사전 제한), 가지치기는 다 키운 뒤 잘라내는 것(사후 제거)이라는 시점 차이도 자주 묻습니다.

의사결정나무 알고리즘 비교

알고리즘 분리 기준 분리 형태 종속변수
CART 지니지수(이산형) / 분산 감소량(연속형) 이진 분리만 이산형·연속형 모두
C4.5 / C5.0 엔트로피 기반 정보 이득비 다지 분리 가능 이산형
CHAID 카이제곱 통계량(이산형) / F통계량(연속형) 다지 분리 이산형·연속형
ID3 정보 이득(엔트로피) 다지 분리 이산형

"CART = 지니 = 이진분리", "C4.5 = 엔트로피", "CHAID = 카이제곱 = 다지분리" 이 세 짝은 통째로 암기 대상입니다. CART만 가지가 항상 둘로 갈라진다는 점이 결정적 구별점입니다.

의사결정나무의 단점: 데이터가 조금 바뀌면 나무 구조가 크게 변하는 불안정성, 경계가 축에 수직인 계단 모양이라 선형 경계 표현이 비효율적이라는 점입니다. 이 불안정성을 앙상블(랜덤포레스트)로 보완합니다.

KNN (K-최근접 이웃)

새 관측치와 가장 가까운 K개 이웃의 다수결로 분류합니다.

  • 게으른 학습(lazy learning): 학습 단계에서 모형을 만들지 않고 예측 시점에 거리 계산
  • 거리 척도: 유클리드, 맨하탄, 민코프스키, (범주형은 해밍)
  • 스케일에 매우 민감 → 정규화·표준화 필수
  • K가 작으면 잡음에 민감하고 과대적합, K가 크면 경계가 무뎌져 과소적합
  • K는 보통 홀수로 잡아 동표를 피하고, 흔히 √n 부근에서 탐색

"KNN은 학습 단계에서 파라미터를 추정한다"는 오답입니다. 모형을 미리 만들지 않는 사례 기반(instance-based) 기법이라 학습은 빠르고 예측이 느립니다. 차원이 커지면 거리가 무의미해지는 차원의 저주에 취약합니다.

나이브베이즈 분류

베이즈 정리에 기반해 사후확률이 가장 큰 클래스로 분류합니다.

P(C | X) = P(X | C) × P(C) / P(X)

  • "나이브"의 의미: 모든 설명변수가 조건부 독립이라고 가정 — 현실에서는 대개 성립하지 않지만 성능은 좋음
  • 계산이 빠르고 적은 데이터로도 학습 가능, 고차원 텍스트 분류(스팸 필터) 에 강함
  • 학습 데이터에 없던 조합은 확률이 0이 되므로 라플라스 스무딩으로 보정

나이브베이즈의 핵심 가정은 변수 간 조건부 독립입니다. "변수 간 상호작용을 잘 반영한다"는 서술은 정반대의 오답입니다.

서포트 벡터 머신 (SVM)

두 클래스를 가장 잘 나누는 초평면(hyperplane) 을 찾는 기법입니다.

용어 의미
초평면 데이터를 나누는 결정 경계. p차원 공간에서 p-1차원
서포트 벡터 초평면에 가장 가까운 관측치들. 이들만 경계를 결정
마진(Margin) 초평면과 서포트 벡터 사이 거리의 폭. SVM은 마진을 최대화
하드 마진 오분류를 전혀 허용하지 않음 — 잡음에 취약
소프트 마진 슬랙 변수로 일부 오분류 허용. C가 크면 오분류에 엄격(마진 좁음, 과대적합 위험)
커널 트릭 저차원에서 선형 분리가 안 되면 고차원으로 사상해 선형 분리

커널 종류: 선형, 다항(Polynomial), 가우시안 RBF, 시그모이드. 실무 기본값은 RBF입니다.

SVM의 목적은 "오차 최소화"가 아니라 마진 최대화입니다. 그리고 서포트 벡터가 아닌 관측치를 지워도 경계는 그대로라는 성질이 자주 출제됩니다. SVM은 거리 기반이므로 스케일링이 필요하고, 기본 형태는 이진 분류여서 다중 분류는 일대일·일대다로 확장합니다.