第 4 章 多変量解析序説
4.5 主成分分析
4.5.1 主成分の求めかた
以下のようなp変量x1,· · · , xpからなるデータがあったとする。
x1 x11 · · · x1i · · · x1n
... ... ... ...
xk xk1 xki xkn
... ... ... ... xp xp1 · · · xpi · · · xpn
このようなデータの最も簡単な例としてはp= 2の場合の「身長−体重」デー タがある。ある集団の個々人の身長x1と体重x2のデータである。以下の説明は 最初はこの例に沿って読むと理解しやすいだろう。
これをx1, . . . , xp座標の集まりと見てx1, . . . , xp空間に点として描いたとき、
どの方向に最も広く点が散らばっているかを調べたとする(その方法は後述)。そ の方向を(a1, . . . , ap), a21+. . .+a2p= 1で表すとして、まず、この方向に原点を 通る新しい軸を設ける。点(x1, . . . , xp)のこの軸に関する成分zは、点からこの 軸に下ろした垂線の足の値を読めばよいから、内積
z=a1x1+. . .+apxp
である。このzを尺度として各レコードを評価することで、集団内の個の特徴ひ いては集団の特徴をきわだたせようとするのである。このようなzを主成分とい う。以下主成分の求めかたを述べる。
データ(x1i, . . . , xpi)に対するzの値をziと書いて、(a1, . . . , ap)方向のデー タの散らばりを次の式で定義する。
V(z) = 1 n
∑n i=1
(zi−z)¯ 2, z¯= 1 n
∑n i=1
zi
V(z)はzの分散とよばれる。これが最大になる方向(a1, . . . , ap)を求めること が目標である。V(z)をx1, . . . , xp, y, a1, . . . , apで書き換えると、
V(z) = 1 n
∑n i=1
(a1x1i+· · ·+apxpi)− 1 n
∑n j=1
(a1x1j+· · ·+apxpj)
2
= 1
n
∑n i=1
a1
x1i−1 n
∑n j=1
x1j
+· · ·+ap
xpi− 1 n
∑n j=1
xpj
2
= 1
n
∑n i=1
{a1(x1i−x¯1) +· · ·+ap(xpi−x¯p)}2
ここに、¯xi=n1∑n
j=1xijである。さらに、
σij = 1 n
∑n k=1
(xik−x¯i)(xjk−x¯j) とおけば(σijはxi, xjの共分散とよばれる)、
V(z) =σ11a21+· · ·+σppa2p+ 2∑
i<j
σijaiaj
であるから問題は結局、a21+· · ·+a2p = 1の条件のもとに、a1, . . . , apの2次式 σ11a21+· · ·+σppa2p+ 2∑
i<j
σijaiaj
の最大値を求めることである。これは、ラグランジュ未定乗数法によれば、a1, . . . , ap
がこの最大値(条件付極値)を与える必要条件は、
σiiai+∑
j̸=i
σijaj−λai = 0 i= 1, . . . , p を満たすことである。このようなa1, . . . , ap, λを求めることは、
Σ =
σ11 · · · σ1p
... ... ... σp1 · · · σpp
, α=
a1
... ap
とすると(Σをデータの共分散行列とよぶ)、固有値問題
Σα=λα (1)
を解くことに等しい。
一般にp次の正方行列は(重複度を込めて)p個の固有値を持つ。共分散行列 は実対称行列であるが、実対称行列の固有値はすべて実数であり、また固有ベク トルは長さが1で互いに直交するようにとれることが知られている。さらに共 分散行列は正の半定符号(positive semi-definite)という性質を満たしていること から、固有値は非負であることが知られている。そこで、Σの固有値、固有ベ クトルの対を(λ1,α1), . . . ,(λp,αp), ここで、λ1≥λ2 ≥. . .≥λpとし、ここで α1, . . . ,αpは長さが1で互いに直交しているとしよう。。
(λ,α)をΣの固有値、固有ベクトルの対とすると、分散はV(z) =α′Σαと書 ける(ここで′は行列の転置)ことから、
V(z) = α′Σα
= α′λα
= λα′α
= λ
よって、最大の固有値λ1に対応する固有ベクトルα1がV(z)の最大値を与え る。このときのzはα1= (a11, . . . , a1p)とすると、
z1=α1·(x1, . . . , xp) =a11x1+· · ·+a1pxp
と書けるが、これをを第1主成分という。α1をこの主成分の方向ということに する。
第1主成分の方向以外の固有ベクトルにも意味がある。第1主成分に対応する 固有値λ1のつぎに大きい固有値λ2に対応する固有ベクトル(あるいはλ1に複 数個の固有ベクトルが対応するときは第一主成分の方向とは別の固有ベクトル)
をα2= (a21, . . . , a2p)とすると、
z2=α2·(x1, . . . , xp) =a21x1+· · ·+a2pxp を第2主成分という。
上で述べたようにこれの方向α2は第1主成分の方向α1に垂直である。これ はすなわち、第2主成分の意味は第1主成分軸に垂直な方向で最もデータの分散 が大きい方向の成分であるということになる。
なぜなら、|α| = 1かつα·α1 = 0のもとでV(z)が最大になる必要条件を
Lagrangeの未定乗数法で書いてみれば(1)が成立することは明らかである(条
件|α| = 1だけを考える)。よってα1に垂直でV(z)が最大な方向αが存在 するとすればそれは(1)の解であり、したがってα=α2である。(無相関性に よる主成分の定義などを含めて詳しくはR.A.Johnson, D.W.Wichern, Applied Multivariate Analysis, sixth edition, Chpter 8.1を参照のこと。)
第3主成分は3番目に大きな固有値に対応する固有ベクトルに対応する主成分 で、第1、第2主成分の方向と方向が直交する中でデータの分散が最も大きくな る方向である。以下、第p主成分まで同様である。
4.5.2 寄与率と因子負荷量
主成分は形式的には変量の数だけあるが、普通はすべての主成分を考慮するこ とはない。以下の(累積)寄与率がどこまでの主成分を考えればよいのかの基準 を与える。
p変量の分散σiiの和∑p
i=1σiiはデータ全体の変化量と考えられる。これは行 列Σの対角成分の和であるからΣの固有値の和に等しいことが知られている。
この和に対する、第k主成分zkの分散λk(k番目に大きい固有値)の占める割合 Ck= λk
∑p iσii
= λk
∑p i λi
を第k主成分の寄与率という。これは、変量の変化を第k主成分でどのぐらい説 明できるかの指標であるといえよう。
∑k i
Ci
を第k主成分までの累積寄与率という。これが1に近ければ、第k主成分までで 全体の変化を十分説明していると考えられるのである。
各主成分zkと変量xjの相関係数を主成分zkの因子負荷量という。因子負荷 量を用いてakと強い(正負の)相関がある変量を見つけ出すことで、zkの解釈 ができる。
因子負荷量はつぎの式で計算される。
rkj=
√λkakj
√σjj
4.5.3 相関行列の方法
変量x1, . . . , xpのスケールが大きく違うときはどうしてもスケールの大きい変 量の影響が相対的に大きくなってしまい、本来の意図からはそれることがある。
そういうときは、各変量を
x∗i = xi−x¯i
√σii
と標準化してから同様に分析を行うことが考えられる。
この方針で同様に分析することは、実は上でxiの分散共分散行列の固有値を 求める代わりにxiの相関係数行列の固有値を求めることに等しい。