2.4. Entropy and Information Gain Review
이 글은 공부를 위해 적는 것입니다.모든 저작권은 KAIST 문일철 교수님과 Edwith에 있습니다.
강좌 URL :
PDF는 위 강좌 URL을 통해 무료로 다운받을 수 있습니다.
Image 파일 아래의 글들은 강의를 토대로 작성되었으며 저의 생각이 약간 감미된 경우 또한 있습니다.
배운점
- Entropy
- Conditional Entropy
- Information Gain
- Decision Tree의 한계
1개의 특성을 볼 때 어떤 것을 중점적으로 봐야할지 이유에 대해 알아보자
Decision Tree 이해를 위해서는 Entropy의 이해가 선행되어야함
불확실성을 재는 방법 : Entropy
Random Variable
항상 True : 불확실성이 없음
$H(x) = -\sum_X P(X=x)log_bP(X=x)$ 확률 밀도함수를 사용 X: True or False : discrete 한 case
만약 continuous case라면 적분으로
Conditional Entropy
$H(Y|X) = \sum_X P(X=x)H(Y|X=x)$
$= \sum_X P(X=x){-\sum_Y P(Y=y|X=x)log_b P(Y=y|X=x)}$
Given X에 대하여 Y의 불확실성을 구하라
Information Gain
Positive & Negative class에 대한 variable의 entropy를 구하는 것
$P(Y=+) = {307 \over 307+383}$
$H(Y) = - \sum_{Y \in \{+,-\}} P(Y=y)log_2 P(Y=y)$
$H(Y|A1) = \sum_{X \in \{a,b,?\}} \sum_{Y \in \{+,-\}} -P(Y=y)P(Y|A1)log_2 P(Y|A1) )$
$=\sum_{X \in \{a,b,?\}} \sum_{Y \in \{+,-\}} P(Y=y,A1=x)log_2 P(Y|A1)^{-1})$
$=\sum_{X \in \{a,b,?\}} \sum_{Y \in \{+,-\}} P(Y=y,A1=x)log_2 {P(A1=x) \over P(Y=y,A1=x)})$
불확실성을 줄이는 방향으로 진행해야한다. 불확실성을 없앨 수 있는 방법을 알아야함
$IG(Y,A_i) = H(Y) - H(Y|A_i)$
어떤 Attribute를 주었을 때 엔트로피가 얼마나 바뀌었나
IG(Y,A9) > IG(Y,A1)
root를 A9으로 사용
하위 node에 대해서도 반복적으로 entropy를 사용 -> IG 높은 것을 찾음
다양한 방식 ID3, C4.5 CART 등등
ID3 Algorithm
root를 만들어 init node에 넣음
-> 반복(1개의 시작 노드 선택, best variable(Information Gain을 통해) 고름, ...)
좀 더 세분화해서 큰 Decision Tree를 만든다면
지금의 데이터만 잘 판단하지만 더 많은 데이터가 들어온다면 정확하게 판단 못함
Noise, Inconsistency에 의 한 Real World
통계에서는 한계적인 Decision Tree에 대해 회의적
deploy : 1. (군대·무기를) 배치하다 2. 효율적으로 사용하다