데이터에 내재되어 있는 패턴을 변수의 조합으로 나타내는 예측/분류 모델을 나무의 형태로 만드는 것
핵심아이디어: 질문을 던져서 맞고 틀리는 것에 따라 우리가 생각하고 있는 대상을 좁혀나감, 스무고개
놀이와 비슷한 개념
의사결정나무의 핵심개념 정리
- 노드(node)
: 질문이나 정답을 담은 네모 상자
- 리프(leaf)
: 마지막 노드
- 에지(edge)
: 예/아니오, True or False의 선 -> 질문의 답과 다음 질문을 연결함
- 특성
: 질문의 수, "날개가 있는가?", "날 수 있는가", "지느러미가 있는가"
클래스
: 구분하는 가지수 ex> 붓꽃분류: 3가지
그림과 같이 데이터
가 들어오고 알고리즘
을 통해서 모델(output)
이 구축되는 형태
Data
: 다변량 변수가 들어왔고, input변수, output변수로 구성, 인풋과 아웃풋은 관계가 있다는 가설을 가지고 있는 것
Algorithm
: 데이터가 2개 혹은 그 이상의 부분집합으로 분할, 이때 데이터가 균일해지도록 분류를 한다.
-분류
: 비슷한 범주를 갖고 있는 관측치끼리의 모음
-예측
: 비슷한 수치를 갖고 있는 관측치끼리의 모음
Model
:노드의 구성
- 뿌리마디(Root node): 의사결정나무 모델에서 유일하게 1개만 존재
이진분할
60개의 데이터가 4번의 이진분할에 의해서 5개의 부분집합으로 분할이 되었다.
왼쪽 그림: 2차원 공간에서의 이진분할
- 변수가 weight와 acceleration
오른쪽 그림: 3차원상에서 이진분할
A는 3차원공간에서 이진분할, B는 의사결정나무
마지막의 끝마디 갯수는 3개
A가 직관적이긴 하나 2차원 혹은 3차원, 즉 변수가 3개 있을 때까지만 표현가능, 4차원이 되려면 축이 하나 더 늘어나야 하는데 공간상 표현하기가 어려움
B의 경우 변수가 5개이든, 1000개이든 2차원공간에서 나무형태로 그려지기 때문에 x변수의 갯수가 아무리 늘어나도 B의 표현은 가능하다.
관측치의 Y값의 평균
으로 예측하겠다는 것이 예측나무의 핵심