- 본 글은 스마트 인재개발원 서포터즈 활동으로 작성한 글입니다
여섯 번째 수업: 결정 트리
- Decision Tree 알고리즘을 이해할 수 있다.
- 학습 목표
- 결측치가 있는지 확인한 수 있다.
- Label 인코딩과 One0hot 인코딩을 이해할 수 있다.
- 교차검증기법 이해
- 정규화(Normalization) 이해
- Decision Tree결정 트리
(왠지 모르겠지만 트리인데 root( 뿌리 ) 가 맨 위에 있음
관련된 외국 개발자 공부책에 나온 농담.. 개발자가 밖을 안 나가서 나무가 어떻게 생겼는지 몰라서 그렇다고 ..
- 예 아니오 질문을 반복하며 학습한다.
- 분류와 회귀 모두 사용 가능
- 예시 날개와 지느러미를 물어보고 매/ 펭귄 /돌고래 등을 구분함
- 타이타닉에서도 중첩된 조건 질문의 반복하여 결정했었음.
- 첫 번째 가장 중요한 질문으로 하고, 이를 Root Node 루트 노드
- 마지막 질문이 있는 부분은 Leaf Node. 리프 노드
- 결정 트리는 뭘 안다구요???-> 질문의 순서, 무엇이 루트 노드이어야 하는지
- 지니 불순도(Gini Impurity) 가 가장 낮은 것을 중요 질문으로 함
-
-
- Root Node : 불순도가 가장 낮게 나온 질문
- Leaf Node : 리프 노드에 따라 하나의 데이터 또는 두 종류의 데이터가 섞여 있는 경우도 있음
- 순수노드 : 타깃 값이 한 개인 리프노드
- 모든 노드가 순수 노드가 될 때까지 학습하는 것은 복잡, 과대 적합
- 새로운 데이터 포인트가 들어오면 해당하는 노드를 찾음
- 분류- 더 많은 클래스로 / 회귀 - 평균 구하기
- -> 적당하게 분류/회귀 되도록 질문의 수를 조정해줘야 함.
- 과대적합의 제어
- 사전 가지치기( PRE-PRUNING) : 노드 생성 미리 중단
- 사후 가지치기(POST-PRUNING): 만든 후 작은 노드 삭제
- 최대 제어
- max_depth : 노드 최대 깊이 제한( 복잡도 연관)
- max_leaf_nodes :
- 최소 제어 :
- min_dample_split : N 개 이하이면 더 나누지 않도록 제한
- min_sample_leaf : 리프 노드의 최소 개수 제한 -> 나눈 리프노드의 샘플의 사후적으로 n 개 이하이면 취소
- 질문은 특성을 분류하여 기계가 생성
- DecisionTreeClassifier(max_depth, max_leaf_nodes, min_sample_split, min_sample_leaf, criterion)
댓글 영역