15
12回「はじめてのパターン認識」読書会 9.5 カーネル主成分分析 9.6 カーネル部分空間法 2014/2/18() @Prunus1350

はじめてのパターン認識 第9章 9.5-9.6

Embed Size (px)

Citation preview

Page 1: はじめてのパターン認識 第9章 9.5-9.6

第12回「はじめてのパターン認識」読書会9.5 カーネル主成分分析9.6 カーネル部分空間法

2014/2/18(火)

@Prunus1350

Page 2: はじめてのパターン認識 第9章 9.5-9.6

9.5 カーネル主成分分析

Page 3: はじめてのパターン認識 第9章 9.5-9.6

9.5 カーネル主成分分析

• 学習データ 𝒙𝑖 ∈ ℛ𝑑(𝑖 = 1,⋯ ,𝑁)を入力空間より次元の大きな𝑀次元非線形特徴空間に写像して、そこで主成分分析を行う。

• うまく非線形写像𝝋を選べば、識別能力が上がる。(かもしれない)

• もし、「非線形特徴ベクトルの平均が 𝟎」ならば、共分散行列は

𝑪 =1

𝑁

𝑖=1

𝑁

𝝋(𝒙𝑖) 𝝋(𝒙𝑖)𝑇

となり、固有値問題を解けば非線形特徴空間の固有値と固有ベクトルが求まり、入力空間で行ったのと同様の方法で主成分分析ができる。

Page 4: はじめてのパターン認識 第9章 9.5-9.6

9.5 カーネル主成分分析

• 問題点• 非線形特徴変換を行っているので、非線形特徴ベクトルの平均が 𝟎になること

1

𝑁

𝑖=1

𝑁

𝝋(𝒙𝑖) = 𝟎

が保証されない。

⇒各特徴ベクトル𝝋(𝒙𝑖)から平均ベクトルを引いてしまえば中心化できる。

𝝋 𝒙𝑖 = 𝝋 𝒙𝑖 −1

𝑁

𝑗=1

𝑁

𝝋(𝒙𝑗)

• 高次元での計算は大変。

⇒カーネル法を用いることにより 𝑑次元空間での計算で、高次元非線形特徴空間における主成分を得ることができる。

(非線形特徴変換後に中心化してもカーネルトリックは使える?)

Page 5: はじめてのパターン認識 第9章 9.5-9.6

9.5 カーネル主成分分析

• 平均を 𝟎にした𝑁 × 𝑁グラム行列 𝑲 𝑿,𝑿 の 𝑛, 𝑘 要素は、

• 𝐾 𝒙𝑛, 𝒙𝑘 = 𝝋 𝒙𝑛𝑇 𝝋 𝒙𝑘

= 𝝋 𝒙𝑛 −1

𝑁

𝑗=1

𝑁

𝝋(𝒙𝑗)

𝑇

𝝋 𝒙𝑘 −1

𝑁

𝑙=1

𝑁

𝝋(𝒙𝑙)

= 𝝋 𝒙𝑛𝑇 −

1

𝑁

𝑗=1

𝑁

𝝋(𝒙𝑗)𝑇 𝝋 𝒙𝑘 −

1

𝑁

𝑙=1

𝑁

𝝋(𝒙𝑙)

= 𝝋 𝒙𝑛𝑇𝝋 𝒙𝑘 −

1

𝑁

𝑗=1

𝑁

𝝋 𝒙𝑗𝑇

𝝋 𝒙𝑘 −1

𝑁𝝋 𝒙𝑛

𝑇

𝑙=1

𝑁

𝝋 𝒙𝑙 +1

𝑁2

𝑗=1

𝑁

𝝋 𝒙𝑗𝑇

𝑙=1

𝑁

𝝋 𝒙𝑙

= 𝝋 𝒙𝑛𝑇𝝋 𝒙𝑘 −

1

𝑁

𝑗=1

𝑁

𝝋 𝒙𝑗𝑇𝝋 𝒙𝑘 −

1

𝑁

𝑙=1

𝑁

𝝋 𝒙𝑛𝑇𝝋 𝒙𝑙 +

1

𝑁2

𝑗=1

𝑁

𝑙=1

𝑁

𝝋 𝒙𝑗𝑇𝝋 𝒙𝑙

