カーネル密度推定

23
カカカカカカカカ Kernel density estimation (KDE) @_akisato 2009 カ 9 カ 14 カ

description

Introduction to kernel density estimation (KDE)

Transcript of カーネル密度推定

Page 1: カーネル密度推定

カーネル密度推定Kernel density estimation (KDE)

@_akisato

2009 年 9 月 14 日

Page 2: カーネル密度推定

Presented by Akisato KimuraTopic Lecture   2009.9.14 Page 2

今回の流れ

• 概念的な話 ( 10% )– 何をする方法か? その特長は?

• 直感的理解 ( 40% )– ヒストグラム密度推定→ Parzen 窓法→カーネル密度

推定

• 解析的な話 ( 25% )– 収束条件、最適なパラメータ設定– 関連手法、特にK近傍密度推定との関係

• 時間があれば ( 25% )– 半教師カーネル密度推定 (SSKDE)

Page 3: カーネル密度推定

Presented by Akisato KimuraTopic Lecture   2009.9.14 Page 3

0.7 0.75 0.8 0.85 0.9 0.95 1

何をする方法なのか?

サンプル集合から、各サンプルが生成される確率密度関数を推定する方法

サンプル

推定された確率密度関数

Page 4: カーネル密度推定

Presented by Akisato KimuraTopic Lecture   2009.9.14 Page 4

特徴

• Non-parametric である– 確率密度関数のモデルを予め仮定する必要がない。

• サンプル数→∞の極限で、真の分布に収束– ある種の仮定が必要ですが、強い制約ではない。

• 収束速度が non-parametric で最速(らしい)– とは言え、 parametric よりは遅い。

• 推定に必要なサンプル数が、データ次元の増大につれて指数関数的に増加– いわゆる「次元の呪い」の一種

Page 5: カーネル密度推定

Presented by Akisato KimuraTopic Lecture   2009.9.14 Page 5

直感的な理解

• 確率密度関数を、各サンプルを中心とする確率密度関数(カーネル関数)の重ね合わせで表現

サンプル

カーネル関数推定確率密度関数

[原典] Wikipedia: Kernel density function

Page 6: カーネル密度推定

Presented by Akisato KimuraTopic Lecture   2009.9.14 Page 6

ヒストグラム密度推定

• ヒストグラムで確率密度関数を近似することも、カーネル密度推定の一種

Page 7: カーネル密度推定

Presented by Akisato KimuraTopic Lecture   2009.9.14 Page 7

Parzen 窓法 [Parzen 1962]

• ヒストグラム密度推定の考え方を多次元に拡張– 各サンプルを中心とする一辺 の d 次元超立方体

に入力 が含まれれば、      とする。

– 推定確率密度関数    から推定確率密度関数    から不連続性を取り除くことができない。不連続性を取り除くことができない。

Page 8: カーネル密度推定

Presented by Akisato KimuraTopic Lecture   2009.9.14 Page 8

カーネル密度推定 [Parzen 1962]? [Duda 1973]?

• ヒストグラム密度推定の考え方を多次元に拡張– 各サンプルを中心とする一辺 の d 次元超立方体

に入力 が含まれれば、      とする。

実は、確率密度関数でありさえすれ実は、確率密度関数でありさえすれば、超立方体でなくても良い!!ば、超立方体でなくても良い!!

カーネル関数

Page 9: カーネル密度推定

Presented by Akisato KimuraTopic Lecture   2009.9.14 Page 9

カーネル密度推定の特長

• Parzen 窓法に必然的に内包される、推定確率密度関数    の不連続性を解消

• 確率密度関数   の性質がある程度わかっている状況では、適切なカーネル関数の設定により、密度推定の精度を向上させることができる(はず)。

• 窓幅  を正値対称行列   に置き換えることで、窓に関する自由度を上げることも可能。

Page 10: カーネル密度推定

Presented by Akisato KimuraTopic Lecture   2009.9.14 Page 10

窓幅の持つ意味

• 推定確率密度関数    を少し書き直すと・・・– Dirac delta で確率密度関数   を近似するような形

状に

–   が大き過ぎると分布の構造を捉え切れない。

–   が小さ過ぎると過度の統計的変動の影響を受ける。→   をどう設定するかが重要をどう設定するかが重要 

[原典] Bishop: パターン認識と機械学習 第 2 章

Page 11: カーネル密度推定

Presented by Akisato KimuraTopic Lecture   2009.9.14 Page 11

窓幅・サンプル数・推定精度の関係 (1)• 1次元正規分布をガウスカーネルで近似

[原典] Duda et al.: パターン識別 第 4.3.3章

大 小窓幅

サンプル数

