의사결정나무(Decision Tree )
max_depth
: 최대 깊이(질문 단계)를 정의 / 기본값: None
max_leaf_nodes
: Leaf Node 개수 제한 / 기본값: None
min_samples_leaf
: Leaf Node가 가져야 하는 최소한의 sample (데이터) 수를 지정 / 기본값: 1
max_features
: 분기 할 때마다 지정한 개수의 Feature(특성)만 사용
min_samples_split
: 분할 하기 위해서 필요한 최소 샘플 수 / 기본값: 2
criterion
: 각 노드의 불순도 계산 방식
---------------분라하기 위한 질문---------------
LSTAT <= 8.13
----------------현재 노드의 상태----------------
squared_error = 85.308 # 오차 - 현재 노드를 결과로 응답할 때 발생하는 오차(MSE)
samples = 379 # 현재 노드의 sample(데이터) 개수
value = 22.609 # 현재 노드를 결과로 응답할 때 사용할 응답값
# 현재 노드 sample들의 y의 평균
Ensemble(앙상블)
Random Forest (랜덤포레스트)
from sklearn.ensemble import RandomForestClassifier
Bagging 방식의 앙상블 모델
데이터의 단위가 중,소규모일 때 많이 사용
N개의 Decision Tree 생성하고 입력데이터를 각각 추론하게 한 뒤 가장 많이 나온 추론결과를 최종결과로 결정
랜덤포레스트의 절차
주요 하이퍼파라미터
n_estimators
: DecisionTree 모델의 개수, 클 수록 좋음 (default : 100, 최소 200개 이상)max_features
: sampling 할 때 선택할 feature의 개수