Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
勾配ブースティングの仕組み
Search
K_DM
January 06, 2022
Education
0
110
勾配ブースティングの仕組み
勾配ブースティングの仕組みについて概要を説明したスライドです。
動画:
https://youtu.be/ZgssfFWQbZ8
K_DM
January 06, 2022
Tweet
Share
More Decks by K_DM
See All by K_DM
主成分分析(PCA)の仕組み
k_study
0
200
X-meansの仕組み
k_study
0
2.1k
k-meansクラスタリングの仕組み
k_study
0
270
決定木を使った回帰の仕組み
k_study
0
230
アンサンブル学習① ランダムフォレストの仕組み
k_study
0
110
決定木に含まれるパラメタによる事前剪定と事後剪定
k_study
0
710
線形回帰② 正則化と過学習
k_study
0
560
外れ値とHuber(フーバー)損失
k_study
0
1.1k
木構造1~決定木の仕組み(分類)
k_study
0
170
Other Decks in Education
See All in Education
P3NFEST 2026 Spring ハンズオン「ハッキング・ラブ!はじめてのハッキングをやってみよう」資料
nomizone
0
140
計算物理におけるGitの使い方 / 01-c-compphys
kaityo256
PRO
2
480
2025-12-11 nakanoshima.dev LT
takesection
0
130
Future Trends and Review - Lecture 12 - Web Technologies (1019888BNR)
signer
PRO
0
3.3k
L'artisanat logiciel à l'heure du numérique responsable
thirion
0
120
Gitの中身 / 03-a-git-internals
kaityo256
PRO
0
130
IHLヘルスケアリーダーシップ研究会17期説明資料
ihlhealthcareleadership
0
2k
小学校5,6年生向けキャリア教育 大人になるまでの道
sat
PRO
8
3.4k
0203
cbtlibrary
0
140
Data Presentation - Lecture 5 - Information Visualisation (4019538FNR)
signer
PRO
0
3k
HyRead2526
cbtlibrary
1
220
2025年の本当に大事なAI動向まとめ
frievea
1
200
Featured
See All Featured
ラッコキーワード サービス紹介資料
rakko
1
2.6M
Building a A Zero-Code AI SEO Workflow
portentint
PRO
0
390
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
128
55k
Bash Introduction
62gerente
615
210k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
35
2.4k
Intergalactic Javascript Robots from Outer Space
tanoku
273
27k
Building AI with AI
inesmontani
PRO
1
790
Neural Spatial Audio Processing for Sound Field Analysis and Control
skoyamalab
0
210
Navigating the Design Leadership Dip - Product Design Week Design Leaders+ Conference 2024
apolaine
0
220
コードの90%をAIが書く世界で何が待っているのか / What awaits us in a world where 90% of the code is written by AI
rkaga
60
42k
Winning Ecommerce Organic Search in an AI Era - #searchnstuff2025
aleyda
1
1.9k
Building Flexible Design Systems
yeseniaperezcruz
330
40k
Transcript
アンサンブル4 アンサンブル4 勾配ブースティング 勾配ブースティング
アンサンブル学習とは 複数の予測モデルを組合せて、ロバスト性やより高い性能を目指す 複数モデルの予測値をまとめる方針 ブースティング(Boosting) •バギング •ランダムフォレスト •ExtraTrees •Stacking •AdaBoost •GradientBoosting
•XGBoost 複数の予測モデルの平均や多数決を取り、 最終的な予測を行う 予測モデルの誤差に注目して 少しずつモデルを改善して行く 勾配ブースティング(Gradient Boosting) 前回までのおさらい
Adaboost データを重み付けし、予測が難しいデータを重み付けして行くことで、精度を高める … • • • • • • •
• • モデル 各モデルの出力を 受け取り集約 最終的な 出力 G1 • • • • • • • • • … G2 誤差が大きいデータの 重みを重くする モデル … 誤差が大きいデータの 重みを重くする 訓練データ 前回までのおさらい 前の学習器の誤差の外れ具合を予測できるように モデルを作るアプローチも考えられる
勾配ブースティング 正解との誤差の勾配を用いて予測を修正していく 訓練データ全体 ・・・ 最終的な 出力 • • • •
• • • • • f • • • • • • • • • f • • • • • • • • • f f 100 20 10 40 データごとの誤差 が分かる 勾配を予測する 決定木 勾配を予測する 決定木 勾配を予測する 決定木 2 1 3 3 データごとに 予測 赤字=誤差 あるデータ点の値• = 一つ目の予測+ 予測した勾配1 + … + 予測した勾配n α α 橙字=誤差
勾配ブースティングに含まれる各木の出力を可視化 少しずつ正解に向けて誤差が修正されている様子がわかる ※わかりやすくするためにlearning_rateを大きくして更新幅を大きくしています
勾配ブースティングに含まれる各木の出力を可視化 少しずつ正解に向けて誤差が修正されている様子がわかる ※わかりやすくするためにlearning_rateを大きくして更新幅を大きくしています
勾配ブースティングに含まれる各木の出力を可視化 少しずつ正解に向けて誤差が修正されている様子がわかる ※わかりやすくするためにlearning_rateを大きくして更新幅を大きくしています
勾配ブースティングに含まれる各木の出力を可視化 少しずつ正解に向けて誤差が修正されている様子がわかる ※わかりやすくするためにlearning_rateを大きくして更新幅を大きくしています
アルゴリズム① 1. いくつかモデルを作成し、その中から損失が最小のモデルを選択する 2. 以下のステップを 回繰り返す( ) 2-1. 各データについて、以下の値を計算する
fo (x) = argminγ ΣN i=1 L(yi , γ) M m = 1,2,…, M rim = − [ ∂L(yi , f(xi )) ∂f(xi ) ]f=fm−1 1 2 (yn − fm (x)))2 → yn − fm (x) 損失を偏微分 参考文献:Trevor Hastie ・Robert Tibshirani ・Jerome Friedman 著・杉山 将・井手 剛・神嶌 敏弘・栗田 多喜夫・前田 英作監訳・井尻 善久・井手 剛・岩田 具治・金森 敬文・兼村 厚範・烏山 昌幸・河原 吉伸・木村 昭悟・小 西 嘉典・酒井 智弥・鈴木 大慈・竹内 一郎・玉木 徹・出口 大輔・冨岡 亮太・波部 斉・前田 新一・持橋 大地・山田 誠訳 ”統計的学習の基礎: データマイニング・推論・予測”. 共立出版, 2014.
アルゴリズム② 2-2. を予測できるような回帰木を作成する 2-3. 終端領域 について となるような を求める
2-4. としてモデルを更新する rim Rjm (j = 1,…, Jm ) γjm = argminγ Σxi ∈Rjm L(yi , fm−1 (xi ) + γ) γjm fm (x) = fm−1 (x) + ΣJm j=1 γjm I(x ∈ Rjm ) 参考文献:Trevor Hastie ・Robert Tibshirani ・Jerome Friedman 著・杉山 将・井手 剛・神嶌 敏弘・栗田 多喜夫・前田 英作監訳・井尻 善久・井手 剛・岩田 具治・金森 敬文・兼村 厚範・烏山 昌幸・河原 吉伸・木村 昭悟・小 西 嘉典・酒井 智弥・鈴木 大慈・竹内 一郎・玉木 徹・出口 大輔・冨岡 亮太・波部 斉・前田 新一・持橋 大地・山田 誠訳 ”統計的学習の基礎: データマイニング・推論・予測”. 共立出版, 2014. 番目までの モデルの出力 m − 1 番目に加える微調整 m 可視化した回帰木
実験! じ っ け ん
実験用のデータ 数値データに対して、勾配ブースティングで予測をします ※コードは概要欄に添付します
勾配ブースティングに含まれる各木の出力を可視化 少しずつ正解に向けて誤差が修正されている様子がわかる
勾配ブースティングに含まれる各木の出力を可視化 少しずつ正解に向けて誤差が修正されている様子がわかる
勾配ブースティングに含まれる各木の出力を可視化 少しずつ正解に向けて誤差が修正されている様子がわかる
勾配ブースティングに含まれる各木の出力を可視化 少しずつ正解に向けて誤差が修正されている様子がわかる
各パラメタの影響 え い き ょ う
n_estimators 基本的にはデフォルトの設定で十分によい性能になる 一定の基準を超えると頭打ちになる
learning_rate 小さすぎても大きすぎてもダメ、n_estimatorsを固定した上でちょうど良い値を見つける 収束していない
損失関数の影響 外れ値があるとき、二乗誤差は離れたデータでも当てようとする 目的に合わせて適切な損失関数を指定する必要がある
まとめ 勾配ブースティングの仕組みを説明しました •勾配ブースティング木 = 勾配降下法 + ブースティング + 決定木学習 •はじめに決めるべき重要なパラメタは
•n_estimators •loss •パラメタ調整する必要があるのは •max_depth •learning_rate •他、木に関係するパラメタなど
参考文献 •sklearn.tree.DecisionTreeRegressor •1.11. Ensemble methods •https://github.com/scikit-learn/scikit-learn/blob/main/sklearn/ ensemble/_gb_losses.py •Trevor Hastie ・Robert
Tibshirani ・Jerome Friedman 著・杉山 将・井手 剛・ 神嶌 敏弘・栗田 多喜夫・前田 英作監訳・井尻 善久・井手 剛・岩田 具治・金森 敬 文・兼村 厚範・烏山 昌幸・河原 吉伸・木村 昭悟・小西 嘉典・酒井 智弥・鈴木 大 慈・竹内 一郎・玉木 徹・出口 大輔・冨岡 亮太・波部 斉・前田 新一・持橋 大地・山 田 誠訳 ”統計的学習の基礎: データマイニング・推論・予測”. 共立出版, 2014.