主成分分析
类型:一种处理高维数据的方法。
降维思想:在实际问题的研究中,往往会涉及众多有关的变量。但是,变量太多不但会增加计算的复杂性,而且也会给合理地分析问题和解释问题带来困难。一般说来,虽然每个变量都提供了一定的信息,但其重要性有所不同,而在很多情况下,变量间有一定的相关性,从而使得这些变量所提供的信息在一定程度上有所重叠。因而人们希望对这些变量加以“改造”,用为数极少的互补相关的新变量来反映原变量所提供的绝大部分信息,通过对新变量的分析达到解决问题的目的。
一、总体主成分
1.1 定义
设 X1,X2,…,Xp 为某实际问题所涉及的 p 个随机变量。记 X=(X1,X2,…,Xp)T,其协方差矩阵为
(ij)ppE[(XE(X))(XE(X))T],
它是一个 p 阶非负定矩阵。设
TY1l1Xl11X1l12X2l1pXpTY2l2Xl21X1l22X2l2pXp (1) YlTXlXlXlXpp11p22pppp则有
Var(Yi)Var(liTX)liTli,i1,2,...,p,Cov(Yi,Yj)Cov(lX,lX)llj,j1,2,...,p.TiTjTi (2)
第 i 个主成分: 一般地,在约束条件
liTli1
及
Cov(Yi,Yk)liTlk0,k1,2,...,i1.
下,求 li 使 Var(Yi)达到最大,由此 li 所确定的
YiliTX
称为 X1,X2,…,Xp 的第 i 个主成分。 1.2 总体主成分的计算
设 是X(X1,X2,...,Xp)T的协方差矩阵,的特征值及相应的正交单位化特征向量分别为
12p0
及
e1,e2,...,ep,
则 X 的第 i 个主成分为
YieiTXei1X1ei2X2eipXp,i1,2,...,p, (3)
此时
TVar(Yi)eieii,i1,2,...,p, TCov(Yi,Yk)eiek0,ik.1.3 总体主成分的性质
1.3.1 主成分的协方差矩阵及总方差
记 Y(Y1,Y2,...,Yp)T 为主成分向量,则 Y=PTX,其中P(e1,e2,...,ep),且
Cov(Y)Cov(PTX)PTPDiag(1,2,...,p),
由此得主成分的总方差为
Var(Y)ii1i1ppitr(PP)tr(PP)tr()Var(Xi),
TTi1p即主成分分析是把 p 个原始变量 X1,X2,…,Xp 的总方差
Var(X)
ii1p分解成 p 个互不相关变量 Y1,Y2,…,Yp的方差之和,即
Var(Y)
ii1p而 Var(Yk)k。
第 k 个主成分的贡献率:
ip;
ii1m前m个主成分累计贡献率:
i1i1pi,它表明前 m 个主成分Y1,Y2,…,
iYm综合提供 X1,X2,…,Xp中信息的能力。 1.3.2 主成分 Yi 与变量 Xj 的相关系数 由于 Y=PTX,故 X=PY,从而
Xje1jY1e2jY2Cov(Yi,Xj)ieij.epjYp,
由此可得 Yi 与 Xj 的相关系数为
Y,XijCov(Yi,Xj)Var(Yi)Var(Xj)ieijijjijjeij (4)
1.4 标准化变量的主成分
在实际问题中,不同的变量往往有不同的量纲,由于不同的量纲会引起各变量取值的分散程度差异较大,这时总体方差则主要受方差较大的变量的控制。为了消除由于量纲的不同可能带来的影响,常采用变量标准化的方法,即令
Xi*Xiiii,i1,2,...,p, (5)
其中 iE(Xi),iiVar(Xi). 这时
**T X*(X1,X2,...,X*)p的协方差矩阵便是
X(X1,X2,...,Xp)T
的相关矩阵 (ij)pp,其中
ijE(XX)*i*jCov(Xi,Xj)iijj. (6)
利用 X 的相关矩阵 作主成分分析,有如下结论:
*T设 X*(X1*,X2,...,X*p)为标准化的随机向量,其协方差矩阵(即 X 的相关
矩阵)为 ,则 X*的第 i 个主成分为
Yi*(ei*)TX*ei*1X1111ei*2X2222*eipXpppp,i1,2,...,p. (7)
并且
Var(Yi1p*i)Var(Xi*)p, (8)
*ii1i1pp其中 1*2*****T*p0为 的特征值,ei(ei1,ei2,...,eip)为相应于特征值
i*的正交单位特征向量。
i*第 i 个主成分的贡献率:;
p前 m 个主成分的累计贡献率:i1pm*i;
*Yi*与Xi*的相关系数为 Y*,X*i*eij。
ij
二、样本主成分
前面讨论的是总体主成分,但在实际问题中,一般 (或)是未知的,需要通过样本来估计。设
xi(xi1,xi2,...,xip)T,i1,2,...,n.
为取自
X(X1,X2,...,Xp)T
的一个容量为n的简单随机样本,则样本协方差矩阵及样本相关矩阵分别为
S(sij)ppR(rij)pp1n(xkx)(xkx)T,n1k1sijsiisjj, (9)
其中
1nx(x1,x2,...,xp),xjxij,j1,2,...,p,ni1Tsij1(xxi)(xkjxj),i,j1,2,...,p.n1k1kin
分别以 S 和 R 作为 和的估计,然后按总体主成分分析的方法作样本主成分分析。
三、 例 题
某市为了全面分析机械类个企业的经济效益,选择了8个不同的利润指标,14企业关于这8个指标的统计数据如下表所示,试进行主成分分析。
表1 14家企业的利润指标的统计数据
变量 企业序号 1 2 3 4 5 6 7 8 9 10 11 12 13 14 净产值利固定资产润率(%) 利润率(%) xi1 xi2 总产值利销售收入润率(%) 利润率(%) xi2 xi3 产品成本利润率(%) xi5 物耗利润率(%) xi6 人均利润率 xi7(千元/人) 流动资金利润率(%) xi8 40.4 25.0 13.2 22.3 34.3 35.6 22.0 48.4 40.6 24.8 12.5 1.8 32.3 38.5 24.7 12.7 3.3 6.7 11.8 12.5 7.8 13.4 19.1 8.0 9.7 0.6 13.9 9.1 7.2 11.2 3.9 5.6 7.1 16.4 9.9 10.9 19.8 9.8 4.2 0.7 9.4 11.3 6.1 11.0 4.3 3.7 7.1 16.7 10.2 9.9 19.0 8.9 4.2 0.7 8.3 9.5 8.3 12.9 4.4 6.0 8.0 22.8 12.6 10.9 29.7 11.9 4.6 0.8 9.8 12.2 8.7 20.2 5.5 7.4 8.9 29.3 17.6 13.9 39.6 16.2 6.5 1.1 13.3 16.4 2.442 3.542 0.578 0.176 1.726 3.017 0.847 1.772 2.449 0.7 0.874 0.056 2.126 1.327 20.0 9.1 3.6 7.3 27.5 26.6 10.6 17.8 35.8 13.7 3.9 1.0 17.1 11.6
解:样本均值向量为:
x(27.97910.9509.1008.54311.014.6141.55214.686)T,
样本协方差矩阵为:
168.33360.35745.75741.21557.90671.6728.602101.62037.20716.82515.50523.53529.0294.78544.02324.84324.33536.47849.2783.62939.41024.42336.28349.1463.67538.718 S56.04675.4045.00259.723103.0186.82174.5231.1376.722102.707168.3360.35745.75841.21657.90671.6728.602101.6260.35737.20716.82515.50523.53529.0294.7844.02345.75816.82524.84324.33536.47849.2783.62939.4141.21615.50524.33524.42336.28349.1463.674738.718 S57.90623.53536.47836.28356.04675.4045.002259.72371.67229.02949.27849.14675.404103.026.821574.5238.6024.78463.6293.67475.00226.82151.1376.7217101.6244.02339.4138.71859.72374.5236.7217102.71由于S中主对角线元素差异较大,因此我们样本相关矩阵R出发进行主成分分析。样本相关矩阵R为:
1 0.76266 0.70758 0.281 0.59617 0.54426 0.62178 0.772851 0.553410.51434 0.51538 0.468880.73562 0.7121410.98793 0.9776 0.974090.68282 0.78019 1 0.98071 0.97980.69735 0.77306 R 1 0.992350.62663 0.78718 10.6303 0.72449 1 0.62202 1矩阵R的特征值及相应的特征向量分别为:
特征值 6.1366 1.0421 0.43595 0.22037 0.15191 0.0088274 特征向量 0.32113 0.29516 0.312 0.38472 0.37955 0.37087 0.31996 0.35546 -0.4151 -0.59766 0.22974 0.27869 0.31632 0.37151 -0.27814 -0.15684 -0.45123 0.10303 -0.0395 0.053874 -0.037292 0.075186 0.77059 -0.42478 -0.66817 0.36336 -0.22596 -0.11081 0.14874 0.069353 -0.13495 0.55949 -0.038217 0.62435 0.12273 -0.036909 0.15928 0.21062 -0.43006 -0.58105 -0.10167 0.13584 -0.15811 0.86226 -0.25204 -0.34506 -0.13934 -0.026557 0.0029624 0.1596 -0.061134 -0.53966 0.046606 0.7609 -0.27809 0.06203 -0.13126 0.0012238 0.19295 -0.031987 -0.176 0.11002 -0.25397 0.68791 -0.006045 -0.0054031
R的特征值及贡献率见下表
特征值 贡献率(%) 累计贡献率(%) 6.1366 1.0421 0.43595 0.22037 0.15191 0.0088274 0.0029624 0.0012238 0.76708 0.13027 0.054494 0.027547 0.0188 0.0011034 0.0003703 0.00015297 0.76708 0.734 0.95184 0.97938 0.99837 0.99948 0.99985 1 前3个标准化样本主成分类及贡献率已达到95.184%,故只需取前三个主成分即可。
前3个标准化样本主成分中各标准化变量 xi*xixisii(i1,2,...,8)前的
系数即为对应特征向量,由此得到3个标准化样本主成分为
*******y10.32113x1+0.29516x*2+0.312x3+0.38472x4+0.37955x5+0.37087x6+0.31996x7+0.35546x8********y2-0.4151x1-0.59766x2+0.22974x3+0.27869x4+0.31632x5+0.37151x6-0.27814x7-0.15684x8********y3-0.45123x1+0.10303x2-0.0395x3+0.053874x4-0.037292x5+0.075186x6+0.77059x7-0.42478x8
注意到,y1近似是8个标准化变量xi*xixisii(i1,2,...,8)的等权重之和,是
反映各企业总效应大小的综合指标,y1的值越大,则企业的效益越好。由于y1的贡献率高达76.708%,故若用y1的得分值对各企业进行排序,能从整体上反映企业之间的效应差别。将S中sii的值及x中各xi的值以及各
企业关于xi的观测值代入y1的表达式中,可求得各企业y1的得分及其按其得分由大到小的排序结果。
企业序号 12 4 3 11 10 7 14 5 8 13 1 2 6 9
所以,第9家企业的效益最好,
第12家企业的效益最差。
Matlab程序:[coeff,score,latent]=princomp(X) 注:该函数使用协方差阵作主成分分析。
得分 -0.97354 -0.856 -0.62743 -0.48558 -0.21949 -0.1 -0.004803 0.016879 0.17711 0.125 0.29351 0.65315 0.85566 0.96285