모던지 / 빅데이터분석기사 / 모델링 4강. 의사결정나무와 앙상블

모델링 4강. 의사결정나무와 앙상블

나무 한 그루의 가장 큰 약점은 불안정하다는 것입니다. 그런데 그 약점이 숲을 만들면 강점으로 뒤집힙니다.

풀고 시작

문제 1. 의사결정나무에서 노드를 나눌 때 쓰는 불순도 지표가 아닌 것은?
지니 지수와 엔트로피는 한 노드에 여러 클래스가 얼마나 섞여 있는지를 재는 값이고, 카이제곱은 분리 전후의 차이를 검정하는 데 쓰입니다. 결정계수는 회귀모형의 설명력을 나타내는 지표라 분리 기준으로 쓰이지 않습니다.

스무고개를 자동으로 만드는 기계

의사결정나무는 데이터를 놓고 스무고개를 합니다. 어떤 질문을 먼저 던져야 답에 가장 빨리 도달할까요. 좋은 질문은 답을 던졌을 때 남은 집단이 최대한 한쪽으로 쏠리게 만드는 질문입니다. 이 쏠림의 반대말이 불순도이고, 그것을 재는 자가 지니 지수와 엔트로피죠.

지니 지수는 무작위로 두 개를 뽑았을 때 서로 다른 클래스일 확률에 가깝습니다. 한 노드가 한 클래스로만 채워지면 0이고, 반반이면 최대가 됩니다. 엔트로피는 정보이론에서 온 값으로, 그 노드의 결과를 알아맞히기 위해 필요한 정보량입니다. 역시 순수하면 0입니다. 분리 전 불순도에서 분리 후 불순도를 뺀 값을 정보 이득이라 부르고, 이 이득이 가장 큰 질문을 고릅니다. 종속변수가 연속형이면 불순도 대신 분산 감소량을 씁니다.

문제는 나무가 멈추지 않는다는 것입니다. 끝까지 자라면 잎마다 데이터 한 개씩 남아 훈련 데이터를 완벽히 맞히지만 새 데이터에서는 무너집니다. 그래서 가지치기를 합니다. 깊이나 최소 표본 수로 미리 제동을 거는 사전 가지치기와, 다 키운 뒤 도움이 안 되는 가지를 잘라 내는 사후 가지치기가 있죠.

나무의 진짜 매력은 성능이 아니라 설명 가능성입니다. 어떤 조건을 타고 어디로 갔는지 그림 한 장으로 보여 줄 수 있으니까요. 대출 심사나 의료처럼 근거를 대야 하는 자리에서 여전히 쓰이는 이유입니다. 대신 결정적 약점이 있습니다. 데이터가 조금만 바뀌어도 나무 모양이 확 달라집니다. 위쪽 분기 하나가 바뀌면 그 아래가 통째로 재배치되니까요.

황소 무게와 집단지성

1906년, 2강에 나왔던 프랜시스 골턴이 한 가축 품평회에 갑니다. 사람들이 돈을 걸고 황소의 무게를 맞히는 놀이가 벌어지고 있었죠. 골턴은 787장의 응모 용지를 모아 계산해 봅니다. 개인의 추측은 제각각이었지만, 그 답들의 중앙값은 실제 무게와 거의 일치했습니다.

앙상블의 직관이 여기 있습니다. 각자가 틀리더라도 서로 다른 방향으로 틀린다면, 모아서 평균을 내는 순간 오차가 상쇄됩니다. 그래서 앙상블의 성공 조건은 개별 모델이 뛰어난 것이 아니라 개별 모델이 서로 다른 실수를 하는 것입니다. 앞에서 본 나무의 불안정함이 여기서는 자산이 됩니다.

방식 어떻게 주로 줄이는 것
배깅 부트스트랩 표본으로 여러 모델을 병렬 학습해 투표나 평균 분산
부스팅 앞 모델이 틀린 데이터에 가중치를 주며 순차 학습 편향
랜덤 포레스트 배깅에 더해 분기마다 변수도 무작위로 골라 씀 분산
스태킹 여러 모델의 예측을 입력으로 받는 상위 모델을 학습 상황에 따라

랜덤 포레스트가 배깅에 한 가지를 더 얹은 이유를 알면 앙상블 전체가 이해됩니다. 부트스트랩만으로는 나무들이 여전히 비슷해집니다. 아주 강한 변수 하나가 있으면 모든 나무가 그것부터 물고 늘어지니까요. 그래서 각 분기에서 후보 변수를 무작위로 몇 개만 뽑아 나무들을 억지로 다르게 만듭니다. 개별 나무는 조금 나빠지지만 숲 전체는 좋아집니다.

