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

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

Sponsored · Ship Features Fearlessly Turn features on and off without deploys. Used by thousands of Ruby developers.

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

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

Avatar for Masafumi Abeta

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 本章のまとめ