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

ガウス過程回帰とベイズ最適化

 ガウス過程回帰とベイズ最適化

More Decks by NearMeの技術発表資料です

Other Decks in Science

Transcript

  1. 12 切り取る 「無限次元」をどう扱うか ‧ガウス過程は”関数 version”の正規分布だった → 「関数 f がガウス過程に従う」ことをどう定義すればよいか? ‧多変量ガウス分布の⼀部を切り取ってもやはりガウス分布に従うことに注⽬

    → 任意の(いくらでも⼤きな)個数の成分をfから切り取っても多変量ガウス になるような「仕組み」があればよさそう m n - m m n - m m n - m 第1~第m成分を切り取る
  2. 18 ガウス過程回帰 ‧⼊出⼒のデータ:  が与えられたとする (適切に前処理されているとする) ‧データにフィットする関数 f をexactに求めるのではなく,  データ観測後の「事後的な f

    の分布」を求める → ベイズ的 ↑よくわからないので  とりあえずガウス過程でモデリング ⼊⼒ 出⼒ ↑データに適合するような関数が  出てくる確率が⾼くなっている(ことを期待) (未知)
  3. 23 ガウス過程回帰の応⽤例① ‧時系列解析 ガウスカーネル ガウスカーネル + 線形カーネル → トレンドを考慮 カーネルの設定(

    = 事前分布の設定) を通じて「主観」が反映される -- カーネル関数を組み合わせることで様々な予測が可能
  4. 25 獲得関数 ‧f の計算が重いので, 代理となる関数(獲得関数)を⽤意する ‧獲得関数に求めること:  - 計算が重くない (重要)  -

    f に近い (少なくとも既知の点とその近くで合っていてほしい)  - 不確かさが反映されている(未探索の部分を過⼩評価しないでほしい) ‧ガウス過程回帰を使うと「関数 version」の信頼区間を出すことができる  → 「上側100α%点を繋いだ関数」などが獲得関数として使われる  -- 例えば, +2.576σ など (上側0.5%点)
  5. 39 ベイズ最適化のアルゴリズム 1. 初期値に対して f を評価 (重い) 2. 既知の {

    (x, f(x)) } を使ってガウス過程回帰 3. ガウス過程回帰の結果から得られる獲得関数を最⼤化するx*を求める 4. x*においてfを評価 (重い) → (x*, f(x*))は既知となる 5. 2~4を繰り返して適当な停⽌条件を満たしたら終了