線形・非線形主成分分析とその応用
Linear and nonlinear principal component analysis and its application
数学専攻 宮崎 瑛子
Eiko MIYAZAKI
はじめに
主成分分析とは、互いに相関のある変数について観測されたデータのもつ情報を分散で捉え、その情報をできる だけ失うことなくもとの変数の線形結合で表わされる新たな変数へ要約するための手法である。この要約された 新たな変数を用いて、データから興味ある情報をとり出すことができる。また、高次元空間に散らばるデータ構 造を1次元直線、2次元平面、3次元空間などに射影し、次元を圧縮することで視覚的に把握することができる。
パターン認識という分野には顔画像の認識問題があり、坂野
(2001)
では、入力信号を何らかのクラスに割り当て ることを目的に、姿勢や照明変動に対して主成分分析を応用している。北尾(2001)
では、蛋白質はある少数の方 向に変形しやすくエネルギー地形が複雑なことから、蛋白質の変形などのメカニズムの解明に主成分分析が用い られている。主成分分析は、入力空間上のデータが線形構造を有している場合は有効であるが、データが非線形構造を内包 している場合は従来の主成分分析で捉えることは難しい。そこで、非線形構造を捉えるために提唱された手法が、
カーネル主成分分析と呼ばれる手法である。この手法の基本的なアイデアは、入力空間上の非線形構造を有する データを一度、特徴空間と呼ばれる高次元空間へ写像することによって線形構造をもつデータへと変換し、従来 の線形性に基づく主成分分析を適用することにある。主成分分析では、観測データに基づく標本分散共分散行列 の固有値問題に置き換えて主成分と呼ばれる射影軸を求める。これに対してカーネル主成分分析では、特徴空間 上のデータ間の内積を成分とするデータ行列の固有値問題に置き換えて主成分を求める。しかし、特徴空間上に 写像したデータの次元は、元の観測データの次元と比べて極めて大きく、データ間の内積の計算量が増大し、実 際の計算が困難となる。この問題は、カーネル法を用いて高次元空間における内積の計算を、元の入力空間上の データの内積計算に置き換えることによって克服する。
主成分分析では、新たに構成した主成分の分散は、標本分散共分散行列の固有値で与えられ、したがって固有 値の大きい主成分ほど多くの情報量を持っている。そこで、情報量という観点から固有値の小さいものを取り除 くことで次元圧縮を行う。しかし、情報量の小さい主成分もそれ自身有用な意味付けを見出すことができる場合 もあり、また変動が小さいことからノイズを軽減する軸として用いることもできる。そこで、情報量の最も小さ い最小固有値に着目し、χ2近似を行い、モンテカルロシミュレーションによって、χ2近似の精度の検証を行う。
本論文では、高次元データの線形構造の探索を目的とした主成分分析と、その基本的な考え方を発展させて非 線形構造の探索を可能とするカーネル主成分分析について述べる。次に、画像データの圧縮と復元に主成分分析 とカーネル主成分分析を応用し、手法の特徴及び有効性と問題点について検証する。さらに、正規性のもとで導 出される標本分散共分散行列の確率分布行列である
Wishart
行列の最小固有値の近似分布を求める。1
主成分分析ある個体に関する
p
個の変数をx = (x
1, x
2, · · · , x
p)
T とする。この変数について観測されたn
個のp
次元データ
x
1, x
2, · · · , x
nに基づいて、次の標本分散共分散行列を求める。S = (s
jk) = 1 n
∑
n i=1(x
i− x)(x
i− x)
Ts
jk= 1 n
∑
n i=1(x
ij− x
j)(x
ik− x
k) (j, k = 1, 2, · · · , p).
ただし、xは
p
次元標本平均ベクトルである。次に、p個の変数の線形結合で表わされる射影軸
y = ω
1x
1+ ω
2x
2+ · · · + ω
px
p= ω
Tx
上へ、n個の
p
次元データを射影し1
次元データy
i= ω
Tx
i(i = 1, 2, · · · , n)
に変換すると、射影軸上の平均と分 散はy = ω
Tx , s
2y= ω
TSω
1
と表わされる。ただし、ωは係数ベクトル
ω = (ω
1, ω
2, · · · , ω
p)
T である。データを
y = ω
Tx
軸上へ射影したときの分散が最大となる係数ベクトルω
を求める問題は、s
2y= ω
TSω
の最 大化問題に帰着される。ωに制約がなければ軸が一意に定まらないのでω
iTω
i= 1
とし、また各主成分は直交す るという条件ω
iTω
j= 0(i ̸ = j)
のもとでの最大化問題を考える。これは、λをラグランジュ乗数としてラグラン ジュの未定乗数法によって解くことができ、次の標本分散共分散行列S
の固有値問題となる。Sω = λω. (1)
(1)
式よりS
の固有方程式を解き、解であるp
個の固有値をλ
1≥ λ
2≥ · · · ≥ λ
p≥ 0
とし、それぞれに対応する固有ベクトルを
ω
1, ω
2, · · · , ω
pとする。ただし、ωi= (ω
i1, ω
i2, · · · , ω
ip)
である。よっ てp
個の主成分はy
1= ω
11x
1+ ω
12x
2+ · · · + ω
1px
p= ω
1Tx y
2= ω
21x
1+ ω
22x
2+ · · · + ω
2px
p= ω
2Tx
.. .
y
p= ω
p1x
1+ ω
p2x
2+ · · · + ω
ppx
p= ω
pTx
と表わされる。これらの主成分の中から固有値の大きいものを用いて高次元データを平面や空間へと射影するこ とによって高次元データ構造の一端を視覚的に捉えることができる。
適用例として画像データの圧縮と復元が挙げられる。手書き数字の画像データ(一部)を用いて分析を行う。特 徴の出やすいものとして”4”の手書き数字について主成分分析を行う。Figure 1の左端の
4
の画像をデータ化し て主成分に変換し元に戻すことを考える。括弧内の数値は累積寄与率を表す。オリジナル画像の次の画像は第1
主成分を用いて復元した画像を表わし、右にいくほど多くの主成分を用いて復元している。第1
主成分のみの画 像はかなりぼやけているが、第100
主成分までを用いると元の画像を約80
%復元しているということが読み取れる。0.0 0.4 0.8
1.00.60.2
オリジナル画像
0.0 0.4 0.8
1.00.60.2
0.0 0.4 0.8
1.00.60.2
0.0 0.4 0.8
1.00.60.2
第
1
主成分(0.042)
0.0 0.4 0.8
1.00.60.2
0.0 0.4 0.8
1.00.60.2
0.0 0.4 0.8
1.00.60.2
第
1-10
主成分(0.265)
0.0 0.4 0.8
1.00.60.2
0.0 0.4 0.8
1.00.60.2
0.0 0.4 0.8
1.00.60.2
第
1-50
主成分(0.625)
0.0 0.4 0.8
1.00.60.2
0.0 0.4 0.8
1.00.60.2
0.0 0.4 0.8
1.00.60.2
第
1-100
主成分(0.819) Figure 1:
手書き数字4
への主成分分析の適用2
ウィシャート行列における最小固有値の近似分布
p
次元確率変数ベクトルX
1, . . . , X
N はN
p(µ, Σ)
に従っているとする。標本分散共分散行列をS
とすると、標 本偏差平方和行列A
はA = nS
と表わすことができ、W(Σ, p, n)
に従う。確率行列A
の確率密度関数はf (A) = C | A |
12(n−p−1)exp[ − 1
2 tr Σ
−1A], C = 1 2
pn2| Σ |
n2Γ(
n2)
となる。さらに、Σの固有値を
λ
1≥ · · · ≥ λ
p≥ 0、S
の固有値をℓ
1> · · · > ℓ
p> 0
とする。Aはその固有値ℓ
1, · · · , ℓ
pからなる対角行列D
ℓとp × p
直交行列H
を用いてスペクトル分解できる。よって、DℓとH
の同時確率密度関数は
f (D
ℓ, H) = C | D
ℓ|
12(n−p−1)exp[ − 1
2 tr Σ
−1HD
ℓH
T](dD
ℓ)(dH),
と表わされる。また、(dDℓ) = dℓ
1· · · dℓ
p、(dH)はp
次直交行列全体O(m)
での積分∫
O(m)
(dH)
が1
となるよう に正規化されたハール測度である。ここでtr Σ
−1H
TD
ℓH = tr Σ
−1H
T(D
ℓ− ℓ
pI)H + ℓ
ptr Σ
−12
と表わし、Du
= diag(u
1, · · · , u
p−1, 0) = D
ℓ− ℓ
pI
とおく。ℓi(i = 1, · · · , p)
の同時確率密度関数はf (ℓ
1, · · · , ℓ
p) = C | D
u+ ℓ
pI |
12(n−p−1)exp[ − 1
2 tr Σ
−1H
TD
uH]
exp[ − 1
2 ℓ
ptr Σ
−1] ∏
i<j
(ℓ
i− ℓ
p)(dD
ℓ)(dH) (2)
と与えられる。さらに、(2)式より
| D
u+ ℓ
pI | = (u
1+ ℓ
p)(u
2+ ℓ
p) · · · (u
p−1+ ℓ
p)ℓ
p> u
1· u
2· · · · · u
p−1· ℓ
pとなる。よって、次の密度関数が求まる。
C | D
u∗|
12(n−p−1)exp[ − 1
2 tr Σ
−1H
TD
uH] ·
p
∏
−1 i<j(u
i− u
j)
p
∏
−1 i=1du
i(dH)ℓ
p12(n−p−1)exp[ − 1
2 ℓ
ptr Σ
−1]dℓ
p.
ただし、D∗u= diag(u
1, u
2, · · · , u
p−1)
とする。次に、DuとH
に関して積分すると、最小固有値ℓ
pの密度関数f (ℓ
p) = C
′ℓ
1 2(n−p−1)
p
exp[ − 1
2 ℓ
p(λ
−11+ λ
−21+ · · · + λ
−p1)] (3)
が得られる。ここで、C′は定数である。(3)式において、λ
= 1
2 (λ
−11+ λ
−21+ · · · + λ
−p1)
とおき、定数C
′の値を 求めるために(0, ∞ )
の範囲での積分を1
とするとf (ℓ
p) = C
′ℓ
p12(n−p−1)e
−λℓp, C
′= λ
12(n−p+1)Γ
( 1
2 (n − p + 1) ) .
と表わすことができる。よって、最小固有値
ℓ
pの密度関数はχ
2分布で近似できる。さらに、λにおいてλ
−11+ · · · + λ
−p−11の値が0
に近いとするとλ =
12λ
−p1と近似でき、近似式は次で与えられる。h
∗(ℓ
p) = 1
Γ ( 1
2 (n − p + 1) )
(2λ
p)
12(n−p+1)ℓ
1
2(n−p+1)−1
p
e
−ℓp 2λp
.
3
カーネル主成分分析ある個体の特性を表す
p
次元変数ベクトルx = (x
1, x
2, · · · , x
p)
T を特徴空間へ写像し、r次元変数ベクトルΦ(x) = (ϕ
1(x), ϕ
2(x), · · · , ϕ
r(x))
T とする。ただし、r >> pとする。このとき、特徴空間上へ写像したn
個の データからなるデータ行列をZ
c= (Φ
c(x
1), Φ
c(x
2), · · · , Φ
c(x
n))
T とすると、標本分散共分散行列S
cはS
c= 1 n Z
cTZ
cと表わされる。ここで、cはデータが中心化されていることを表わす。このとき、特徴空間上のデータに対して主 成分分析を実行すると、Scの固有値問題
S
cω = λω
に帰着される。特徴空間上のデータ間の内積に基づく行列を
K
c= Z
cZ
cT=
Φ
c(x
1)
TΦ
c(x
1) Φ
c(x
1)
TΦ
c(x
2) · · · Φ
c(x
1)
TΦ
c(x
n) Φ
c(x
2)
TΦ
c(x
1) Φ
c(x
2)
TΦ
c(x
2) · · · Φ
c(x
2)
TΦ
c(x
n)
.. . .. . . . . .. .
Φ
c(x
n)
TΦ
c(x
1) Φ
c(x
n)
TΦ
c(x
2) · · · Φ
c(x
n)
TΦ
c(x
n)
(4)
とすると、Scの固有値問題は
K
cの固有値問題K
cc = nλc
3
に置き換えられる。ただし、cは固有ベクトルで、ωT
ω = 1
よりnλc
Tc = 1
を満たすものとする。入力空間上の データの次元が高ければより高次の特徴空間へ写像する必要があり、データ間の内積Φ
c(x
j)
TΦ
c(x
k)
の計算量が 増大し、計算が困難になる。ここでカーネル法K
c(x
j, x
k) = Φ
c(x
j)
TΦ
c(x
k)
を用いることにより、特徴空間上の内積の計算量が入力空間上での次元数の計算量で抑えられる。(2)式は
K
c=
K
c(x
1, x
1) K
c(x
1, x
2) · · · K
c(x
1, x
n) K
c(x
2, x
1) K
c(x
2, x
2) · · · K
c(x
2, x
n)
.. . .. . . . . .. . K
c(x
n, x
1) K
c(x
n, x
2) · · · K
c(x
n, x
n)
.
とカーネルで捉える。さらに、カーネル関数を用いて第
α
番目の主成分はy
α=
∑
n i=1c
iαK
c(x
i, x)
と表わされる。このように、特徴空間上へと写像したデータに基づいて主成分分析を実行する。
以上は、入力空間上で観測されたデータを特徴空間上へ写像し、中心化したデータの内積をカーネル関数で置 き換えてカーネル主成分分析を適用した場合である。高次元空間上の中心化されていないデータの場合は内積を カーネル関数
K(x
j, x
k) = Φ(x
j)
TΦ(x
k)
で置き換えて実行する。応用例として、主成分分析で用いた手書き数字データにカーネル主成分分析を適用する。パラメータ
σ
の値を0.01、0.02、0.05、0.0001
に変化させ、第10
主成分まで用いた結果をFigure 2
に示す。σの値によって圧縮され た画像に違いがあることが分かる。0.0 0.4 0.8
1.00.60.2
オリジナル画像
0.0 0.4 0.8
1.00.60.2
0.0 0.4 0.8
1.00.60.2
0.0 0.4 0.8
1.00.60.2
(σ = 0.01)
0.0 0.4 0.8
1.00.60.2
0.0 0.4 0.8
1.00.60.2
0.0 0.4 0.8
1.00.60.2
(σ = 0.02)
0.0 0.4 0.8
1.00.60.2
0.0 0.4 0.8
1.00.60.2
0.0 0.4 0.8
1.00.60.2
(σ = 0.05)
0.0 0.4 0.8
1.00.60.2
0.0 0.4 0.8
1.00.60.2
0.0 0.4 0.8
1.00.60.2
(σ = 0.0001) Figure 2:
手書き数字4
へのカーネル主成分分析の適用(第 10
主成分まで)4
今後の課題従来の主成分分析が使われてきた画像データ以外のさまざまな分野の問題に対して、カーネル主成分分析を適 用することでより有効な情報抽出が可能かどうかを検討することが挙げられる。また、カーネル主成分分析にお いて、パラメータ