* 이 글의 내용은 O'REILLY의 '파이썬 라이브러리를 활용한 머신러닝' 책을 기반으로 한다.
1. 결정 트리 복잡도 제어
(1) 사전 가지 치기 : 트리 생성을 중단
(2) 사후 가지 치기 : 트리를 만든 후 데이터 포인트가 적은 노드 삭제 혹은 병합
2. 결정 트리 깊이 제한 : max_depth
3. 특성 중요도 : 각 특성의 중요도 평가 (전체 합 1)
4. 외삽 : 훈련 데이터의 범위 밖의 포인트
5. 앙상블(ensemble) : 여러 머신러닝 모델을 연결하여 강력한 모델을 만드는 기법
앙상블 방법론 : 부스팅, 배깅
6. 배깅(Bootstrap aggregation):중복을 허용한 랜덤 샘플링으로 만든 훈련 세트를 사용하여 분류기를 각기 다르게 학습
대표적인 모델
(1)랜덤 포레스트(Random Forest) 결정 트리 : 의사 트리들을 서로 엮어 큰 숲으로 만들어 보다 좋은 예측을 하는 기법
(매개변수 : Regressor)
7. 부스팅 : 단순하고 약한 학습기를 결합해서 보다 정확하고 강력한 학습기를 만드는 방식
대표적인 모델
(1)그레이디언트 부스팅(Grandient Boosting) 결정 트리
손실함수를 파라미터로 미분해서 기울기를 구하고, 값이 작아지는 방향으로 가다가 손실함수가 최소화되는 지점에 도달하게끔 탐색함 (매개변수 : n_estimators)
(2)에이다부스트(Adaptive Boosting) : 이전의 모델이 잘못 분류한 샘플에 가중치를 높여서 다음 모델을 훈련시킴
8. 랜덤 포레스트(Random Forest) 결정 트리
(1) 분류, 회귀 분석 등에 사용되는 앙상블 학습 방법의 일종
(2) 훈련 과정에서 구성한 다수의 결정 트리로부터 분류 또는 평균 예측치(회귀 분석)를 출력
9. 엑스트라 트리(Extra_Trees) : 후보 특성을 무작위로 분할한 다음 최적의 분할을 찾음
10. splitter
(1)splitter='best' : default
(2)splitter='random' : 무작위로 분할한 후보 노드중 최선을 찾음