bayesian efficient multiple kernel learning

17
Bayesian Efficient Multiple Kernel Learning [ICML 2012] Mehmet Gönen (Edinburgh, Scotland, UK) 斎藤 淳哉 間違い等ありましたらご連絡ください junya【あっと】fugaga.info 論文紹介 2013/03/25

Upload: junya-saito

Post on 30-Jun-2015

373 views

Category:

Technology


2 download

DESCRIPTION

論文紹介

TRANSCRIPT

Page 1: Bayesian Efficient Multiple Kernel Learning

Bayesian Efficient

Multiple Kernel Learning [ICML 2012]

Mehmet Gönen

(Edinburgh, Scotland, UK)

斎藤 淳哉

間違い等ありましたらご連絡ください

junya【あっと】fugaga.info

論文紹介

2013/03/25

Page 2: Bayesian Efficient Multiple Kernel Learning

目次

• 概要

• 問題設定

• Multiple Kernel Learning

• 提案手法

–構成

–学習アルゴリズム

–推定アルゴリズム

• 実験

• まとめ 1/16

Page 3: Bayesian Efficient Multiple Kernel Learning

概要

提案手法: Bayesian Efficient Multiple Kernel Learning(BEMKL)

特長: • 高速(カーネルを数百個使っても1分かからない!) ※従来手法との比較実験なし

• 高精度 ※従来手法との比較実験あり

特徴: • 中間データ生成

• 変分近似

テーマ:Multiple Kernel Learning

特徴1 特徴2 特徴3 ラベル𝑦

0.53 良い天気 1

0.2 桜がきれい -1

複数のカーネルを組み合わせた(分類)学習

利点1)異なる種類の特徴をもつデータを学習できる

いろいろな超パラメータのカーネルを組み合わせる exp −𝑥1−𝑥2

2

12, exp −

𝑥1−𝑥22

0.52, exp −

𝑥1−𝑥22

0.252,・・・

利点2)超パラメータの調整なしでデータを学習できる

特徴に合ったカーネルを組み合わせる

2/16

Page 4: Bayesian Efficient Multiple Kernel Learning

問題設定

• 2値分類

–入力

• 訓練データ

– 特徴ベクトル𝒙 = 𝑥𝑖 𝑖=1𝑁

– ラベル 𝒚 = 𝑦𝑖 ∈ −1,+1 𝑖=1𝑁

• テストデータ

– 特徴ベクトル𝑥∗

–出力

• テストデータ

– 特徴ベクトル𝑥∗のラベルの確率分布𝑝 𝑦∗ = +1|𝑥∗

3/16

Page 5: Bayesian Efficient Multiple Kernel Learning

Multiple Kernel Learning

• 複数のカーネルを組み合わせた学習

𝑓 𝑥∗ = 𝑎𝑚𝑘𝑚 𝑥𝑛, 𝑥∗

𝑃

𝑚=1

𝑁

𝑛=1

+ 𝑏

例)

𝑝 𝑦∗ = +1|𝑥∗ = sigmoid𝑓 𝑥∗ − 𝜈

𝜎

P個のカーネル 𝑘𝑚 ∈ 𝑋 × 𝑋 → ℝ 𝑚=1𝑃 を使って、

とモデル化して、𝒂 = 𝑎1, … , 𝑎𝑚, … , 𝑎𝑃⊤, 𝑏 を学習

4/16

Page 6: Bayesian Efficient Multiple Kernel Learning

提案手法

• Bayesian Efficient Multiple Kernel Learning

(BEMKL)

• 特徴

–事前分布を使用した完全なベイズモデル

–中間データを生成

–変分近似で(MCMCよりも)高速

5/16

Page 7: Bayesian Efficient Multiple Kernel Learning

𝑲𝑚

構成(グラフィカルモデル)

𝑦

𝑃

𝛾 𝑏

𝒇 𝑮

𝒂 𝝀 𝒆 𝝎

𝑮 =

𝑔11 … 𝑔1

𝑚

⋮ ⋱ ⋮… 𝑔1

𝑃

⋱ ⋮𝑔𝑖1 … 𝑔𝑖

𝑚

⋮ ⋱ ⋮𝑔𝑁1 … 𝑔𝑁

𝑚

… 𝑔𝑖𝑃

⋱ ⋮… 𝑔𝑁

𝑃

𝑲𝑚 =

𝑘𝑚 𝑥1, 𝑥1 … 𝑘𝑚 𝑥1, 𝑥𝑖⋮ ⋱ ⋮

… 𝑘𝑚 𝑥1, 𝑥𝑁⋱ ⋮

𝑘𝑚 𝑥𝑖 , 𝑥1 … 𝑘𝑚 𝑥𝑖 , 𝑥𝑖⋮ ⋱ ⋮

𝑘𝑚 𝑥𝑁 , 𝑥1 … 𝑘𝑚 𝑥𝑁 , 𝑥𝑖

