인공지능(AI)

Supervised - Descision Tree

sysman 2020. 10. 19. 16:45

* Supervised Learning(지도 학습)

 

Decision Tree(의사결정 나무)

- 2가지 이진 질의의 분류 규칙으로 root node의 질의 결과에 따라 가지를 타고 뻗어 이동하여 leaf까지 도달함.

 

I. 2가지 다 적용 가능함.

a. 범주형 자료 : Classification Tree

b. 수치형 자료 : Regression Tree

 

 II. Rule 기반 의사 결정

의사결정 나무

Root node : 최상위 노드

Splitting (Branch) : 하위노드로 분리

Decision Node (Parent Node): 2개의 하위 노드로 분리

Leaf(Child Node): 더이상 분리되지 않는 최하위 노드

 

 

장점

규칙기반으로 직관적으로 이해 쉽고 설명력이 좋음

- 불순도 기반한 최적 분류

- 분리 과정에서 의사결정 나무가 성장

- 각 leaf는 순도가 높은 적은 데이터를 포인트를 포함.

 

동질성 높은 그룹 구성을 위해 재귀적 파티셔닝 수행( 엔트로피가 가장 낮은 곳부터 수행)

1단계 : 동질성이 높은 두 그룹으로 나눌 수 있는 이진 질의 적용

2단계 : 종료 조건을 만족할때까지 1단계 반복

 

단점

과적합 문제(Overfitting)

- 각 노드는 동질성 높고 불순도가 낮은 방향으로 분리

- 너무 복잡하고 큰 의사결정 나무 모델은 과적합 문제 발생

 

대응방법-가지치기(Prunning)

- 모델 성능 향상 및 과적합 예방 목적

- max_depth: 의사결정 나무 성장 깊이 지정

- min_samples_leaf : 리프에 들어가는 최소 샘플의 개수 지정

 

Pruning 안할 때

 

Pruning 할때
Pruning 한 것과 안한 것 둘 다 동일

결과값이 같으면 성능은 Pruning 한 것이 더 좋다.