머신 러닝의 세계에서, 의사결정트리(Decision Tree) 알고리즘이 널리 사용되죠.
트리가 너무 복잡하니 가지치기를 해보겠습니다. 6,000여개의 와인 데이터를 결정트리로 만든것인데, gini가 보이죠?
이 알고리즘의 핵심 요소 중 하나가 지니 불순도 입니다.
결정트리모델 DecisionTreeClassifier 클래스에 criterion 매개변수가 있는데, 기본값이 gini(= 지니불순도) 입니다.
참고로 criterion 매개변수는 노드에서 데이터를 분할핳 기준을 정하는 것입니다.
결정트리모델은 부모노드와 자식노드의 불순도 차이가 가능한 크도록 트리를 성장시킵니다. 불순도 차이 계산법은
아래와 같습니다.
부모의 불순도- (왼쪽 노드 샘플 수 / 부모의 샘플 수) X 왼쪽 노드 불순도
-(오른쪽 노드 샘플 수\div부모의 샘플 수) X 오른쪽 노드 불순도 =
이런 부모와 자식노드 사이의 불순도 차이를 정보 이득(Infomation Gain)이라고 부릅니다.
'머신러닝' 카테고리의 다른 글
K-평균 알고리즘 (0) | 2024.05.20 |
---|---|
확률적 경사 하강법 (0) | 2024.05.16 |
Sklearn(사이킷런) 붓꽃 데이터 (0) | 2024.05.13 |