= 𝐾 𝒙𝑛, 𝒙𝑘 −1

𝑁

𝑗=1

𝑁

𝐾 𝒙𝑗 , 𝒙𝑘 −1

𝑁

𝑙=1

𝑁

𝐾 𝒙𝑛, 𝒙𝑙 +1

𝑁2

𝑗=1

𝑁

𝑙=1

𝑁

𝐾 𝒙𝑗 , 𝒙𝑙

Page 6: はじめてのパターン認識 第9章 9.5-9.6

9.5 カーネル主成分分析

• 𝐾(𝒙𝑛, 𝒙𝑘)は𝐾 𝒙𝑖 , 𝒙𝑗 (𝑖, 𝑗 = 1,⋯ ,𝑁)を用いて表現できることが分かっ

た。

• ⇒カーネルトリックが使えて、𝑑次元空間での計算で𝑀次元非線形特徴空間の内積を評価できる。

Page 7: はじめてのパターン認識 第9章 9.5-9.6

9.5 カーネル主成分分析

• 非線形変換と中心化を行った学習データを𝑿 𝜑 = 𝝋 𝒙1 , ⋯ , 𝝋 𝒙𝑁 ∈ 𝑀𝑀×𝑁(ℛ)

とする。

• 特異値分解により𝑿 𝜑 = 𝑼𝜦𝑽𝑇と分解できる。

• 𝑼 = 𝑿 𝜑𝑽𝜦−1と変形できるので、

Page 8: はじめてのパターン認識 第9章 9.5-9.6

9.5 カーネル主成分分析

𝒖1, ⋯ , 𝒖𝑟 = 𝑿 𝝋 𝒗1, ⋯ , 𝒗𝑟 𝜦−1

= 𝑿 𝝋𝒗1, ⋯ , 𝑿 𝝋𝒗𝑟

1

λ1⋯ 0

⋮ ⋱ ⋮

0 ⋯1

λ𝑟

=1

λ1𝑿 𝝋𝒗1, ⋯ ,

1

λ𝑟𝑿 𝝋𝒗𝑟

• よって、 𝑖番目の要素は 𝒖𝑖 =1

λ𝑖𝑿 𝝋𝒗𝑖

Page 9: はじめてのパターン認識 第9章 9.5-9.6

9.5 カーネル主成分分析

• 非線形変換と中心化を行った特徴ベクトル 𝝋 𝒙 の 𝒖𝑖方向への射影は

𝒖𝑖𝑇 𝝋 𝒙 =

1

λ𝑖𝑿 𝝋𝒗𝑖

𝑇

𝝋 𝒙 =1

λ𝑖𝒗𝑖

𝑇𝑿 𝝋𝑇 𝝋 𝒙

=1

λ𝑖𝒗𝑖

𝑇 𝝋 𝒙1

𝑇

⋮ 𝝋 𝒙𝑁

𝑇 𝝋 𝒙 =

1

λ𝑖𝒗𝑖

𝑇 𝝋 𝒙1

𝑇 𝝋 𝒙⋮

𝝋 𝒙𝑁𝑇 𝝋 𝒙

=1

λ𝑖𝒗𝑖

𝑇

𝐾 𝒙1, 𝒙⋮

𝐾 𝒙𝑁, 𝒙=

1

λ𝑖𝒗𝑖

𝑇 𝑲(𝑿, 𝒙)

• 𝑑次元空間での内積カーネル計算と 𝑟回の𝑁次元ベクトルの内積計算で、すべての基底方向への射影を求めることができる。

Page 10: はじめてのパターン認識 第9章 9.5-9.6

9.6 カーネル部分空間法

Page 11: はじめてのパターン認識 第9章 9.5-9.6

9.6 カーネル部分空間法

• CLAFIC法も、内積カーネルを用いた非線形特徴空間内の部分空間法へ拡張できる。

• クラス 𝑖 (𝑖 = 1,⋯ ,𝐾)の学習データを𝑿𝑖 = (𝒙𝑖1, 𝒙𝑖2, ⋯ , 𝒙𝑖𝑁𝑖)とする。

• 𝑁𝑖:クラス 𝑖のデータ数, 𝑁 = 𝑖=1𝐾 𝑁𝑖

