-
의사결정나무 - Decision Tree아가개발자/머신러닝 2020. 10. 20. 15:41
의사결정나무
: 학습데이터를 분석하여 데이터의 내재된 패턴을 통해 새로운 데이터를 예측/분류 하는 모델
- 의사결정나무 생성 과정
학습 데이터의 Y값과 X 데이터를 적절한 분리 기준과 정지 규칙(ex. 트리의 깊이 등)을 지정하여 의사결정나무를 생성
- 의사결정나무의 장점
1. 나무구조로 되어 있기 때문에 모델을 이해기가 쉽고 적용하기가 용이하다
2. 의사결정에 대한 설명(해석)이 가능하다 → 왜 이렇게 예측 되었는지에 대해 설명이 가능함
3. 중요한 변수를 선택하는데 유용하다 → 상단에서 사용된 설명 변수가 가장 중요한 변수
4. 데이터의 통계적 가정이 필요 없음 → 예를 들어 LDA는 데이터의 정규성을 가정함
- 의사결정나무의 단점
1. 좋은 모형을 만들기 위해서는 많은 데이터를 필요로 한다.
2. 트리를 만들 때 시간이 많이 소요된다.
3. 데이터에 따라 모델이 변화한다 → 데이터의 변화에 민감
4. 선형 구조형 데이터를 예측할 때 더 복잡하다.
-의사결정나무를 통한 데이터 분석
1. 다변량 변수의 데이터를 사용한다. (다변량 변수: input x가 2개 이상, output Y값 한 개)
2. 트리구조를 이용하여 모델학습을 한다.
: 한번에 설명 변수(x) 하나씩 데이터를 2개 혹은 그 이상의 부분집합으로 분할하여 데이터 순도가 균일해지도록 재귀적 분할을 한다.
데이터 순도 → 분류 문제에서는 비슷한 범주를 갖고 있는 데이터 끼리, 예측 문제에서는 연속된 값을 가지고 있는 데이터 끼리
3. 추론(판별)을 한다
: 분류 → 끝 노드에서 가장 빈도가 높은 클래스를 새로운 데이터로 예측한다.
회귀 → 끝 노드에서 y의 평균을 데이터로 예측한다.
'아가개발자 > 머신러닝' 카테고리의 다른 글
서포트 벡터 머신 (Linear SVM / Non-linear SVM) (0) 2020.12.04 서포트 벡터 머신 (SVM) (0) 2020.12.03 선형 판별 분석(LDA) 실습 (0) 2020.10.14 선형 판별 분석(LDA)/ 이차 판별 분석(QDA) (0) 2020.10.13 판별 분석 (Discriminant Analysis) (0) 2020.10.12