Upload
prunus-1350
View
1.034
Download
1
Embed Size (px)
Citation preview
第12回「はじめてのパターン認識」読書会9.5 カーネル主成分分析9.6 カーネル部分空間法
2014/2/18(火)
@Prunus1350
9.5 カーネル主成分分析
9.5 カーネル主成分分析
• 学習データ 𝒙𝑖 ∈ ℛ𝑑(𝑖 = 1,⋯ ,𝑁)を入力空間より次元の大きな𝑀次元非線形特徴空間に写像して、そこで主成分分析を行う。
• うまく非線形写像𝝋を選べば、識別能力が上がる。(かもしれない)
• もし、「非線形特徴ベクトルの平均が 𝟎」ならば、共分散行列は
𝑪 =1
𝑁
𝑖=1
𝑁
𝝋(𝒙𝑖) 𝝋(𝒙𝑖)𝑇
となり、固有値問題を解けば非線形特徴空間の固有値と固有ベクトルが求まり、入力空間で行ったのと同様の方法で主成分分析ができる。
9.5 カーネル主成分分析
• 問題点• 非線形特徴変換を行っているので、非線形特徴ベクトルの平均が 𝟎になること
1
𝑁
𝑖=1
𝑁
𝝋(𝒙𝑖) = 𝟎
が保証されない。
⇒各特徴ベクトル𝝋(𝒙𝑖)から平均ベクトルを引いてしまえば中心化できる。
𝝋 𝒙𝑖 = 𝝋 𝒙𝑖 −1
𝑁
𝑗=1
𝑁
𝝋(𝒙𝑗)
• 高次元での計算は大変。
⇒カーネル法を用いることにより 𝑑次元空間での計算で、高次元非線形特徴空間における主成分を得ることができる。
(非線形特徴変換後に中心化してもカーネルトリックは使える?)
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
𝑁
𝐾 𝒙𝑗 , 𝒙𝑙
9.5 カーネル主成分分析
• 𝐾(𝒙𝑛, 𝒙𝑘)は𝐾 𝒙𝑖 , 𝒙𝑗 (𝑖, 𝑗 = 1,⋯ ,𝑁)を用いて表現できることが分かっ
た。
• ⇒カーネルトリックが使えて、𝑑次元空間での計算で𝑀次元非線形特徴空間の内積を評価できる。
9.5 カーネル主成分分析
• 非線形変換と中心化を行った学習データを𝑿 𝜑 = 𝝋 𝒙1 , ⋯ , 𝝋 𝒙𝑁 ∈ 𝑀𝑀×𝑁(ℛ)
とする。
• 特異値分解により𝑿 𝜑 = 𝑼𝜦𝑽𝑇と分解できる。
• 𝑼 = 𝑿 𝜑𝑽𝜦−1と変形できるので、
9.5 カーネル主成分分析
•
𝒖1, ⋯ , 𝒖𝑟 = 𝑿 𝝋 𝒗1, ⋯ , 𝒗𝑟 𝜦−1
= 𝑿 𝝋𝒗1, ⋯ , 𝑿 𝝋𝒗𝑟
1
λ1⋯ 0
⋮ ⋱ ⋮
0 ⋯1
λ𝑟
=1
λ1𝑿 𝝋𝒗1, ⋯ ,
1
λ𝑟𝑿 𝝋𝒗𝑟
• よって、 𝑖番目の要素は 𝒖𝑖 =1
λ𝑖𝑿 𝝋𝒗𝑖
9.5 カーネル主成分分析
• 非線形変換と中心化を行った特徴ベクトル 𝝋 𝒙 の 𝒖𝑖方向への射影は
•
𝒖𝑖𝑇 𝝋 𝒙 =
1
λ𝑖𝑿 𝝋𝒗𝑖
𝑇
𝝋 𝒙 =1
λ𝑖𝒗𝑖
𝑇𝑿 𝝋𝑇 𝝋 𝒙
=1
λ𝑖𝒗𝑖
𝑇 𝝋 𝒙1
𝑇
⋮ 𝝋 𝒙𝑁
𝑇 𝝋 𝒙 =
1
λ𝑖𝒗𝑖
𝑇 𝝋 𝒙1
𝑇 𝝋 𝒙⋮
𝝋 𝒙𝑁𝑇 𝝋 𝒙
=1
λ𝑖𝒗𝑖
𝑇
𝐾 𝒙1, 𝒙⋮
𝐾 𝒙𝑁, 𝒙=
1
λ𝑖𝒗𝑖
𝑇 𝑲(𝑿, 𝒙)
• 𝑑次元空間での内積カーネル計算と 𝑟回の𝑁次元ベクトルの内積計算で、すべての基底方向への射影を求めることができる。
9.6 カーネル部分空間法
9.6 カーネル部分空間法
• CLAFIC法も、内積カーネルを用いた非線形特徴空間内の部分空間法へ拡張できる。
• クラス 𝑖 (𝑖 = 1,⋯ ,𝐾)の学習データを𝑿𝑖 = (𝒙𝑖1, 𝒙𝑖2, ⋯ , 𝒙𝑖𝑁𝑖)とする。
• 𝑁𝑖:クラス 𝑖のデータ数, 𝑁 = 𝑖=1𝐾 𝑁𝑖
• 𝑖番目のクラスのデータ𝑿𝑖 = (𝒙𝑖1, 𝒙𝑖2, ⋯ , 𝒙𝑖𝑁𝑖)は、非線形特徴写像に
より𝑿𝑖𝝋 = 𝝋 𝒙𝑖1 , 𝝋 𝒙𝑖2 , ⋯ ,𝝋 𝒙𝑖𝑁𝑖に変換される。
• CLAFIC法では相関行列を使うので、𝑿𝑖𝝋が中心化されている必要はない。
9.6 カーネル部分空間法
• 𝑿𝑖𝝋 ∈ 𝑀𝑀,𝑁 ℛ より、 𝑟𝑖 ≔ rank(𝑿𝑖𝝋) ≤ min(𝑀,𝑁)
• 𝑿𝑖𝝋の特異値分解は次のように書ける。
•
𝑿𝑖𝝋 = 𝑼𝑖𝜦𝑖𝑽𝑖𝑇
= 𝒖𝑖1, 𝒖𝑖2, ⋯ , 𝒖𝑖𝑑𝑖 , ⋯ , 𝒖𝑖𝑟𝑖
λ𝑖1 0 ⋯
0 λ𝑖2 ⋯
⋮ ⋮ ⋱
0
0
λ𝑖𝑑𝑖 ⋯ 0
⋮ ⋱ ⋮0 ⋯ λ𝑖𝑟𝑖
𝒗𝑖1𝑇
𝒗𝑖2𝑇
⋮𝒗𝑖𝑑𝑖
𝑇
⋮𝒗𝑖𝑟𝑖
𝑇
• ここで、固有値 λ𝑖1 ≥ λ𝑖2 ≥ ⋯ ≥ λ𝑖𝑑𝑖 ≥ ⋯ ≥ λ𝑖𝑟𝑖 ≥ 0
9.6 カーネル部分空間法
• 大きい方から 𝑑𝑖個の固有値によって 𝑲 𝑿𝑖 , 𝑿𝑖 = 𝑿𝑖𝜑𝑇𝑿𝑖𝜑のクラス忠実度が
満たされるとする。
•
𝑿𝑖𝝋 = 𝑼𝑖𝜦𝑖𝑽𝑖𝑇
= 𝒖𝑖1, 𝒖𝑖2, ⋯ , 𝒖𝑖𝑑𝑖 , ⋯ , 𝒖𝑖𝑟𝑖
λ𝑖1 0 ⋯
0 λ𝑖2 ⋯
⋮ ⋮ ⋱
0
0
λ𝑖𝑑𝑖 ⋯ 0
⋮ ⋱ ⋮0 ⋯ λ𝑖𝑟𝑖
𝒗𝑖1𝑇
𝒗𝑖2𝑇
⋮𝒗𝑖𝑑𝑖
𝑇
⋮𝒗𝑖𝑟𝑖
𝑇
• 𝑑𝑖次元の非線形部分空間は青枠内の要素で記述できる。
9.6 カーネル部分空間法
•
𝑙𝑖2 𝒙 =
𝑗=1𝑑𝑖 𝒖𝑖𝑗
𝑇𝝋 𝒙2
(∵ピタゴラスの定理)
= 𝑼𝑖𝑇𝝋 𝒙
2
≈ 𝜦𝑖−1 𝑽𝑖
𝑇𝑿𝑖𝜑
𝑇𝝋 𝒙2
= 𝜦𝑖−1 𝑽𝑖
𝑇𝑲 𝑿𝑖 , 𝒙
2
• 内積カーネルの計算と、𝑁𝑖次元ベクトルの内積計算で射影の長さの2乗が得られる。
• 識別規則は、• 識別クラス = argmax
𝑖𝑙𝑖2 𝒙 (𝑖 = 1,⋯ , 𝐾) となる。
• リジェクトは9.4節と同様に行えばよい。
ご清聴ありがとうございました。