当前位置:文档之家› 主成分分析和MATLAB应用

主成分分析和MATLAB应用

主成分分析类型:一种处理高维数据的方法。

降维思想:在实际问题的研究中,往往会涉及众多有关的变量。

但是,变量太多不但会增加计算的复杂性,而且也会给合理地分析问题和解释问题带来困难。

一般说来,虽然每个变量都提供了一定的信息,但其重要性有所不同,而在很多情况下,变量间有一定的相关性,从而使得这些变量所提供的信息在一定程度上有所重叠。

因而人们希望对这些变量加以“改造”,用为数极少的互补相关的新变量来反映原变量所提供的绝大部分信息,通过对新变量的分析达到解决问题的目的。

一、总体主成分1.1 定义设 X 1,X 2,…,X p 为某实际问题所涉及的 p 个随机变量。

记 X=(X 1,X 2,…,Xp)T ,其协方差矩阵为()[(())(())],T ij p p E X E X X E X σ⨯∑==--它是一个 p 阶非负定矩阵。

设1111112212221122221122Tp p Tp pT pp p p pp p Y l X l X l X l X Y l X l X l X l X Y l X l X l X l X⎧==+++⎪==+++⎪⎨⎪⎪==+++⎩ (1) 则有()(),1,2,...,,(,)(,),1,2,...,.T T i i i i TT T i j ijij Var Y Var l X l l i p Cov Y Y Cov l X l X l l j p ==∑===∑= (2)第 i 个主成分: 一般地,在约束条件1T i i l l =及(,)0,1,2,..., 1.T i k i k Cov Y Y l l k i =∑==-下,求 l i 使 Var(Y i )达到最大,由此 l i 所确定的T i i Y l X =称为 X 1,X 2,…,X p 的第 i 个主成分。

1.2 总体主成分的计算设 ∑是12(,,...,)T p X X X X =的协方差矩阵,∑的特征值及相应的正交单位化特征向量分别为120p λλλ≥≥≥≥及12,,...,,p e e e则 X 的第 i 个主成分为1122,1,2,...,,T i i i i ip p Y e X e X e X e X i p ==+++= (3)此时(),1,2,...,,(,)0,.Ti i i i Ti k i k Var Y e e i p Cov Y Y e e i k λ⎧=∑==⎪⎨=∑=≠⎪⎩ 1.3 总体主成分的性质1.3.1 主成分的协方差矩阵及总方差记 12(,,...,)T p Y Y Y Y = 为主成分向量,则 Y=P T X ,其中12(,,...,)p P e e e =,且12()()(,,...,),T T p Cov Y Cov P X P P Diag λλλ==∑=Λ=由此得主成分的总方差为111()()()()(),p ppTTiii i i i Var Y tr P P tr PP tr Var X λ=====∑=∑=∑=∑∑∑即主成分分析是把 p 个原始变量 X 1,X 2,…,X p 的总方差1()pii Var X =∑分解成 p 个互不相关变量 Y 1,Y 2,…,Y p 的方差之和,即1()pii Var Y =∑而 ()k k Var Y λ=。

第 k 个主成分的贡献率:1ipii λλ=∑;前m 个主成分累计贡献率:11mii pii λλ==∑∑,它表明前 m 个主成分Y 1,Y 2,…,Y m 综合提供 X 1,X 2,…,X p 中信息的能力。

1.3.2 主成分 Y i 与变量 X j 的相关系数 由于 Y=P T X ,故 X=PY ,从而1122,(,).j j j pj p i j i ij X e Y e Y e Y Cov Y X e λ=+++=由此可得 Y i 与 X j 的相关系数为,(,)ijY X ij Cov Y X e λρ===(4)1.4 标准化变量的主成分在实际问题中,不同的变量往往有不同的量纲,由于不同的量纲会引起各变量取值的分散程度差异较大,这时总体方差则主要受方差较大的变量的控制。