부스팅은 성격이 다릅니다. 병렬이 아니라 순차로, 앞 모델이 틀린 데이터에 무게를 실어 다음 모델이 그 부분을 집중 공략합니다. 그래디언트 부스팅과 XGBoost가 이 계열이고, 정형 데이터 대회에서 오랫동안 강자 자리를 지켰습니다. 다만 잡음이 많은 데이터에서는 틀린 것을 계속 파고들다 과적합될 수 있습니다.

인출 문제

문제 1. 배깅과 부스팅의 차이로 옳은 것은?
배깅은 서로 다른 부트스트랩 표본으로 병렬 학습해 평균을 내는 방식이라 흔들림을 줄입니다. 부스팅은 이전 모델이 틀린 부분에 가중치를 실어 순차적으로 보완하므로 편향을 줄이는 쪽에 가깝습니다.
문제 2. 랜덤 포레스트가 배깅에 더해 각 분기에서 변수를 무작위로 선택하는 이유는?
부트스트랩만 쓰면 지배적인 변수를 모든 나무가 먼저 사용해 결과가 닮아 버립니다. 앙상블의 이득은 구성원이 서로 다른 실수를 할 때 커지므로, 변수 후보를 제한해 나무들을 일부러 다르게 만듭니다.
문제 3. 의사결정나무에서 가지치기를 수행하는 목적은?
제한 없이 자란 나무는 훈련 데이터를 거의 완벽히 분류하지만 새 데이터에서 성능이 급락합니다. 깊이나 최소 표본 수로 미리 멈추거나 다 키운 뒤 가지를 쳐 일반화 성능을 확보합니다.
문제 4. 한 노드에 속한 데이터가 모두 같은 클래스일 때 지니 지수의 값은?
지니 지수는 노드가 순수할수록 작아지고 완전히 한 클래스면 0이 됩니다. 두 클래스가 반반일 때 최대가 되며, 엔트로피 역시 순수한 노드에서 0이 된다는 점은 같습니다.

더 풀기

출제기준의 세세항목을 따라 이 강의 범위에서 새로 낸 문제입니다. 모의고사도 여기에서 뽑습니다.

묶음 1

문제 1. 의사결정나무에서 분리 기준으로 쓰이지 않는 것은?
분류 나무는 지니, 엔트로피, 카이제곱을 씁니다. 회귀 나무는 분산 감소를 씁니다.
문제 2. 지니 지수가 0이라는 것의 의미로 옳은 것은?
불순도가 0이므로 더 나눌 이유가 없는 순수 노드입니다.
문제 3. 정보 이득의 정의로 옳은 것은?
나눔으로써 줄어든 불확실성의 양입니다. 이 값이 큰 분리를 고릅니다.
문제 4. CART 알고리즘의 특징으로 옳은 것은?
이진 분리를 반복하는 것이 CART의 특징입니다.
문제 5. CHAID가 분리 기준으로 쓰는 통계량은?
통계적 유의성에 근거해 분리하며 다지 분리를 허용합니다.
문제 6. 의사결정나무의 장점으로 가장 알맞은 것은?
해석 가능성이 최대 강점입니다. 단일 나무는 과대적합에 취약합니다.
문제 7. 나무가 깊어질수록 나타나는 현상으로 옳은 것은?
잎마다 관측이 몇 개 남지 않으면 잡음까지 규칙으로 굳힙니다.
문제 8. 가지치기의 목적으로 가장 알맞은 것은?
사전 가지치기는 성장 중에, 사후 가지치기는 다 키운 뒤에 자릅니다.
문제 9. 배깅이 주로 줄이는 오차 성분은?
서로 다른 표본으로 학습한 모델을 평균 내면 흔들림이 줄어듭니다.
문제 10. 부스팅이 주로 줄이는 오차 성분은?
약한 학습기를 순차적으로 붙여 못 맞힌 부분을 보완하므로 편향이 줄어듭니다.
문제 11. 랜덤 포레스트가 배깅에 더한 요소로 옳은 것은?
나무들 사이의 상관을 낮춰 평균의 효과를 키웁니다.
문제 12. 스태킹에 대한 설명으로 옳은 것은?
서로 다른 성격의 모델을 결합할 때 유리하며 누출을 막기 위해 교차검증 예측을 씁니다.

묶음 2

