SlideShare a Scribd company logo
Submit Search
Upload
機械学習のためのベイズ最適化入門
Report
Share
hoxo_m
Data Scientist, HOXO-M
Follow
•
160 likes
•
185,616 views
1
of
67
機械学習のためのベイズ最適化入門
•
160 likes
•
185,616 views
Report
Share
Data & Analytics
db analytics showcase Sapporo 2017 発表資料 http://www.db-tech-showcase.com/dbts/analytics
Read more
hoxo_m
Data Scientist, HOXO-M
Follow
Recommended
ベイズ最適化 by
ベイズ最適化
MatsuiRyo
1.7K views
•
26 slides
機械学習による統計的実験計画(ベイズ最適化を中心に) by
機械学習による統計的実験計画(ベイズ最適化を中心に)
Kota Matsui
13.1K views
•
216 slides
勾配ブースティングの基礎と最新の動向 (MIRU2020 Tutorial) by
勾配ブースティングの基礎と最新の動向 (MIRU2020 Tutorial)
RyuichiKanoh
25.6K views
•
173 slides
明治大学講演資料「機械学習と自動ハイパーパラメタ最適化」 佐野正太郎 by
明治大学講演資料「機械学習と自動ハイパーパラメタ最適化」 佐野正太郎
Preferred Networks
14.8K views
•
80 slides
Optimizer入門&最新動向 by
Optimizer入門&最新動向
Motokawa Tetsuya
23K views
•
21 slides
『バックドア基準の入門』@統数研研究集会 by
『バックドア基準の入門』@統数研研究集会
takehikoihayashi
38.9K views
•
122 slides
More Related Content
What's hot
機械学習モデルのハイパパラメータ最適化 by
機械学習モデルのハイパパラメータ最適化
gree_tech
27.8K views
•
117 slides
近年のHierarchical Vision Transformer by
近年のHierarchical Vision Transformer
Yusuke Uchida
13.8K views
•
46 slides
時系列予測にTransformerを使うのは有効か? by
時系列予測にTransformerを使うのは有効か?
Fumihiko Takahashi
6.8K views
•
29 slides
因果探索: 基本から最近の発展までを概説 by
因果探索: 基本から最近の発展までを概説
Shiga University, RIKEN
15.3K views
•
47 slides
SSII2019OS: 深層学習にかかる時間を短くしてみませんか? ~分散学習の勧め~ by
SSII2019OS: 深層学習にかかる時間を短くしてみませんか? ~分散学習の勧め~
SSII
10.6K views
•
38 slides
機械学習モデルの判断根拠の説明(Ver.2) by
機械学習モデルの判断根拠の説明(Ver.2)
Satoshi Hara
47.8K views
•
81 slides
What's hot
(20)
機械学習モデルのハイパパラメータ最適化 by gree_tech
機械学習モデルのハイパパラメータ最適化
gree_tech
•
27.8K views
近年のHierarchical Vision Transformer by Yusuke Uchida
近年のHierarchical Vision Transformer
Yusuke Uchida
•
13.8K views
時系列予測にTransformerを使うのは有効か? by Fumihiko Takahashi
時系列予測にTransformerを使うのは有効か?
Fumihiko Takahashi
•
6.8K views
因果探索: 基本から最近の発展までを概説 by Shiga University, RIKEN
因果探索: 基本から最近の発展までを概説
Shiga University, RIKEN
•
15.3K views
SSII2019OS: 深層学習にかかる時間を短くしてみませんか? ~分散学習の勧め~ by SSII
SSII2019OS: 深層学習にかかる時間を短くしてみませんか? ~分散学習の勧め~
SSII
•
10.6K views
機械学習モデルの判断根拠の説明(Ver.2) by Satoshi Hara
機械学習モデルの判断根拠の説明(Ver.2)
Satoshi Hara
•
47.8K views
機械学習で泣かないためのコード設計 by Takahiro Kubo
機械学習で泣かないためのコード設計
Takahiro Kubo
•
62.2K views
構造方程式モデルによる因果推論: 因果構造探索に関する最近の発展 by Shiga University, RIKEN
構造方程式モデルによる因果推論: 因果構造探索に関する最近の発展
Shiga University, RIKEN
•
13.6K views
組合せ最適化入門:線形計画から整数計画まで by Shunji Umetani
組合せ最適化入門:線形計画から整数計画まで
Shunji Umetani
•
77K views
不均衡データのクラス分類 by Shintaro Fukushima
不均衡データのクラス分類
Shintaro Fukushima
•
59K views
グラフィカルモデル入門 by Kawamoto_Kazuhiko
グラフィカルモデル入門
Kawamoto_Kazuhiko
•
117.8K views
最新リリース:Optuna V3の全て - 2022/12/10 Optuna Meetup #2 by Preferred Networks
最新リリース:Optuna V3の全て - 2022/12/10 Optuna Meetup #2
Preferred Networks
•
5.7K views
多様な強化学習の概念と課題認識 by 佑 甲野
多様な強化学習の概念と課題認識
佑 甲野
•
58K views
深層学習の不確実性 - Uncertainty in Deep Neural Networks - by tmtm otm
深層学習の不確実性 - Uncertainty in Deep Neural Networks -
tmtm otm
•
11.7K views
機械学習におけるオンライン確率的最適化の理論 by Taiji Suzuki
機械学習におけるオンライン確率的最適化の理論
Taiji Suzuki
•
24.1K views
勾配降下法の最適化アルゴリズム by nishio
勾配降下法の最適化アルゴリズム
nishio
•
48.1K views
モデルではなく、データセットを蒸留する by Takahiro Kubo
モデルではなく、データセットを蒸留する
Takahiro Kubo
•
7.8K views
【DL輪読会】The Forward-Forward Algorithm: Some Preliminary by Deep Learning JP
【DL輪読会】The Forward-Forward Algorithm: Some Preliminary
Deep Learning JP
•
2.2K views
【DL輪読会】言語以外でのTransformerのまとめ (ViT, Perceiver, Frozen Pretrained Transformer etc) by Deep Learning JP
【DL輪読会】言語以外でのTransformerのまとめ (ViT, Perceiver, Frozen Pretrained Transformer etc)
Deep Learning JP
•
3.7K views
猫でも分かるVariational AutoEncoder by Sho Tatsuno
猫でも分かるVariational AutoEncoder
Sho Tatsuno
•
131.6K views
Viewers also liked
NIPS2015読み会: Ladder Networks by
NIPS2015読み会: Ladder Networks
Eiichi Matsumoto
86.1K views
•
38 slides
Prophet入門【理論編】Facebookの時系列予測ツール by
Prophet入門【理論編】Facebookの時系列予測ツール
hoxo_m
44.6K views
•
24 slides
闇と向き合う by
闇と向き合う
Nagi Teramo
10.4K views
•
38 slides
Prophet入門【R編】Facebookの時系列予測ツール by
Prophet入門【R編】Facebookの時系列予測ツール
hoxo_m
38.6K views
•
62 slides
実践多クラス分類 Kaggle Ottoから学んだこと by
実践多クラス分類 Kaggle Ottoから学んだこと
nishio
38.6K views
•
129 slides
Prophet入門【Python編】Facebookの時系列予測ツール by
Prophet入門【Python編】Facebookの時系列予測ツール
hoxo_m
64.6K views
•
61 slides
Viewers also liked
(20)
NIPS2015読み会: Ladder Networks by Eiichi Matsumoto
NIPS2015読み会: Ladder Networks
Eiichi Matsumoto
•
86.1K views
Prophet入門【理論編】Facebookの時系列予測ツール by hoxo_m
Prophet入門【理論編】Facebookの時系列予測ツール
hoxo_m
•
44.6K views
闇と向き合う by Nagi Teramo
闇と向き合う
Nagi Teramo
•
10.4K views
Prophet入門【R編】Facebookの時系列予測ツール by hoxo_m
Prophet入門【R編】Facebookの時系列予測ツール
hoxo_m
•
38.6K views
実践多クラス分類 Kaggle Ottoから学んだこと by nishio
実践多クラス分類 Kaggle Ottoから学んだこと
nishio
•
38.6K views
Prophet入門【Python編】Facebookの時系列予測ツール by hoxo_m
Prophet入門【Python編】Facebookの時系列予測ツール
hoxo_m
•
64.6K views
Kaggle meetup #3 instacart 2nd place solution by Kazuki Onodera
Kaggle meetup #3 instacart 2nd place solution
Kazuki Onodera
•
10.7K views
Pycon2017 by Yuta Kashino
Pycon2017
Yuta Kashino
•
8.2K views
生成モデルの Deep Learning by Seiya Tokui
生成モデルの Deep Learning
Seiya Tokui
•
47.8K views
機械学習によるデータ分析まわりのお話 by Ryota Kamoshida
機械学習によるデータ分析まわりのお話
Ryota Kamoshida
•
568.1K views
「深層学習」の本に出てきたデータセット達 by Hiromasa Ohashi
「深層学習」の本に出てきたデータセット達
Hiromasa Ohashi
•
1.6K views
文字列カーネルによる辞書なしツイート分類 〜文字列カーネル入門〜 by Takeshi Arabiki
文字列カーネルによる辞書なしツイート分類 〜文字列カーネル入門〜
Takeshi Arabiki
•
9.5K views
ベアメタルクラウドの運用をJupyter NotebookとAnsibleで機械化してみた by Satoshi Yazawa
ベアメタルクラウドの運用をJupyter NotebookとAnsibleで機械化してみた
Satoshi Yazawa
•
3.3K views
Deep learning with C++ - an introduction to tiny-dnn by Taiga Nomi
Deep learning with C++ - an introduction to tiny-dnn
Taiga Nomi
•
13.4K views
D3.jsと学ぶVisualization(可視化)の世界 by AdvancedTechNight
D3.jsと学ぶVisualization(可視化)の世界
AdvancedTechNight
•
9.9K views
xtsパッケージで時系列解析 by Nagi Teramo
xtsパッケージで時系列解析
Nagi Teramo
•
21.8K views
岩波データサイエンス_Vol.5_勉強会資料02 by goony0101
岩波データサイエンス_Vol.5_勉強会資料02
goony0101
•
3.2K views
岩波データサイエンス_Vol.5_勉強会資料00 by goony0101
岩波データサイエンス_Vol.5_勉強会資料00
goony0101
•
1.2K views
Replica exchange MCMC by . .
Replica exchange MCMC
. .
•
13K views
岩波データサイエンス_Vol.5_勉強会資料01 by goony0101
岩波データサイエンス_Vol.5_勉強会資料01
goony0101
•
2.2K views
Similar to 機械学習のためのベイズ最適化入門
RL_chapter1_to_chapter4 by
RL_chapter1_to_chapter4
hiroki yamaoka
282 views
•
138 slides
20190512 bayes hands-on by
20190512 bayes hands-on
Yoichi Tokita
189 views
•
41 slides
SSII2021 [TS3] 機械学習のアノテーションにおける データ収集 〜 精度向上のための仕組み・倫理や社会性バイアス 〜 by
SSII2021 [TS3] 機械学習のアノテーションにおける データ収集 〜 精度向上のための仕組み・倫理や社会性バイアス 〜
SSII
1.9K views
•
75 slides
Tech-Circle #18 Pythonではじめる強化学習 OpenAI Gym 体験ハンズオン by
Tech-Circle #18 Pythonではじめる強化学習 OpenAI Gym 体験ハンズオン
Takahiro Kubo
13.1K views
•
84 slides
Provisioning & Deploy on AWS by
Provisioning & Deploy on AWS
Amazon Web Services Japan
6.1K views
•
94 slides
Optimization and simulation with DataRobot by
Optimization and simulation with DataRobot
Yuya Yamamoto
2.3K views
•
55 slides
Similar to 機械学習のためのベイズ最適化入門
(17)
RL_chapter1_to_chapter4 by hiroki yamaoka
RL_chapter1_to_chapter4
hiroki yamaoka
•
282 views
20190512 bayes hands-on by Yoichi Tokita
20190512 bayes hands-on
Yoichi Tokita
•
189 views
SSII2021 [TS3] 機械学習のアノテーションにおける データ収集 〜 精度向上のための仕組み・倫理や社会性バイアス 〜 by SSII
SSII2021 [TS3] 機械学習のアノテーションにおける データ収集 〜 精度向上のための仕組み・倫理や社会性バイアス 〜
SSII
•
1.9K views
Tech-Circle #18 Pythonではじめる強化学習 OpenAI Gym 体験ハンズオン by Takahiro Kubo
Tech-Circle #18 Pythonではじめる強化学習 OpenAI Gym 体験ハンズオン
Takahiro Kubo
•
13.1K views
Provisioning & Deploy on AWS by Amazon Web Services Japan
Provisioning & Deploy on AWS
Amazon Web Services Japan
•
6.1K views
Optimization and simulation with DataRobot by Yuya Yamamoto
Optimization and simulation with DataRobot
Yuya Yamamoto
•
2.3K views
資格学校のトライアル申込者数 by XICA
資格学校のトライアル申込者数
XICA
•
1.3K views
20190721 gaussian process by Yoichi Tokita
20190721 gaussian process
Yoichi Tokita
•
893 views
市場で勝ち続けるための品質とテストの技術② by Yahoo!デベロッパーネットワーク
市場で勝ち続けるための品質とテストの技術②
Yahoo!デベロッパーネットワーク
•
9.2K views
マーケティング視点で捉えるアクセス解析 株式会社真摯 by Yasuki Ichishima
マーケティング視点で捉えるアクセス解析 株式会社真摯
Yasuki Ichishima
•
15.7K views
[DL輪読会]Hyper parameter agnostic methods in reinforcement learning by Deep Learning JP
[DL輪読会]Hyper parameter agnostic methods in reinforcement learning
Deep Learning JP
•
1.2K views
前年比300%達成! CS組織におけるExpansion戦略.pdf by ssuser0c7b0c
前年比300%達成! CS組織におけるExpansion戦略.pdf
ssuser0c7b0c
•
28 views
最速で価値を提供する by LIFULL Co., Ltd.
最速で価値を提供する
LIFULL Co., Ltd.
•
1.4K views
ベイズ最適化によるハイパラーパラメータ探索 by 西岡 賢一郎
ベイズ最適化によるハイパラーパラメータ探索
西岡 賢一郎
•
491 views
一人三役!一気通貫でデータ活用するエンジニアリング by Recruit Lifestyle Co., Ltd.
一人三役!一気通貫でデータ活用するエンジニアリング
Recruit Lifestyle Co., Ltd.
•
3.2K views
QCon Tokyo 2014 - Virtuous Cycles of Velocity: What I Learned About Going Fas... by Randy Shoup
QCon Tokyo 2014 - Virtuous Cycles of Velocity: What I Learned About Going Fas...
Randy Shoup
•
2K views
2018/8/6 トレLABO2 AI案件のよくある落とし穴と人材育成 by Trainocate Japan, Ltd.
2018/8/6 トレLABO2 AI案件のよくある落とし穴と人材育成
Trainocate Japan, Ltd.
•
409 views
More from hoxo_m
Shinyユーザのための非同期プログラミング入門 by
Shinyユーザのための非同期プログラミング入門
hoxo_m
5.2K views
•
47 slides
学習係数 by
学習係数
hoxo_m
3.7K views
•
39 slides
AJAXサイトの情報をWebスクレイピング by
AJAXサイトの情報をWebスクレイピング
hoxo_m
2.3K views
•
9 slides
高速なガンマ分布の最尤推定法について by
高速なガンマ分布の最尤推定法について
hoxo_m
6.9K views
•
30 slides
経験過程 by
経験過程
hoxo_m
9.9K views
•
42 slides
確率論基礎 by
確率論基礎
hoxo_m
13.1K views
•
32 slides
More from hoxo_m
(20)
Shinyユーザのための非同期プログラミング入門 by hoxo_m
Shinyユーザのための非同期プログラミング入門
hoxo_m
•
5.2K views
学習係数 by hoxo_m
学習係数
hoxo_m
•
3.7K views
AJAXサイトの情報をWebスクレイピング by hoxo_m
AJAXサイトの情報をWebスクレイピング
hoxo_m
•
2.3K views
高速なガンマ分布の最尤推定法について by hoxo_m
高速なガンマ分布の最尤推定法について
hoxo_m
•
6.9K views
経験過程 by hoxo_m
経験過程
hoxo_m
•
9.9K views
確率論基礎 by hoxo_m
確率論基礎
hoxo_m
•
13.1K views
シンギュラリティを知らずに機械学習を語るな by hoxo_m
シンギュラリティを知らずに機械学習を語るな
hoxo_m
•
17.5K views
非制約最小二乗密度比推定法 uLSIF を用いた外れ値検出 by hoxo_m
非制約最小二乗密度比推定法 uLSIF を用いた外れ値検出
hoxo_m
•
20.8K views
トピックモデルの評価指標 Perplexity とは何なのか? by hoxo_m
トピックモデルの評価指標 Perplexity とは何なのか?
hoxo_m
•
44.5K views
階層モデルの分散パラメータの事前分布について by hoxo_m
階層モデルの分散パラメータの事前分布について
hoxo_m
•
34.9K views
トピックモデルの評価指標 Coherence 研究まとめ #トピ本 by hoxo_m
トピックモデルの評価指標 Coherence 研究まとめ #トピ本
hoxo_m
•
13.3K views
トピックモデルによる統計的潜在意味解析読書会 3.7 評価方法 - 3.9 モデル選択 #トピ本 by hoxo_m
トピックモデルによる統計的潜在意味解析読書会 3.7 評価方法 - 3.9 モデル選択 #トピ本
hoxo_m
•
4.4K views
協調フィルタリング入門 by hoxo_m
協調フィルタリング入門
hoxo_m
•
46.2K views
データの不備を統計的に見抜く (Gelman’s secret weapon) by hoxo_m
データの不備を統計的に見抜く (Gelman’s secret weapon)
hoxo_m
•
9.8K views
カップルが一緒にお風呂に入る割合をベイズ推定してみた by hoxo_m
カップルが一緒にお風呂に入る割合をベイズ推定してみた
hoxo_m
•
76.3K views
Stan で欠測データの相関係数を推定してみた by hoxo_m
Stan で欠測データの相関係数を推定してみた
hoxo_m
•
8.7K views
チェビシェフの不等式 by hoxo_m
チェビシェフの不等式
hoxo_m
•
13.2K views
swirl パッケージでインタラクティブ学習 by hoxo_m
swirl パッケージでインタラクティブ学習
hoxo_m
•
5.9K views
RPubs とその Bot たち by hoxo_m
RPubs とその Bot たち
hoxo_m
•
8.3K views
5分でわかるベイズ確率 by hoxo_m
5分でわかるベイズ確率
hoxo_m
•
161.4K views
機械学習のためのベイズ最適化入門
1.
機械学習のための ベイズ最適化⼊⾨ 2017/07/01 牧⼭ 幸史 db analytic
showcase 2017 1
2.
⾃⼰紹介 • ヤフー株式会社 データサイエンティスト • SBイノベンチャー
(株) AI エンジニア • 株式会社ホクソエム 代表取締役 CEO 2
3.
本⽇の内容 • ベイズ最適化 (Bayesian
Optimization) を機械学習のハイパーパラメータ探索に 利⽤ • 効率的な探索を実現 • 実⾏⽅法まで • 詳しくはこの本で → 3
4.
⽬次 1. はじめに 2. ハイパーパラメータ探索 3.
グリッドサーチ 4. ベイズ最適化 5. 獲得関数 6. ガウス過程 7. 実⾏ツール 4
5.
1. はじめに • ベイズ最適化が注⽬を集めている •
ベイズ最適化: 形状の分からない関数(ブラックボックス関数)の 最⼤値または最⼩値を求める⼿法 • 機械学習のハイパーパラメータ探索に利⽤ • 効率的に精度の良い学習モデルを発⾒ 5
6.
ベイズ最適化 • ベイズ最適化とは – ⼤域的最適化問題 (Global
Optimization) – 逐次最適化⼿法 (Sequential Optimization) • 適⽤対象 – ブラックボックス関数 (関数の形が不明) – 計算コストが⼤きい (時間、お⾦) • 要求: 少ない評価回数で最適値を求めたい 6
7.
⼤域的最適化問題 • 局所解に陥らずに最適値を求めたい 7 局所解 ⼤域解
8.
逐次最適化法 • これまでの結果をもとに次の観測点を決 める 8 ここら辺 良さそう 良くない
9.
逐次最適化の⾃動化 • これまでの結果を⾒て次にどこを観測し たらいいかは⼈間にはなんとなくわかる ➡︎ これを⾃動化したい •
ベイズ最適化 – ⼈間の直観的な判断を再現している 9
10.
1. まとめ • ベイズ最適化は⾼コストなブラックボッ クス関数の最適点を効率良く求める⼿法 •
何に使いたいか? ➡︎ 機械学習のハイパーパラメータ探索 10
11.
⽬次 1. はじめに 2. ハイパーパラメータ探索 3.
グリッドサーチ 4. ベイズ最適化 5. 獲得関数 6. ガウス過程 7. 実⾏ツール 11
12.
2. ハイパーパラメータ探索 • ほとんどの機械学習⼿法には、ハイパー パラメータが存在 •
ハイパーパラメータ: – データの学習では決定されないパラメータ – 学習の前にあらかじめ決めておく 12
13.
例: RBF SVM •
RBF カーネルでデータを⾼次元空間へ • マージン最⼤化 • 判別境界 13出典: 1.4. Support Vector Machines ー scikit-learn documentation
14.
例: RBF SVM •
ハイパーパラメータ 2つ • gamma: – 1つのサポートベクタが影響を及ぼす範囲 – ⼤きいほど影響範囲が⼩さく過学習 • cost: – 判別境界の単純さと誤分類のトレードオフ – ⼤きいほど誤分類が少ないが過学習 14
15.
例: RBF SVM 15出典:
RBF SVM parameters — scikit-learn documentation cost: ⼤ gamma: ⼤ ベスト
16.
ハイパーパラメータ探索 • ハイパーパラメータの選び⽅によって 精度が劇的に変わる • 意味を考えて慎重に選択する必要 •
データと学習モデルに対する深い理解 • 職⼈芸 16
17.
2. まとめ • ハイパーパラメータは学習前に決める •
決め⽅で精度が劇的に変わる • チューニングは職⼈芸 • もっと簡単にできないか? ➡︎ グリッドサーチ 17
18.
⽬次 1. はじめに 2. ハイパーパラメータ探索 3.
グリッドサーチ 4. ベイズ最適化 5. 獲得関数 6. ガウス過程 7. 実⾏ツール 18
19.
3. グリッドサーチ • ハイパーパラメータの選択は職⼈芸 •
もっと簡単にやる⽅法としてグリッド サーチがある 19
20.
グリッドサーチ • 探索範囲を格⼦状(グリッド)にする 20
21.
グリッドサーチ • ハイパーパラメータの格⼦を作る • gamma
= (10-5, 10-4, … , 102, 103) • cost = (10-4, 10-3, … , 103, 104) • それぞれの組み合わせでモデルを学習 • 例: • cost = 10-4, gamma = 10-5 ➡︎ 正答率 • cost = 10-4, gamma = 103 ➡︎ 正答率 21
22.
グリッドサーチ • すべての格⼦点で正答率を求める 22
23.
グリッドサーチ • すべての組み合わせに対して正答率を求 め、最も良いものを選択する ※正答率はクロスバリデーションで求めた • シンプルでわかりやすい •
しかし、グリッドのすべての組み合わせ (今回は10 ✖ 10 = 100) に対して正答率を 計算するのは時間がかかる 23
24.
3. まとめ • グリッドサーチはハイパーパラメータの すべての組み合わせに対して正答率を計 算し最良のものを選ぶ •
データが多い場合、1回のモデルの学習に 多⼤な時間がかかる • 効率的に探索したい ➡︎ ベイズ最適化 24
25.
⽬次 1. はじめに 2. ハイパーパラメータ探索 3.
グリッドサーチ 4. ベイズ最適化 5. 獲得関数 6. ガウス過程 7. 実⾏ツール 25
26.
4. ベイズ最適化 • グリッドサーチは、すべての組み合わせ についてモデルを学習 ➡︎
時間がかかる • ベイズ最適化により効率的な探索が可能 26
27.
ベイズ最適化 • 次の4点の正答率が求まっているとする 27
28.
ベイズ最適化 • 次にどこを観測するか? – 右下が良さそう –
真ん中がスカスカ • ベイズ最適化 – 正答率が良さそうなエリアを優先的に観測 – 局所解に陥らないようにスカスカのエリアも たまに観測 28
29.
観測数 = 15 •
右下を重点的に観測、スカスカエリアも観測 29
30.
観測数 = 30 •
評価値の良さそうなエリアが⼤体⾒える 30
31.
観測数 = 50 •
良さそうなエリアが埋まり、最適解が求まる 31
32.
4. まとめ • ベイズ最適化を使って、効率的に最適解 に到達 •
100個の格⼦点に対して 50回 • これまでの評価値に基づいて次の観測点 を⾃動的に判断 • どうやって判断しているか? ➡︎ 獲得関数 32
33.
⽬次 1. はじめに 2. ハイパーパラメータ探索 3.
グリッドサーチ 4. ベイズ最適化 5. 獲得関数 6. ガウス過程 7. 実⾏ツール 33
34.
5. 獲得関数 • ベイズ最適化は次の観測点を⾃動で判断 •
様々な戦略が提案されている ① PI 戦略 ② EI 戦略 ③ UCB 戦略 • 獲得関数は、それぞれの戦略で最⼤化さ れる関数 34
35.
① PI 戦略 •
PI 戦略 – Probability of Improvement (改善確率) – 現在の最⼤値 ybest – ybest を超える確率が最も⾼い点を次に観測 • シンプルで分かりやすいが局所解に陥る ことも 35
36.
② EI 戦略 •
PI 戦略は改善確率のみを考えた • 確率が⾼くても改善量が⼩さいと⾮効率 • EI 戦略 – Expected Improvement (期待改善量) – 評価値とベストの差 y – ybest の期待値が最も ⾼くなる点を次に観測 • 最も⼀般的に使われている 36
37.
③ UCB 戦略 •
UCB 戦略 – Upper Confidence Bound (上側信頼限界) – 評価値の信頼区間の上限が最も⾼い点を次に 観測 • 最適解にたどり着く理論的保証がある 37
38.
獲得関数 • それぞれの戦略は何らかの関数を最⼤化 する点を次に観測する – PI(x)
: y が ybest を超える確率 – EI(x) : y – ybest の期待値 – UCB(x): y の信頼区間の上限 • このような関数を獲得関数と呼ぶ 38
39.
5. まとめ • ベイズ最適化では獲得関数を最⼤化する 点を次に選ぶ •
獲得関数は確率、期待値、信頼区間など を使⽤ • どうやって計算するか? ➡︎ ガウス過程 39
40.
⽬次 1. はじめに 2. ハイパーパラメータ探索 3.
グリッドサーチ 4. ベイズ最適化 5. 獲得関数 6. ガウス過程 7. 実⾏ツール 40
41.
6. ガウス過程 • ベイズ最適化では獲得関数を最⼤化する 点を次に観測 •
獲得関数には確率や期待値が使われる • これらを計算するために、最適化したい 関数がガウス過程に従うと仮定する 41
42.
ガウス過程 • 関数がガウス過程に従う? • 例:
形状の分からない関数 y = f(x) • 次の5点を観測 42 x y 0.1 0.08 0.4 −0.30 0.5 −0.48 0.7 0.46 0.9 0.37
43.
ガウス過程 • 観測点から関数のだいたいの形を予想 43
44.
ガウス過程 • 未観測点の期待値 µ
と分散 σ2 を算出可能 44 σ µ
45.
ガウス過程 • 未観測点の期待値 µ
と分散 σ2 を算出可能 • µ が⼤きい: 周囲の観測点が⼤きい • σ が⼤きい: 周囲が観測されていない • µ が⼤きい点を次の観測点に選べば、⼤き い値が期待できる • しかし、そればかりでは局所解に陥る • 適度に σ の⼤きい点を探索する必要あり 45
46.
ガウス過程 • ガウス過程を仮定することで獲得関数が 計算可能に • カーネル関数の選択が必要 –
Squared Exponential: – Matern: 46
47.
カーネル関数 • 観測点同⼠がどれぐらい影響し合うか • 例:
Squared Exponential • 距離 d が遠いほど影響は⼩さくなる ➡︎「近い観測点は同じぐらいの値」を表現 47
48.
6. まとめ • 獲得関数を計算するためにガウス過程を 仮定する •
未評価点は近隣の評価点と近い値を取る • どれぐらい近くの評価点が影響するかは カーネル関数で決まる 48
49.
⽬次 1. はじめに 2. ハイパーパラメータ探索 3.
グリッドサーチ 4. ベイズ最適化 5. 獲得関数 6. ガウス過程 7. 実⾏ツール 49
50.
7. 実⾏ツール • ベイズ最適化を⾏うツールはたくさん –
SMAC – Spearmint (Python; ⾮商⽤) – COMBO (Python; 東京⼤学 津⽥研) – GPyOpt (Python) – bayesian-optimization (Python) – rBayesianOptimization (R) 50
51.
bayesian-optimization 51
52.
rBayesianOptimization 52
53.
7. まとめ • ベイズ最適化の実⾏ツールはたくさん •
特に Python ライブラリが多い • 簡単に実⾏できる – グリッド範囲の指定 – 獲得関数の指定 – カーネル関数の指定 • ぜひ実⾏してみて下さい! 53
54.
本⽇のまとめ • ベイズ最適化は⾼コストなブラックボッ クス関数の最適点を効率良く求める⼿法 • ガウス過程を⽤いて⽬的関数を表現 •
獲得関数が最⼤となる点を次の観測点に 選ぶ • ツールがたくさんあり簡単に実⾏できる 54
55.
おまけ 55
56.
ランダムサーチ • Bergstra &
Bengio (JMLR 2012) • ⼀部の機械学習⼿法において、ハイパー パラメータ探索はランダムサーチが有効 である • これは、機械学習の精度を左右するハイ パーパラメータは少数だからである 56
57.
ランダムサーチ • Bergstra &
Bengio (JMLR 2012) 57
58.
58 SMAC: ベイズ最適化ツール TPE: Tree Parzen Estimator (Bergstra+
NIPS 2011) Random: ランダムサーチ Random_2x: 2並列ランダムサーチ Li+ (arXiv 2016) Hyperband
59.
獲得関数 MI (Contal+
2014) • Mutual Information (相互情報量) • 次の探索点として、獲得関数 MI(x) = µ(x) + K Φt(x) が最も⼤きい点 x を選ぶ • γt^ は f(xt) を観測したときに得られる 相互情報量の下限を表す 59
60.
相互情報量 • ガウス過程の相互情報量(f と観測値): •
γT を相互情報量の最⼤値と定義する 60 (Srinivas+2012)
61.
GP-MI の獲得関数 • 相互情報量は最低限これだけ増加する •
情報量の増加が⼤きい点を次に選ぶ戦略 61 これまでの 情報量の下限 もし点 x を観測したら 得られる情報量の下限
62.
テスト関数 62 (図1) 混合ガウス分布 (図2)
Himmelblau
63.
63
64.
アルゴリズムの評価 • アルゴリズムの評価に Regret
(後悔) を使 う。 • Regret とは、探索点における f(xt) と最適 値 f(x★) の差 • 累積 Regret が⼩さいと良いアルゴリズム 64
65.
Regret (後悔) 65 求めたいのは ココ! この点を観測した ときの後悔の⼤きさ
66.
Regret 上限 「UCBは最適値へ収束する理論的保証あり」 正確には • 累積
Regret RT が Regret 上限 G(T)√α 以下になる確率が⼤きい Pr[RT ≦ G(T)√α] ≧ 1 – δ α = log(2/δ) • δ を⼩さくすると上限が緩くなる 66
67.
おしまい 67