Upgrade to Pro — share decks privately, control downloads, hide ads and more …

ウェブ最適化からはじめる機械学習 7章

ウェブ最適化からはじめる機械学習 7章

「ウェブ最適化からはじめる機械学習」輪講会で発表した資料です。

Masafumi Abeta

August 18, 2021
Tweet

More Decks by Masafumi Abeta

Other Decks in Programming

Transcript

  1. 2 7.1 マーケティング会議 7.1.1 リンクテキストの⾊をデータで決める 7.2 ベイズ最適化 7.3 ガウス過程 7.3.1

    カーネルトリック 7.3.2 さまざまなカーネル 7.3.3 ガウス過程の実装 7.3.4 計算の⾼速化のための⼯夫 7.4 コンピュータとし対話して最適な⾊を探す 7.4.1 解空間としての⾊空間 7.5 GP-UCBアルゴリズム 7.5.1 対話型最適化による動作確認 7.6 GP-TSアルゴリズム 7.7 応⽤上の注意点 7.8 エレンの質問 7.9 本章のまとめ
  2. 3 7.1 マーケティング会議 7.1.1 リンクテキストの⾊をデータで決める 7.2 ベイズ最適化 7.3 ガウス過程 7.3.1

    カーネルトリック 7.3.2 さまざまなカーネル 7.3.3 ガウス過程の実装 7.3.4 計算の⾼速化のための⼯夫 7.4 コンピュータとし対話して最適な⾊を探す 7.4.1 解空間としての⾊空間 7.5 GP-UCBアルゴリズム 7.5.1 対話型最適化による動作確認 7.6 GP-TSアルゴリズム 7.7 応⽤上の注意点 7.8 エレンの質問 7.9 本章のまとめ
  3. 5 7.1 マーケティング会議 7.1.1 リンクテキストの⾊をデータで決める 7.2 ベイズ最適化 7.3 ガウス過程 7.3.1

    カーネルトリック 7.3.2 さまざまなカーネル 7.3.3 ガウス過程の実装 7.3.4 計算の⾼速化のための⼯夫 7.4 コンピュータとし対話して最適な⾊を探す 7.4.1 解空間としての⾊空間 7.5 GP-UCBアルゴリズム 7.5.1 対話型最適化による動作確認 7.6 GP-TSアルゴリズム 7.7 応⽤上の注意点 7.8 エレンの質問 7.9 本章のまとめ
  4. 7 7.1 マーケティング会議 7.1.1 リンクテキストの⾊をデータで決める 7.2 ベイズ最適化 7.3 ガウス過程 7.3.1

    カーネルトリック 7.3.2 さまざまなカーネル 7.3.3 ガウス過程の実装 7.3.4 計算の⾼速化のための⼯夫 7.4 コンピュータとし対話して最適な⾊を探す 7.4.1 解空間としての⾊空間 7.5 GP-UCBアルゴリズム 7.5.1 対話型最適化による動作確認 7.6 GP-TSアルゴリズム 7.7 応⽤上の注意点 7.8 エレンの質問 7.9 本章のまとめ
  5. 8 ベイズ最適化 ベイズ最適化は𝑥 = argmax !∈# 𝑓(𝑥)を求める問題。 • 評価値の数は最⼩限しか求められないことを前提とする •

    関数𝑓(𝑥)に対する仮定は最⼩限 • 関数𝑓(𝑥)の微分情報は不要 • 評価値にばらつきがあっても⾃然に扱える
  6. 9 問題設定 エージェントは各時刻𝑡に解空間𝑋から解𝑥$ を選択する。エージェントは期待値関数𝑓(𝑥$ )を平均に持つ正規分 布から評価値を得るとする。 𝑟$ ∼ 𝒩(𝑓 𝑥$

    , 𝜎%) Webデザインでは、 • 解空間𝑋は試したいデザイン全体 • 解𝑥$ はユーザに表⽰したデザイン • 𝑟$ はユーザから得られた反応、すなわちクリックの有無や滞在時間 • 𝑓(𝑥)はデザイン𝑥に対するユーザの反応の期待値 𝑓に対しては事前に何の仮定得られないため、ブラックボックス関数とも呼ばれる。 評価の期待値が最⼤となる解 𝑥 = argmax !∈# 𝑓(𝑥)を求めたい。
  7. 10 7.1 マーケティング会議 7.1.1 リンクテキストの⾊をデータで決める 7.2 ベイズ最適化 7.3 ガウス過程 7.3.1

    カーネルトリック 7.3.2 さまざまなカーネル 7.3.3 ガウス過程の実装 7.3.4 計算の⾼速化のための⼯夫 7.4 コンピュータとし対話して最適な⾊を探す 7.4.1 解空間としての⾊空間 7.5 GP-UCBアルゴリズム 7.5.1 対話型最適化による動作確認 7.6 GP-TSアルゴリズム 7.7 応⽤上の注意点 7.8 エレンの質問 7.9 本章のまとめ
  8. 11 6章の復習 6章ではクリック率の履歴𝐷 𝑡 = 𝑥& , 𝑟& , …

    , 𝑥$ , 𝑟$ をベイズ線形回帰モデルでモデリングした。 𝑃 𝑟& , … , 𝑟$ |𝒘, 𝒙& , … , 𝒙$ = 8 '(& $ 𝒩(𝜃$ , 𝜎%) = 8 '(& $ 𝒩(𝝓 𝒙$ )𝒘 , 𝜎%) 𝑃 𝒘|𝑟& , … , 𝑟$ , 𝒙& , … , 𝒙$ = 𝑃 𝑟& , … , 𝑟$ |𝒘, 𝒙& , … , 𝒙$ 𝑃 𝒘 /𝑃 𝑟& , … , 𝑟$ , ∝ exp − 1 2 𝒘 − 𝑨*&𝒃 )𝐴 𝒘 − 𝐴*&𝒃 ∝ 𝒩 𝝁$ , Σ$ 𝝁$ = 𝐴$ *&𝒃$ Σ$ = 𝐴$ *& 𝐴$ = Σ+ *& + 1 𝜎% Φ)Φ 𝒃$ = Σ+ *&𝝁+ + 1 𝜎% Φ)𝒓 Φ = 𝝓 𝒙& , … , 𝝓 𝒙$ ) 𝑃 𝜃∗ 𝒙∗ , 𝐷 𝑡 = ∫ 𝑑𝒘𝑃 𝜃∗ , 𝒘 𝒙∗ , 𝐷 𝑡 = ∫ 𝑑𝒘𝑃 𝜃∗ 𝒘, 𝒙∗ , 𝐷 𝑡 𝑃 𝒘|𝒙∗ , 𝐷 𝑡 = ∫ 𝑑𝒘𝑃 𝜃∗ 𝒘, 𝒙∗ 𝑃 𝒘 𝐷 𝑡 = 𝒩 𝝓 𝒙∗ )𝝁$ , 𝝓 𝒙∗ )Σ$ 𝝓 𝒙∗ 事後分布から𝑟の”期待値”𝜃 = 𝝓 𝒙∗ )𝑤の分布も分かる( 𝑤 が正規分布のため)。
  9. 12 ガウス過程 任意のN個の⼊⼒(𝑥& , … , 𝑥- )に対する出⼒(𝑓& , …

    , 𝑓- )の同時分布が多次元ガウス分布に従うとき、𝑥と𝑦の関係は ガウス過程に従う、と呼ぶ。全⾴の𝜃が𝑓に対応する。 𝑓∗ ∼ 𝒩 𝝓 𝒙∗ )𝝁$ , 𝝓 𝒙∗ )Σ$ 𝝓 𝒙∗ ⟹ 𝒇∗ ∼ 𝒩 Φ∗ 𝝁$ , Φ∗ Σ$ Φ∗ ) 𝝁$ = 𝐴$ *&𝒃$ Σ$ = 𝐴$ *& 𝐴$ = Σ+ *& + 1 𝜎% Φ)Φ 𝒃$ = Σ+ *&𝝁+ + 1 𝜎% Φ)𝒓 Φ = 𝝓 𝒙& , … , 𝝓 𝒙$ ) 履歴𝐷 𝑡 = 𝑥& , 𝑟& , … , 𝑥$ , 𝑟$ を使⽤して𝝁$ , Σ$ , 𝐴$ , 𝒃$ , Φを計算できる。この回帰モデルをガウス過程回帰と呼 ぶ。
  10. 13 7.1 マーケティング会議 7.1.1 リンクテキストの⾊をデータで決める 7.2 ベイズ最適化 7.3 ガウス過程 7.3.1

    カーネルトリック 7.3.2 さまざまなカーネル 7.3.3 ガウス過程の実装 7.3.4 計算の⾼速化のための⼯夫 7.4 コンピュータとし対話して最適な⾊を探す 7.4.1 解空間としての⾊空間 7.5 GP-UCBアルゴリズム 7.5.1 対話型最適化による動作確認 7.6 GP-TSアルゴリズム 7.7 応⽤上の注意点 7.8 エレンの質問 7.9 本章のまとめ
  11. 14 カーネルトリック 期待値と分散はΦΣ+ Φ)の形をした変数で表せる。 𝒇∗ ∼ 𝒩 Φ∗ 𝝁$ ,

    Φ∗ Σ$ Φ∗ ) Φ∗ 𝝁$ = 𝐾∗ ) 𝜎%𝐼 + 𝐾 *&𝒓 Φ∗ Σ$ Φ∗ ) = 𝐾∗∗ − 𝐾∗ ) 𝜎%𝐼 + 𝐾 *&𝐾∗ 𝝁$ = 𝐴$ *&𝒃$ Σ$ = 𝐴$ *& 𝐴$ = Σ+ *& + 1 𝜎% Φ)Φ 𝒃$ = Σ+ *&𝝁+ + 1 𝜎% Φ)𝒓 Φ = 𝝓 𝒙& , … , 𝝓 𝒙$ ) 𝐾 = ΦΣ+ Φ) 𝐾∗ = ΦΣ+ Φ∗ ) 𝐾∗∗ = Φ∗ Σ+ Φ∗ ) 𝐾 = ΦΣ+ Φ)の成分をカーネル関数で表す。 𝐾.,0 = Φ. Σ+ Φ1 ) = 𝜙 𝒙. )Σ+ 𝜙 𝒙0 = Σ+ ⁄ & %𝜙 𝒙. ) Σ+ ⁄ & %𝜙 𝒙. ≡ 𝜑 𝒙. )𝜑 𝒙0 ≡ 𝑘 𝒙. , 𝒙0 特徴表現𝜙を考える問題がカーネル関数𝑘 𝒙. , 𝒙0 を考えることに変わった。 𝐾をグラム⾏列と呼ぶ。
  12. 15 7.1 マーケティング会議 7.1.1 リンクテキストの⾊をデータで決める 7.2 ベイズ最適化 7.3 ガウス過程 7.3.1

    カーネルトリック 7.3.2 さまざまなカーネル 7.3.3 ガウス過程の実装 7.3.4 計算の⾼速化のための⼯夫 7.4 コンピュータとし対話して最適な⾊を探す 7.4.1 解空間としての⾊空間 7.5 GP-UCBアルゴリズム 7.5.1 対話型最適化による動作確認 7.6 GP-TSアルゴリズム 7.7 応⽤上の注意点 7.8 エレンの質問 7.9 本章のまとめ
  13. 16 カーネル関数は⼤雑把には期待値関数の共分散になる。 𝑘(𝒙. , 𝒙0 ) = 𝜙)(𝒙. )Σ+ 𝜙(𝒙0

    ) ∼ 𝐸[𝑓 𝒙. 𝑓(𝒙0 )] グラム⾏列は対称かつ半正定値である必要がある。よく使われるカーネルにガウスカーネル(RBFカーネル) がある。 𝑘 𝒙, 𝒙′ = exp(−𝛾 𝒙 − 𝒙3 %) 恒等カーネル。 𝑘 𝒙, 𝒙′ = 𝒙)𝒙3
  14. 17 7.1 マーケティング会議 7.1.1 リンクテキストの⾊をデータで決める 7.2 ベイズ最適化 7.3 ガウス過程 7.3.1

    カーネルトリック 7.3.2 さまざまなカーネル 7.3.3 ガウス過程の実装 7.3.4 計算の⾼速化のための⼯夫 7.4 コンピュータとし対話して最適な⾊を探す 7.4.1 解空間としての⾊空間 7.5 GP-UCBアルゴリズム 7.5.1 対話型最適化による動作確認 7.6 GP-TSアルゴリズム 7.7 応⽤上の注意点 7.8 エレンの質問 7.9 本章のまとめ
  15. 19 7.1 マーケティング会議 7.1.1 リンクテキストの⾊をデータで決める 7.2 ベイズ最適化 7.3 ガウス過程 7.3.1

    カーネルトリック 7.3.2 さまざまなカーネル 7.3.3 ガウス過程の実装 7.3.4 計算の⾼速化のための⼯夫 7.4 コンピュータとし対話して最適な⾊を探す 7.4.1 解空間としての⾊空間 7.5 GP-UCBアルゴリズム 7.5.1 対話型最適化による動作確認 7.6 GP-TSアルゴリズム 7.7 応⽤上の注意点 7.8 エレンの質問 7.9 本章のまとめ
  16. 20 𝑋 = 𝒙& , … , 𝒙- , 𝑋3

    = {𝒙& 3 , … , 𝒙4 3 }に対するカーネルを考える。 𝐾 𝑋, 𝑋′ = exp −𝛾 𝑃# ) − 2𝑄#,#! + 𝑃#! 𝑃# = 𝑥& % ⋯ 𝑥- % ⋮ ⋱ ⋮ 𝑥& % ⋯ 𝑥- % 𝑄#,#3 = 𝒙& )𝒙& 3 ⋯ 𝒙& )𝒙4 3 ⋮ ⋱ ⋮ 𝒙- )𝒙& 3 ⋯ 𝒙- )𝒙4 3 𝑃# は𝑄#,# の対⾓成分を⾏⽅向にM個並べたものになっている。ベクトル計算になって効率が良くなる。
  17. 21 7.1 マーケティング会議 7.1.1 リンクテキストの⾊をデータで決める 7.2 ベイズ最適化 7.3 ガウス過程 7.3.1

    カーネルトリック 7.3.2 さまざまなカーネル 7.3.3 ガウス過程の実装 7.3.4 計算の⾼速化のための⼯夫 7.4 コンピュータとし対話して最適な⾊を探す 7.4.1 解空間としての⾊空間 7.5 GP-UCBアルゴリズム 7.5.1 対話型最適化による動作確認 7.6 GP-TSアルゴリズム 7.7 応⽤上の注意点 7.8 エレンの質問 7.9 本章のまとめ
  18. 23 7.1 マーケティング会議 7.1.1 リンクテキストの⾊をデータで決める 7.2 ベイズ最適化 7.3 ガウス過程 7.3.1

    カーネルトリック 7.3.2 さまざまなカーネル 7.3.3 ガウス過程の実装 7.3.4 計算の⾼速化のための⼯夫 7.4 コンピュータとし対話して最適な⾊を探す 7.4.1 解空間としての⾊空間 7.5 GP-UCBアルゴリズム 7.5.1 対話型最適化による動作確認 7.6 GP-TSアルゴリズム 7.7 応⽤上の注意点 7.8 エレンの質問 7.9 本章のまとめ
  19. 25 7.1 マーケティング会議 7.1.1 リンクテキストの⾊をデータで決める 7.2 ベイズ最適化 7.3 ガウス過程 7.3.1

    カーネルトリック 7.3.2 さまざまなカーネル 7.3.3 ガウス過程の実装 7.3.4 計算の⾼速化のための⼯夫 7.4 コンピュータとし対話して最適な⾊を探す 7.4.1 解空間としての⾊空間 7.5 GP-UCBアルゴリズム 7.5.1 対話型最適化による動作確認 7.6 GP-TSアルゴリズム 7.7 応⽤上の注意点 7.8 エレンの質問 7.9 本章のまとめ
  20. 27 7.1 マーケティング会議 7.1.1 リンクテキストの⾊をデータで決める 7.2 ベイズ最適化 7.3 ガウス過程 7.3.1

    カーネルトリック 7.3.2 さまざまなカーネル 7.3.3 ガウス過程の実装 7.3.4 計算の⾼速化のための⼯夫 7.4 コンピュータとし対話して最適な⾊を探す 7.4.1 解空間としての⾊空間 7.5 GP-UCBアルゴリズム 7.5.1 対話型最適化による動作確認 7.6 GP-TSアルゴリズム 7.7 応⽤上の注意点 7.8 エレンの質問 7.9 本章のまとめ
  21. 30 7.1 マーケティング会議 7.1.1 リンクテキストの⾊をデータで決める 7.2 ベイズ最適化 7.3 ガウス過程 7.3.1

    カーネルトリック 7.3.2 さまざまなカーネル 7.3.3 ガウス過程の実装 7.3.4 計算の⾼速化のための⼯夫 7.4 コンピュータとし対話して最適な⾊を探す 7.4.1 解空間としての⾊空間 7.5 GP-UCBアルゴリズム 7.5.1 対話型最適化による動作確認 7.6 GP-TSアルゴリズム 7.7 応⽤上の注意点 7.8 エレンの質問 7.9 本章のまとめ
  22. 32 7.1 マーケティング会議 7.1.1 リンクテキストの⾊をデータで決める 7.2 ベイズ最適化 7.3 ガウス過程 7.3.1

    カーネルトリック 7.3.2 さまざまなカーネル 7.3.3 ガウス過程の実装 7.3.4 計算の⾼速化のための⼯夫 7.4 コンピュータとし対話して最適な⾊を探す 7.4.1 解空間としての⾊空間 7.5 GP-UCBアルゴリズム 7.5.1 対話型最適化による動作確認 7.6 GP-TSアルゴリズム 7.7 応⽤上の注意点 7.8 エレンの質問 7.9 本章のまとめ
  23. 34 7.1 マーケティング会議 7.1.1 リンクテキストの⾊をデータで決める 7.2 ベイズ最適化 7.3 ガウス過程 7.3.1

    カーネルトリック 7.3.2 さまざまなカーネル 7.3.3 ガウス過程の実装 7.3.4 計算の⾼速化のための⼯夫 7.4 コンピュータとし対話して最適な⾊を探す 7.4.1 解空間としての⾊空間 7.5 GP-UCBアルゴリズム 7.5.1 対話型最適化による動作確認 7.6 GP-TSアルゴリズム 7.7 応⽤上の注意点 7.8 エレンの質問 7.9 本章のまとめ
  24. 36 7.1 マーケティング会議 7.1.1 リンクテキストの⾊をデータで決める 7.2 ベイズ最適化 7.3 ガウス過程 7.3.1

    カーネルトリック 7.3.2 さまざまなカーネル 7.3.3 ガウス過程の実装 7.3.4 計算の⾼速化のための⼯夫 7.4 コンピュータとし対話して最適な⾊を探す 7.4.1 解空間としての⾊空間 7.5 GP-UCBアルゴリズム 7.5.1 対話型最適化による動作確認 7.6 GP-TSアルゴリズム 7.7 応⽤上の注意点 7.8 エレンの質問 7.9 本章のまとめ