为了消除由于量纲的不同可能带来的影响,常采用变量标准化的方法,即令*,1,2,...,,i X i p == (5)其中 (),().i i ii i E X Var X μσ== 这时****12(,,...,)Tp X X X X =的协方差矩阵便是12(,,...,)T p X X X X =的相关矩阵 ()ij p p ρρ⨯=,其中**(,)().ij i jCov X X E X X ρ==(6)利用 X 的相关矩阵 ρ 作主成分分析,有如下结论:设 ****12(,,...,)Tp X X X X =为标准化的随机向量,其协方差矩阵(即 X 的相关矩阵)为ρ ,则 *X 的第 i 个主成分为******12(),1,2,...,.p Ti ii i ipX Y e X eeei p μ-==+++= (7)并且***111()(),pppii i i i i Var YVar X p λ======∑∑∑ (8)其中 ***120p λλλ≥≥≥≥为 ρ的特征值,****12(,,...,)Ti i i ip ee e e =为相应于特征值 *i λ的正交单位特征向量。

第 i 个主成分的贡献率:*i pλ;前 m 个主成分的累计贡献率:*1mii pλ=∑;*i Y 与*i X 的相关系数为 ***,ijij Y X ρ=。

二、样本主成分前面讨论的是总体主成分,但在实际问题中,一般 ∑(或ρ)是未知的,需要通过样本来估计。

设12(,,...,),1,2,...,.T i i i ip x x x x i n ==为取自12(,,...,)T p X X X X =的一个容量为n 的简单随机样本,则样本协方差矩阵及样本相关矩阵分别为11()()(),1(),n T ij p p k k k ij p pS s x x x x n sR r ⨯=⨯==---⎛⎫== ⎝∑ (9)其中12111(,,...,),,1,2,...,,1()(),,1,2,...,.1nTp j ij i nij kii kj j k x x x x x x j p n s x x x x i j p n ======--=-∑∑分别以 S 和 R 作为 ∑和ρ的估计,然后按总体主成分分析的方法作样本主成分分析。

三、 例 题某市为了全面分析机械类个企业的经济效益,选择了8个不同的利润指标,14企业关于这8个指标的统计数据如下表所示,试进行主成分分析。

解:样本均值向量为:(27.97910.9509.1008.54311.06414.6141.55214.686)T x =,样本协方差矩阵为:168.33360.35745.75741.21557.90671.6728.602101.62037.20716.82515.50523.53529.029 4.78544.02324.84324.33536.47849.278 3.62939.41024.42336.28349.146 3.67538.71856.04675.404 5.00259.723103.018 6.82174.5231.1S =37 6.722102.707⎡⎤⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎣⎦168.3360.35745.75841.21657.90671.6728.602101.6260.35737.20716.82515.50523.53529.0294.784644.02345.75816.82524.84324.33536.47849.2783.62939.4141.21615.50524.33524.42336.28349.1463.674738.71857.90623.S =53536.47836.28356.04675.4045.002259.72371.67229.02949.27849.14675.404103.026.821574.5238.602 4.78463.629 3.67475.00226.82151.137 6.7217101.6244.02339.4138.71859.72374.5236.7217102.71⎡⎤⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎢⎢⎢⎢⎣⎦⎥⎥⎥⎥⎥ 由于S 中主对角线元素差异较大,因此我们样本相关矩阵R 出发进行主成分分析。

样本相关矩阵R 为:1 0.76266 0.70758 0.64281 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 R = 1 0.98071 0.97980.69735 0.77306 1 0.992350.62663 0.78718 10.6303 0.72449 1 0.62202 1⎡⎤⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎣⎦前 前3个标准化样本主成分中各标准化变量 *(1,2,...,8)i x x i ==前的系数即为对应特征向量,由此得到3个标准化样本主成分为********112345678********212345678*310.32113x +0.29516x +0.38912x +0.38472x +0.37955x +0.37087x +0.31996x +0.35546x -0.4151x -0.59766x +0.22974x +0.27869x +0.31632x +0.37151x -0.27814x -0.15684x -0.45123x +0.103y y y ===*******234567803x -0.039895x +0.053874x -0.037292x +0.075186x +0.77059x -0.42478x ⎧⎪⎨⎪⎩注意到,y 1近似是8个标准化变量*(1,2,...,8)i x x i ==的等权重之和,是反映各企业总效应大小的综合指标,y 1的值越大,则企业的效益越好。

由于y 1的贡献率高达76.708%,故若用y1的得分值对各企业进行排序,能从整体上反映企业之间的效应差别。

将S中sii 的值及x中各ix的值以及各企业关于xi 的观测值代入y1的表达式中,可求得各企业y1的得分及其按其得分由大到小的排序结果。

所以,第9家企业的效益最好,第12家企业的效益最差。

Matlab程序:[coeff,score,latent]=princomp(X) 注:该函数使用协方差阵作主成分分析。

相关主题