Page 1
1主成分分析(PCA)とは
u1:サンプルの分散が最大の方向(単位ベクトル)
u2:2番目に分散が大きい方向(単位ベクトル)
(2変数の場合は,分散が最小の方向)
「互いに相関のある多種類の変数を,互いに無相関な少数個の変数に要約する.」
少ない次元数で解析,圧縮などを行う.
x1
x u u k k1 1 2 2
x2
u1
u2
x1
x2
u1
2次元から1次元への削減
分散最大の軸への投影
xux 11ˆ k
平均ベクトルが0の2変数分布の場合平均ベクトルが0の2変数分布の場合
11ˆ ux k
Page 2
2回帰分析とはどこが違う?
x1
x u u k k1 1 2 2
x2
u1
u2
2次元から1次元への削減
xux 11ˆ k
2変数に対する1次回帰分析との違い2変数に対する1次回帰分析との違い
回帰分析:1個以上の説明変数を用いて1個(以
上)の目的変数を近似的な関数で表現すること.
主成分分析:
複数個の変数から互いに無相関な変数(もとの変数の線形結合で表現される)に集約すること.(回帰分析のような主従関係はない)
x1
x2
Page 3
3平均が0ベクトルでないときの手順
x1
k1 1u
x2
u1
u2
x’1
x’2u1
x m u u k k1 1 2 2
m
x x m
u u
'
k k1 1 2 2
x’1
'x u k1 1
x’2
u1
u2
2次元から1次元への削減
平均ベクトルを引く
平均ベクトルを足す
x1
x m u k1 1
x2
m
この状態で主成分分析を行う
Page 4
4高次元の主成分分析
n次元から2次元への要約
x1 x2
xL u1u2
m
x m u u k k1 1 2 2
Lxxxmx 21
Page 5
5共分散行列(2変数の場合)
共分散行列 各変数とも,平均を0にしてから相関を計算して得られる行列
(例1)2変数間に相関がある場合 (例2)2変数間に相関がない場合
2
212
12
2
1
C
2
2
2
1
0
0
C
2
212
12
2
1
2
222211
2211
2
11
1
1
2
22,
1
22,11,
1
22,11,
1
2
11,
)())((
))(()(1
11
11
mxmxmx
mxmxmx
n
mxn
mxmxn
mxmxn
mxn
n
i
T
ii
n
i
i
n
i
ii
n
i
ii
n
i
i
mxmx
C 集合平均を<>で表す
Page 6
6主成分の方向u1,u2を求める
2変数間で相関が0になる方向,すなわち共分散行列が対角行列になる方向を求めればよい.
u1,u2: 正規直交基底ベクトル
上記の条件を満足する,正規直交基底ベクトルをu1,u2とする.
この2つの基底ベクトルを用いた座標変換は以下のように表される.
またはベクトル表現で
ただし
方針 k1k2
Uで変換した後の共分散行列Ckは
x1
x2
)1( 2
1
2221
1211
2
1
x
x
uu
uu
k
k
xUkT 21 uuU
1u
2u
)2(
1
1)(
1
)(11
1
11
11
CUUUxxU
UxxU
UxxUUxxU
xUxUkkkkC
TTT
T
i
n
i
i
T
T
i
n
i
i
TTTT
i
n
i
i
T
T
i
Tn
i
i
TT
i
n
i
i
T
k
n
nn
nn
今後の数式展開は平均を0にする処理が済んでいるものとして進める。ダッシュ(’)付きの記号にすべきだが、煩わしいので省略する。
Page 7
7主成分の方向を求める(つづき)
これは,もとのデータの共分散行列Cに対する固有値問題に他ならない.
共分散の対角化がUによってなされるとすると
成分に分けて表すと
固有値i2は対角化されたデータの
各変数の分散を与える.
u1
u2
すなわち,u1,u2は行列Cの固有ベクトル,1
2, 22は固有値として求められる.
U UT 1 (4)
Uの正規直交性より
よって(3)式は
)5(0
02
2
2
1
kC
2
2
2
1
21210
0
uuuuC
) ( 02 iallfori は実対称行列CkUCCU
2
12
2
または
2
2
221
2
11 , uCuuCu
1列目の式 2列目の式両辺にUを左からかけて左右入れ替えると
)3( k
TUCCUUU
Page 8
8主成分の方向を求める-一般の高次元データ-
サンプルデータ:
C XX1
n
T
サンプルデータの共分散行列:
対角化する基底ベクトルのセット:
座標変換後の共分散行列:
固有値問題の表現:
または
2次元での議論をそのままL次元へ拡張すればよい
LnL
n
n
xx
xx
,,1
1,1,1
1
xxX
LLL
L
L
uu
uu
,,1
1,1,1
1
uuU
2
2
1
0
0
L
k
C
kUCCU
Liforiii ,...,1 ,2 uCu
Page 9
9主成分の方向を求める-計算例-
を用いる.②正規性の条件
る.を解くことと同値であ①固有値問題
ヒント
.分を計算で求めなさいの場合について,主成問題2:
1
)1()(
10
2
2
2
1
uuu
0uICuCu
共分散行列が以下の式で表されるサンプルの集合を考える.
1
1
C
0.1)iii(
5.0)ii(
0)i(
的に描きなさい.サンプルの分布を模式
について,が以下の3種類の場合問題1:
ただし平均ベクトルは0とする.
Page 10
10低次元主成分による近似と誤差
あるj番目のサンプルについて,もと
データおよび低次元(1次元)による近似表現は以下のように書ける.
もとの変数と主成分ベクトルの係数との間には以下の関係がある.
また,Uの正規直交性より
または
いま,L=2とし,1次元主成分による近似とそれによる誤差を考える.
xUkT
UkxxUUUk T
2
)(
21
)(
1
)(uuxjjj kk
1
)(
1
)(ˆ uxjj k
誤差ベクトルは
2
)(
2
1
)(
12
)(
21
)(
1
)()()(
)(
ˆ
u
uuu
xxe
j
jjj
jjj
k
kkk
誤差ベクトルの大きさ(ノルムの2乗)は
2)(
2
2
2
)(
2
2)( |||| jjj kk ue
サンプル全体での誤差の平均は
2
2
1
2)(
2
1
2)( 1||
1
n
j
jn
j
j knn
E ee
すなわち誤差は,用いなかった第2主成分の残差(分散)に等しい.
L
i
iik1
ux
Page 11
11低次元主成分による近似と誤差(つづき)
r<L
より一般に,m次元データに対するr次元主成分による近似とそれによる誤差を考える.
すなわち,誤差は,用いなかった主成分の残差(分散)の和に等しい.
このとき,サンプル全体での誤差の平均は
もとのデータおよび近似データを
と書く.誤差ベクトルは
L
ri
i
j
i
r
i
i
j
i
L
i
i
j
i
jjj
k
kk
1
)(
1
)(
1
)(
)()()( ˆ
u
uu
xxe
L
ri
i
L
ri
n
j
j
i
n
j
L
ri
j
i
n
j
j
kn
kn
n
rE
1
2
1 1
2)(
1 1
2)(
1
2)(
2
1
1
||1
||)(
e
e
であり,その2ノルムは
L
ri
j
i
j
L
j
r
j
r
j
k
kkk
1
2)(
2)(2)(
2
2)(
1
2)( || e
,1
L
i
iik ux
r
i
iik1
ˆ ux
Page 12
近似による誤差と累積寄与率
主成分を,分散の大きい順に番号付けしたものならば,誤差
は,rに関して単調減少関数となる
r
E(r)
m
逆に,はじめのr個の成分でどのくらい正確に,もとの分布を表せるかの尺度として,以下に示す累積寄与率がある.
累積寄与率(r)=
rm
1
累積寄与率(r)
M
ri
i
L
ri
ikrE1
2
1
2)(
12
Page 13
13主成分の方向を求める-課題の答え-
が自明でない解(u=0以外の解)をもつためには,
C I 0
が必要十分条件となる.実際に計算すると
C I
1
11 02 2( )
この式をλについて解くと
1
を得る.いま,便宜的に,2つの解を以下のように表そう.
・・・(3)
・・・(4)
を得る.正規性の条件,
と連立させて解くと
を得る.
1
1
2
1
)6(21 uu
)8(2/1
2/1
2
1
u
uu
)9(2/1
2/1
2
1
u
uu
に対してはを得る.同様に, 12
)7(12
2
2
1 uu
)1()( 0uICuCu
・・・(2)
1 1 1(1 ) (5)u u u
2つの解のうち,まずλ1を式(1)に代入すると
より
Page 14
14主成分の方向を求める-計算例-
2/1
2/1
1
21
11
1
1
u
uu固有ベクトル:
固有値 :
固有値問題の2つの解を整理してみる.
2/1
2/1
1
22
12
2
2
u
uu固有ベクトル:
固有値 :
.分散の小さい軸を表す
がに対応した
,分散の大きい軸を表し
がに対応したであるから,
の場合,
22
11
21 110
u
u
10
01kC
共分散は0.
12 11
2/1
2/11u
2/1
2/12u
1k2k
方向の分散1u方向の分散2u
方向の分散2u
2/1
2/11u
2/1
2/12u
などもOK.
補足
Page 15
15主成分の方向を求める-計算例-
0 5.0 1
問題1の答え
右の分布は分散が2変数で等しくないので間違い.