主成分与因子分析教学中的几点体会,本文主要内容关键词为:几点论文,因子论文,成分论文,教学中论文,此文献不代表本站观点,内容供学术参考,文章仅供参考阅读下载。
主成分与因子分析是医用多元统计分析教学中的一个难点,笔者结合几年来教学中的一些体会,谈谈自己肤浅的见解,向学界前辈、同仁讨教。
主成分与因子分析的难点是概念抽象,计算复杂,很多名词也是第一次接触,如特征根、特征向量、因子负荷、旋转等。相应的教学对策就是要将抽象概念具体化,复杂计算简单化。
1 概念
主成分与因子分析中的概念比较抽象,难以理解。因此,教学中第一个碰到的问题是,什么是主成分?什么是因子?
主成分是对变量共性的提取。这句话可以通过下面的一个例子来说明。
设x[,1],x[,2]的相关系数为r(不妨假设r≥0),可以理解为x[,1],x[,2]的信息量均为1,总信息量为2,r是其共性部分。 两个主成分对应的特征根分别为:λ[,1]=1+r和λ[,2]=1-r,即第一主成分包含的信息量为1+r,第二主成分包含的信息量为1-r,总信息量仍为2。可见主成分是对信息量的再分配,且第一主成分包括的信息随两变量相关程度(共性)的增大而增大,当两变量完全相关时,λ[,1]=2,λ[,2]=1,即第一主成分包括的了x[,1],x[,2]的全部信息;而当两变量无相关时,λ[,1]=λ[,2]=1,第一、二主成分包括x[,1],x[,2]的信息各占一半。因此,当变量间的相关关系不明显时,作主成分分析意义不大。
因子分析基于这样的基本思想:根据相关性的大小把变量分组,使得同组内的变量之间相关性(共性)较高,而不同组的变量相关性较低。这样,从实际意义上说,每组代表一个方面(因子);从统计学上来讲,每组代表了原协方差结构的一个基本结构。这句话可以通过下面的例子解释。
考察5个生理指标:收缩压(x[,1]),舒张压(x[,2]),心跳间隔(x[,3]),呼吸间隔(x[,4]),舌下温度(x[,5])。从生理学的知识来看,这五个指标都是受植物神经支配的,植物神经又分为交感神经和副交感神经,因此,这5个指标有两个公共因子, 故可以用因子分析的模型去处理它:若用f[,1]和f[,2]分别表示交感神经和副交感神经,那么,可以想象,x[,1],x[,2],x[,3],x[,4],x[,5]可用f[,1]和f[,2]的线性函数来表示,再加上其他对这些x[,i]有影响的因子,用函数形式可表示为:
x[,i]=l[,i1]f[,1]+l[,i2]f[,2]+u[,i] i=1,2,3,4,5 (1)
因子分析的首要任务就是要估计因子负荷{1[,i[,j]]}和特殊方差{u[,i] },并对每个因子给出合理的解释,若难以找到合理的解释,需作一些变换。成功的因子分析就是要用尽量少的因子解释观察到的相关性,且每个因子都有一个合理的解释。
2 主成分与因子的关系
主成分是原变量的线性函数,是对原变量信息的综合,每个主成分就是一个综合指标,该综合指标可以具体估计出来,并可参与进一步的分析。
因子分析是寻找一些意义明确的综合指标(公因子),并以它们为框架,将原变量分解为共性部分和个性部分,从而洞察原变量间的联系与区别。而共性部分就是这些公因子的线性函数。综合指标的提取方法很多,主成分是其中的一种。因此,在讲解主成分与因子分析的关系时,可以解释为:主成分分析是因子分析中的一步,因子分析是主成分的一个应用和发展。
3 主成分的贡献
主成分的贡献是用主成分反应原变量方差的多少来衡量的。第i 个主成分对所有原变量的贡献为λ[,i],而对第j个原变量X[,j]的贡献是λ[,i]与负荷系数a[2][,ij]的乘积。从而知道为什么称a[2][,ij]为负荷系数。讲解时可以结合图1来说明,对公因子的解释亦可仿此。
图1 主成分对原变量的贡献图
4 因子旋转
当初始负荷不易解释时,应用中常常对负荷作正交变换,即旋转,以便能得到一个更简单的结构,便于因子的解释。最理想的是这样的负荷结构,每个变量只在一个因子上有较大的负荷,而在其余因子上的负荷比较小,至多是中等大小。
旋转是几何学上的名词,实际上,因子分析中的“旋转”是对变量信息的再一次分配。讲解时可作如下比喻:旋转的在原理很象调节显微镜的焦点,以便看清观察物的细微之处,它们的共同之处是不增加也不减少事物的信息量,只是通过适当的调整使事物的本来面目更清晰。
5 因子分析策略
因子分析总会遇到三个问题:其一,用什么方法提取因子;其二,每个因子的实际背景是什么:其三,需保留多少个因子。因子分析没有定式,并常伴有主观性,因此有人说因子分析仍然保留着一种艺术的气息,犹如艺术家雕刻一块石头,并没有千篇一律的做法。但实际应用时还是有一些经验可以借鉴。
(1)先采用主成分因子提取法,当因子的意义不是十分明确时, 采用方差极大正交旋转,同时用因子得分探查离群值。
(2)再用极大似然法重复上述步骤。
(3)比较上述两法所得到的因子分析解,主要分析:(a)因子负荷能否按同种方式分组;(b)两种方法所得的因子得分各为一个坐标轴作散点图,如果在一特定因子上两法所得因子负荷的一致的,则因子得分应密集在过原点的45°线附近,否则因子得分将偏离45°线,如果这种情况发生,常说明因子数选多了。
(4)另选一个因子个数m,重复上述(1)~(3),考察添加因子对解释的影响。
(5)若数据较多,可再从中随机抽取一部分(通常是1/3 以上)作因子分析,比较这一部分以及全部数据得到的因子分析解,以考察解的稳定性。这一作法与其他多因素分析法相同。
因子分析中最大的困难莫过于对因子的解释,如果公因子得不到切合实际的解释,也就失去了因子分析的意义。
6 应用
主成分分析本身往往并不是目的,而是达到目的的一种手段。因此,它多用在大型研究项目的某个中间环节中。例如,把它用在多元回归中,便产生了主成分回归,这种回归具有一些优良性质,可以克服原变量的多重共线性。另外,它还可以用于综合评价,聚类分析,判别分析等。如果能结合几个实例,则学生对主成分的理解将会更深刻。
7 举例
一个恰当的例子,可以使主成分和因子分析的教学变得简明易懂,再配合几个好的习题,通过上机练习,学生自己解释,可使其具有趣味性。下面的一个例子是值得推荐的。
实例Linden对二次大战以来的奥林匹克十项全能得分作了因子分析,共有160组数据,对每项运动得分施以标准化变换, 每项运动标准化后的得分服从或近似服从正态分布。从n=160组数据算出的样本相关矩阵如下,试对样本相关系数矩阵做因子分析。
百米┌1┐
跳远│0.59 1
│
铅球│0.35 0.42 1 │
跳高│0.34 0.51 0.38 1 │
400米
│0.63 0.49 0.19 0.29 1│
百米跨栏│0.40 0.52 0.36 0.46 0.34 1
│
铁饼│0.28 0.31 0.73 0.27 0.17 0.32 1 │
撑竿跳高│0.20 0.36 0.24 0.39 0.23 0.33 0.24 1 │
标松│0.11 0.21 0.44 0.17 0.13 0.18 0.34 0.24 1│
1500米 └-0.07 0.09 -0.08 0.18 0.39 0.00 -0.02 0.17 0.00 1┘
用主成分法提取因子,因子负荷系数见表1。
从主成分法的观点看,应取m=3或4。从后面的因子负荷的讨论可知,取m=4较合适。 应用主成分法算出的因子分析的关量都列在表1中。
表1 奥林匹克资料的因子分析(主成分法)
因子负荷变量 最大方差旋转因子负荷共同度
F1F2F3
F4
百米 0.6905 0.2170
-0.5203
0.2060
0.8370
跳远 0.7885 0.1836
-0.1926 -0.0925
0.7012
铅球 0.7019-0.53460.0470
0.1753
0.8114
跳高 0.6737 0.13400.1388 -0.3959
0.6478
400米0.6197 0.5511
-0.0838
0.4187
0.8701
百米跨栏 0.6869 0.0421
-0.1610 -0.3446
0.6183
铁饼 0.6212-0.52110.109502344
0.7244
撑竿跳高 0.5385 0.08700.4109 -0.4396
0.6596
标枪 0.4341-0.43900.3719
0.2345
0.5745
1500米
0.1466 0.59610.6581
0.278708876
方差 3.7866 1.5173 1.114
0.9134
7.3317
累计贡献 0.3787 0.53040.6418
0.7332
变量
共同度
F1[*] F2[*] F3[*]F4[*]
百米 0.8832 0.13580.1580 -0.1162
0.8370
跳远 0.6034 0.19380.5159 -0.0074
0.7012
铅球 0.2443 0.82450.2231 -0.1487
0.8114
跳高 0.2383 0.15050.7500
0.0763
0.6478
400米0.7984 007400.1027
0.4654
0.8701
百米跨栏 0.4021 0.15300.6356
-0.711
0.6183
铁饼 0.1859 0.81350.1472 -0.0796
0.7244
撑竿跳高-0.0368 0.17600.7615
0.2176
0.6596
标枪-0.0469 0.73500.1095
0.1415
0.5745
1500米
0.0477-0.04080.1110
0.833508876
方差 2.1334 2.02201.9438
1.2325
7.3317
累计贡献 0.2133 0.41550.6099
0.7332
在主成分解中,除了1500米长跑以外,所有项目在F[,1]上都有较大的正载荷,这个因子可称为一般运动能力,但是其余因子不能很容易地给出解释,因子F[,2]似乎是跑和投掷能力(臂力)的对比(contrast):而因子F[,3]似乎是长跑耐力(1500米)和短跑速度(100米)的一个对比;因子F[,4]意义不明。
4个因子的主成分解释了大部分总样本方差(73%), 虽然有一些特殊方差的估计比较大(如标枪、110米跨栏等)。 这说明这些项目与其他项目比起来,需要运动员具备一些特殊素质。
采用最大方差旋转,结果见表1。 旋转后各因子的意义就非常明确了:第一因子在100米、400米及跳远上有较大负荷,在100 米跨栏上有中等负荷,可称该因子为短跑速度因子;第二因子在铅球、铁饼、标枪上有较大的负荷,可称其为爆发性臂力因子;第三因子在跳高、撑杆跳高、100米跨栏上有较大负荷,在跳远上有中等负荷, 可称该因子为爆发性腿力因子;第四因子只在1500米长跑上有较大负荷,在400 米上有中等负荷,可称其为耐力因子。各因子的意义比较明确,且每个变量都只在一个因子上有较大的负荷,无明显的重复现象。
用极大似然法所得因子的意义与主成分因子相同,不赘。
肤浅见解,望能抛砖引玉