主成分分析的理论和应用1主成分分析及主成分回归的基本思想主成分分析是把各变量之间互相关联的复杂关系进行简化分析的方法。由于多个变量之间往往存在着一定程度的相关性。人们自然希望通过线性组合的方式,从这些指标中尽可能快的提取信息。当第一个线性组合不能提取更多的信息时,再考虑用第二个线性组合继续这个快速提取过程,直到所提取的信息与原指标相差不多时为止。主成分分析试图在力保数据信息丢失最少的原则下,对这种多变量的截面数据表进行最佳综合简化,也就是说,对高维变量空间进行降维处理。很显然,识辨系统在一个低维空间要比在一个高维空间容易得多。主成分回归是在主成分分析法的基础上,由1m个自变量选出前q个主成分,他们是互不相关的;在保持因变量不变,用这q个主成分作为自变量作回归;最后把所得的结果作变量代换,转化成原来因变量与自变量的关系。2数学模型与几何解释主成分分析的数学模型是,设p个变量构成p维随机向量为12,,...,pXXX。对X作正交变换,令TYTX,其中T为正交阵,要求Y的各分量是不相关的,并且Y的第一个方差是最大的,第二个分量的方差次之,……。为了保持信息不丢失,Y的各分量方差与X的各分量方差和相等。其数学推导为:设12,,,TpXXXX为一个p维随机向量,并假定存在二阶矩,其均值向量与协方差分别记为(),()EXDX考虑如下的线性变换11112121...ppYtXtXtX21212222...ppYtXtXtX……1122...ppppppYtXtXtX用矩阵表示为TYTX其中,12,,,TPYYYY;12,,,PTTTT。满足如下条件:每个主成分的系数平方和为1。即||||1iT。主成分之间相互独立,即无重叠信息。即ov,0,,,1,2,...,ijCYYijijp主成分的方差依次递减,重要性依次递减,即12()()()pVarYVarYVarY2.3主成分分析的性质及推导(1)第一主成份的推导:设X的协方差阵为2112122122212pppppxΣ由于Σx为非负定的对称阵,则有利用线性代数的知识可得,必存在正交阵T使得100TpTTXΣ其中12,,,p为X的特征根,不妨假设12p。而T恰好是由特征根相对应的特征向量所组成的正交阵。111212122212(,,)ppppppttttttTttttt1pn12,,,iipiTttti1,2,,iP设有P维正交向量11111...'ppYaXaXaX1211111')(aaaaTTYVarp'11'22'1121',,...,...pppuuauuuaupiiiiatta1''=piiita12)'(piit121)(apiiitt11'aaaa'1TT1当且仅当11at时,即时,有最大的方差1。因为'11()VarYT11xT。如果第一主成分表达的信息不够,则须找第二主成分。(2)第二主成分:因为第一,第二主成分线性无关所以有条件0),cov(21YY,寻找第二主成分。ppXtXtY21122...,因为121111,,,paaaappXtXtY111110'')','cov(),cov(121122121ttttxtxtYY所以0'12tt。则对p维向量2t有piiipiiiittttttttYVar122122222)'(''')(piitt222)'(2piiitttt122''222tTTt''2222'tt2。所以取线性变换ppXtXtXtY22221122,则2Y方差次大。依次类推ppppppppppXtXtXtYXtXtXtYXtXtXtY22112222112212211111矩阵形式为TYTX。2.3.2主成份性质:性质1主成分的协方差矩阵是对角阵。性质2主成分的总方差等于原是变量的总方差。性质3主成分kY与原是变量iX的相关系数为(,)kkikiiiYXt并称之为因子负荷量。性质421(,)pkiiikiYX,(1,2,...kp)。样本主成分性质:1、第k个主成分kY的系数向量是第k个特征根k所对应的标准化特征向量。2、第k个主成分的方差为第k个特征根k,且任意两个主成分都是不相关的,也就是12,,...,pYYY的样本协方差矩阵是对角矩阵3、样本主成分的总方差等于原变量样本的总方差,为p4、第k个样本主成分与第j个变量样本之间的相关系数为:(,)kkikiiiYXt(因子载荷量)。2.4主成分的方差贡献率主成分分析把p个原始变量12,,...,pXXX的总方差()tr分解成了p个相互独立的变量12,,...,pYYY的方差之和1pkk。主成分分析的目的是减少变量的个数,所以一般不会使用所有p个主成分,忽略一些带有较小方差的主成分将不会给总方差带来太大的影响。这里我们称1pkkkk为第k个主成分kY的贡献率。第一主成分的贡献率最大,这表明11'YTX综合原始变量12,,...,pXXX的能力最强,而12,,...,pYYY的综合能力依次递减。若只取m个主成分,则称11pmmkkkk为主成分12,,...,pYYY的累计贡献率,累计贡献率表明12,,...,pYYY综合12,,...,pXXX的能力。通常使得累计贡献率达到一个较高的百分数(如85%以上)。2.5主成分分析的计算步骤(1)由观测数据计算kX,ks及kjt,1,2,...kjm(2)由协方差矩阵T得到特征值j,1,2...jm及各个主成分的方差贡献、贡献率和累计贡献率,并根据累计贡献率确定主成分保留的个数p。(3)写出m个基本方程mmmmmmjmmjmmjXtXtXtXXtXtXtXXtXtXtX22112222112212211111式中,1,2...jm利用施密特正交化方法,对每一个j求他所对应的基本方程组的解12,,...,mXXX,1,2...jm,然后令2kjkkkbXX,从而得到用***12,,...,mXXX所表示的主成分*jkjkkzbX,或将*kkkkXXXs代入后得到用12,,...,mXXX所表示的主成分jkjkjkzbXa。(4)将12,,...,mXXX的观测值带入主成分的表达式中计算各个主成分的值。(5)计算原指标与主成分的相关系数即因子载荷,解释主成分的意义。表1-1是我国16个地区农民在某年支出情况的抽样调查数据的汇总资料,每个地区都调查了反映每人平均生活消费支出情况的六个指标。试对调查资料中的16个地区的农民生活水平进行主成分分析,并利用前两个主成分对16个地区的农民生活水平进行分类表1-116个地区的农民生活水平的调查数据(单位:元)地区食品(1X)衣着(2X)燃料(3X)住房(4X)生活用品及其它(5X)文化生活服务(6X)北京190.3343.779.7360.5449.019.04天津135.2036.4010.4744.1636.493.94河北95.2122.839.3022.4422.812.80山西104.7825.116.409.8918.173.25内蒙古128.4127.638.9412.5823.993.27辽宁145.6832.8317.7927.2939.093.47吉林159.3733.3818.3711.8125.295.22黑龙江116.2229.5713.2413.7621.756.04上海221.1138.6412.53115.6550.825.89江苏144.9829.1211.6742.6027.305.74浙江169.9232.7512.7247.1234.355.00安徽153.1123.0915.6223.5418.186.39福建144.9221.2616.9619.5221.756.73江西140.5421.5017.6419.1915.974.94山东115.8430.2612.2033.6133.773.85河南101.1823.268.4620.2020.504.30再令标准化的矩阵为Y=166()ijy,理论部分给出了如下的计算公式:ijjijjxXyS(i=1,2,…,16;j=1,2,…,6)运用MATLAB对此公式进行计算,可得出矩阵Y1.46032.1712-0.77841.04841.88232.4823-0.19431.0528-0.57960.43060.7218-0.6450-1.3946-1.0065-0.8939-0.3886-0.5462-1.3441-1.1074-0.6605-1.6730-0.8619-0.9762-1.0681-0.3981-0.2781-0.9906-0.7605-0.4368-1.05590.12020.51101.3869-0.20570.9628-0.93320.53110.59451.5427-0.7895-0.31630.1399-0.76400.01630.1645-0.7160-0.64440.64272.38421.3927-0.02623.12692.05000.55070.0992-0.0520-0.25720.3717-0.13000.45880.84770.49890.02480.54220.52350.00500.3432-0.96700.8039-0.3471-0.97530.85730.0974-1.24471.1639-0.4987-0.64441.0658-0.0341-1.20831.3466-0.5112-1.1802-0.0318-0.77540.1210-0.11480.03270.4697-0.7002-1.2154-0.9412-1.1196-0.4731-0.7603-0.4243设矩阵Y的相关阵为()kjRr,前面有公式161611()()111611ijjikkkjikijjkxXxXryynSS(k,j=1,2,…,6)1.运用MATLAB可得到下面的矩阵Y的相关阵R:1.00000.66350.33710.78000.70580.63460.66351.0000-0.08100.66300.90150.37480.3371-0.08101.0000-0.0887-0.06140.25420.78000.6630-0.08871.00000.83110.36350.70580.9015-0.06140.83111.00000.31120.63460.37480.25420.36350.31121.0000前面介绍了这么个定理:设1(,...,)'pXXX是p维随机向量,且()DX,的特征值为12...0p,12,,...,paaa为相应的单位正交特征向量,则X的第i主成分为'iiZaX(1,2,...,)ip下面,要做的应该是求R的特征值和特征向量。设其特征值为j(j=1,2,…,6),且1234560,j(j=1,2,…,6)对应的正则化的特征向量为126(,,)'jjjjllll(j=1,2,…,6),同样运用MATLAB可计算出结果:1=3.55841l=(0.4811,0.4612,0.0525,0.