… 𝑘𝑚 𝑥𝑖, 𝑥𝑁⋱ ⋮… 𝑘𝑚 𝑥𝑁 , 𝑥𝑁

𝑔𝑖𝑚|𝑎, 𝑘𝑚,𝑖~𝒩 𝑔𝑖

𝑚; 𝑎⊤𝑘𝑚,𝑖 , 1

𝜆𝑖~𝒢 𝜆𝑖; 𝛼𝜆, 𝛽𝜆 𝑎𝑖|𝜆𝑖 ~𝒩 𝑎𝑖; 0, 𝜆𝑖−1

𝜔𝑚~𝒢 𝜔𝑚; 𝛼𝜔 , 𝛽𝜔 𝑒𝑚|𝜔𝑚 ~𝒩 𝑒𝑚; 0, 𝜔𝑚−1

𝑏|𝛾 ~𝒩 𝑏; 0, 𝛾−1 𝛾~𝒢 𝛾 ; 𝛼𝛾 , 𝛽𝛾

𝑓𝑖|𝑏, 𝑒, 𝑔𝑖~𝒩 𝑓𝑖; 𝑒⊤𝑔𝑖 + 𝑏, 1

𝑦𝑖|𝑓𝑖~𝛿 𝑓𝑖𝑦𝑖 > 𝜈 中間データ ラベル

カーネルの重み 中間データの重み

バイアス

カーネル(の空間内での

訓練データの相互距離)

※ 𝒩:正規分布、𝒢:ガンマ分布、𝛿:クロネッカーのデルタ関数

予測値

6/16

Page 8: Bayesian Efficient Multiple Kernel Learning

学習アルゴリズム(準備;変分近似のキモ)

【定理】任意の確率変数𝚯, 𝚵および確率密度関数𝑞 𝚯, 𝚵 に対して、次式が成り立つ。

log 𝑝 𝒚| 𝐊𝑚 𝑚=1𝑃 = log 𝑝 𝐲, 𝚯, 𝚵| 𝐊𝑚 𝑚=1

𝑃 d𝚯d𝚵

= log 𝑞 𝚯, 𝚵𝑝 𝐲, 𝚯, 𝚵| 𝐊𝑚 𝑚=1

𝑃

𝑞 𝚯, 𝚵d𝚯d𝚵

≥ 𝑞 𝚯, 𝚵 log𝑝 𝐲, 𝚯, 𝚵| 𝐊𝑚 𝑚=1

𝑃

𝑞 𝚯, 𝚵d𝚯d𝚵

= E𝑞 𝚯,𝚵 log𝑝 𝐲, 𝚯, 𝚵| 𝐊𝑚 𝑚=1

𝑃

𝑞 𝚯, 𝚵

= E𝑞 𝚯,𝚵 log 𝑝 𝐲, 𝚯, 𝚵| 𝐊𝑚 𝑚=1𝑃 − E𝑞 𝚯,𝚵 log 𝑞 𝚯, 𝚵

【証明】

log 𝑝 𝒚| 𝐊𝑚 𝑚=1𝑃 ≥ E𝑞 𝚯,𝚵 log 𝑝 𝐲, 𝚯, 𝚵| 𝐊𝑚 𝑚=1

𝑃 − E𝑞 𝚯,𝚵 log 𝑞 𝚯, 𝚵

-logは上に凸な関数なのでJensen‘s inequalityより

𝑝 𝚯, 𝚵| 𝐊𝑚 𝑚=1𝑃 , 𝐲 = 𝑞 𝚯, 𝚵

等号成立時、次式が成り立つ。

PRMLのとちょっと違う証明

7/16

Page 9: Bayesian Efficient Multiple Kernel Learning

学習アルゴリズム(準備;変分近似のキモ)

𝑝 𝐲,𝚯,𝚵| 𝐊𝑚 𝑚=1𝑃

𝑞 𝚯,𝚵= 1のとき等号成立

𝑝 𝐲, 𝚯, 𝚵| 𝐊𝑚 𝑚=1𝑃

𝑞 𝚯, 𝚵= 1

𝑝 𝐲, 𝚯, 𝚵| 𝐊𝑚 𝑚=1𝑃 = 𝑞 𝚯, 𝚵

𝑝 𝐲, 𝚯, 𝚵, 𝐊𝑚 𝑚=1𝑃

𝑝 𝐊𝑚 𝑚=1𝑃 = 𝑞 𝚯, 𝚵

𝑝 𝚯, 𝚵| 𝐊𝑚 𝑚=1𝑃 , 𝐲 𝑝 𝐊𝑚 𝑚=1

𝑃 , 𝐲

𝑝 𝐊𝑚 𝑚=1𝑃 = 𝑞 𝚯, 𝚵

𝑝 𝚯, 𝚵| 𝐊𝑚 𝑚=1𝑃 , 𝐲 𝑝 𝒚| 𝐊𝑚 𝑚=1

𝑃 = 𝑞 𝚯, 𝚵

