ID3, C4.5, CART까지, 의사결정나무 생성을 위한 기본적인 알고리즘을 정리했습니다.
의사결정나무의 단점: 과적합 (Overfitting)에 취약
의사결정나무 알고리즘은 간단하면서도 효과적인 알고리즘이지만, 실제로 사용하기 어려운 치명적인 문제가 있습니다. 바로 과적합 (Overfitting)에 취약하다는 것입니다.
Regression tree의 예시에서 모든 학습 데이터가 개별 구간을 갖도록 의사결정 나무가 생성된다면, 이 모델은 과적합된 모델이라고 할 수 있습니다. 과적합이 발생하면, 모형이 새로운 값에 대응하는 능력이 떨어지기 때문에, 처음 본 데이터가 들어왔을 때 모형이 엉뚱한 값을 뱉어냅니다. 따라서 이러한 과적합을 막기 위해, 의사결정나무의 학습을 일부러 방해하는 사전 가지치기 (pre-pruning) 또는 사후 가지치기 (post-pruning) 과정을 수행합니다.
가지치기의 예시는 아래와 같습니다.
- 나무의 최대 깊이 (depth)를 제한
- 자식 노드의 최소 샘플 수를 설정
- impurity 또는 error 의 최소값을 설정
- impurity 또는 error 변화값의 최소값을 설정
하지만 이러한 방법을 쓴다고 해도, 과적합의 위험성은 여전히 존재합니다. 이 문제를 해결하기 위해 사람들은 의사결정 나무를 여러개 만들어, 예측 결과를 종합하는 앙상블 (Ensemble) 알고리즘을 고안하였습니다.
'공부자료 > 머신러닝' 카테고리의 다른 글
[ML] 앙상블 (Ensenble) (0) | 2022.03.13 |
---|---|
[ML] CART 알고리즘 (0) | 2022.03.11 |
[ML] C4.5 알고리즘 (0) | 2022.03.10 |
[ML] ID3 알고리즘 (0) | 2022.03.09 |
[ML] 의사결정나무 (Decision Tree) (0) | 2022.03.09 |
댓글