문제 1. 랜덤 포레스트에서 변수 중요도를 구하는 방법으로 옳은 것은?
순열 중요도는 그 변수를 무작위로 섞어 성능 하락을 재는 방식입니다.
문제 2. 불순도 기반 변수 중요도의 편향으로 알려진 것은?
분할 후보가 많을수록 우연히 좋은 분리를 찾기 쉬워서 생기는 편향입니다.
문제 3. 아웃오브백 평가에 대한 설명으로 옳은 것은?
별도 분할 없이 성능을 가늠할 수 있어 편리합니다.
문제 4. 에이다부스트의 학습 방식으로 옳은 것은?
어려운 표본에 집중하도록 가중치를 갱신하는 것이 핵심입니다.
문제 5. 그래디언트 부스팅의 아이디어로 옳은 것은?
손실함수의 기울기 방향으로 모델을 하나씩 더하는 방식입니다.
문제 6. 부스팅에서 학습률을 작게 할 때 필요한 조치로 가장 알맞은 것은?
한 걸음을 작게 가면 더 많은 걸음이 필요합니다. 대신 일반화 성능이 좋아지는 경향이 있습니다.
문제 7. 부스팅이 배깅보다 이상값과 라벨 오류에 취약한 이유로 가장 알맞은 것은?
잡음이 많은 데이터에서는 오히려 성능이 떨어질 수 있습니다.
문제 8. 앙상블이 효과를 보기 위한 조건으로 가장 알맞은 것은?
오류가 겹치면 평균을 내도 줄어들지 않습니다. 다양성이 핵심입니다.
문제 9. 랜덤 포레스트의 단점으로 가장 알맞은 것은?
수백 그루의 평균이므로 규칙을 그대로 읽을 수 없습니다.
문제 10. 회귀 문제에서 배깅의 결합 방식으로 옳은 것은?
분류는 투표, 회귀는 평균으로 결합합니다.
문제 11. 트리 기반 모델이 선형모형보다 유리한 상황으로 가장 알맞은 것은?
구간을 나누어 규칙을 만들기 때문에 상호작용을 자연스럽게 담습니다.
문제 12. 트리 기반 모델의 외삽 능력에 대한 설명으로 옳은 것은?
잎의 대푯값을 내놓으므로 범위 밖에서는 더 이상 변하지 않습니다.

묶음 3

문제 1. 앙상블 모델의 예측 시간이 문제가 될 때의 대응으로 가장 알맞은 것은?
성능과 응답 속도의 맞바꿈을 조절해야 운영이 가능합니다.
문제 2. 부스팅 모델에서 조기 종료를 쓰는 이유로 가장 알맞은 것은?
반복 횟수 자체가 복잡도이므로 멈추는 시점이 곧 규제가 됩니다.
문제 3. 랜덤 포레스트에서 나무 수를 늘릴 때의 일반적 경향으로 옳은 것은?
평균의 효과라 나무를 더해도 과적합이 심해지지 않는 것이 장점입니다.
문제 4. 트리의 최소 잎 크기를 키우면 나타나는 변화로 옳은 것은?
잎마다 관측을 충분히 요구하면 잡음에 맞추기 어려워집니다.
문제 5. 범주형 변수의 범주가 매우 많을 때 트리 모델에서 생기는 문제로 가장 알맞은 것은?
범주를 묶거나 목표값 인코딩으로 대응하되 누출에 주의합니다.
문제 6. 앙상블에서 다양성을 확보하는 방법으로 보기 어려운 것은?
완전히 같은 조건이면 같은 모델이 나와 결합의 이득이 없습니다.
문제 7. 투표 방식 앙상블에서 소프트 투표의 특징으로 옳은 것은?
확률을 평균하면 확신의 정도까지 반영되어 대개 더 안정적입니다.
문제 8. 의사결정나무를 회귀에 쓸 때 잎에서 예측하는 값으로 옳은 것은?
분산 감소를 기준으로 나누고 잎의 평균을 예측값으로 씁니다.
문제 9. 트리 모델의 규칙을 업무에 그대로 쓰기 전에 확인할 점으로 가장 알맞은 것은?
잎에 관측이 몇 개뿐인 규칙은 우연일 가능성이 큽니다.
문제 10. 앙상블 모델의 변수 중요도를 해석할 때 주의할 점으로 가장 알맞은 것은?
같은 정보를 담은 변수가 여럿이면 기여가 분산되어 보입니다.
문제 11. 부스팅과 배깅의 학습 방식 차이로 옳은 것은?
그래서 배깅은 분산 처리에 유리하고 부스팅은 그렇지 않습니다.
문제 12. 앙상블을 쓰기로 결정할 때 함께 따져야 할 비용으로 보기 어려운 것은?
수집 주기는 앙상블 여부와 직접 관련이 없습니다.

이전: 3강 분류 모형 · 다음: 5강 인공신경망과 딥러닝

모던지 · 궁금하면 모던지 GitHub · 2026-09-10