第6講 各種データ解析法

主成分分析

主成分

次の観測値が得られたとする.

xi=(xi1xi2xip)    (i=1,2,,n)
この観測値に対して主成分分析を行ってみる.

この観測値を標準化したものを

ui=(ui1ui2uip)    (i=1,2,,n)
とする.このとき,分散は,
1n1i=1n(uiju¯i)2=1    (j=1,2,,p)
これより,
i=1nuij2=n1    (j=1,2,,p)
また,相関係数は,
rxjxk=1n1i=1n(uiju¯j)(uiku¯k)1n1i=1n(uiju¯j)21n1i=1n(uiku¯k)2
これより,
rxjxk=1n1i=1nuijuik11
 i=1nuijuik=(n1)rxjxk
第 1 主成分を次のように定義する.
zi1=a1ui1+a2ui2++apuip
ここで,
a=(a1a2ap)
とおくと,
zi1=aui=uia
zi1 (i=1,2,,n) の分散は,
Vz1=1n1i=1nzi12=1n1i=1n(aui)(uia)=a(1n1i=1nuiui)a=aRa
ただし,R は相関係数行列である. また,分散を最大化するような a を求めるが,次の制約条件を設ける.
aa=1
ラグランジュの未定乗数法を用いると,
L(a,λ)=aRaλ(aa1)
a で微分して 0 とおくと,
aL(a,λ)=2Ra2λa=0
よって,
Ra=λa
左から a をかけると,
aRa=λaa    Vz1=λ
よって,分散の最大値は λ となる. 固有値問題 Ra=λa を解いて, 最大固有値 λ1 に対する固有ベクトルを求めれば,第 1 主成分の係数 a を求めることができる.
Ra=λ1a

次に,第 2 主成分を求める.

zi2=bui=uib
bb=1
Vz2=bRb
ここで,zi1zi2 が無相関であるという制約を設ける.
i=1n(zi1z¯1)(zi2z¯2)=0
  i=1nzi1zi2=0
  i=1n(aui)(uib)=0
  (n1)a(1n1i=1nuiui)b=0
  (n1)aRb=0
  (n1)λ1ab=0    ( (Ra)=(λ1a))
よって,無相関であるためには,
aRb=0
ab=0
そこで,ラグランジュの未定乗数法を用いると,
L(b,λ,η)=bRbλ(bb1)ηab
b で微分して 0 とおくと,
bL(a,λ)=2Rb2λbηa=0
左から a をかけると,
2aRb2λabηaa=0  (1)
ηaa=0
これより,
η=0
よって,(1) より
Rb=λb
左から b をかけると,
bRb=λbb    Vz2=λ
よって,分散の最大値は λ となり,第 2 主成分の係数は, 固有値問題 Ra=λa の第 2 固有値に対する固有ベクトルを求めればよいことになる.

第 3 主成分についても同様である.第 3 主成分 z3 は,z1z2 に無相関になるように制約を設けて, 同様にして第 3 主成分の係数を求めていけばよい.

寄与率

R の固有値 λj (j=1,2,,p) の和は,

λ1+λ2++λp=trR=1
k 主成分の寄与率は,
λkλ1+λ2++λp=λkp
k 主成分までの累積寄与率は,
λ1+λ2++λkλ1+λ2++λp=λ1+λ2++λkp