information based learning - Decision tree 도입
서론: 'Guess Who?' 게임으로 배우는 decision tree
정보 기반 학습은 정보 이론을 기반으로 예측 모델을 구축하는 머신러닝 방법이다. 그 중심에는 결정 트리(Decision Tree)가 있다. 결정 트리는 트리 구조를 이용하여 데이터를 분류하고 예측하는 모델로, 정보 이론의 핵심 개념인 엔트로피(Entropy)와 정보 이득(Information Gain)을 기반으로 한다. (자세한 내용은 다음에 배워보겠다)
이 개념들을 쉽게 이해하기 위해 'Guess Who?' 게임을 예시로 살펴보자. 이 게임은 두 명의 플레이어가 각자 캐릭터 카드를 하나씩 선택하고, 상대방의 카드가 어떤 캐릭터인지 질문을 통해 맞추는 게임이다. 질문은 "남자입니까?", "안경을 썼습니까?"와 같이 '예/아니오'로 답할 수 있는 질문만 가능하다.
Guess Who? 게임: 최적의 질문 전략
![]() |
Guess who? |
만약 위와 같이 4장의 캐릭터 카드(Brian, John, Aphra, Aoife)로 게임을 한다면, 어떤 질문을 먼저 하는 것이 유리할까? 직관적으로는 "Brian입니까?"와 같이 특정 캐릭터를 지목하는 질문이 유리할 것으로 생각할 수 있다. 하지만 이러한 질문은 답이 '예'일 확률이 1/4에 불과하며, '아니오'일 경우 남은 3장의 카드 중에서 다시 추측해야 한다.
반면, "남자입니까?"와 같은 질문은 답이 '예'일 경우 Brian과 John, '아니오'일 경우 Aphra와 Aoife로 경우의 수를 절반으로 줄여준다. 즉, 질문의 답을 통해 얻는 정보량이 더 많기 때문에, 평균적으로 더 적은 질문으로 정답을 맞출 수 있다.
실제로 계산해보면, "Brian입니까?"와 같은 질문으로 시작하는 경우 평균 2.75개의 질문이 필요하지만, "남자입니까?"로 시작하는 경우 평균 2개의 질문만으로 충분하다.
![]() |
"Brian"만 구분한 경우 |
![]() |
"남자입니까?"로 시작한 경우 |
정보 기반 머신러닝 알고리즘
정보 기반 머신러닝 알고리즘도 'Guess Who?' 게임과 같은 원리를 사용한다. 즉, 데이터를 가장 효과적으로 분류할 수 있는 질문, 즉 정보 이득이 가장 높은 설명 변수를 선택하여 결정 트리를 구축한다.
결정 트리: 이메일 스팸 예측 모델
결정 트리는 노드(node)와 가지(branch)로 구성된 트리 구조를 갖는다. 각 노드는 설명 변수에 대한 질문을 나타내며, 가지는 질문의 답에 따라 다음 노드로 연결된다. 최종적으로 도달하는 노드인 잎 노드(leaf node)는 예측 결과를 나타낸다.
예를 들어, 이메일 스팸 예측 모델을 결정 트리로 나타낼 수 있다. 설명 변수로는 '의심스러운 단어 포함 여부', '발신자 미등록 여부', '이미지 포함 여부' 등을 사용할 수 있다. 각 노드에서 이러한 변수들을 이용하여 질문을 하고, 가지를 따라 내려가면서 스팸 여부를 판단한다.
![]() |
Spam prediction decision tree |
최적의 결정 트리: 정보 이득을 이용한 선택
'Guess Who?' 게임에서 평균 질문 횟수가 가장 적은 전략이 최적의 전략이었던 것처럼, 결정 트리에서도 트리의 높이가 가장 낮은 것이 최적의 트리다. 트리의 높이가 낮다는 것은 예측에 필요한 질문(설명 변수)의 개수가 적다는 것을 의미하며, 이는 정보 이득이 높은 설명 변수를 상위 노드에 배치함으로써 가능하다. 위 스팸 예측 모델에서 (b)는 단 하나의 질문만으로 구분한 반면, (a) & (c)는 2개의 질문이 필요하다는 점에서 (b)가 최적의 트리임을 알 수 있다.
따라서 최적의 결정 트리를 구축하기 위해서는 각 설명 변수의 정보 이득을 계산하고, 정보 이득이 높은 변수를 루트 노드(root node)에 배치해야 한다. 이를 통해 트리의 높이를 최소화하고 예측 성능을 향상시킬 수 있다.
결론: 정보 이득 기반 결정 트리 학습
결정 트리는 정보 이득을 기반으로 데이터를 분류하고 예측하는 효과적인 모델이다. 정보 이득이 높은 설명 변수를 상위 노드에 배치함으로써 트리의 높이를 최소화하고 예측 성능을 향상시킬 수 있다. 이러한 정보 기반 학습 방법은 데이터 마이닝, 의료 진단, 자연어 처리 등 다양한 분야에서 활용되고 있다.
[인공지능개론] Artificial Intelligence Basics
(https://hyeonb.blogspot.com/2024/09/artificial-intelligence-basics.html)