앙상블 방법은 한 종류의 데이터로 여러 머신러닝 학습모델(weak base learner, 기본모델)을 만들어 그 모델들의 예측결과를 다수결이나 평균을 내어 예측
하는 방법
랜덤포레스트는 결정트리를 기본모델로 사용하는 앙상블
방법
결정트리들은 독립적
으로 만들어지며 각각 랜덤으로 예측하는 성능보다 좋을 경우 랜덤포레스트는 결정트리보다 성능이 좋다.
부트스트랩(Bootstrap) 샘플링
부트스트랩세트의 크기가 n이라 할 때 한 번의 추출과정에서 어떤 한 샘플이 추출 되지 않을 확률
n회 복원추출을 진행했을 때 그 샘플이 추출되지 않았을 확률
n을 무한히 크게 했을 때
참고:
데이터가 충분히 크다고 가정했을 때 한 부트스트랩세트는 표본의 63.2%
에 해당하는 샘플을 가짐
여기서 추출되지 않는 36.8%의 샘플이 Out-Of-Bag 샘플
Aggregation
이라고 한다.회귀문제
일 경우 기본모델 결과들의 평균
으로 결과분류문제
일 경우 다수결
로 가장 많은 모델들이 선택한 범주로 예측특성 n개 중 일부분 k개의 특성을 선택(sampling)
하고 이 k개에서 최적의 특성을 찾아내어 분할범주에 숫자를 맵핑
합니다. ['a', 'b', 'c'] 세 범주가 있다면 이것을 -> [1, 2, 3] 이렇게 숫자로 인코딩트리구조 학습에서는 원핫인코딩을 사용하면 문제
중요도는 노드들의 지니불순도(Gini impurity)를 가지고 계산
중요할 수록 불순도가 크게 감소
bootstrap = true
이때 각 기본트리에 사용되는 데이터가 랜덤으로 선택max_features = auto