狠狠撸

狠狠撸Share a Scribd company logo
探索と活?の戦略
ベイズ最适化と多腕バンディッド
PyData.Osaka Meetup#8
2017/09/01 Hiromichi Okazaki
? イントロダクション
? ベイズ最适化
? 多腕バンディッド
? まとめ
?次
マーケティング界隈で MA なる?葉が流?っています。
MA = Marketing Automation
今後の流れとして、様々な分野で、様々なものを組み合わせ
て課題を解決する Automation が増えてくるだろうという予
感を持っています。
不完全な環境の事前知識の中で、
不完全な知識を元に?動しながら、
データを蒐集し、
最適な?動を?つけてゆく
【活?】やってみて、良い結果になった?動、を続けてする。
【探索】もっと良い結果になる?動があるんじゃないか、とたま
に別のこともやってみる
これが探索と活?のトレードオフ(exploration- exploitation tradeoff)
探索と活?の戦略
しかし...
「過去の経験から?番いいと思う?動」ばかりをしていたのでは、
もっとよい?動を?つけることができない。(探索が?りない)
しかし...
もっといいものがあるかも!!と「未経験の?動」 ばかりをし
ていたのでは、過去の経験が?かせな い。(活?が?りない)
「探索」と「活?」のバランスを丁度よく調整しながら最適な?動を
(計算?法で)?つけてゆくのが「探索と利?の戦略」の要諦です。
これを今回は、
? ベイズ的な?法で「探索と利?の戦略」を使った「ベイズ最适化」
? 強化学習に分類されている「バンディッドアルゴリズム」
でみてみたいと思います。
探索と活?の戦略
ベイズ最适化
形の分からない関数の最?値(最?値)を効率的に求める?法
適?例
? 機械学習のハイパーパラメータ探索
? ゲーム課?率が最?となる設定の探索
ベイズ最适化
Bayesian Optimization: From A/B Testing To A-Z Testing / Michael Mozer
https://vimeo.com/109937337
ベイズ最适化
形の分からない関数の最?値(最?値)を効率的に求める?法
1. 形の分からない関数をガウス過程(Gaussian Process)に従うと仮定して
? ガウス過程を事前分布とすることで、関数の平均?分散を推定できる.
? サンプルをガウス過程回帰 (Gaussian Process Regression) する.
2. 「探索と活?の戦略」で y を最?化する x を探索する
? 推定した平均?分散を?いて、効率的に最適解を?つける(GP-UCB)
? 事後分布の平均?分散を?いて「探索と活?の戦略」を獲得関数で表現
し、それが最?を与えるときのパラメータを次の探索パラメータとする
ベイズ最适化
ここが最適解
ベイズ最适化
ベイズ最适化
ベイズ最适化
ベイズ最适化
ベイズ最适化
ベイズ最适化
ベイズ最适化
ベイズ最适化
GP-UCB (Gaussian Process - Upper Confidence Bound) 評価式
平均 = 活? 分散 = 探索
この2つのトレードオフは β で調節する
GP のカーネルなどもチューニングポイントですが今回は割愛 ...
Gaussian Process Optimization in the Bandit Setting:No Regret and Experimental Design
http://www-stat.wharton.upenn.edu/~skakade/papers/ml/bandit_GP_icml.pdf
多腕バンディッド
限られた試?回数において得られる総報酬を最?化したい.
多腕バンディッド
適?例
? Web の LP や クリエイティブ、表?コンテンツの最適化
https://support.google.com/analytics/answer/2844870?hl=ja
多腕バンディッド
なるべく期待値の?い台をプレイしたい
多腕バンディッド
? ? ? ?
ある程度の回数プレイしないと台の良し悪しが分からない
報酬の期待値の低い台を何度もプレイすると損
多腕バンディッド
? 複数台のスロットマシンをプレイするギャンブラーのモデル
? 得られる報酬の確率分布は台によって異なる
? なるべく期待値の?い台をプレイしたい
問題
? ある程度の回数プレイしないと台の良し悪しが分からない
? 報酬の期待値の低い台を何度もプレイすると損
http://ibisml.org/archive/ibis2014/ibis2014_bandit.pdf
「探索と活?の戦略」で
選択
得られたデータを蓄積し
次のスロットの選択に?かす
多腕バンディッド
多腕バンディッド reward ~ N(? = 0.1x + sin(x) +1, σ=0.1)
このスロットが最適解
多腕バンディッド
多腕バンディッド
多腕バンディッド
多腕バンディッド
多腕バンディッド
全てのスロットを数回は引き、期待値を評価する
多腕バンディッド
多腕バンディッド
多腕バンディッド
期待値の?いスロットを重点的に引いて探索
多腕バンディッド
最終的に最も期待値の?いスロットにフォーカスする
UCB の評価式
全体の合計選択回数
そのアームの選択回数期待値
多腕バンディッド
理論上は「有意?準 1/n での信頼区間の上限 (Upper Confidence Bound) が最?になる台を
プレイ」ということ(http://ibisml.org/archive/ibis2014/ibis2014_bandit.pdf)
第?項はアームを引いた回数が増えるほど?さくなる項
? 回数が少ないときは期待値をあまり信じない
? 回数が多くなれば期待値を信頼(ばらつきもほぼ出切っているだろうし)
まとめ
まとめ - ベイズ最适化
GP の事前分布のもとでの知識をつかって「探索と活?」する
事前知識を活?して評価していないところも推定して?切る。
GP はスムーズな関数にフィットするため(ある程度ノイジーなデータに対
してもロバスト)、パラメータに対してある程度連続した変動を持つ問
題の最適化に向く。
連続する選択肢?パラメータ空間の中で最適解を効率的に探索する。
期待値と頻度から得られる知識を使って「探索と活?」する
各スロットが独?している前提なので、コンテンツのような質的な
関係の最適化問題などに向いている。
統計的仮説検定に基づく従来型の A/B テストよりも効率、統計的優
位性に優れると?われている。
まとめ - 多腕バンディッド
まとめ
同じ「探索と活?の戦略」を?いる2つの最適化アルゴリズ
ムですが、どのような前提の上に?っており、どのような問
題に対して?を発揮するのか、それぞれの視座から?てみま
した。
これらは機械学習や最適化という観点だけでなく、伝統的な AB テスト
に対する別の?段としても、様々な分野から注?されています。
Q & A
Reference
* Bayesian Optimization example code (スライドで使?したもの)
https://github.com/branch-not-equal/bo
* Multiarm Bandits example code.
https://github.com/johnmyleswhite/BanditsBook.git
* 多腕バンディッド
http://ibisml.org/archive/ibis2014/ibis2014_bandit.pdf
* ベイズ最适化
Bayesian Optimization: From A/B Testing To A-Z Testing / Michael Mozer
https://vimeo.com/109937337
/nishio/1-70974083

More Related Content

探索と活用の戦略 ヘ?イス?最適化と多腕バンディット