Page 12: カーネル密度推定

Presented by Akisato KimuraTopic Lecture   2009.9.14 Page 12

窓幅・サンプル数・推定精度の関係 (2)• 2 次元正規分布をガウスカーネルで近似

(ある程度収束するまでに必要な サンプル数が、1次元の場合よりも 多い(ように見える)ことに注意。)

[原典] Duda et al.: パターン識別 第 4.3.3章

大 小窓幅

サンプル数

Page 13: カーネル密度推定

Presented by Akisato KimuraTopic Lecture   2009.9.14 Page 13

収束条件

•     を   に収束させるには、どうすればいい?

• そのためには、どのような条件が必要か?

– 例1の設定         は上記条件を満たしている。 (詳細な議論は [Duda 1973] の pp.164-165 を参照。)

Page 14: カーネル密度推定

Presented by Akisato KimuraTopic Lecture   2009.9.14 Page 14

窓幅の決定方法(1)

• Least-square cross validation– 積分二乗誤差を最小にする

– 上式第2項を cross validation で推定

計算可能計算可能

mm番目のサンプルを使わず番目のサンプルを使わずに推定した確率密度関数に推定した確率密度関数

Page 15: カーネル密度推定

Presented by Akisato KimuraTopic Lecture   2009.9.14 Page 15

窓幅の決定方法(2)

• Silverman’s method [Silverman 1986]

– ガウスカーネルに対して適用可能

Page 16: カーネル密度推定

Presented by Akisato KimuraTopic Lecture   2009.9.14 Page 16

カーネル密度推定の読み替え

• 領域  の確率分布• 領域  の中にあるサンプルの数

• 両者の関係は二項分布で記述できる。

–       の極限では分散→0。すなわち–                の極限では

すなわち

Page 17: カーネル密度推定

Presented by Akisato KimuraTopic Lecture   2009.9.14 Page 17

K 近傍密度推定との関係

• 直感的に言うと・・・– カーネル密度推定 :       を固定して    

 を求める– K 近傍密度推定 :       を固定して     

を求める– MAP 推定による classification を例に考える。

(MAP推定(MAP推定  =K近傍の中で最多数派のクラスを選択)=K近傍の中で最多数派のクラスを選択)

Page 18: カーネル密度推定

Presented by Akisato KimuraTopic Lecture   2009.9.14 Page 18

カーネル密度推定の拡張

• 各クラスについての尤度を推定したい

• 真の事後確率      が既知と仮定すると、クラス j についての尤度を以下のように拡張できる。

– 以下の条件で、元のカーネル密度推定と等価

Page 19: カーネル密度推定

Presented by Akisato KimuraTopic Lecture   2009.9.14 Page 19

カーネル密度推定の半教師化 [Wang 2009]

• 推定尤度      から事後確率       を推定

Page 20: カーネル密度推定

Presented by Akisato KimuraTopic Lecture   2009.9.14 Page 20

カーネル密度推定の半教師化 [Wang 2009]

• ここで、以下の仮定を置く。

• これにより、事後確率             に関する方程式を立てることができ、解析的に解ける。逆行列計算に

Page 21: カーネル密度推定

Presented by Akisato KimuraTopic Lecture   2009.9.14 Page 21

半教師カーネル密度推定の高速化

• EMを用いた iteration1.事後確率行列              を初期化2.事後確率行列をカーネル行列  を用いて更新

3. ラベル付きサンプルを用いて、事後確率行列を補正

4.事後確率行列が収束するまで2~3を繰り返し

– 直感的には、ラベル付きデータの周辺にあるラベルなしデータに同じラベルを与えていくようなイメージ

– N→∞で解析解と一致することを保証

Page 22: カーネル密度推定

Presented by Akisato KimuraTopic Lecture   2009.9.14 Page 22

実験結果:  Toy model

正解データ 黒:ラベルなし他:ラベルあり

実験結果

[原典] Wang et al. 2009

Page 23: カーネル密度推定

Presented by Akisato KimuraTopic Lecture   2009.9.14 Page 23

おわりに

• 参考文献1. Duda, Hart, Stork ” パターン識別”(第 2版第 4 章)、新技術コミュニケーションズ

2. Bishop “ パターン認識と機械学習”(第 2.5節)、シュプリンガージャパン

3. Parzen “On estimation of a probability density function and mode,” Ann. Math. Stat. Vol.33, pp.1065-1076, 1962.

4. Silverman “Density estimation,” Chapman and Hall, 1986.

5. Wang et al. “Semi-supervised kernel density estimation for video annotation,” CVIU, Vol.113, No.3, pp.384-396, March 2009

6. Wikipedia: カーネル密度推定