《第6章主成分分析报告》由会员分享,可在线阅读,更多相关《第6章主成分分析报告(59页珍藏版)》请在金锄头文库上搜索。
1、第六章第六章 主成分分析主成分分析第一节第一节 引言引言 第二节第二节 主成分的几何意义及数学主成分的几何意义及数学 推导推导 第三节第三节 主成分的性质主成分的性质 第四节第四节 主成分分析应用中应注意主成分分析应用中应注意 的问题的问题 第五节第五节 实例计算及实例计算及R code第一节第一节 引言引言n多元统计分析处理的是多变量(多指标)问题。多元统计分析处理的是多变量(多指标)问题。n由于变量较多,增加了分析问题的复杂性由于变量较多,增加了分析问题的复杂性n实际问题中,变量之间可能存在一定的相关性,因实际问题中,变量之间可能存在一定的相关性,因此,多变量中可能存在信息的重叠此,多变量
2、中可能存在信息的重叠n用用较少的变量来代替原来较多的变量较少的变量来代替原来较多的变量,并可以反映,并可以反映原来多个变量的大部分原来多个变量的大部分信息信息n“降维降维”思想思想n主成分分析主成分分析(Principal Component Analysis, PCA)是由是由Hotelling于于1933年首先提出的年首先提出的n思想:思想:多个变量之间往往存在一定程度的相关性;多个变量之间往往存在一定程度的相关性;通过线性组合的方式,从这些指标中尽可能多地提取通过线性组合的方式,从这些指标中尽可能多地提取信息信息当第一个线性组合不能提取更多的信息时,当第一个线性组合不能提取更多的信息时,
3、考虑用第二个线性组合继续提取过程,考虑用第二个线性组合继续提取过程,直到所提取的信息与原指标相差不多时为止。直到所提取的信息与原指标相差不多时为止。用较少的主成分得到较多的信息量,得到一个更低维的随机向用较少的主成分得到较多的信息量,得到一个更低维的随机向量;量;n主成分分析既可以降低数据主成分分析既可以降低数据“维数维数”又保留了原数据的大部又保留了原数据的大部分信息分信息第一节第一节 引言引言n变量变量(属性、指标属性、指标)的信息量的信息量当一个变量只取一个常数值时,提供的信息量非常有限当一个变量只取一个常数值时,提供的信息量非常有限取一系列不同数据时,可以从中读出最大值、最小值、平均数
4、取一系列不同数据时,可以从中读出最大值、最小值、平均数等信息等信息变量的变异性越大,说明它对各种场景的变量的变异性越大,说明它对各种场景的“遍历性遍历性”越强,提越强,提供的信息就更加充分,信息量就越大供的信息就更加充分,信息量就越大n主成分分析中的信息主成分分析中的信息-指标的变异性指标的变异性标准差或方差表示标准差或方差表示n主成分分析的数学模型:主成分分析的数学模型:设设p个变量构成的个变量构成的p维随机向量为维随机向量为X = (X1,Xp)对对X作正交变换,令作正交变换,令Y = TX,其中,其中T为正交阵,要求为正交阵,要求Y的各分量的各分量是不相关的,并且是不相关的,并且Y的第一
5、个分量的方差是最大的,第二个分的第一个分量的方差是最大的,第二个分量的方差次之,量的方差次之,为了保持信息不丢失,为了保持信息不丢失,Y的各分量方差和与的各分量方差和与X的各分量方差和的各分量方差和相等相等第一节第一节 引言引言第二节第二节 主成分的几何意义主成分的几何意义及数学推导及数学推导 一一 主成分的几何意义主成分的几何意义 二二 主成分的数学推导主成分的数学推导 一、主成分的几何意义一、主成分的几何意义n正交变换正交变换=坐标旋转坐标旋转n考虑二维空间:考虑二维空间:假设共有假设共有n个样品,每个样品都测量了两个指标个样品,每个样品都测量了两个指标(X1,X2),它们,它们大致分布在
6、一个椭圆内大致分布在一个椭圆内事实上,散点的分布总有可能沿着某一个方向略显扩张,这个事实上,散点的分布总有可能沿着某一个方向略显扩张,这个方向就把它看作椭圆的长轴方向方向就把它看作椭圆的长轴方向在坐标系在坐标系x1Ox2中,单独看这中,单独看这n个点的分量个点的分量X1和和X2,它们沿着,它们沿着x1方向和方向和x2方向都具有较大的离散性,其离散的程度可以分别用方向都具有较大的离散性,其离散的程度可以分别用X1的方差和的方差和X2的方差测定的方差测定如果仅考虑如果仅考虑X1或或X2中的任何一个分量,那么包含在另一分量中中的任何一个分量,那么包含在另一分量中的信息将会损失,因此,直接舍弃某个分量
7、不是的信息将会损失,因此,直接舍弃某个分量不是“降维降维”的有的有效办法效办法图图 主成分的几何意义主成分的几何意义 一、主成分的几何意义一、主成分的几何意义一、主成分的几何意义一、主成分的几何意义n nn个点在新坐标系下的坐标个点在新坐标系下的坐标Y1和和Y2几乎不相关几乎不相关nY1和和Y2为原始变量为原始变量X1和和X2的综合变量的综合变量nn个点在个点在y1轴上的方差达到最大,在此方向上包含了有关轴上的方差达到最大,在此方向上包含了有关n个个样品的最大量信息样品的最大量信息n欲将二维空间的点投影到某个一维方向上,则选择欲将二维空间的点投影到某个一维方向上,则选择y1轴方向轴方向能使信息
8、的损失最小能使信息的损失最小n称称Y1为第一主成分,称为第一主成分,称Y2为第二主成分为第二主成分n第一主成分的效果与椭圆的形状有很大的关系第一主成分的效果与椭圆的形状有很大的关系:椭圆越是扁平,椭圆越是扁平,n个点在个点在y1轴上的方差就相对越大,在轴上的方差就相对越大,在y2轴上的轴上的方差就相对越小方差就相对越小用第一主成分代替所有样品所造成的信息损失也就越小用第一主成分代替所有样品所造成的信息损失也就越小 一、主成分的几何意义一、主成分的几何意义n考虑两种极端的情形:考虑两种极端的情形:椭圆的长轴与短轴的长度相等,即椭圆变成圆:椭圆的长轴与短轴的长度相等,即椭圆变成圆:第一主成分只含有
9、二维空间点约一半信息第一主成分只含有二维空间点约一半信息若仅用这一个综合变量,则将损失约若仅用这一个综合变量,则将损失约50的信息的信息原因是:原因是:l原始变量原始变量X1和和X2的相关程度几乎为零的相关程度几乎为零l它们所包含的信息几乎不重叠它们所包含的信息几乎不重叠椭圆扁平到了极限,变成椭圆扁平到了极限,变成y1轴上的一条线:轴上的一条线:第一主成分包含二维空间点的全部信息第一主成分包含二维空间点的全部信息仅用这一个综合变量代替原始数据不会有任何的信息损失仅用这一个综合变量代替原始数据不会有任何的信息损失主成分分析效果最理想主成分分析效果最理想l第二主成分不包含任何信息,舍弃它没有信息损
10、失第二主成分不包含任何信息,舍弃它没有信息损失一、主成分的几何意义一、主成分的几何意义二、主成分的数学推导二、主成分的数学推导考虑如下线性变换:考虑如下线性变换:用矩阵表示为:用矩阵表示为:二、主成分的数学推导二、主成分的数学推导二、主成分的数学推导二、主成分的数学推导二、主成分的数学推导二、主成分的数学推导二、主成分的数学推导二、主成分的数学推导二、主成分的数学推导二、主成分的数学推导二、主成分的数学推导二、主成分的数学推导第三节第三节 主成分的性质主成分的性质 一一 主成分的一般性质主成分的一般性质 二二 主成分的方差贡献率主成分的方差贡献率 一、主成分的一般性质一、主成分的一般性质 一、
11、主成分的一般性质一、主成分的一般性质 一、主成分的一般性质一、主成分的一般性质 一、主成分的一般性质一、主成分的一般性质 二、主成分的方差贡献率二、主成分的方差贡献率n主成分分析的目的是减少变量的个数,所以一般不主成分分析的目的是减少变量的个数,所以一般不会使用所有主成分的,忽略一些带有较小方差的主会使用所有主成分的,忽略一些带有较小方差的主成分将不会给总方差带来太大的影响成分将不会给总方差带来太大的影响 二、主成分的方差贡献率二、主成分的方差贡献率n例例 设X=(X1,X2,X3)的的协方差矩方差矩阵为其特征其特征值为1=5.83,2=2.00,3=0.17相相应的特征向量的特征向量为若只取
12、一个主成分,若只取一个主成分,则贡献率献率为5.83/(5.83+2.00+0.17)=0.72875=72.875%nY1对第三个第三个变量的量的因子因子载荷量荷量为零零X3与与X1和和X2都不相关,在都不相关,在Y1中未包含有关中未包含有关X3的信息的信息n仅取一个主成分就取一个主成分就显得不得不够了,故了,故应再取再取Y2累累计贡献率献率为 (5.83+2.00)/8=97.875%( (Y1,Y2) )对每个原始变量的相关系数i(Y1,Xi)(Y2,Xi)10.9250.00020.9980.00030.0001.000三、主成分的解三、主成分的解释n主成分分析成功与否取决于主成分是否
13、有意主成分分析成功与否取决于主成分是否有意义n载荷荷由由Yk=tk1X1+tk2X2+ +tkpXp 称称tki为第第k主成分主成分Yk在第在第i个个原始原始变量量Xi上的上的载荷荷,它度量了,它度量了Xi对Yk的重要程度的重要程度n在解在解释主成分主成分时,需要考察,需要考察载荷荷大小大小n方差大的那些方差大的那些变量与具有大特征量与具有大特征值的主成分有的主成分有较密密切的切的联系,而方差小的另一些系,而方差小的另一些变量与具有小特征量与具有小特征值的主成分有的主成分有较强强的的联系系n通常取前几个主成分,因此所取主成分会通常取前几个主成分,因此所取主成分会过于照于照顾方差大的方差大的变量
14、,而量,而对方差小的方差小的变量却照量却照顾得不得不够n例例 设X=(X1,X2,X3)的的协方差矩方差矩阵为经计算,算,的特征的特征值及特征向量及特征向量为1=109.793,2=6.469,3=0.738 相相应的主成分分的主成分分别为Y1=0.305X1+0.041X2+0.951X3Y2=0.944X1+0.120X20.308X3Y3=0.127X1+0.992X20.002X3方差大的原始方差大的原始变量量X3在很大程度上控制了第一主成在很大程度上控制了第一主成分分Y1,方差小的原始,方差小的原始变量量X2几乎完全控制了第三主几乎完全控制了第三主成分成分Y3,方差介于中,方差介于中
15、间的的X1则基本控制了第二主成基本控制了第二主成分分Y2. Y1的的贡献率献率为高高贡献率献率归因于因于X3的方差比的方差比X1和和X2的方差大得多的方差大得多另外,另外,Y1与与X1,X3的相关系数的相关系数远大于与大于与X2的相关系数的相关系数第四节第四节 主成分分析主成分分析应用中应注意的问题应用中应注意的问题 一一 实际应用中主成分分析的出发点实际应用中主成分分析的出发点 二二 主成分的合理选择与解释主成分的合理选择与解释 三三 如何利用主成分分析进行综合评价如何利用主成分分析进行综合评价 一、实际应用中主成分分析的出发点一、实际应用中主成分分析的出发点n变量单位的影响变量单位的影响主
16、成分计算从协方差阵出发,变量单位的改变会产生不同的主主成分计算从协方差阵出发,变量单位的改变会产生不同的主成分成分n“大数吃小数大数吃小数” 主成分倾向于多归纳方差大的变量的信息主成分倾向于多归纳方差大的变量的信息n标准化处理标准化处理n从相关阵求得的主成分与协差阵求得的主成分一般从相关阵求得的主成分与协差阵求得的主成分一般情况是不相同的情况是不相同的n这种差异有时很大这种差异有时很大n实际应用中:实际应用中:如果各指标之间的数量级相差悬殊,特别是各指如果各指标之间的数量级相差悬殊,特别是各指标有不同的物理量纲的话,较为合理的做法是使标有不同的物理量纲的话,较为合理的做法是使用用R代替代替采用
17、采用R代替代替后,可以看作是用标准化的数据做分后,可以看作是用标准化的数据做分析,这样使得主成分有现实意义,便于剖析实际析,这样使得主成分有现实意义,便于剖析实际问题,又可以避免突出数值大的变量问题,又可以避免突出数值大的变量一、实际应用中主成分分析的出发点一、实际应用中主成分分析的出发点n 一、实际应用中主成分分析的出发点一、实际应用中主成分分析的出发点n上例化上例化为相关相关阵出出发计算算. X的相关矩的相关矩阵R的特征的特征值及特征向量及特征向量为相相应的主成分分的主成分分别为 的贡献率为的贡献率为 和和 累计贡献率为累计贡献率为从从R出出发的的 的的贡献率献率0.705明明显小于从小于
18、从出出发的的Y1的的贡献率献率0.938原始原始变量方差之量方差之间的差异越大,的差异越大,这一点一点倾向越明向越明显 可用可用标准化前的原准化前的原变量表达如下:量表达如下: 在原在原变量量X1,X2,X3上的上的载荷相荷相对大小与上例中大小与上例中Yi在在X1,X2,X3上的上的载荷相荷相对大小之大小之间有着非常大的差距有着非常大的差距标准化后的准化后的结论完全可能会完全可能会发生很大的生很大的变化化二、主成分的合理选择与解释二、主成分的合理选择与解释n在主成分分析中,首先应保证所提取的前几个主成在主成分分析中,首先应保证所提取的前几个主成分的累计贡献率达到一个较高的水平,其次对这些分的累
19、计贡献率达到一个较高的水平,其次对这些被提取的主成分必须都能够给出具有意义的解释被提取的主成分必须都能够给出具有意义的解释n主成分的含义一般多少带点模糊性,不像原始变量主成分的含义一般多少带点模糊性,不像原始变量的含义那么清楚、确切,这是变量降维过程中不得的含义那么清楚、确切,这是变量降维过程中不得不付出的代价不付出的代价n提取的主成分个数提取的主成分个数m通常应明显小于原始变量个数通常应明显小于原始变量个数p(除非(除非p本身较小),否则维数降低的本身较小),否则维数降低的“利利”可能可能抵不过主成分含义不如原始变量清楚的抵不过主成分含义不如原始变量清楚的“弊弊”n如果原始变量之间具有较高的
20、相关性,则前面少数如果原始变量之间具有较高的相关性,则前面少数几个主成分的累计贡献率通常就能达到一个较高水几个主成分的累计贡献率通常就能达到一个较高水平,此时的累计贡献率通常较易得到满足平,此时的累计贡献率通常较易得到满足n主成分分析的困难之处在于要如何给出主成分的解主成分分析的困难之处在于要如何给出主成分的解释,所提取的主成分中如有一个主成分解释不了,释,所提取的主成分中如有一个主成分解释不了,整个主成分分析也就失败了整个主成分分析也就失败了n主成分分析是变量降维的一种重要、常用的方法,主成分分析是变量降维的一种重要、常用的方法,但该方法要应用得成功,一是靠原始变量的合理选但该方法要应用得成
21、功,一是靠原始变量的合理选取,二是靠取,二是靠“运气运气”二、主成分的合理选择与解释二、主成分的合理选择与解释n例:例: 在制定服装在制定服装标准的准的过程中,程中,对128名成年男子名成年男子的身材的身材进行了行了测量,每人量,每人测得的指得的指标中含有中含有这样六六项:身高:身高(X1)、坐高、坐高(X2) 、胸、胸围(X3) 、手臂、手臂长(X4) 、肋、肋围(X5)和腰和腰围(X6). 样本相关矩本相关矩阵列于下表列于下表: X1X2X3X4X5X6X11.000X20.791.000X30.360.311.000X40.760.550.351.000X50.250.170.640.1
22、61.000X60.510.350.580.380.631.000表:男子身材六项指标的样本相关矩阵经计算,相关阵经计算,相关阵 的前三个特征值、相应的特征向的前三个特征值、相应的特征向量以及贡献率列于下表量以及贡献率列于下表表: 的前三个特征值、特征向量以及贡献率特征向量特征向量 :身高:身高0.4690.3650.092 :坐高:坐高0.4040.3970.613 :胸:胸围围0.3940.3970.279 :手臂:手臂长长0.4080.3650.705 :肋:肋围0.3370.5690.164 :腰:腰围围0.4270.3080.119特征特征值3.2871.4060.459贡献率献率0
23、.5480.2340.077累累计贡献率献率0.5480.7820.859前三个主成分分前三个主成分分别为前两个主成分的累前两个主成分的累计贡献率献率为78.2,前三个主成,前三个主成分的累分的累计贡献率达献率达85.9,因此可以考,因此可以考虑只取前面只取前面两个或三个主成分,它两个或三个主成分,它们能能够很好地概括原始很好地概括原始变量量第一主成分第一主成分 对所有(所有(标准化)原始准化)原始变量都有近似量都有近似相等的正相等的正载荷,故称第一主成分荷,故称第一主成分为(身材身材)大小成大小成分分 第二主成分第二主成分 在在 上有中等程度的正上有中等程度的正载荷,而荷,而在在 上有中等程
24、度的上有中等程度的负载荷,称第二主成分荷,称第二主成分为形状成分形状成分(或(或胖瘦成分胖瘦成分)第三主成分第三主成分 在在 上有大的正上有大的正载荷,在荷,在 上有大的上有大的负载荷,而在其余荷,而在其余变量上的量上的载荷都荷都较小,可称第三小,可称第三主成分主成分为臂臂长成分成分由于第三主成分的由于第三主成分的贡献率不高(献率不高(7.65)且)且实际意意义也不太重要,因此也可考也不太重要,因此也可考虑取前两个主成分取前两个主成分三、利用主成分分析进行综合评价三、利用主成分分析进行综合评价n评价指标体系的选择与综合评价指标体系的选择与综合加权加权权重如何选取?权重如何选取?主成分分析能从选
25、定的指标体系中归纳出大部分主成分分析能从选定的指标体系中归纳出大部分信息信息根据主成分提供的信息进行综合评价根据主成分提供的信息进行综合评价n利用主成分进行综合评价是将原有的信息进行综合利用主成分进行综合评价是将原有的信息进行综合n权重根据它们的方差贡献率来确定(主成分的信息权重根据它们的方差贡献率来确定(主成分的信息含量)含量) 三、利用主成分分析进行综合评价三、利用主成分分析进行综合评价第五节第五节 实例分析与计算机实现实例分析与计算机实现一一 主成分分析实例主成分分析实例 二二 利用利用R进行主成分分析进行主成分分析 一、主成分分析实例一、主成分分析实例 n表表6.1是某市工业部门是某市
26、工业部门13个行业的个行业的8项重要经济指标的数据,项重要经济指标的数据,这这8项经济指标分别是:项经济指标分别是:X1:年末固定资产净值,单位:万元;:年末固定资产净值,单位:万元;X2:职工人数据,单位:人;:职工人数据,单位:人;X3:工业总产值,单位:万元;:工业总产值,单位:万元;X4:全员劳动生产率,单位:元:全员劳动生产率,单位:元/人年;人年;X5:百元固定资产原值实现产值,单位:元;:百元固定资产原值实现产值,单位:元;X6:资金利税率,单位:资金利税率,单位:%;X7:标准燃料消费量,单位:吨;:标准燃料消费量,单位:吨;X8:能源利用效果,单位:万元:能源利用效果,单位:
27、万元/吨。吨。表表6.1 某市工业部门某市工业部门13个行业个行业8项指标项指标一、主成分分析实例一、主成分分析实例 n如何从这些经济指标出发,对各工业部门进行综合评价与排如何从这些经济指标出发,对各工业部门进行综合评价与排序?序?n先计算这些指标的主成分,然后通过主成分的大小进行排序。先计算这些指标的主成分,然后通过主成分的大小进行排序。表表6.2和表和表6.3分别是特征根(累计贡献率)和特征向量的信分别是特征根(累计贡献率)和特征向量的信息息n利用主成分得分进行综合评价时,从特征向量可以写出所有利用主成分得分进行综合评价时,从特征向量可以写出所有8个主成分的具体形式:个主成分的具体形式:一
28、、主成分分析实例一、主成分分析实例 表表6.2 特征根和累计贡献率特征根和累计贡献率一、主成分分析实例一、主成分分析实例 表表6.3 特征向量特征向量一、主成分分析实例一、主成分分析实例 n以特征根为权,对以特征根为权,对8个主成分进行加权综合,得出各工业部个主成分进行加权综合,得出各工业部门的综合得分,具体数据见表门的综合得分,具体数据见表6.4。n综合得分的计算公式是:综合得分的计算公式是:并据此排序并据此排序n机器行业在该地区的综合评价排在第一,原始数据也反映出机器行业在该地区的综合评价排在第一,原始数据也反映出机器行业存在明显的规模优势机器行业存在明显的规模优势n从前两个主成分得分上看
29、,该行业也排在第一位,同样存在从前两个主成分得分上看,该行业也排在第一位,同样存在效益优势;效益优势;n排在最后三位的分别是皮革行业、电力行业和煤炭行业排在最后三位的分别是皮革行业、电力行业和煤炭行业一、主成分分析实例一、主成分分析实例 表表6.4 各行业主成分得分及排序各行业主成分得分及排序一、主成分分析实例一、主成分分析实例 表表6.5 分地区城镇居民家庭收支基本情况分地区城镇居民家庭收支基本情况 二、利用二、利用R进行主成分分析进行主成分分析表表6.5 分地区城镇居民家庭收支基本情况分地区城镇居民家庭收支基本情况 二、利用二、利用R进行主成分分析进行主成分分析二、利用二、利用R进行主成分
30、分析进行主成分分析#read data data.frame=read.table(file=datasets/pca.dat,header=T)#calculate the covariance matrix of the data setdata=data.matrix(data.framec(1:30),c(2:6)data.cov=cov(data)head(data.cov)#By using the function eigen the eigenvalues and eigenvectors of the #covariance matrix are computedEigenv
31、alues - eigen(data.cov)$valuesEigenvectors - eigen(data.cov)$vectors#Principal Components can be estimated via a matrix multiplicationPC - as.matrix(data) %*% Eigenvectors#As a check of the result, we compute the covariance matrix of PC. #The variances of cov(PC) should be equal to the Eigenvalues a
32、nd the#covariances should be 0 (aside from rounding errors) since the#Principal Components have to be uncorrelated.cov(PC)#We do this for the first three EigenvaluesEigenvalues1:3cov(PC)1:3, 1:3#We calculate the proportions of the variation explained by the various #components:print(round(Eigenvalue
33、s/sum(Eigenvalues) * 100, digits = 2)round(cumsum(Eigenvalues)/sum(Eigenvalues) * 100, digits = 2)二、利用二、利用R进行主成分分析进行主成分分析#PCA using prcomp#The best way to do PCA with R is to use the function prcomp from the package stats. #prcomp with the argument scale = TRUE (default: scale =FALSE) the variables
34、#can be scaled to a unit variance before the analysis takes place.#read data data.frame=read.table(file=datasets/pca.dat,header=T)data=data.matrix(data.framec(1:30),c(2:6)data.pca - prcomp(data)#Note: To reproduce our previous calculation we use the default case (scale = #FALSE). The PrintOutput of
35、data.pca gives us the estimated standard #deviations as well as the rotations (loadings).data.pcadata.pca.var - data.pca$sdev2data.pca.var1:3#which are identical to the Eigenvalues Eigenvalues1:3plot(data.pca)二、利用二、利用R进行主成分分析进行主成分分析n标准化后:标准化后:nSee pca1_1.RnSee pca2_1.R二、利用二、利用R进行主成分分析进行主成分分析二、利用二、利用R进行主成分分析进行主成分分析