非常に強力な決定木のアンサンブル法ーランダムフォレストと勾配ブースティング決定木ー【Pythonプログラム付】

統計・機械学習

決定木は直感的にわかりやすい学習手法ですが,汎化性能が低い(バリアンスが高い)という欠点があります。そのため,複数の決定木を組み合わせて学習を行うアンサンブル学習が一般に用いられます。特に XGBoost や LightGBM は Kaggle のコンペティションの上位陣が使用していたこともある非常に強力な手法です。

本記事では,決定木のアンサンブル法として代表的なランダムフォレスト(Random Forest)と勾配ブースティング決定木(GBDT: Gradient Boosting Decision Tree)について解説します。

関連記事はこちら↓

決定木ー視覚的にわかりやすい分類・回帰手法!ー【Pythonプログラム付】
機械学習の回帰・分類手法の中でも,非専門家でも直感的にわかりやすい分類・回帰手法が決定木です。本記事では,CART(Classification and Regression Tree)と呼ばれる決定木のアルゴリズムについて解説します。 ...

大きい画面で表示したい方はこちらからご覧ください。

pythonによるサンプルプログラムはGitHubで公開しています。

特にGBDTではXGBoostやLightGBMといった有名な手法の実装例も掲載しています。

クリエイティブ・コモンズ・ライセンス

 

スライドの目次

  • はじめに
  • アンサンブル学習とは
  • 2種類の決定木アンサンブル学習
  • ランダムフォレスト
  • サブデータセットの作り方
  • 決定木で使用する特徴量選択
  • 各決定木の結果の統合
  • 勾配ブースティング決定木
  • 勾配ブースティング決定木のアルゴリズム
  • よく使われる手法

参考文献

  • A. C. Muller, S. Guido,Pythonではじめる機械学習,O’Reilly Japan (2017)
  • https://scikit-learn.org/stable/modules/ensemble.html
  • https://qiita.com/triwave33/items/aad60f25485a4595b5c8
  • https://datachemeng.com/gradient_boosting/

質問、コメント等ございましたら、下部のコメント欄,もしくはメールやTwitterよりご連絡ください。

タイトルとURLをコピーしました