Advertisement

バンディット問題について

jkomiyama
Jul. 31, 2019
Advertisement

More Related Content

Slideshows for you(20)

Advertisement

Recently uploaded(20)

バンディット問題について

  1. バンディット問題について 小宮山 純平 (東大生研) 2019/07/22
  2. 研究  バンディット問題  メイン、博士課程→現在  今回の発表内容  パターンマイニング+多重検定  2017年ごろ(KDD2017で発表)  公平性配慮アルゴリズム  2018年ごろ(ICML2018で発表) 2
  3. バンディット問題 3 …  𝐾 個のスロットマシン(アーム)、引くと報酬が得ら れる  最も期待報酬の高いアームはどれか アーム (image from http://www.directgamesroom.com )
  4. 難しさ:部分フィードバック 4 … アーム2を引くと、アーム2の報酬がわかる →アーム1やアーム3を引いた場合にどれぐらいの報酬が 貰えたかは一切わからない アーム
  5. テーマ:探索と活用のトレードオフ 探索:全アームを均等に調べる  各アームの期待報酬を正確に推定したい 活用:一番良いアームを選びたい  現時点の情報で最も報酬の高そうなアームを引 く  高い確率で真に良いアームを選べるが、情報が 不足していると悪いアームが一見良く見えるこ とがある 良いアルゴリズム=探索と活用をバランスできる アルゴリズム 5
  6. バンディット問題の構造 6 … 例えば:アーム1が最も良いアームとして アーム𝑖 ∈ [2 … 𝐾]をどれぐらい調べれば、 アーム1 > アーム𝑖であると確信できるか? アーム
  7. 最もシンプルなバンディット問題の定式化 各ラウンド 𝑡 = 1,2, … , 𝑇に, 1. アルゴリズムがアーム𝐼 𝑡 ∈ 𝐾 = 1, … , 𝐾 を選択し、 2. 報酬 𝑋𝐼 𝑡 𝑡 を受け取る. 目的:総報酬の最大化 7
  8. 例:オンライン広告 検索エンジン「レンタカーについてのクエリを出した ユーザに、関連した広告を出したい」  広告を出したいレンタカー・旅行代理店はたくさ んある:代理店A-Zのどの広告を出せばいいか?  最もユーザが興味を持つもの  Implicit feedback: ユーザの興味は直接はわからない が、ユーザがクリックして閲覧する広告は良い  検索エンジンはクリックから収益を得る(pay-per- click) 8
  9. オンライン広告を バンディット問題としてモデル化 対応関係: 9 バンディット問題 オンライン広告 ラウンド ユーザの来訪 アーム 広告 報酬 広告がクリックされた かどうか (Bernoulli: 1=クリック, 0=非クリック) 報酬の最大化 クリック数の最大化
  10. バンディット問題:定式化 各ラウンド 𝑡 = 1,2, … , 𝑇に, 1. アルゴリズムがアーム𝐼 𝑡 ∈ 𝐾 = 1, … , 𝐾 を選択し、 2. 報酬 𝑋𝐼 𝑡 𝑡 を受け取る. 目的:総報酬の最大化 10 報酬に対する仮定で おもに3つの異なる 定式化
  11. バンディット問題:定式化 各ラウンド 𝑡 = 1,2, … , 𝑇に, 1. アルゴリズムがアーム𝐼 𝑡 ∈ 𝐾 = 1, … , 𝐾 を選択し、 2. 報酬 𝑋𝐼 𝑡 𝑡 を受け取る. 目的:総報酬の最大化 11 アルゴリズム=過去の報酬情報を見て 次に選ぶアームを決定 (オンラインアルゴリズム)
  12. 3つの定式化 ベイズ的 確率的 敵対的 モデル ベイズ 頻度論 任意 未来の報酬は? 割引 今と同じ 今と同じ アルゴリズム Gittins指数 UCB/TS/MED Exp3 (指数重み) 12 https://www.slideshare.net /JohnTyndall /an-introduction-to-bayesian-statistics より
  13. 3つの定式化 ベイズ的 確率的 敵対的 モデル ベイズ 頻度論 任意 未来の報酬は? 割引 今と同じ 今と同じ アルゴリズム Gittins指数 UCB/TS/MED Exp3 (指数重み) 13 https://www.slideshare.net /JohnTyndall /an-introduction-to-bayesian-statistics より 僕の研究分野 (頻度論者?…)
  14. 3つの定式化 ベイズ的 確率的 敵対的 モデル ベイズ 頻度論 任意 未来の報酬は? 割引 今と同じ 今と同じ アルゴリズム Gittins指数 UCB/TS/MED Exp3 (指数重み) 14 https://www.slideshare.net /JohnTyndall /an-introduction-to-bayesian-statistics より 3つの定式化を順番に説明
  15. 1.ベイズ的バンディット問題 • アーム = マルコフ決定過程 (MDP) - 状態マシン 入力: 割引因子 𝛽 ∈ (0,1), 事前分布 𝝁𝒊(𝟎) 𝒊 各ラウンド 𝑡 = 1,2, … , 𝑇に, 1. アルゴリズムがアーム𝐼 𝑡 ∈ 𝐾 を選び 2. 報酬 𝑋𝐼 𝑡 𝜇𝐼 𝑡 (𝑡) を受け取る 3. 状態がMDP上で変化 目的:事前分布のもとで期待報酬を最大化(ベイズ的!) 15 事後確率を更新
  16. 1.ベイズ的バンディット問題 • アーム = マルコフ決定過程 (MDP) 入力: 割引因子 𝛽 ∈ (0,1), 事前分布 𝝁𝒊(𝟎) 𝒊 各ラウンド 𝑡 = 1,2, … , 𝑇に, 1. アルゴリズムがアーム𝐼 𝑡 ∈ 𝐾 を選び 2. 報酬 𝑋𝐼 𝑡 𝜇𝐼 𝑡 (𝑡) を受け取る 3. 状態がMDP上で変化 目的:事前分布のもとで期待報酬を最大化 16 事後確率を更新 Informalに:各アームの状態(報酬高いアームか 低いアームか)の事前分布を知っている、 どう状態変化するか(あるいはしないか)も知っている →どのアームを引くのがいいか?
  17. 1.ベイズ的バンディット問題 • アーム = マルコフ決定過程 (MDP) 入力: 割引因子 𝛽 ∈ (0,1), 事前分布 𝝁𝒊(𝟎) 𝒊 各ラウンド 𝑡 = 1,2, … , 𝑇に, 1. アルゴリズムがアーム𝐼 𝑡 ∈ 𝐾 を選び 2. 報酬 𝑋𝐼 𝑡 𝜇𝐼 𝑡 (𝑡) を受け取る 3. 状態がMDP上で変化 目的:事前分布のもとで期待報酬を最大化 17 事後確率を更新事後確率を更新 未来の報酬は今の報酬より価値が低い (強化学習と同様)
  18. Gittins指数 [Gittins ’73]  最適なアルゴリズム:以下のGittins指数を 最大化するアームを引く 𝐺𝑖 𝑡 = 「アルゴリズム がアーム𝑖を引き続けて報酬をもらえる権利」 はいくらか?  証明は例えば [Weber ’92]. 18
  19. ベイズ的定式化: pros/cons 😁 最適アルゴリズム (Gittins指数). 😁 アームの(既知な)変化を扱えるー例えば、 広告を見せ続けると価値が下がるなど) 😣 性能が事前分布に依存(欠点でもない?) 😣 性能が割引因子𝛽に依存 😣 計算が大変(強化学習と同じく未来の報酬計 算に関するベルマン方程式を解く必要がある) 所感:最後の項がオンライン広告やA/Bテストで 近年は使われない原因なのでは… 19
  20. 確率的 バンディット問題 [Robbins 1952] • アーム=確率分布 各ラウンド𝑡 = 1,2, … , 𝑇に, 1. アルゴリズムがアーム𝐼 𝑡 ∈ 𝐾 を選択し 2. 報酬 𝑋𝐼 𝑡 𝑡 ~𝑃(𝜇𝐼 𝑡 )を受け取る. 目的:期待報酬E 𝑡=1 𝑇 𝑋𝐼 𝑡 𝑡 を最大化. 20
  21. 確率的 バンディット問題 [Robbins 1952] • アーム=確率分布 各ラウンド𝑡 = 1,2, … , 𝑇に, 1. アルゴリズムがアーム𝐼 𝑡 ∈ 𝐾 を選択し 2. 報酬 𝑋𝐼 𝑡 𝑡 ~𝑃(𝜇𝐼 𝑡 )を受け取る. 目的:期待報酬E 𝑡=1 𝑇 𝑋𝐼 𝑡 𝑡 を最大化. 21 報酬は各アームに対応した 確率分布からのサンプル 要するに…これまでのサンプルをもとに、 最も期待値の高い確率分布を推定
  22. Regretと漸近最適性  以下のRegretを定義 Regret 𝑇 = 𝑡=1 𝑇 max 𝑖 𝜇𝑖 − 𝑡=1 𝑇 𝜇𝐼 𝑡 .  報酬最大化=Regret最小化  漸近最適アルゴリズム [Lai&Robbins ‘85]  lim 𝑇→∞ Regret(𝑇) log 𝑇 → 𝐶∗ w. p. 1  𝐶∗: 一番良い分布を決定するための 最低限のサンプル数 𝜇𝑖 𝑖. 22
  23. Regretと漸近最適性  以下のRegretを定義 Regret 𝑇 = 𝑡=1 𝑇 max 𝑖 𝜇𝑖 − 𝑡=1 𝑇 𝜇𝐼 𝑡 .  報酬最大化=Regret最小化  漸近最適アルゴリズム [Lai&Robbins ‘85]  lim 𝑇→∞ Regret(𝑇) log 𝑇 → 𝐶∗ w. p. 1  𝐶∗: 一番良い分布を決定するための 最低限のサンプル数 𝜇𝑖 𝑖. 23 最も良いアームを知っていたら、 どれだけ報酬を多くもらえたか
  24. Regretと漸近最適性  以下のRegretを定義 Regret 𝑇 = 𝑡=1 𝑇 max 𝑖 𝜇𝑖 − 𝑡=1 𝑇 𝜇𝐼 𝑡 .  報酬最大化=Regret最小化  漸近最適アルゴリズム [Lai&Robbins ‘85]  lim 𝑇→∞ Regret(𝑇) log 𝑇 → 𝐶∗ w. p. 1  𝐶∗: 一番良い分布を決定するための 最低限のサンプル数 𝜇𝑖 𝑖. 24 いくつのサンプルがあれば、 一番良いアーム(確率分布) を決定できるか?
  25. Upper Confidence Bound 1 (UCB1) アルゴ リズム [Auer+ 2002]  各ラウンドに、以下のUCB1指数 𝐵UCB1 𝑖, 𝑡 を最大化するアームを選択 𝐵UCB1 𝑖, 𝑡 = 𝜇𝑖(𝑡) + log(𝑡) 𝑁𝑖(𝑡) 25 𝜇𝑖 𝐵UCB1 𝑖, 𝑡 期待報酬 サンプル数 経験期待報酬
  26. Upper Confidence Bound 1 (UCB1) アルゴ リズム [Auer+ 2002]  各ラウンドに、以下のUCB1指数 𝐵UCB1 𝑖, 𝑡 を最大化するアームを選択 𝐵UCB1 𝑖, 𝑡 = 𝜇𝑖(𝑡) + log(𝑡) 𝑁𝑖(𝑡) 26 𝜇𝑖 𝐵UCB1 𝑖, 𝑡 経験期待報酬 期待報酬 探索活用
  27. 確率的定式化: pros/cons 😁 漸近最適フレームワーク[Lai&Robbins ’85]. 😁 効率的なアルゴリズム(UCB, Thomspon sampling, MED, etc.) 😣報酬分布の変化が扱いにくい(例えば、昼と 夜で広告のクリック率が異なる場合、自明では ないアルゴリズムの改良が必要) 27
  28. 敵対的バンディット問題 [Auer+ 2002] • 敵 (adversary)が不利な報酬を設定 各ラウンド 𝑡 = 1,2, … , 𝑇に 1. 敵が各アームの報酬を決定{ 𝑋𝑖 𝑡 } 2. アルゴリズムがアーム𝐼 𝑡 ∈ 𝐾 を選択し 3. 報酬 𝑋𝐼 𝑡 ∈ [0,1]を受け取る 目的:最悪の敵に対する報酬E 𝑡=1 𝑇 𝑋𝐼 𝑡 𝑡 を大きくする 28
  29. 敵対的バンディット問題 [Auer+ 2002]  Regret 𝑇 = max 𝑖 𝑡=1 𝑇 𝑋𝑖 𝑡 − 𝑡=1 𝑇 𝑋𝐼(𝑡) 𝑡 .  「敵」はとても強い:任意の 決定的アルゴリズムはΩ(𝑇)の Regret(一番いいアームを選べない)  乱択すると𝑜(𝑇) のRegret(一番いい アームを選べる)  Exp3 [Auer+2002], Inf [Garivier+2009]. 29 最も報酬の高いアーム の総報酬 アルゴリズムの 総報酬
  30. Exp3アルゴリズム: 指数的重みづけ  各アームを次の確率𝑝𝑖(𝑡)で選択 where is an estimator of • パラメータ 𝛾と𝜂をチューニングし、 𝑂( 𝐾𝑇)の Regret(=最も良いアームを決められる) 30 総報酬の不偏推定量: 総報酬に対して指数的に高い 確率でアームを引く
  31. 敵対的定式化: pros/cons 😁 仮定が弱い:報酬分布は任意の分布、定 常でもよいし、時間変化があってもOK 😣 実際の性能は低いことが多い 仮定が弱すぎる(最悪の場合に対応するため、 探索が大きすぎる)傾向→例えば、広告のク リック率は「ほぼ定常」だとすると、その構 造をどうにか活かしたい 31
  32. 3つのアプローチ:どれが使われている か?  機械学習の論文を見ると→確率的と敵 対的が大半  ベイズ的なアプローチはなぜあまり見 ないか?  計算が重い(主にどのぐらい先のラウン ドを見るかー割引因子依存の2乗)  機械学習の人は計算効率より、「学習で きるか」に興味がある?(機械学習です し…) 32
  33. 3つのアプローチ:どれが使われている か?  バンディット問題の3つの定式化について説 明した  どんな問題を扱える?  報酬の仮定が適切で  目的が報酬の最大化なら バンディット問題によるモデル化はうまく いく印象 後半は代表的な応用事例を紹介 33
  34. これ以降、バンディット問題の応用事例 を説明 34
  35. オンライン広告 35
  36. オンライン広告  検索エンジン広告:検索クエリとキーワードの マッチング(ブロードマッチ)後、どの広告を 選択するか?  検索エンジン広告はpay-per-click  広告=アーム, クリック=報酬  収益最大化=報酬最大化  ユーザ個別の素性はどうやって考慮するか?  同じ「レンタカー」検索でも、若者と家族 持ち世代では反応が変わるかもしれない 36
  37. コンテキストありバンディット問題 [Langford&Zhang ’07] 各ラウンド𝑡 = 1,2, … , 𝑇に、アルゴリズムは 1. コンテキスト 𝑐(𝑡)を受け取り 2. アームを選択し 𝐼 𝑡 ∈ 𝐾 3. 報酬を受け取る 𝑋𝐼 𝑡 𝑡 . 目的:総報酬の最大化 37
  38. コンテキストありバンディット問題  パーソナリゼーション:あるユーザにとっては広 告1のほうが良いし、別のユーザにとっては広告2 のほうが良い  コンテキスト=広告とユーザ間の関係を(ベ クトル素性など)で表現  最適なアルゴリズム:コンテキストから広告 への写像𝜋: C → [𝐾]を学習  敵対的定式化[Langford&Zhang ’07], および確率的定式 化[Lai+ ’82, Abe&Long ’03, Chu ‘11]. 38
  39. モンテカルロ木探索 (MCTS)  Chess, 囲碁, etc.  複数人、ターン制のゲーム(展開型ゲーム)  ゲーム木で表現 → 39
  40. UCTアルゴリズム  目的:次の一手の発見  難しい点:木のサイズは深さに対し て指数的に増大  途中局面の「評価」が非常に難しい  将棋などと違い、評価関数が(そこ まで)うまくいかない  UCTは評価フリーアプローチ 40 Leaf node
  41. Bandit-based Monte Carlo planning [Kocsis+ ’06] 41 UCT = UCB over Tree ランダムプレイ 黒勝ち→ reward 1 白勝ち→ reward 0 各局面の次の手が バンディットアーム 報酬を backpropagation
  42. UCTアルゴリズム 42 評価数が一定回を超え たら次のノードを展開 次の手をUCBで選択
  43. UCTは本当に必要なのか?  MCTS (UCT)の良さ:ツリーの重点探索  普通のUCTは低性能 [Yoshimoto+ ’06] → ゲーム知識の 折り込みは必須  Progressive widening: 低品質な評価関数で事前 に手の優先順位を決める  AMAF (手順前後-どちらを先に打っても価値は 同じ)  多くの(囲碁の性質を利用した)ヒューリス ティック  2007-2015はモンテカルロ囲碁が最強時代 43
  44. アルファ後[Silver+ ’15] とUCT  AlphaGo [Silver+ ’15].  UCT + 評価関数(局面の評価)  深層学習を用いた4つの評価関数.  Rollouts / Supervised learning (SL) → 次の着 手予測 (棋譜からトレーニング).  Reinforcement learning (RL) / Value network → 評価値で有力な手から順にソート.  UCTを利用した木の探索はやはり利用 44
  45. 推薦システム  ユーザの望むアイテムを推薦 (e.g., ECサイト)  コールドスタート: 新しい商品 or 新しいユーザに どうやって推薦するか(データがない)  探索 (データ収集)と活用 (これまでのデータか らよさそうな商品を推薦)のトレードオフは、 普通のバッチ学習では考慮できない  バンディットベースの推薦システムが推薦シ ステムの学会(e.g., [Tang+ Recsys’14])や機械学 習の学会(e.g., [Kawale+ NIPS‘15])でいろいろ 提案されている 45
  46. A/Bテスト  案Aと案B、どちらがいいか?  アクセスログ→継続率/クリック率が観測可能 46 https://ambervincent.wordpress.com/2015/01/15/this-is-an-a-b- conversation-so-c-your-way-out-ab-testing/
  47. A/Bテスト  A/Bテストはバンディット問題か?  バンディット問題は総報酬を最大化したい  A/Bテストではこれまでのユーザの総報酬(ユーザ が継続したか離脱したか)も重要だが、テスト終了 時にどちらが良いかを検定(決定)したい  ではA/Bテストは(普通の意味での)検定か?  普通の検定はデータ数固定:「100人にテストして みたところ、p値=0.03で案Aのほうが良かった」  A/Bテスト:与えた水準を満たすまで実験を追加 「p=0.05でどちらかが良いか検定できるまで案Aと 案Bをユーザに交互に見せる」 47
  48. 検定とp値  p値:帰無仮説からデータが生成されるとしたときの 偏り具合 • 帰無仮説「案Aと案Bの効果は同程度」 • p値が一定以下→帰無仮説を棄却し、対立仮設 を支持「帰無仮説が正しとしたら、こんなに案 Aが案Bよりうまく見えることは通常起きない。 よって、案Aは案Bより優れている」  Best arm identification(最適腕識別) • バンディット問題の技術を応用可能 48
  49. まとめ バンディット問題を紹介した  3つの定式化(報酬の仮定)  応用事例(オンライン広告、モンテカルロ 木探索、推薦システム、A/Bテスト)  バンディット問題をやっていて良かった点  シンプルな問題設定、多い応用例 49
Advertisement