Diese Präsentation wurde erfolgreich gemeldet.
Wir verwenden Ihre LinkedIn Profilangaben und Informationen zu Ihren Aktivitäten, um Anzeigen zu personalisieren und Ihnen relevantere Inhalte anzuzeigen. Sie können Ihre Anzeigeneinstellungen jederzeit ändern.

Bayesian Efficient Multiple Kernel Learning

論文紹介

  • Als Erste(r) kommentieren

  • Gehören Sie zu den Ersten, denen das gefällt!

Bayesian Efficient Multiple Kernel Learning

  1. 1. 論文紹介 Bayesian Efficient Multiple Kernel Learning [ICML 2012] Mehmet Gönen (Edinburgh, Scotland, UK) 斎藤 淳哉 間違い等ありましたらご連絡ください junya【あっと】fugaga.info 2013/03/25
  2. 2. 目次• 概要• 問題設定• Multiple Kernel Learning• 提案手法 – 構成 – 学習アルゴリズム – 推定アルゴリズム• 実験• まとめ 1/16
  3. 3. 概要テーマ:Multiple Kernel Learning 複数のカーネルを組み合わせた(分類)学習 利点1)異なる種類の特徴をもつデータを学習できる 特徴に合ったカーネルを組み合わせる 特徴1 特徴2 特徴3 ラベル𝑦 0.53 良い天気 1 0.2 桜がきれい -1 利点2)超パラメータの調整なしでデータを学習できる 𝑥1 −𝑥2 2 𝑥1 −𝑥2 2 𝑥1 −𝑥2 2 いろいろな超パラメータのカーネルを組み合わせる exp − , exp − , exp − ,・・・ 12 0.52 0.252提案手法: Bayesian Efficient Multiple Kernel Learning(BEMKL)特徴:• 中間データ生成• 変分近似特長:• 高速(カーネルを数百個使っても1分かからない!) ※従来手法との比較実験なし• 高精度 ※従来手法との比較実験あり 2/16
  4. 4. 問題設定• 2値分類 – 入力 • 訓練データ 𝑁 – 特徴ベクトル𝒙 = 𝑥 𝑖 𝑖=1 𝑁 – ラベル 𝒚 = 𝑦 𝑖 ∈ −1, +1 𝑖=1 • テストデータ – 特徴ベクトル𝑥∗ – 出力 • テストデータ – 特徴ベクトル𝑥∗ のラベルの確率分布𝑝 𝑦∗ = +1|𝑥∗ 3/16
  5. 5. Multiple Kernel Learning• 複数のカーネルを組み合わせた学習 𝑃 例) P個のカーネル 𝑘 𝑚 ∈ 𝑋× 𝑋→ℝ 𝑚=1 を使って、 𝑓 𝑥∗ − 𝜈 𝑝 𝑦∗ = +1|𝑥∗ = sigmoid 𝜎 𝑁 𝑃 𝑓 𝑥∗ = 𝑎 𝑚 𝑘 𝑚 𝑥 𝑛 , 𝑥∗ + 𝑏 𝑛=1 𝑚=1 とモデル化して、𝒂 = 𝑎1 , … , 𝑎 𝑚 , … , 𝑎 𝑃 ⊤ , 𝑏 を学習 4/16
  6. 6. 提案手法• Bayesian Efficient Multiple Kernel Learning (BEMKL)• 特徴 – 事前分布を使用した完全なベイズモデル – 中間データを生成 – 変分近似で(MCMCよりも)高速 5/16
  7. 7. 構成(グラフィカルモデル) バイアス 𝑏|𝛾 ~𝒩 𝑏; 0, 𝛾 −1 𝛾~𝒢 𝛾 ; 𝛼 𝛾 , 𝛽 𝛾 1 𝑘 𝑚 𝑥1 , 𝑥1 … 𝑘 𝑚 𝑥1 , 𝑥 𝑖 … 𝑘 𝑚 𝑥1 , 𝑥 𝑁 𝑔1 … 𝑔1𝑚 … 𝑔1𝑃 ⋮ ⋱ ⋮ ⋱ ⋮ ⋮ ⋱ ⋮ ⋱ ⋮𝑲 𝑚 = 𝑘 𝑘 𝑚 𝑥 𝑖 , 𝑥1 ⋮ 𝑥 𝑁 , 𝑥1 … ⋱ … 𝑘 𝑘 𝑚 ⋮ 𝑥 𝑖, 𝑥 𝑖 𝑥 𝑁, 𝑥 𝑖 … ⋱ … 𝑘 𝑘 𝑚 𝑥 𝑖, 𝑥 𝑁 ⋮ 𝑥 𝑁, 𝑥 𝑁 𝑮= 𝑔1 ⋮ 𝑖 … ⋱ 𝑔𝑖 𝑚 ⋮ … ⋱ 𝑔 𝑖𝑃 ⋮ 𝑏 𝛾 𝑚 𝑚 𝑚 𝑔1𝑁 … 𝑔 𝑁𝑚 … 𝑔𝑁 𝑃 𝑔 𝑖 𝑚 |𝑎, 𝑘 𝑚,𝑖 ~𝒩 𝑔 𝑖 𝑚 ; 𝑎⊤ 𝑘 𝑚,𝑖 , 1 𝑓𝑖 |𝑏, 𝑒, 𝑔 𝑖 ~𝒩 𝑓𝑖 ; 𝑒 ⊤ 𝑔 𝑖 + 𝑏, 1 𝑲 𝑚 𝑮 𝒇 𝑦 𝑃 中間データ 予測値 ラベル 𝑦 𝑖 |𝑓𝑖 ~𝛿 𝑓𝑖 𝑦 𝑖 > 𝜈 カーネル(の空間内での 訓練データの相互距離) 𝝀 𝒂 𝒆 𝝎 𝑎 𝑖 |𝜆 𝑖 ~𝒩 𝑎 𝑖 ; 0, 𝜆−1 𝑒 𝑚 |𝜔 𝑚 ~𝒩 𝑒 𝑚 ; 0, 𝜔−1 𝜔 𝑚 ~𝒢 𝜔 𝑚 ; 𝛼 𝜔 , 𝛽 𝜔 𝜆 𝑖 ~𝒢 𝜆 𝑖 ; 𝛼 𝜆 , 𝛽 𝜆 𝑖 𝑚 カーネルの重み 中間データの重み ※ 𝒩:正規分布、𝒢:ガンマ分布、𝛿:クロネッカーのデルタ関数 6/16
  8. 8. 学習アルゴリズム(準備;変分近似のキモ)【定理】任意の確率変数𝚯, 𝚵および確率密度関数𝑞 𝚯, 𝚵 に対して、次式が成り立つ。 𝑃 𝑃 log 𝑝 𝒚| 𝐊 𝑚 𝑚=1 ≥E𝑞 𝚯,𝚵 log 𝑝 𝐲, 𝚯, 𝚵| 𝐊 𝑚 𝑚=1 −E𝑞 𝚯,𝚵 log 𝑞 𝚯, 𝚵 等号成立時、次式が成り立つ。 𝑃 𝑝 𝚯, 𝚵| 𝐊 𝑚 𝑚=1 , 𝐲 = 𝑞 𝚯, 𝚵 𝑃 𝑃【証明】 log 𝑝 𝒚| 𝐊 𝑚 𝑚=1 = log 𝑝 𝐲, 𝚯, 𝚵| 𝐊 𝑚 𝑚=1 d𝚯d𝚵 𝑃PRMLのとちょっと違う証明 𝑝 𝐲, 𝚯, 𝚵| 𝐊 𝑚 𝑚=1 = log 𝑞 𝚯, 𝚵 d𝚯d𝚵 𝑞 𝚯, 𝚵 𝑃 𝑝 𝐲, 𝚯, 𝚵| 𝐊 𝑚 𝑚=1 ≥ 𝑞 𝚯, 𝚵 log d𝚯d𝚵 𝑞 𝚯, 𝚵-logは上に凸な関数なので 𝑃Jensen‘s inequalityより 𝑝 𝐲, 𝚯, 𝚵| 𝐊 𝑚 𝑚=1 =E𝑞 𝚯,𝚵 log 𝑞 𝚯, 𝚵 𝑃 =E𝑞 𝚯,𝚵 log 𝑝 𝐲, 𝚯, 𝚵| 𝐊 𝑚 𝑚=1 −E𝑞 𝚯,𝚵 log 𝑞 𝚯, 𝚵 7/16
  9. 9. 学習アルゴリズム(準備;変分近似のキモ)𝑝 𝐲,𝚯,𝚵| 𝐊 𝑚 𝑃𝑚=1 𝑃 = 1のとき等号成立 𝑝 𝒚| 𝐊 𝑚 𝑚=1 =1 𝑞 𝚯,𝚵 𝑃 𝑝 𝐲, 𝚯, 𝚵| 𝐊 𝑚 𝑚=1 =1 𝑞 𝚯, 𝚵 𝑃 → 𝑝 𝐲, 𝚯, 𝚵| 𝐊 𝑚 𝑚=1 = 𝑞 𝚯, 𝚵 𝑝 𝐲, 𝚯, 𝚵, 𝐊 𝑚 𝑃𝑚=1 → 𝑃 = 𝑞 𝚯, 𝚵 𝑝 𝐊 𝑚 𝑚=1 𝑃 𝑃 𝑝 𝚯, 𝚵| 𝐊 𝑚 𝑚=1 , 𝐲 𝑝 𝐊 𝑚 𝑚=1 , 𝐲 → 𝑃 = 𝑞 𝚯, 𝚵 𝑝 𝐊 𝑚 𝑚=1 𝑃 𝑃 → 𝑝 𝚯, 𝚵| 𝐊 𝑚 𝑚=1 , 𝐲 𝑝 𝒚| 𝐊 𝑚 𝑚=1 = 𝑞 𝚯, 𝚵 𝑃 → 𝑝 𝚯, 𝚵| 𝐊 𝑚 𝑚=1 , 𝐲 = 𝑞 𝚯, 𝚵 8/16
  10. 10. 学習アルゴリズム(準備;変分近似のキモ)【定理】任意の確率変数𝚯, 𝚵および確率密度関数𝑞 𝚯, 𝚵 に対して、次式が成り立つ。 𝑃 𝑃 log 𝑝 𝒚| 𝐊 𝑚 𝑚=1 ≥E𝑞 𝚯,𝚵 log 𝑝 𝐲, 𝚯, 𝚵| 𝐊 𝑚 𝑚=1 −E𝑞 𝚯,𝚵 log 𝑞 𝚯, 𝚵 周辺尤度 周辺尤度の下限 等号成立時、次式が成り立つ。 𝑃 𝑝 𝚯, 𝚵| 𝐊 𝑚 𝑚=1 , 𝐲 = 𝑞 𝚯, 𝚵何が言える?: 𝚯 = 𝑎, 𝑏, 𝑒, 𝑓, 𝑮 , 𝚵 = 𝛾, 𝝀, 𝜔 とするとき、 𝑝 𝚯, 𝚵| 𝐊 𝑚 𝑃𝑚=1 , 𝐲 は、本来、複雑な関数(もはや、何もできないレベル)。 𝑞 𝚯, 𝚵 を簡単な扱いやすい関数(で、かつ、それっぽい関数)に定義して、 𝚯, 𝚵をうまく調整して、周辺尤度の下限が最大になるようにすれば、 簡単な扱いやすい関数𝑞 𝚯, 𝚵 で 𝑝 𝚯, 𝚵| 𝐊 𝑚 𝑃𝑚=1 , 𝐲 を近似できる。 変分近似の重要で基本的な考え方! 9/16
  11. 11. 学習アルゴリズム(準備) 次のように𝑞 𝚯, 𝚵 を定義する。 ざっくり定義しているだけ。 周辺尤度の下限を最大化する𝑞 𝚯, 𝚵 に するため、次スライドの定理を使用。 ※ 𝒯𝒩 𝑥; 𝜇, Σ, 𝜌 :切断正規分布。 𝒩 𝑥; 𝜇, Σ if 𝜌 is True 𝒯𝒩 𝑥; 𝜇, Σ, 𝜌 = 0 otherwise 10/16
  12. 12. 学習アルゴリズム(準備;変分近似のキモ) 【定理】前スライドの𝑞 𝚯, 𝚵 の定義の下、周辺尤度を最大化するとき、 𝝉 ∈ 𝝀 , 𝒂 , 𝑮 , 𝛾 , 𝝎 , 𝑏, 𝒆 , 𝒇 に対して、次式が成り立つ。 𝑃 𝑞 𝝉 ∝ exp E 𝑞 𝚯,𝚵 ∖𝝉 log 𝑝 𝐲, 𝚯, 𝚵| 𝐊 𝑚 𝑚=1 𝑝 𝐲,𝚯,𝚵| 𝐊 𝑚 𝑃𝑚=1 【証明】 前証明より、 = 1が成り立っているので、 𝑞 𝚯,𝚵 𝑃 𝑞 𝚯, 𝚵 = 𝑝 𝐲, 𝚯, 𝚵| 𝐊 𝑚 𝑚=1 → log 𝑞 𝚯, 𝚵 = log 𝑝 𝐲, 𝚯, 𝚵| 𝐊 𝑃 𝑚 𝑚=1 → E𝑞 𝑃 𝚯,𝚵 ∖𝝉 log 𝑞 𝚯, 𝚵 = E𝑞 𝚯,𝚵 ∖𝝉 log 𝑝 𝐲, 𝚯, 𝚵| 𝐊 𝑚 𝑚=1 𝑃 → E𝑞 𝚯,𝚵 ∖𝝉 log 𝑞 𝝉 𝑞 𝚯, 𝚵 ∖ 𝝉 =E𝑞 𝚯,𝚵 ∖𝝉 log 𝑝 𝐲, 𝚯, 𝚵| 𝐊 𝑚 𝑚=1→E 𝑞 𝑃 𝚯,𝚵 ∖𝝉 log 𝑞 𝝉 + E 𝑞 𝚯,𝚵 ∖𝝉 log 𝑞 𝚯, 𝚵 ∖ 𝝉 = E𝑞 𝚯,𝚵 ∖𝝉 log 𝑝 𝐲, 𝚯, 𝚵| 𝐊 𝑚 𝑚=1 → log 𝑞 𝝉 + const = E 𝑞 𝑃 𝚯,𝚵 ∖𝝉 log 𝑝 𝐲, 𝚯, 𝚵| 𝐊 𝑚 𝑚=1 𝑃 → 𝑞 𝝉 = exp E 𝑞 𝚯,𝚵 ∖𝝉 log 𝑝 𝐲, 𝚯, 𝚵| 𝐊 𝑚 𝑚=1 exp −const 𝑃 → 𝑞 𝝉 ∝ exp E 𝑞 𝚯,𝚵 ∖𝝉 log 𝑝 𝐲, 𝚯, 𝚵| 𝐊 𝑚 𝑚=1 11/16
  13. 13. 学習アルゴリズム 1.適当な初期値の元で以下を計算 𝑃 𝑞 𝝉 ∝ exp E 𝑞 𝚯,𝚵 ∖𝝉 log 𝑝 𝐲, 𝚯, 𝚵| 𝐊 𝑚 𝑚=1 を使うと求められる ※ 2.周辺尤度の下限:E 𝑞 𝚯,𝚵 log 𝑝 𝐲, 𝚯, 𝚵| 𝐊 𝑚 𝑃𝑚=1 − E 𝑞 𝚯,𝚵 log 𝑞 𝚯, 𝚵 が収束しているか確認し、収束していなければ1.へ戻る 12/16
  14. 14. 推定アルゴリズム新たな特徴ベクトル𝑥∗ のラベル𝑦∗ のとる確率は次式より求められる ⊤ 𝑘 𝑚,∗ = 𝑘 𝑚 𝑥1 , 𝑥∗ , … , 𝑘 𝑚 𝑥 𝑁 , 𝑥∗ ※ Φ:標準正規分布の累積分布関数 13/16
  15. 15. 実験(1) ・実験データ:UCI repository pima ・訓練データ数:N=537 (テストデータ数:230程度) ・カーネル数:P=117 ・9個の特徴それぞれに対して以下のカーネルを用意 ・ガウスカーネル:10個 ・多項式カーネル:3個 ・PC:3.0GHzCPU 4GBメモリ 14/16
  16. 16. 実験(2) ・実験データ: Protein Fold Recognition ・訓練データ数:N=311 (テストデータ数:383) ・カーネル数:P=12 15/16
  17. 17. まとめ• Multiple Kernel Learning: – 複数のカーネルを組み合わせる学習手法• 提案手法BEMKL: – 高速・高精度 – 数百個のカーネルを使っても1分以下で学習 16/16

×