𝑝 𝚯, 𝚵| 𝐊𝑚 𝑚=1𝑃 , 𝐲 = 𝑞 𝚯, 𝚵

𝑝 𝒚| 𝐊𝑚 𝑚=1𝑃 = 1

8/16

Page 10: Bayesian Efficient Multiple Kernel Learning

学習アルゴリズム(準備;変分近似のキモ)

【定理】任意の確率変数𝚯, 𝚵および確率密度関数𝑞 𝚯, 𝚵 に対して、次式が成り立つ。

log 𝑝 𝒚| 𝐊𝑚 𝑚=1𝑃 ≥ E𝑞 𝚯,𝚵 log 𝑝 𝐲, 𝚯, 𝚵| 𝐊𝑚 𝑚=1

𝑃 − E𝑞 𝚯,𝚵 log 𝑞 𝚯, 𝚵

𝑝 𝚯, 𝚵| 𝐊𝑚 𝑚=1𝑃 , 𝐲 = 𝑞 𝚯, 𝚵

等号成立時、次式が成り立つ。

𝑞 𝚯, 𝚵 を簡単な扱いやすい関数(で、かつ、それっぽい関数)に定義して、

𝚯, 𝚵をうまく調整して、周辺尤度の下限が最大になるようにすれば、

簡単な扱いやすい関数𝑞 𝚯, 𝚵 で

𝑝 𝚯, 𝚵| 𝐊𝑚 𝑚=1𝑃 , 𝐲

を近似できる。

何が言える?:

𝚯 = 𝑎, 𝑏, 𝑒, 𝑓, 𝑮 , 𝚵 = 𝛾, 𝝀, 𝜔 とするとき、

𝑝 𝚯, 𝚵| 𝐊𝑚 𝑚=1𝑃 , 𝐲 は、本来、複雑な関数(もはや、何もできないレベル)。

周辺尤度 周辺尤度の下限

変分近似の重要で基本的な考え方! 9/16

Page 11: Bayesian Efficient Multiple Kernel Learning

学習アルゴリズム(準備)

次のように𝑞 𝚯, 𝚵 を定義する。

※ 𝒯𝒩 𝑥; 𝜇, Σ, 𝜌 :切断正規分布。

𝒯𝒩 𝑥; 𝜇, Σ, 𝜌 = 𝒩 𝑥; 𝜇, Σ if 𝜌 is True0 otherwise

ざっくり定義しているだけ。

周辺尤度の下限を最大化する𝑞 𝚯, 𝚵 に

するため、次スライドの定理を使用。

10/16

Page 12: Bayesian Efficient Multiple Kernel Learning

学習アルゴリズム(準備;変分近似のキモ)

【定理】前スライドの𝑞 𝚯, 𝚵 の定義の下、周辺尤度を最大化するとき、

𝝉 ∈ 𝝀 , 𝒂 , 𝑮 , 𝛾 , 𝝎 , 𝑏, 𝒆 , 𝒇 に対して、次式が成り立つ。

𝑞 𝝉 ∝ 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

Page 13: Bayesian Efficient Multiple Kernel Learning

学習アルゴリズム

1.適当な初期値の元で以下を計算

2.周辺尤度の下限:E𝑞 𝚯,𝚵 log 𝑝 𝐲, 𝚯, 𝚵| 𝐊𝑚 𝑚=1𝑃 − E𝑞 𝚯,𝚵 log 𝑞 𝚯, 𝚵

が収束しているか確認し、収束していなければ1.へ戻る

𝑞 𝝉 ∝ exp E𝑞 𝚯,𝚵 ∖𝝉 log 𝑝 𝐲, 𝚯, 𝚵| 𝐊𝑚 𝑚=1𝑃

を使うと求められる

12/16

Page 14: Bayesian Efficient Multiple Kernel Learning

推定アルゴリズム

※ Φ:標準正規分布の累積分布関数

新たな特徴ベクトル𝑥∗のラベル𝑦∗のとる確率は次式より求められる

𝑘𝑚,∗ = 𝑘𝑚 𝑥1, 𝑥∗ , … , 𝑘𝑚 𝑥𝑁, 𝑥∗⊤

13/16

Page 15: Bayesian Efficient Multiple Kernel Learning

実験(1)

・実験データ:UCI repository pima

・訓練データ数:N=537 (テストデータ数:230程度) ・カーネル数:P=117

・9個の特徴それぞれに対して以下のカーネルを用意

・ガウスカーネル:10個

・多項式カーネル:3個

・PC:3.0GHzCPU 4GBメモリ

14/16

Page 16: Bayesian Efficient Multiple Kernel Learning

実験(2)

・実験データ: Protein Fold Recognition

・訓練データ数:N=311 (テストデータ数:383) ・カーネル数:P=12

15/16

Page 17: Bayesian Efficient Multiple Kernel Learning

まとめ

• Multiple Kernel Learning: – 複数のカーネルを組み合わせる学習手法

• 提案手法BEMKL: – 高速・高精度

– 数百個のカーネルを使っても1分以下で学習

16/16