질문을 통해 예측하는 결정 트리
결정 트리(Decision Tree)
는 데이터를 분류하거나 예측할 때 질문을 차례로 던지며 답을 찾아가는 머신러닝 알고리즘입니다.
스무고개 게임처럼 여러 개의 조건을 거쳐 최종 결론을 도출하는 구조를 가지고 있습니다.
예를 들어, 환자가 특정 질병을 가지고 있는지 예측한다고 가정해 보겠습니다.
-
발열이 있습니까? →
네
→ 기침이 있습니까? →네
→ 독감일 가능성이 높음 -
발열이 있습니까? →
아니오
→ 알레르기일 가능성이 높음
이처럼 결정 트리는 질문과 대답을 따라가며 데이터를 분류하는 역할을 합니다.
결정 트리의 구조
결정 트리는 노드(Node)
와 가지(Branch)
로 구성됩니다.
-
루트 노드(Root Node): 가장 처음 시작하는 질문
-
내부 노드(Internal Node): 중간 질문
-
단말 노드(Leaf Node): 최종 결과
(발열 여부?) / \ 네 아니오 / \ (기침 여부?) 알레르기 / \ 독감 일반 감기
결정 트리는 데이터를 나누는 방식을 자동으로 학습하며, 가장 적절한 질문을 찾아가는 과정에서 트리의 구조가 만들어집니다.
결정 트리의 학습 방식
결정 트리는 데이터를 여러 개의 조건
을 사용하여 나누는 방식으로 머신러닝 모델을 학습합니다.
이 과정에서 정보 이득
또는 지니 불순도
를 사용하여 데이터를 어떻게 나눌지 결정합니다.
1. 정보 이득 (Information Gain)
정보 이득은 데이터를 나눈 후 불확실성이 얼마나 줄어들었는지를 평가합니다.
예를 들어 "발열이 있습니까?"라는 질문을 통해 데이터를 나누었을 때, 나누기 전보다 더 명확하게 데이터를 분류할 수 있다면 정보 이득이 높다고 할 수 있습니다.
2. 지니 불순도 (Gini Impurity)
지니 불순도는 데이터가 얼마나 섞여 있는지를 나타내는 값입니다.
값이 0이면 완전히 하나의 클래스로 나뉘어진 것이고, 값이 클수록 다양한 클래스가 섞여 있다는 의미입니다.
결정 트리는 지니 불순도를 최소화하는 방향으로 학습합니다.
결정 트리의 장점과 한계
결정 트리는 직관적이고 이해하기 쉬운 머신러닝 알고리즘입니다.
하지만 모든 알고리즘이 그렇듯, 장점이 있는 만큼 단점도 존재합니다.
결정 트리를 사용할 때 고려해야 할 주요 사항을 정리해 보겠습니다.
결정 트리의 장점
결정트리는 전처리 과정이 적게 필요하고, 범주형 데이터
(분류)와 수치형 데이터
(회귀)를 모두 처리 가능하다는 장점이 있습니다.
결정 트리는 숫자로 된 데이터뿐만 아니라 "남/여", "스팸/정상" 같은 범주형 데이터도 문제없이 다룰 수 있습니다.
결정 트리의 한계
결정 트리가 너무 깊어지면 훈련 데이터에만 지나치게 맞춰지고, 새로운 데이터에는 제대로 작동하지 않는 문제가 발생할 수 있습니다.
이를 방지하기 위해 가지치기(Pruning)
같은 기법을 활용해 불필요한 분기를 제거할 수 있습니다.
또한 데이터가 많아지면, 최적의 분할을 찾는 연산이 많아져 속도가 급격히 느려질 수 있습니다.
결정 트리는 직관적이고 이해하기 쉬운 강력한 알고리즘이지만, 과적합 문제나 데이터 변화에 민감한 단점이 있습니다.
다음 수업에서는 지금까지 학습한 내용을 바탕으로 간단한 퀴즈를 풀어보겠습니다.
결정 트리(Decision Tree)의 루트 노드(Root Node)는 무엇을 의미하나요?
최종 결과를 나타내는 노드
중간 질문을 나타내는 노드
데이터를 나누는 방식을 나타내는 노드
가장 처음 시작하는 질문을 나타내는 노드
Lecture
AI Tutor
Design
Upload
Notes
Favorites
Help