AI/ML(패스트 캠퍼스) - Bagging

 

Bagging - RandomForest

Ensemble - Bagging


Bagging

  • Bootstrap Aggregation의 줄임말 : Bootstrap = 샘플 + Aggregation = 합산
  • 여러개의 dataset을 중첩을 허용하여 샘플링한 후 분할하는 방식
  • 대표적인 배깅 앙상블
    1. RandomForest
    2. Bagging

Image


RandomForest

  • DecisionTree 기반 Bagging 앙상블
  • 사용성이 쉽고 성능도 우수
  • 인기가 많음

from sklearn.ensemble import RandomForestRegressor

rfr = RandomForestRegressor()
rfr.fit(x_train, y_train)
rfr_pred = rfr.predict(x_test)

주요 하이퍼파라미터

  • random_state : 랜덤 시드 고정 값. 고정해두고 튜닝할 것!
  • n_jobs : CPU 사용 개수
  • max_depth : 깊어질 수 있는 최대 깊이. 과대적합 방지용
  • n_estimators : 앙상블하는 트리 개수
  • max_features : 최대로 사용할 feature의 개수. 과대적합 방지용
  • mean_samples_split : 트리가 분할할 때 최소 샘플의 개수. default=2. 과대적합 방지용

rfr = RandomForestRegressor(random_state=42, n_estimators=200, max_depth=7, max_features=0.7)
rfr.fit(x_train, y_train)
rfr_pred = rfr.predict(x_test)