主成分分析专题
§1 引言
,较我们在作数据分析处理时,涉及的样品往往包含有多个测量指标(比如p个指标)多的指标会带来分析问题的复杂性。然而,这些指标彼此之间常常存在着一定程度的、有时
甚至是相当高的相关性,这就使含在观测数据中的信息在一定程度上有所重叠。主成分分析就是一种通过降维技术把多个指标约化为少数几个综合指标的统计分析方法。这些综合指标能够反映原始指标的绝大部分信息,它们通常表示为原始p个指标的某种线性组合。为了使这些综合指标所含的信息互不重叠,应要求它们互不相关。
例如,考虑p=2的情形,假设共有n个样品,每个样品都测量了两个指标(x1,x2),它们大致分布在一个椭圆内。如图所示。显然,在坐标系x1Ox2中,n个点的坐标x1和x2呈这现某种线性相关性。我们将该坐标系按逆时针方向旋转某个角度q变成新坐标系y1Oy2,里y1是椭圆的长轴方向,y2是短轴方向。旋转公式为
ìy1=x1cosq+x2sinq
í
îy2=-x1sinq+x2cosq
易见,n个点在新坐标系下的坐标y1和y2几乎不相关。y1和y2称为原始变量x1和x2的综合变量,n个点在y1轴上的方差达到最大,即在此方向上所含的有关n个样品间差异的信息是最多的。因此,若欲将二维空间的点投影到某个一维方向,则选择y1轴方向能使信息的损失降低到最小。我们称y1轴为第一主成分,而与y1轴正交的y2轴,有着较小的方差,称为第二主成分。
第一主成分的效果与椭圆的形状有很大关系,椭圆越是扁平,n个点在y1轴上的方差就相对越大,在y2轴上的方差就相对越小。
考虑这样两种极端的情形:一种是椭圆的长轴与短轴的长度相等,即椭圆变成圆,第一主成分只含有二维空间点的约一半信息,若仅用这一个综合变量,则将损失约50%的信息,这显然是不可取的。造成它的原因是,原始变量x1和x2的相关程度几乎为零,也就是说,x1和x2所包含的信息几乎互不重叠,因此无法用一个一维的综合变量来代替它们。另一种是椭圆扁平到了极限,变成y1轴上的一条线段,第一主成分包含有二维空间点的100%
信息,仅用这一个综合变量代替原始的二维变量不会有任何的信息损失,此时的主成分分析效果是非常理想的。其原因是,原始变量x1和x2可以相互确定,它们所含的信息是完全相同的,因此使用一个综合变量也就完全足够了。
§2 总体的主成分
一、主成分的定义及导出
设x=(x1,x2,L,xp)¢为一个p维随机向量,并假定二阶矩存在, 备注:
设X和Y是随机变量,若E(X),k=1,2,L存在,称它为X的k阶原点矩,简称k阶矩。
若E[X-E(X)]k,k=1,2,L存在,称它为X的k阶中心矩。 若E(XkYl),k,l=1,2,L存在,称它为X和Y的k+l阶混合矩。
若E[X-E(X)]k[Y-E(Y)]l,k=1,2,L存在,称它为X和Y的k+l阶混合中心矩。
显然,二维随机变量(X1,X2)有四个二阶中心矩(设它们都存在),分别记为
k
{}
{}
c11=E{[X1-E(X1)]2}
c12=E{[X1-E(X1)][X2-E(X2)]} c21=E{[X2-E(X2)][X1-E(X1)]} c22=E{[X2-E(X2)]2}
将它们排成矩阵的形式:
æc11ççcè21c12ö÷ ÷c22ø
这个矩阵称为随机变量(X1,X2)的协方差矩阵。
设n维随机变量(X1,X2,L,Xn)的二阶混合中心矩
cij=cov(Xi,Xj)=E{[Xi-E(Xi)][Xj-E(Xj)]},i,j=1,2,L,n
都存在,则称矩阵
æc11ççc21çMççcèn1
c12c22Mcn2
Lc1nö
÷
Lc2n÷
÷LM÷
Lcnn÷ø
为n维随机变量(X1,X2,L,Xn)的协方差矩阵。由于cij=cji(i¹j,i,j=1,2,L,n),因而上述矩阵是一个对称矩阵。
一般,n维随机变量的分布是不知道的,或者是太复杂,以致在数学上不易处理,因此在实际应用中协方差矩阵就显得重要了。 备注完毕。
记m=E(x),S=V(x)。考虑如下的线性变换
ìy1=a11x1+a12x2+L+a1pxp=a1'xï'ïy2=a21x1+a22x2+L+a2pxp=a2x
í
ïM
ïy=ax+ax+L+ax=a'x
p11p22ppppîp
(7.2.1)
我们希望y1是x1,x2,L,xp的一切线性函数中方差最大的。因为
V(a1'x)=a1'V(x)a1=a1'Sa1,对任意的常数k,V(ka1'x)=k2V(a1'x)=k2a1'Sa1,所
以如不对a1加以限制,就会使问题变得没有什么意义。于是常常限制
ai'ai=1,i=1,2,L,p
(7.2.2)
'
故我们希望在(7.2.2)的条件下寻求向量a1,使得V(y1)=a1Sa1达到最大,y1就称为第
一主成分。
设l1³l2³L³lp³0(因为S非负定)为S的特征值,t1,t2,L,tp为相应的单位特征向量,且相互正交。则S的谱分解为:
æl1
ççS=Tç
çç0è
l2
0ö÷
p
÷'
¢T=ltt åiii÷Li=1÷lp÷ø
(7.2.3)
其中T=(t1,t2,L,tp)为正交矩阵。
对p维单位向量a,有
a¢Sa=ålia¢tta=åli(a¢ti)(a¢ti)=åli(a¢ti)£ål1(a¢ti)=l1å(a¢ti)2
'ii
2
2
i=1
i=1
i=1
i=1
i=1
ppppp
=l1åa¢titi'a=l1a¢(åtiti')a=l1a¢TT¢a=l1a¢a=l1
i=1
i=1
pp
备注:
æt11ççt21
TT¢=ç
Mççtp1è
备注完毕。
t12t22Mtp2
Lt1pöæt11
֍
Lt2p֍t12LM֍M
÷ççLtpp÷øèt1p
t21
t22Mt2p
æt1'öLtp1ö
ç÷÷'
÷p'çt2Ltp2÷
=(t1,t2,L,tp)ç÷=åtiti
LM÷çM÷i=1÷
çt'÷Ltpp÷øèpø
即第一主成分方差的上确界为l1。 当取a=t1时,有
t1'St1=t1'(l1t1)=l1(t1't1)=l1
或
p
p
(7.2.4)
tSt1=åltttt=åli(tt)(tt)=åli(t1'ti)2
'
1
''i1ii1
'1i
'1i
i=1
i=1
i=1
p
=l1(t1't1)2+l2(t1't2)2+L+lp(t1'tp)2=l1+0=l1
所以,y1=t1'x就是所求的第一主成分,它的方差具有最大值l1。
如果第一主成分所含信息不够多,还不足以代表原始的p个变量,则需考虑使用y2,为了使y2所含的信息与y1不重叠,应要求
cov(y1,y2)=0
(7.25)
'
于是,我们在约束条件(7.2.2)式和(7.2.5)式下寻求向量a2,使V(y2)=a2Sa2达到最
大,所求的y2称为第二主成分。类似地,我们可以再定义第三主成分、…、第p主成分。一般来说,x的第i主成分yi=ai'x是指:在约束条件(7.2.2)和
cov(yk,yi)=0,k=1,2,L,i-1
(7.2.6)
下寻求ai,使得V(yi)=ai'Sai达到最大。
现在我们来求p维单位向量a,使得y2=a¢x为第二主成分。由(7.2.6)式知
cov(y1,y2)=cov(y2,y1)
=cov(a¢x,t1'x)=a¢cov(x,x)t1=a¢St1=a¢(l1t1)=l1a¢t1=0
由于l1¹0,所以a¢t1=0,即a与t1正交。 从而
V(y2)=a¢Sa
=åli(a¢ti)2
i=1pp
=åli(a¢ti)2
i=2
£l2å(a¢ti)2
i=2p
p
=l2å(a¢ti)2
i=1p
=l2åa¢tia¢ti
i=1p
=l2åa¢titia¢
i=1
=l2a¢(åtiti')a
i=1
p
=l2a¢TT¢a=l2a¢a=l2
故若取a=t2,则有
'''t2St2=t2t2)=l2 (l2t2)=l2(t2
(7.2.7)
'
所以,y2=t2x就是所求的第二主成分,具有方差l2。一般地,我们可求得第i主成分为
yi=ti'x,它具有方差li,i=1,2,L,p。
二、主成分的性质
1. 主成分的均值和协方差矩阵 记
æy1öæl1ç÷çyç2÷çy=ç÷,u=E(y),L=ç
Mç÷ç
ç0çyp÷
èèø
由于
l2
0ö
÷÷÷ L
÷lp÷ø
(7.2.8)
y=T¢x
故主成分的均值为
u=E(y)=E(T¢x)=T¢m
协方差矩阵为
(7.2.9)
V(y)=V(T¢x)=T¢V(x)T=T¢ST=L
2. 主成分的总方差
由于tr(L)=tr(T¢ST)=tr(ST¢T)=tr(S), 备注:
若A,B均为方阵,则tr(AB)=tr(BA)。 备注完毕。
所以
(7.2.10)
ål=ås
ii=1
i=1
pp
ii
(7.2.11)
或
åV(y)=åV(x)
i
i
i=1
i=1
pp
(7.2.11)¢
由此可以看出,主成分分析把p个原始变量x1,x2,L,xp的总方差tr(S)分解成了p个不相关的变量y1,y2,L,yp的方差之和
ål
i=1
p
i
。主成分分析的目的就是为了减少变量的个数,一
般是不会使用所有p个主成分的,忽略一些带有较小方差的主成分将不会给总方差带来大的影响。我们称
lk
ål
i=1
p
i
为主成分yk的贡献率;第一主成分的贡献率最大,这表明y1=t1'x综合原始变量
x1,x2,L,xp的能力最强,而y2,y3,L,yp的综合能力依次递减。若只取m(m
主成分,则称
m
ålål
i=1i=1p
i
i
累计贡献率表明y1,y2,L,ym综合x1,x2,L,xp的能为主成分y1,y2,L,ym的累计贡献率,
力。通常取m,使得累计贡献率达到一个较高的百分数(如85%)以上。
3. 变量xi与主成分yj之间的相关系数
变量xi与主成分yj之间的相关系数的计算公式为
r(xi,yj)=
由(7.2.8)式知
cov(xi,yj)(xi)(yj)
=
cov(xi,yj)
iilj
(7.2.12)
x=Ty
(7.2.13)
若记T=(tij),则
xi=ti1y1+ti2y2+L+tipyp
所以
(7.2.13)¢
cov(xi,yj)=cov(tijyj,yj)=tijlj
代入(7.2.12)式得
r(xi,yj)=
即
cov(xi,yj)
iijjii
=
tijlj
iilj
=
ljii
tij
(7.2.14)
r(xi,yj)=tij
(7.2.14)
所有这些相关系数列于表7.1中。在实际应用中,通常我们只对xi(i=1,2,L,p)与
yj(j=1,2,L,m)的相关系数感兴趣,因此往往只列出表7.1的前m列,即形成p´m表。
表7.1 变量xi与主成分yj之间的相关系数
4. m前面提到的累计贡献率这个概念度量了主成分y1,y2,L,ym从原始变量x1,x2,L,xp
中提取信息的多少,那么,y1,y2,L,ym包含有xi(i=1,2,L,p)的多少信息应该用什么指标来度量呢?这个指标就是xi与y1,y2,L,ym的复相关系数的平方,称为m个主成分
y1,y2,L,ym对原始变量xi的贡献率,记为ri2×1Lm。易知,
0öæV(y1)
֍
O(cov(xi,y1),L,cov(xi,ym))ç÷
ç0V(ym)÷øè
V(xi)
-1
ri2×1Lm=
æcov(xi,y1)ö
֍
M֍
çcov(x,y)÷
imøè
ær(xi,y1)ö
ç÷
=(r(xi,y1),L,r(xi,ym))çM÷
çr(x,y)÷
imøè=år2(xi,yj)
j=1mm
=å
j=1
ljsiiljsii
2
tij
即
r
2i×1Lm
=å
j=1
m
2 tij
(7.2.15)
这些值列于表7.2中。
表7.2 m个主成分对原始变量的贡献率
由(7.2.13)¢式知,y1,y2,L,yp对xi的贡献率ri×1Lp=1。另外,下式也可证明:
2
r
2
i×1Lp
=år(xi,yj)=å
2
j=1
pp
lj
j=1sii
2tij=
ålt
j=1
p
2
jij
sii
=
V(xi)sii
==1 siisii
(7.2.16)
备注:
事实上,因为xi=ti1y1+ti2y2+L+tipyp,所以,
2 V(xi)=V(ti1y1+ti2y2+L+tipyp)=åljtij
j=1p
另外,
år
i=1
p
2
(xi,yj)sii=å(
i=1
p
ljsii
2
=lj t×sii)=ålt=ljåtij2
ij
2jiji=1
i=1
pp
备注完毕。
三、载荷矩阵
x=Ty可以表达为
æx1öæt11ç÷ççx2÷çt21çM÷=çMç÷ççxp÷çtp1èøè
t12t22Mtp2
Lt1pöæy1ö
÷ç÷
Lt2p÷çy2÷
OM÷çM÷
÷ç÷ç÷Ltpp÷øèypø
可见,x的每一分量均可表示成主成分y1,y2,L,yp的线性组合。如果我们选取前m个主成分,并记
ˆöættæx
ç1÷ç1112ˆ2÷çt21t22çx
çM÷=çMMç÷ççx÷ç
èˆpøètp1tp2
则有
Lt1möæy1ö
÷ç÷
Lt2m÷çy2÷
OM÷çM÷
÷ç÷ç÷Ltpm÷øèymø
(7.2.17)
æx1öæt11ç÷ççx2÷çt21çM÷=çMç÷ççxp÷çtp1èøè
æt11ççt21»ç
Mççtèp1
t12t22Mtp2t12t22Mtp2
Lt1möæy1öæt1,m+1
֍֍
Lt2m֍y2֍t2,m+1
+
OM֍M֍M
÷ç÷çç÷çLtpm÷øèymøètp,m+1
ˆöLt1möæy1öæx
÷ç÷ç1÷
ˆ2÷Lt2m÷çy2÷çx=
OM÷çM÷çM÷
÷ç÷ç÷ç÷çˆ÷Ltpm÷pøøèymøèx
t1,m+2
t2,m2Mtp,m+2
Lt1pöæym+1ö
÷÷ç
Lt2p÷çym+2÷
÷OM÷çM
÷÷ç÷çLtppøèyp÷ø
即x的每一个分量xi均可近似地表示为前m个主成分y1,y2,L,ym的线性组合。由前面知
y1,y2,L,yp是不相关的,且xi=ti1y1+ti2y2+L+tipyp,即
2
V(xi)=V(ti1y1+ti2y2+L+tipyp)=åljtij
j=1p
(7.2.19)
和
2
V(xi)=V(ti1y1+ti2y2+L+timym)=åljtij
j=1m
(7.2.20)
ˆi去代替xi时,xˆi一般能说明xi方差的大部比较(7.2.19)与(7.2.20)两式,可以看出用x
分,所占比例为
m
ålt
j=1p
2
jij
2jij
(7.2.21)
ålt
j=1
可见,lj(j=1,2,L,m)相对越大,上述比值一般就越大,说明用m个主成分
y1,y2,L,ym来综合反映原始变量x1,x2,L,xp的效果也就越好。另一方面这个比值也取决
于tij,我们称tij为第i个原始变量xi在第j个主成分yj的载荷,而称由矩阵T的前m列组成的p´m矩阵为主成分的载荷矩阵,记为A,即
æt11
ççt21A=ç
Mççtèp1
即
t12t22Mtp2
Lt1mö
÷
Lt2m÷
OM÷
÷
Ltpm÷ø
ˆöætæx
ç1÷ç11ˆ2÷çt21çx
ˆ=ç÷=çx
MM
ç÷ççx÷çèˆpøètp1
t12t22Mtp2
Lt1möæy1ö
÷ç÷
Lt2m÷çy2÷~=Ay OM÷çM÷
÷ç÷ç÷Ltpm÷øèymø
我们来分析一下载荷矩阵A中元素tij代表的意义。A中的第j列反映了主成分yj对原始变量x各分量的作用。如果A中出现了一列中只有一个非零元素,不妨设第1列为
æ1ö
ç÷ç0÷çM÷ ç÷ç0÷èø
这时
ˆ1öæ1t12æx
ç÷ç
ˆ2÷ç0t22çx
çM÷=çMMç÷ççx÷ç
èˆpøè0tp2
即
Lt1möæy1ö
÷ç÷
Lt2m÷çy2÷
OM÷çM÷
÷ç÷ç÷Ltpm÷øèymø
ˆ1=y1+t12y2+L+t1mym x
ˆ2=0+t22y2+L+t2mym x
…
ˆp=0+tp2y2+L+tpmym x
则表明第一主成分只对原始变量x1有作用,而对其它的原始变量x2,x3,L,xp都不起作用;如果A中某一列的元素均不为零,则表明这一列相应的主成分对各原始变量x1,x2,L,xp都起作用。因此我们把前一种主成分称为特殊成分,而把后一种主成分称为公共成分。由此
可见,载荷矩阵的具体形式可供我们分析每一主成分对诸原始变量的贡献。所以,在主成分分析中,在求出主成分的同时,还应求出载荷矩阵。
在实际应用中,一般先对m个主成分y1,y2,L,ym的方差施行标准化,然后再求出主成分的载荷矩阵。即令
æç
æf1öçç÷ççf2÷çf=ç÷=
çM
ç÷ççf÷èmøç
çè
1
l10M0
01l2M0
LLLO
ö0÷
÷æy1ö÷ç÷0÷çy2÷
÷çM÷
÷M÷ççy÷
1÷èmø÷lmø
于是
æç1
01
çL0ö
÷æl0L0ö÷ç
1÷ç1÷1
æy1V(f)=ç
00çlL0÷çö÷ç÷çyç2÷01
÷÷
=Im ç÷V
çM÷ç
֍
çMM2Oç0
1M÷ç÷çèy÷ç
møç
MlLM2
O1M÷÷÷è
L
l÷
ç0
L
møè
÷mø
备注:
V(Ax)=AV(x)A¢
备注完毕。
æçy1öæl10L0öy=çy÷ç0l0÷æf1öç2÷çL÷ç÷ççM
÷=ç
֍MM2OM
÷çfç2÷÷ èym÷øçè
00
L
÷lçm÷øçM÷èfm÷ø所以,由(7.2.17)式得
æçx
ˆ1öætt12Lt1möæyx
ˆ=çx
ˆ÷ç11tç2÷çt2122MLt÷ç1ö
÷
2mO÷çy2ççM
÷=÷ççMèxˆp÷øçètp1tp2
LM÷t÷ç÷çM÷
pm÷øç÷èym÷ø
æçt11t12
Lt1möæ0=çttL0öç
2122lççMMLt÷ç
1
2m÷÷ç0O2ètp1tML0÷æ÷çf1öçf÷2÷Op2
LMt֍
çpm÷øçMè0
L
÷ç÷ ÷lçm÷øçM÷
èfm÷ø
=Bf
其中
æt11ççt21B=ç
Mççtp1è
t12t22Mtp2
Lt1möæ
֍
Lt2m֍OM֍
÷ççLtpm÷øèt12l2
t22l2
tp2l2
l10M0
l2M0ö÷÷÷÷÷ø
LLOL
0ö÷0÷÷M÷m÷ø
æt11l1
ç
çtl=ç211ççtlèp11æb11b12ç
çb21b22=ç
MMççb
èp1bp2
即
Lt1mlmLt2mlmOLtpmm
Lb1mö
÷
Lb2m÷OM÷
÷
Lbpm÷ø
B=(bij)p´m,且bij=tijlj
ˆi的方差可表示为 这是用标准化的主成分近似表示原始变量x1,x2,L,xp的公式。此时x
2
ˆi)=åbij,i=1,2,L,p V(x
j=1m
(7.2.24)
称B为标准化主成分f的载荷矩阵。
如果对标准化的主成分施行一个正交变换,即令
æf1öæh1ö
ç÷ç÷
çf÷çh÷
h=ç2÷=G¢ç2÷=G¢f
MM
ç÷ç÷
çf÷çh÷
èmøèmø
其中G为一个正交矩阵,则有
(7.2.25)
V(h)=V(G¢f)=G¢V(f)G=G¢ImG=G¢G=Im
ˆ也可用h来表示,即有 故h仍然是标准化的主成分。又f=Gh,因此x
ˆ=Bf=BGh=Ch x
(7.2.26)
其中C=BG=(cij)为标准化主成分h的载荷矩阵。与(7.2.24)式同样的道理,有
2
ˆi)=åcijV(x,i=1,2,L,p
j=1m
(7.2.27)
故
åb
j=1
m
2ij
2
=åcij,i=1,2,L,p j=1
m
(7.2.28)
ˆ的方差及其表达形式都是不变的。这种不变的性这表明标准化的主成分经过正交变换后,x
质在很大程度上允许我们寻求这样标准化主成分的正交变换,使得变换后的载荷矩阵具有更鲜明的实际意义。
四、从相关矩阵出发求主成分
我们前面讨论的主成分是从协方差矩阵S出发求得的,其结果受原始p个变量单位的
影响。不同的变量往往有不同的单位,对同一变量使用不同的单位会产生不同的主成分,主成分会过于照顾方差(sii)大的变量xi,而对方差小的变量却照顾得不够。为使主成分分析能够均等地对待每一个原始变量,消除由于单位的不同而可能带来的一些不合理影响,常常将各原始变量作标准化处理,即令
xi*=
显然,
xi-E(xi)(xi)
,i=1,2,L,p
(7.2.29)
*æx1öç÷*÷çx2*
x=ç÷的协方差矩阵就是x的相关矩阵R。
çM÷çx*÷èpø
从R出发求得主成分的方法与从S出发是完全类似的,并且主成分的一些性质具有更简洁的数学形式。首先对R进行谱分解,即存在正交矩阵T=(t1,t2,L,tp)=(tij),使得
*
*
*
*
*
R=TLT
这里
*æl1çç0*
L=ç
çMç0è
**
¢
**¢=ål*tiiti i=1
p
(7.2.30)
0L0ö÷*
l2L0÷
÷,
MOM÷0Ll*p÷ø
********
l*由此得到p个主成分y1=t1x,y2=t2x,…,1³l2³L³lp³0为R的p个特征值。**y*p=tpx。记
æy1*ö
ç÷*çy2÷*
y=ç÷
çM÷çy*÷èpø
是
y*=T*¢x*
(7.2.31)
上述主成分具有的性质可概括如下: (1) E(y*)=0,V(y*)=L*
p
(2)
ål
*i
=p
i=1
(3) 变量x*
*
*
*
i与主成分yj之间的相关系数为r(xi,yj)=l*t*jij
(4)主成分
æçy*1ö
y*=ç*÷mmçy2÷÷对变量x*
22****2çi的贡献率为ri×12Lm=år(xi,yj)=ålçM÷
jtij
j=1j=1èy*m÷ø
p(5)år2
(x*,y*p
)=ål**2
i
j
jtij=1
j=1
j=1
于
主成分分析专题
§1 引言
,较我们在作数据分析处理时,涉及的样品往往包含有多个测量指标(比如p个指标)多的指标会带来分析问题的复杂性。然而,这些指标彼此之间常常存在着一定程度的、有时
甚至是相当高的相关性,这就使含在观测数据中的信息在一定程度上有所重叠。主成分分析就是一种通过降维技术把多个指标约化为少数几个综合指标的统计分析方法。这些综合指标能够反映原始指标的绝大部分信息,它们通常表示为原始p个指标的某种线性组合。为了使这些综合指标所含的信息互不重叠,应要求它们互不相关。
例如,考虑p=2的情形,假设共有n个样品,每个样品都测量了两个指标(x1,x2),它们大致分布在一个椭圆内。如图所示。显然,在坐标系x1Ox2中,n个点的坐标x1和x2呈这现某种线性相关性。我们将该坐标系按逆时针方向旋转某个角度q变成新坐标系y1Oy2,里y1是椭圆的长轴方向,y2是短轴方向。旋转公式为
ìy1=x1cosq+x2sinq
í
îy2=-x1sinq+x2cosq
易见,n个点在新坐标系下的坐标y1和y2几乎不相关。y1和y2称为原始变量x1和x2的综合变量,n个点在y1轴上的方差达到最大,即在此方向上所含的有关n个样品间差异的信息是最多的。因此,若欲将二维空间的点投影到某个一维方向,则选择y1轴方向能使信息的损失降低到最小。我们称y1轴为第一主成分,而与y1轴正交的y2轴,有着较小的方差,称为第二主成分。
第一主成分的效果与椭圆的形状有很大关系,椭圆越是扁平,n个点在y1轴上的方差就相对越大,在y2轴上的方差就相对越小。
考虑这样两种极端的情形:一种是椭圆的长轴与短轴的长度相等,即椭圆变成圆,第一主成分只含有二维空间点的约一半信息,若仅用这一个综合变量,则将损失约50%的信息,这显然是不可取的。造成它的原因是,原始变量x1和x2的相关程度几乎为零,也就是说,x1和x2所包含的信息几乎互不重叠,因此无法用一个一维的综合变量来代替它们。另一种是椭圆扁平到了极限,变成y1轴上的一条线段,第一主成分包含有二维空间点的100%
信息,仅用这一个综合变量代替原始的二维变量不会有任何的信息损失,此时的主成分分析效果是非常理想的。其原因是,原始变量x1和x2可以相互确定,它们所含的信息是完全相同的,因此使用一个综合变量也就完全足够了。
§2 总体的主成分
一、主成分的定义及导出
设x=(x1,x2,L,xp)¢为一个p维随机向量,并假定二阶矩存在, 备注:
设X和Y是随机变量,若E(X),k=1,2,L存在,称它为X的k阶原点矩,简称k阶矩。
若E[X-E(X)]k,k=1,2,L存在,称它为X的k阶中心矩。 若E(XkYl),k,l=1,2,L存在,称它为X和Y的k+l阶混合矩。
若E[X-E(X)]k[Y-E(Y)]l,k=1,2,L存在,称它为X和Y的k+l阶混合中心矩。
显然,二维随机变量(X1,X2)有四个二阶中心矩(设它们都存在),分别记为
k
{}
{}
c11=E{[X1-E(X1)]2}
c12=E{[X1-E(X1)][X2-E(X2)]} c21=E{[X2-E(X2)][X1-E(X1)]} c22=E{[X2-E(X2)]2}
将它们排成矩阵的形式:
æc11ççcè21c12ö÷ ÷c22ø
这个矩阵称为随机变量(X1,X2)的协方差矩阵。
设n维随机变量(X1,X2,L,Xn)的二阶混合中心矩
cij=cov(Xi,Xj)=E{[Xi-E(Xi)][Xj-E(Xj)]},i,j=1,2,L,n
都存在,则称矩阵
æc11ççc21çMççcèn1
c12c22Mcn2
Lc1nö
÷
Lc2n÷
÷LM÷
Lcnn÷ø
为n维随机变量(X1,X2,L,Xn)的协方差矩阵。由于cij=cji(i¹j,i,j=1,2,L,n),因而上述矩阵是一个对称矩阵。
一般,n维随机变量的分布是不知道的,或者是太复杂,以致在数学上不易处理,因此在实际应用中协方差矩阵就显得重要了。 备注完毕。
记m=E(x),S=V(x)。考虑如下的线性变换
ìy1=a11x1+a12x2+L+a1pxp=a1'xï'ïy2=a21x1+a22x2+L+a2pxp=a2x
í
ïM
ïy=ax+ax+L+ax=a'x
p11p22ppppîp
(7.2.1)
我们希望y1是x1,x2,L,xp的一切线性函数中方差最大的。因为
V(a1'x)=a1'V(x)a1=a1'Sa1,对任意的常数k,V(ka1'x)=k2V(a1'x)=k2a1'Sa1,所
以如不对a1加以限制,就会使问题变得没有什么意义。于是常常限制
ai'ai=1,i=1,2,L,p
(7.2.2)
'
故我们希望在(7.2.2)的条件下寻求向量a1,使得V(y1)=a1Sa1达到最大,y1就称为第
一主成分。
设l1³l2³L³lp³0(因为S非负定)为S的特征值,t1,t2,L,tp为相应的单位特征向量,且相互正交。则S的谱分解为:
æl1
ççS=Tç
çç0è
l2
0ö÷
p
÷'
¢T=ltt åiii÷Li=1÷lp÷ø
(7.2.3)
其中T=(t1,t2,L,tp)为正交矩阵。
对p维单位向量a,有
a¢Sa=ålia¢tta=åli(a¢ti)(a¢ti)=åli(a¢ti)£ål1(a¢ti)=l1å(a¢ti)2
'ii
2
2
i=1
i=1
i=1
i=1
i=1
ppppp
=l1åa¢titi'a=l1a¢(åtiti')a=l1a¢TT¢a=l1a¢a=l1
i=1
i=1
pp
备注:
æt11ççt21
TT¢=ç
Mççtp1è
备注完毕。
t12t22Mtp2
Lt1pöæt11
֍
Lt2p֍t12LM֍M
÷ççLtpp÷øèt1p
t21
t22Mt2p
æt1'öLtp1ö
ç÷÷'
÷p'çt2Ltp2÷
=(t1,t2,L,tp)ç÷=åtiti
LM÷çM÷i=1÷
çt'÷Ltpp÷øèpø
即第一主成分方差的上确界为l1。 当取a=t1时,有
t1'St1=t1'(l1t1)=l1(t1't1)=l1
或
p
p
(7.2.4)
tSt1=åltttt=åli(tt)(tt)=åli(t1'ti)2
'
1
''i1ii1
'1i
'1i
i=1
i=1
i=1
p
=l1(t1't1)2+l2(t1't2)2+L+lp(t1'tp)2=l1+0=l1
所以,y1=t1'x就是所求的第一主成分,它的方差具有最大值l1。
如果第一主成分所含信息不够多,还不足以代表原始的p个变量,则需考虑使用y2,为了使y2所含的信息与y1不重叠,应要求
cov(y1,y2)=0
(7.25)
'
于是,我们在约束条件(7.2.2)式和(7.2.5)式下寻求向量a2,使V(y2)=a2Sa2达到最
大,所求的y2称为第二主成分。类似地,我们可以再定义第三主成分、…、第p主成分。一般来说,x的第i主成分yi=ai'x是指:在约束条件(7.2.2)和
cov(yk,yi)=0,k=1,2,L,i-1
(7.2.6)
下寻求ai,使得V(yi)=ai'Sai达到最大。
现在我们来求p维单位向量a,使得y2=a¢x为第二主成分。由(7.2.6)式知
cov(y1,y2)=cov(y2,y1)
=cov(a¢x,t1'x)=a¢cov(x,x)t1=a¢St1=a¢(l1t1)=l1a¢t1=0
由于l1¹0,所以a¢t1=0,即a与t1正交。 从而
V(y2)=a¢Sa
=åli(a¢ti)2
i=1pp
=åli(a¢ti)2
i=2
£l2å(a¢ti)2
i=2p
p
=l2å(a¢ti)2
i=1p
=l2åa¢tia¢ti
i=1p
=l2åa¢titia¢
i=1
=l2a¢(åtiti')a
i=1
p
=l2a¢TT¢a=l2a¢a=l2
故若取a=t2,则有
'''t2St2=t2t2)=l2 (l2t2)=l2(t2
(7.2.7)
'
所以,y2=t2x就是所求的第二主成分,具有方差l2。一般地,我们可求得第i主成分为
yi=ti'x,它具有方差li,i=1,2,L,p。
二、主成分的性质
1. 主成分的均值和协方差矩阵 记
æy1öæl1ç÷çyç2÷çy=ç÷,u=E(y),L=ç
Mç÷ç
ç0çyp÷
èèø
由于
l2
0ö
÷÷÷ L
÷lp÷ø
(7.2.8)
y=T¢x
故主成分的均值为
u=E(y)=E(T¢x)=T¢m
协方差矩阵为
(7.2.9)
V(y)=V(T¢x)=T¢V(x)T=T¢ST=L
2. 主成分的总方差
由于tr(L)=tr(T¢ST)=tr(ST¢T)=tr(S), 备注:
若A,B均为方阵,则tr(AB)=tr(BA)。 备注完毕。
所以
(7.2.10)
ål=ås
ii=1
i=1
pp
ii
(7.2.11)
或
åV(y)=åV(x)
i
i
i=1
i=1
pp
(7.2.11)¢
由此可以看出,主成分分析把p个原始变量x1,x2,L,xp的总方差tr(S)分解成了p个不相关的变量y1,y2,L,yp的方差之和
ål
i=1
p
i
。主成分分析的目的就是为了减少变量的个数,一
般是不会使用所有p个主成分的,忽略一些带有较小方差的主成分将不会给总方差带来大的影响。我们称
lk
ål
i=1
p
i
为主成分yk的贡献率;第一主成分的贡献率最大,这表明y1=t1'x综合原始变量
x1,x2,L,xp的能力最强,而y2,y3,L,yp的综合能力依次递减。若只取m(m
主成分,则称
m
ålål
i=1i=1p
i
i
累计贡献率表明y1,y2,L,ym综合x1,x2,L,xp的能为主成分y1,y2,L,ym的累计贡献率,
力。通常取m,使得累计贡献率达到一个较高的百分数(如85%)以上。
3. 变量xi与主成分yj之间的相关系数
变量xi与主成分yj之间的相关系数的计算公式为
r(xi,yj)=
由(7.2.8)式知
cov(xi,yj)(xi)(yj)
=
cov(xi,yj)
iilj
(7.2.12)
x=Ty
(7.2.13)
若记T=(tij),则
xi=ti1y1+ti2y2+L+tipyp
所以
(7.2.13)¢
cov(xi,yj)=cov(tijyj,yj)=tijlj
代入(7.2.12)式得
r(xi,yj)=
即
cov(xi,yj)
iijjii
=
tijlj
iilj
=
ljii
tij
(7.2.14)
r(xi,yj)=tij
(7.2.14)
所有这些相关系数列于表7.1中。在实际应用中,通常我们只对xi(i=1,2,L,p)与
yj(j=1,2,L,m)的相关系数感兴趣,因此往往只列出表7.1的前m列,即形成p´m表。
表7.1 变量xi与主成分yj之间的相关系数
4. m前面提到的累计贡献率这个概念度量了主成分y1,y2,L,ym从原始变量x1,x2,L,xp
中提取信息的多少,那么,y1,y2,L,ym包含有xi(i=1,2,L,p)的多少信息应该用什么指标来度量呢?这个指标就是xi与y1,y2,L,ym的复相关系数的平方,称为m个主成分
y1,y2,L,ym对原始变量xi的贡献率,记为ri2×1Lm。易知,
0öæV(y1)
֍
O(cov(xi,y1),L,cov(xi,ym))ç÷
ç0V(ym)÷øè
V(xi)
-1
ri2×1Lm=
æcov(xi,y1)ö
֍
M֍
çcov(x,y)÷
imøè
ær(xi,y1)ö
ç÷
=(r(xi,y1),L,r(xi,ym))çM÷
çr(x,y)÷
imøè=år2(xi,yj)
j=1mm
=å
j=1
ljsiiljsii
2
tij
即
r
2i×1Lm
=å
j=1
m
2 tij
(7.2.15)
这些值列于表7.2中。
表7.2 m个主成分对原始变量的贡献率
由(7.2.13)¢式知,y1,y2,L,yp对xi的贡献率ri×1Lp=1。另外,下式也可证明:
2
r
2
i×1Lp
=år(xi,yj)=å
2
j=1
pp
lj
j=1sii
2tij=
ålt
j=1
p
2
jij
sii
=
V(xi)sii
==1 siisii
(7.2.16)
备注:
事实上,因为xi=ti1y1+ti2y2+L+tipyp,所以,
2 V(xi)=V(ti1y1+ti2y2+L+tipyp)=åljtij
j=1p
另外,
år
i=1
p
2
(xi,yj)sii=å(
i=1
p
ljsii
2
=lj t×sii)=ålt=ljåtij2
ij
2jiji=1
i=1
pp
备注完毕。
三、载荷矩阵
x=Ty可以表达为
æx1öæt11ç÷ççx2÷çt21çM÷=çMç÷ççxp÷çtp1èøè
t12t22Mtp2
Lt1pöæy1ö
÷ç÷
Lt2p÷çy2÷
OM÷çM÷
÷ç÷ç÷Ltpp÷øèypø
可见,x的每一分量均可表示成主成分y1,y2,L,yp的线性组合。如果我们选取前m个主成分,并记
ˆöættæx
ç1÷ç1112ˆ2÷çt21t22çx
çM÷=çMMç÷ççx÷ç
èˆpøètp1tp2
则有
Lt1möæy1ö
÷ç÷
Lt2m÷çy2÷
OM÷çM÷
÷ç÷ç÷Ltpm÷øèymø
(7.2.17)
æx1öæt11ç÷ççx2÷çt21çM÷=çMç÷ççxp÷çtp1èøè
æt11ççt21»ç
Mççtèp1
t12t22Mtp2t12t22Mtp2
Lt1möæy1öæt1,m+1
֍֍
Lt2m֍y2֍t2,m+1
+
OM֍M֍M
÷ç÷çç÷çLtpm÷øèymøètp,m+1
ˆöLt1möæy1öæx
÷ç÷ç1÷
ˆ2÷Lt2m÷çy2÷çx=
OM÷çM÷çM÷
÷ç÷ç÷ç÷çˆ÷Ltpm÷pøøèymøèx
t1,m+2
t2,m2Mtp,m+2
Lt1pöæym+1ö
÷÷ç
Lt2p÷çym+2÷
÷OM÷çM
÷÷ç÷çLtppøèyp÷ø
即x的每一个分量xi均可近似地表示为前m个主成分y1,y2,L,ym的线性组合。由前面知
y1,y2,L,yp是不相关的,且xi=ti1y1+ti2y2+L+tipyp,即
2
V(xi)=V(ti1y1+ti2y2+L+tipyp)=åljtij
j=1p
(7.2.19)
和
2
V(xi)=V(ti1y1+ti2y2+L+timym)=åljtij
j=1m
(7.2.20)
ˆi去代替xi时,xˆi一般能说明xi方差的大部比较(7.2.19)与(7.2.20)两式,可以看出用x
分,所占比例为
m
ålt
j=1p
2
jij
2jij
(7.2.21)
ålt
j=1
可见,lj(j=1,2,L,m)相对越大,上述比值一般就越大,说明用m个主成分
y1,y2,L,ym来综合反映原始变量x1,x2,L,xp的效果也就越好。另一方面这个比值也取决
于tij,我们称tij为第i个原始变量xi在第j个主成分yj的载荷,而称由矩阵T的前m列组成的p´m矩阵为主成分的载荷矩阵,记为A,即
æt11
ççt21A=ç
Mççtèp1
即
t12t22Mtp2
Lt1mö
÷
Lt2m÷
OM÷
÷
Ltpm÷ø
ˆöætæx
ç1÷ç11ˆ2÷çt21çx
ˆ=ç÷=çx
MM
ç÷ççx÷çèˆpøètp1
t12t22Mtp2
Lt1möæy1ö
÷ç÷
Lt2m÷çy2÷~=Ay OM÷çM÷
÷ç÷ç÷Ltpm÷øèymø
我们来分析一下载荷矩阵A中元素tij代表的意义。A中的第j列反映了主成分yj对原始变量x各分量的作用。如果A中出现了一列中只有一个非零元素,不妨设第1列为
æ1ö
ç÷ç0÷çM÷ ç÷ç0÷èø
这时
ˆ1öæ1t12æx
ç÷ç
ˆ2÷ç0t22çx
çM÷=çMMç÷ççx÷ç
èˆpøè0tp2
即
Lt1möæy1ö
÷ç÷
Lt2m÷çy2÷
OM÷çM÷
÷ç÷ç÷Ltpm÷øèymø
ˆ1=y1+t12y2+L+t1mym x
ˆ2=0+t22y2+L+t2mym x
…
ˆp=0+tp2y2+L+tpmym x
则表明第一主成分只对原始变量x1有作用,而对其它的原始变量x2,x3,L,xp都不起作用;如果A中某一列的元素均不为零,则表明这一列相应的主成分对各原始变量x1,x2,L,xp都起作用。因此我们把前一种主成分称为特殊成分,而把后一种主成分称为公共成分。由此
可见,载荷矩阵的具体形式可供我们分析每一主成分对诸原始变量的贡献。所以,在主成分分析中,在求出主成分的同时,还应求出载荷矩阵。
在实际应用中,一般先对m个主成分y1,y2,L,ym的方差施行标准化,然后再求出主成分的载荷矩阵。即令
æç
æf1öçç÷ççf2÷çf=ç÷=
çM
ç÷ççf÷èmøç
çè
1
l10M0
01l2M0
LLLO
ö0÷
÷æy1ö÷ç÷0÷çy2÷
÷çM÷
÷M÷ççy÷
1÷èmø÷lmø
于是
æç1
01
çL0ö
÷æl0L0ö÷ç
1÷ç1÷1
æy1V(f)=ç
00çlL0÷çö÷ç÷çyç2÷01
÷÷
=Im ç÷V
çM÷ç
֍
çMM2Oç0
1M÷ç÷çèy÷ç
møç
MlLM2
O1M÷÷÷è
L
l÷
ç0
L
møè
÷mø
备注:
V(Ax)=AV(x)A¢
备注完毕。
æçy1öæl10L0öy=çy÷ç0l0÷æf1öç2÷çL÷ç÷ççM
÷=ç
֍MM2OM
÷çfç2÷÷ èym÷øçè
00
L
÷lçm÷øçM÷èfm÷ø所以,由(7.2.17)式得
æçx
ˆ1öætt12Lt1möæyx
ˆ=çx
ˆ÷ç11tç2÷çt2122MLt÷ç1ö
÷
2mO÷çy2ççM
÷=÷ççMèxˆp÷øçètp1tp2
LM÷t÷ç÷çM÷
pm÷øç÷èym÷ø
æçt11t12
Lt1möæ0=çttL0öç
2122lççMMLt÷ç
1
2m÷÷ç0O2ètp1tML0÷æ÷çf1öçf÷2÷Op2
LMt֍
çpm÷øçMè0
L
÷ç÷ ÷lçm÷øçM÷
èfm÷ø
=Bf
其中
æt11ççt21B=ç
Mççtp1è
t12t22Mtp2
Lt1möæ
֍
Lt2m֍OM֍
÷ççLtpm÷øèt12l2
t22l2
tp2l2
l10M0
l2M0ö÷÷÷÷÷ø
LLOL
0ö÷0÷÷M÷m÷ø
æt11l1
ç
çtl=ç211ççtlèp11æb11b12ç
çb21b22=ç
MMççb
èp1bp2
即
Lt1mlmLt2mlmOLtpmm
Lb1mö
÷
Lb2m÷OM÷
÷
Lbpm÷ø
B=(bij)p´m,且bij=tijlj
ˆi的方差可表示为 这是用标准化的主成分近似表示原始变量x1,x2,L,xp的公式。此时x
2
ˆi)=åbij,i=1,2,L,p V(x
j=1m
(7.2.24)
称B为标准化主成分f的载荷矩阵。
如果对标准化的主成分施行一个正交变换,即令
æf1öæh1ö
ç÷ç÷
çf÷çh÷
h=ç2÷=G¢ç2÷=G¢f
MM
ç÷ç÷
çf÷çh÷
èmøèmø
其中G为一个正交矩阵,则有
(7.2.25)
V(h)=V(G¢f)=G¢V(f)G=G¢ImG=G¢G=Im
ˆ也可用h来表示,即有 故h仍然是标准化的主成分。又f=Gh,因此x
ˆ=Bf=BGh=Ch x
(7.2.26)
其中C=BG=(cij)为标准化主成分h的载荷矩阵。与(7.2.24)式同样的道理,有
2
ˆi)=åcijV(x,i=1,2,L,p
j=1m
(7.2.27)
故
åb
j=1
m
2ij
2
=åcij,i=1,2,L,p j=1
m
(7.2.28)
ˆ的方差及其表达形式都是不变的。这种不变的性这表明标准化的主成分经过正交变换后,x
质在很大程度上允许我们寻求这样标准化主成分的正交变换,使得变换后的载荷矩阵具有更鲜明的实际意义。
四、从相关矩阵出发求主成分
我们前面讨论的主成分是从协方差矩阵S出发求得的,其结果受原始p个变量单位的
影响。不同的变量往往有不同的单位,对同一变量使用不同的单位会产生不同的主成分,主成分会过于照顾方差(sii)大的变量xi,而对方差小的变量却照顾得不够。为使主成分分析能够均等地对待每一个原始变量,消除由于单位的不同而可能带来的一些不合理影响,常常将各原始变量作标准化处理,即令
xi*=
显然,
xi-E(xi)(xi)
,i=1,2,L,p
(7.2.29)
*æx1öç÷*÷çx2*
x=ç÷的协方差矩阵就是x的相关矩阵R。
çM÷çx*÷èpø
从R出发求得主成分的方法与从S出发是完全类似的,并且主成分的一些性质具有更简洁的数学形式。首先对R进行谱分解,即存在正交矩阵T=(t1,t2,L,tp)=(tij),使得
*
*
*
*
*
R=TLT
这里
*æl1çç0*
L=ç
çMç0è
**
¢
**¢=ål*tiiti i=1
p
(7.2.30)
0L0ö÷*
l2L0÷
÷,
MOM÷0Ll*p÷ø
********
l*由此得到p个主成分y1=t1x,y2=t2x,…,1³l2³L³lp³0为R的p个特征值。**y*p=tpx。记
æy1*ö
ç÷*çy2÷*
y=ç÷
çM÷çy*÷èpø
是
y*=T*¢x*
(7.2.31)
上述主成分具有的性质可概括如下: (1) E(y*)=0,V(y*)=L*
p
(2)
ål
*i
=p
i=1
(3) 变量x*
*
*
*
i与主成分yj之间的相关系数为r(xi,yj)=l*t*jij
(4)主成分
æçy*1ö
y*=ç*÷mmçy2÷÷对变量x*
22****2çi的贡献率为ri×12Lm=år(xi,yj)=ålçM÷
jtij
j=1j=1èy*m÷ø
p(5)år2
(x*,y*p
)=ål**2
i
j
jtij=1
j=1
j=1
于