나무의 구조
질문을 따라 내려가고 잎에서 예측합니다
의사결정나무는 입력 변수에 대한 질문을 반복해 관측을 여러 영역으로 나누는 지도학습 방법입니다. 맨 위는 루트, 질문이 있는 곳은 분기 노드, 더 나누지 않는 끝은 잎입니다. 새 관측은 학습 때 정한 규칙을 따라 하나의 잎에 도착합니다.
이 장은 한 변수씩 임계값으로 둘로 나누는 CART 방식의 기본 원리를 다룹니다. 회귀에서는 수치형 목표를, 분류에서는 범주를 예측합니다. 여러 변수로 나누면 앞선 조건에 따라 다음 질문이 달라져 상호작용을 표현할 수 있습니다.
공통 30건의 번호 1~20을 학습, 21~30을 확인 자료로 사용합니다. 번호는 시간 순서가 아니며 실제 거래 출처도 확인되지 않은 학습 자료입니다.
회귀 분할 기준
각 잎 안의 오차 제곱합이 작아지는 경계를 찾습니다
제곱오차 회귀나무의 잎 예측은 그 잎의 학습 목표 평균입니다. 후보 경계 s마다 왼쪽 L과 오른쪽 R을 만들고 SSE(s)=ΣL(yᵢ−ȳL)²+ΣR(yᵢ−ȳR)²를 계산합니다. 허용된 후보 중 가장 작은 값을 선택합니다.
노드의 MSE로 표현하면 자식 불순도에 각각 nL/n과 nR/n을 곱해야 같은 기준이 됩니다. 두 자식의 MSE를 단순히 더하면 작은 집단과 큰 집단의 비중을 잘못 줄 수 있습니다. 평균이 제곱오차를 최소화하는 성질은 25장과 연결됩니다.
분할은 현재 노드에서의 탐욕적 선택입니다. 첫 질문을 고른 뒤 되돌아가 모든 나무를 비교하는 방법이 아니므로 전체 최적 나무를 보장하지 않습니다. 최소 잎 크기 등 제한이 있으면 후보 자체가 달라집니다.
회귀 예측과 오차
잎 안에서는 입력이 달라도 같은 평균을 받습니다
31㎡ 초과 80㎡ 이하 7건의 평균은 193.43, 80㎡ 초과 12건의 평균은 105.67만원/㎡입니다. 예를 들어 60㎡와 75㎡는 같은 잎에 들어가 같은 예측을 받습니다. 관측값이 경계에서 불연속적으로 뛰는 것이 아니라 모형의 예측 규칙이 계단 모양인 것입니다.
이 나무의 학습 MAE는 23.14, 확인 MAE는 60.43만원/㎡입니다. 같은 분할의 직선 회귀 확인 MAE 약 41.08과 비교할 수 있지만, 한 번의 작은 분할만으로 모형의 우열을 일반화할 수 없습니다. 반복해서 선택에 사용한 확인 자료는 최종 시험 자료가 아닙니다.
평균을 쓰는 잎은 해당 학습 목표의 범위를 벗어나 추세를 연장하지 않습니다. 관측 범위 밖에서도 출력이 나온다는 사실과 신뢰할 수 있는 외삽은 다릅니다.
분류의 불순도
범주가 얼마나 섞였는지를 측정합니다
범주 비율 pₖ에 대해 지니 불순도는 G=1−Σpₖ²입니다. 한 범주만 있으면 0이고 이진 범주가 반반이면 0.5입니다. 후보 분할은 부모 G에서 표본 수로 가중한 자식 G를 뺀 감소량으로 비교합니다.
엔트로피 H=−Σpₖ log pₖ도 사용할 수 있으며 0 log 0은 0으로 정의합니다. 로그 밑은 단위를 바꾸고 같은 기준 내의 후보 순서는 바꾸지 않습니다. 회귀의 제곱오차와 분류의 불순도는 목표 유형에 맞춰 선택합니다.
균등 가중 분류나무는 잎의 범주 비율로 확률형 점수를 만들고 보통 최다 범주를 예측합니다. 표본·범주 가중치를 쓰면 가중 비율이 됩니다. 불균형 자료에서는 정확도만 보지 말고 28장의 재현율·정밀도·확률 품질과 오류 비용을 함께 확인합니다.
복잡도와 가지치기
잘게 나누는 능력에 제한을 둡니다
깊이 제한, 최소 분할 표본 수, 최소 잎 표본 수, 최대 잎 수는 나무가 지나치게 세밀해지는 것을 막는 사전 제약입니다. 깊이를 하나 늘릴 때 잎 수는 최대 두 배가 될 수 있지만 실제 모양은 분할 가능 여부에 달려 있습니다. 한 건짜리 잎의 완벽한 적합은 새 자료에 대한 정확성의 증거가 아닙니다.
비용복잡도 가지치기는 먼저 자란 나무의 가지를 줄이며 Rα(T)=R(T)+α|T|를 비교합니다. |T|는 잎 수, R(T)는 학습 손실입니다. 여기서는 회귀의 전체 SSE/n을 R로 정의하므로 α의 단위도 목표값의 제곱입니다. 손실의 정규화 방식이 달라지면 α의 숫자도 달라집니다.
이 예제에서 1·2·3잎의 R은 각각 8083.89·2528.10·825.52입니다. 학습 손실 감소만 보면 세 잎이 유리하지만, α가 커지면 잎 수에 대한 비용이 커집니다. 이는 이 세 후보의 설명이며 전체 가지치기 경로를 계산한 결과는 아닙니다.
최대 깊이·최소 잎 수·α는 교차검증으로 선택합니다. 동일 단지나 미래 시점을 예측할 목적이라면 집단·시간 분할을 따르고, 전처리와 나무 학습을 폴드 안에서 다시 수행합니다. 시험 자료는 선택이 끝난 뒤에 평가합니다.
변수와 전처리
거리의 스케일보다는 순서와 표현 방식이 중요합니다
수치형 변수의 순서로 분할하는 나무는 면적을 ㎡에서 다른 양의 비례 단위로 바꾸어도 후보 집단이 같습니다. 따라서 29장의 거리 기반 KNN과 달리 일반적으로 표준화가 필수는 아닙니다. 다만 반올림·수치 정밀도·근사 분할은 결과에 영향을 줄 수 있습니다.
범주형 변수에 임의의 번호를 붙이면 존재하지 않는 순서로 나눌 수 있습니다. 원핫 인코딩 또는 범주 분할을 지원하는 구현을 검토하세요. 결측값을 자동으로 처리하는지는 알고리즘·구현에 따라 다르므로 학습 자료에서 정한 대체 규칙이나 결측 분기 방식을 명시해야 합니다.
안정성과 해석
읽기 쉬운 규칙도 인과 설명은 아닙니다
표본이 조금 바뀌면 첫 분할과 이후 나무가 크게 달라질 수 있습니다. 분할 경계 31㎡를 시장의 보편적 기준으로 해석하지 마세요. 변수 중요도의 불순도 감소 합은 분할 후보가 많은 변수에 유리할 수 있고, 상관된 변수 사이에 중요도가 나뉠 수도 있습니다.
별도 평가 자료에서 변수를 섞어 보는 순열 중요도 역시 상관 구조와 평가 설계의 영향을 받습니다. 중요도가 높다는 것은 그 변수가 목표를 원인으로 변화시킨다는 뜻이 아닙니다.
랜덤 포레스트는 여러 나무의 결과를 모으고, 부스팅은 손실을 줄이는 방향으로 나무를 순차적으로 더합니다. 단일 나무의 불안정성을 보완하는 다음 학습 주제이며, 이 장의 수치는 앙상블 성능을 나타내지 않습니다.
확인 문제
분할 기준과 예측을 직접 확인하세요
- 75㎡의 예측은 어느 잎에서 나오나요?
답과 해설
31 초과 80 이하의 두 번째 잎입니다. 예측은 학습 7건 평균 193.43만원/㎡입니다.
- 자식 노드의 불순도를 왜 가중하나요?
답과 해설
자식마다 관측 수가 다르므로 전체 관측에 대한 평균 손실로 비교하기 위해서입니다.
- 양성과 음성이 3:1이면 지니 불순도는?
답과 해설
1−(3/4)²−(1/4)²=0.375입니다.
- 학습 오차가 가장 작은 깊이를 바로 채택해도 될까요?
답과 해설
과적합할 수 있습니다. 목적에 맞는 검증 분할에서 복잡도를 선택하고 최종 시험은 분리합니다.
CH2 Macro에서 읽기
모형의 종류와 적용 범위를 먼저 확인합니다
회귀계수로 표현된 식과 구간별 잎 평균은 다른 예측 규칙입니다. 결과를 읽을 때 학습 변수·기간·잎의 관측 수·검증 오차를 함께 확인하세요. 여기의 나무가 CH2 Macro의 실제 서비스 알고리즘이라고 전제하지 않습니다.
학습 예제의 잎 평균은 개별 적정가격이나 인과효과를 뜻하지 않습니다. 소수 표본과 조건 차이를 고려해 집단 통계와 모형의 의미를 이해하는 데 사용합니다.
정리와 참고자료
질문·손실·복잡도·검증을 함께 읽습니다
나무는 입력 공간을 나누고 잎에서 예측합니다. 질문이 단순해도 분할 선택과 복잡도 조절에는 검증이 필요합니다. 다음 31장 「군집분석」에서는 목표값 없이 관측을 묶는 방법을 배웁니다.
그림과 계산은 공통 학습 자료 및 별도 가상 분류 예제로 직접 작성했습니다. 참고자료 확인: 2026-10-09.