• 𝑖番目のクラスのデータ𝑿𝑖 = (𝒙𝑖1, 𝒙𝑖2, ⋯ , 𝒙𝑖𝑁𝑖)は、非線形特徴写像に

より𝑿𝑖𝝋 = 𝝋 𝒙𝑖1 , 𝝋 𝒙𝑖2 , ⋯ ,𝝋 𝒙𝑖𝑁𝑖に変換される。

• CLAFIC法では相関行列を使うので、𝑿𝑖𝝋が中心化されている必要はない。

Page 12: はじめてのパターン認識 第9章 9.5-9.6

9.6 カーネル部分空間法

• 𝑿𝑖𝝋 ∈ 𝑀𝑀,𝑁 ℛ より、 𝑟𝑖 ≔ rank(𝑿𝑖𝝋) ≤ min(𝑀,𝑁)

• 𝑿𝑖𝝋の特異値分解は次のように書ける。

𝑿𝑖𝝋 = 𝑼𝑖𝜦𝑖𝑽𝑖𝑇

= 𝒖𝑖1, 𝒖𝑖2, ⋯ , 𝒖𝑖𝑑𝑖 , ⋯ , 𝒖𝑖𝑟𝑖

λ𝑖1 0 ⋯

0 λ𝑖2 ⋯

⋮ ⋮ ⋱

0

0

λ𝑖𝑑𝑖 ⋯ 0

⋮ ⋱ ⋮0 ⋯ λ𝑖𝑟𝑖

𝒗𝑖1𝑇

𝒗𝑖2𝑇

⋮𝒗𝑖𝑑𝑖

𝑇

⋮𝒗𝑖𝑟𝑖

𝑇

• ここで、固有値 λ𝑖1 ≥ λ𝑖2 ≥ ⋯ ≥ λ𝑖𝑑𝑖 ≥ ⋯ ≥ λ𝑖𝑟𝑖 ≥ 0

Page 13: はじめてのパターン認識 第9章 9.5-9.6

9.6 カーネル部分空間法

• 大きい方から 𝑑𝑖個の固有値によって 𝑲 𝑿𝑖 , 𝑿𝑖 = 𝑿𝑖𝜑𝑇𝑿𝑖𝜑のクラス忠実度が

満たされるとする。

𝑿𝑖𝝋 = 𝑼𝑖𝜦𝑖𝑽𝑖𝑇

= 𝒖𝑖1, 𝒖𝑖2, ⋯ , 𝒖𝑖𝑑𝑖 , ⋯ , 𝒖𝑖𝑟𝑖

λ𝑖1 0 ⋯

0 λ𝑖2 ⋯

⋮ ⋮ ⋱

0

0

λ𝑖𝑑𝑖 ⋯ 0

⋮ ⋱ ⋮0 ⋯ λ𝑖𝑟𝑖

𝒗𝑖1𝑇

𝒗𝑖2𝑇

⋮𝒗𝑖𝑑𝑖

𝑇

⋮𝒗𝑖𝑟𝑖

𝑇

• 𝑑𝑖次元の非線形部分空間は青枠内の要素で記述できる。

Page 14: はじめてのパターン認識 第9章 9.5-9.6

9.6 カーネル部分空間法

𝑙𝑖2 𝒙 =

𝑗=1𝑑𝑖 𝒖𝑖𝑗

𝑇𝝋 𝒙2

(∵ピタゴラスの定理)

= 𝑼𝑖𝑇𝝋 𝒙

2

≈ 𝜦𝑖−1 𝑽𝑖

𝑇𝑿𝑖𝜑

𝑇𝝋 𝒙2

= 𝜦𝑖−1 𝑽𝑖

𝑇𝑲 𝑿𝑖 , 𝒙

2

• 内積カーネルの計算と、𝑁𝑖次元ベクトルの内積計算で射影の長さの2乗が得られる。

• 識別規則は、• 識別クラス = argmax

𝑖𝑙𝑖2 𝒙 (𝑖 = 1,⋯ , 𝐾) となる。

• リジェクトは9.4節と同様に行えばよい。

Page 15: はじめてのパターン認識 第9章 9.5-9.6

ご清聴ありがとうございました。