因子分析个人笔记

因子分析个人笔记首先,最棒的参考文献是这篇:文献然后我们结合多篇文章来讲一讲:第一部分X是原始数据的矩阵,f是公共因子,也就是之后想要提取出来的因子,而特殊因子就是不去考虑的部分。那么,什么是因子载荷矩阵?百度百科:因子载荷aij的统计意义就是第i个变量与第j个公共因子的相关系数即表示Xi依赖Fj的份量(比重)。统计学术语称作权,心理学家将它叫做载荷,即表示第i个变量在第j个公共因子上的负荷,它反映了第i个变量在第j个公共因子上的相对重要性。基于此我们得到:1.第一行的元素分别

大家好,欢迎来到IT知识分享网。

首先,最棒的参考文献是这篇,以及该文章开头索引的一系列文章:文献

然后我们结合多篇文章来讲一讲:
因子分析个人笔记

第一部分

X是原始数据的矩阵,f是公共因子,也就是之后想要提取出来的公共因子,而特殊因子就是前面的公共因子没有包涵的部分,实际分析的时候可以不管。
那么,什么是因子载荷矩阵?百度百科:因子载荷 aij 的统计意义就是第i个变量与第 j 个公共因子的相关系数即表示 Xi 依赖 Fj 的份量(比重)。统计学术语称作权,心理学家将它叫做载荷,即表示第 i 个变量在第 j 个公共因子上的负荷,它反映了第 i 个变量在第 j 个公共因子上的相对重要性。
同时,aij也是我们所构建的因子分析模型X = Af+ε中的矩阵A的元素,也就是模型中各个因子F的系数。

基于此我们得到:
1.第一行的元素分别代表着第一个变量和第一个公因子的相关系数、第一个变量和第二个公因子的相关系数…第一行元素的平方和hi²代表着第一个变量和所有公因子的R方之和,换个角度也可以理解为所有公共因子对第一个变量的解释程度。(称为变量共同度,也可以称为公因子提取度

2.同理,第一列元素分别代表第一个变量和第一个公因子的相关系数、第二个变量和第一个公因子的相关系数…第一列元素的平方和gj²代表着第一个公因子对所有变量的影响,因此“也是对比公共因子重要性的一个标准”。(称为公因子的方差贡献变量共同度和公因子方差贡献这两个概念十分重要!后面会一直用到!

3.综上,A的元素的平方和代表所有公共因子对总方差的累计贡献。

上面讲的也就是:
在这里插入图片描述
对于hi²和gj²的计算案例可见https://blog.csdn.net/qq_29831163/article/details/88909882

第二部分

那么,因子载荷矩阵A是如何得到的呢?开头的参考文献告诉我们,最常用的方法是基于样本相关系数矩阵R的主成分解得到的。(这里讲的主成分似乎就是我们学过的主成分分析法,看下面的操作就有相似之处)至于相关系数矩阵,它就是在主成分分析中讲过的协方差矩阵的升级版(协方差去除量纲后得到相关系数)。
在这里插入图片描述
上面提到的相似之处就是和主成分一样都用到了特征值与特征向量,而该矩阵A就等于各个特征向量乘以其特征值的开根号(图中公式40)
从另一篇文章的截取片段:
在这里插入图片描述
证明这里的主成分分析和我们学过的的确是一个东西,而且在PCA中,我们是将特征值从大到小排列,据此来选择对应的特征向量;而在此处(FA),特征值(根)同时也代表着相应公因子的方差贡献大小。
我们来看一下另一篇文章https://blog.csdn.net/qq_41081716/article/details/103332472的节选也证明了这个道理:
在这里插入图片描述
特征值越大,方差贡献率也就越高。

我们再来看一个新的例子https://blog.csdn.net/qq_29831163/article/details/88909882
比如我们由相关系数矩阵得到:
在这里插入图片描述

至此,我们已经解释了并且抛出了太多的东西,但具体怎么做还没有理出一个头绪来,接下来便是操作流程。

因子分析的具体步骤

具体步骤呈现于下面这篇文章

https://blog.csdn.net/qq_29831163/article/details/88918422

一、考察数据是否适合进行因子分析,主要是通过KMO检验和Bartlett球形检验。

二、计算相关系数矩阵,并由此得到因子载荷矩阵。(第一步也就是上面讲的一大堆)

三、对载荷矩阵进行因子旋转。
因子分析的目的不仅仅是要找出公共因子以及对变量进行分组,更重要的是要知道每个公共因子的意义,以便进行进一步的分析。如果每个公共因子的含义不清,则不便于进行实际背景的解释。
初始因子(也就是我们从上一步算出来的因子载荷矩阵)的综合性太强,难以找出因子的实际意义。由于因子载荷阵是不唯一的,所以可以对因子载荷阵进行旋转,使因子载荷阵的结构简化,从而使因子的实际意义更容易被解释。

四、计算因子得分
求出各样本的因子得分,有了因子得分值,则可以在许多分析中使用这些因子,例如以因子的得分做聚类分析的变量,做回归分析中的回归因子。

是否适合进行因子分析的检验

因子分析的目的是在互为相关的许多变量中寻找能反映它们之间内在联系以及起主导作用的、数目较少的因子,通过对这些因子的研究,既无损于原来多个变量的信息,又便于对它们进行分类和解释。因此,要想使用因子分析方法,其前提是:原始数据中多个变量之间应有较强的线性相关关系。如果原始变量之间的线性相关程度太小,它们之间就不存在具有说服力的公因子,这时进行因子分析就没有实际意义;如果各个变量之间相互独立,这时多变量的协方差矩阵是对角阵(更确切地说是单位阵,因为若各个变量之间相互独立,则协方差矩阵除了对角线之外的元素都为0,而对角线上的元素代表自己和自己的协方差,为1。因此各个变量之间相互独立的协方差矩阵为单位阵),显然这样的数据是不适合用因子分析进行分析。
先简单介绍Bartlett球形检验的原理:

一、巴特利特球形检验法是以相关系数矩阵为基础的.它的零假设相关系数矩阵是一个单位阵,即相关系数矩阵对角线的所有元素均为1,所有非对角线上的元素均为零.巴特利特球形检验法的统计量是根据相关系数矩阵的行列式得到的.如果该值较大,且其对应的相伴概率值(即p值)小于指定的显著水平时,拒绝零假设,表明相关系数矩阵不是单位阵,原有变量之间存在相关性,适合进行主成分分析;反之,零假设成立,原有变量之间不存在相关性,数据不适合进行主成分分析。
二、球形检验主要是用于检验数据的分布,以及各个变量间的独立情况。按照理想情况,如果我们有一个变量,那么所有的数据都在一条线上。如果有两个完全独立的变量,则所有的数据在两条垂直的线上。如果有三条完全独立的变量,则所有的数据在三条相互垂直的线上。如果有n个变量,那所有的数据就会在n条相互垂直的线上,在每个变量取值范围大致相等的情况下(常见于各种调查问卷的题目),所有的数据分布就像在一个球形体里面,大抵就是那个样子。如果不对数据分布进行球形检验,在做因素分析的时候就会违背因素分析的假设——各个变量在一定程度上相互独立。
————————————————
原文链接:https://blog.csdn.net/qq_31329259/article/details/82697117

再介绍下KMO检验的原理(以下来自百度百科):
在这里插入图片描述
在这里插入图片描述
根据文字描述,该公式的分子是简单相关系数平方和,分母的第二部分就是偏相关系数平方和。偏相关系数的解释是:在多元回归分析中,在消除其他变量影响的条件下,所计算的某两变量之间的相关系数。在多元相关分析中,简单相关系数可能不能够真实的反映出变量X和Y之间的相关性,因为变量之间的关系很复杂,它们可能受到不止一个变量的影响。这个时候偏相关系数是一个更好的选择。

KMO检验的原理:如果原始数据中确实存在公共因子,则各变量之间的偏相关系数应该很小,这时KMO的值接近于1,因此,原数据适用于因子分析。(没看懂为什么存在公共因子则个变量之间的偏相关系数就会很小?)

因子旋转原理解释及具体步骤

因子旋转的正交旋转(除了正交还有斜交,但用的较少,此处不予讨论)中,主要有三种方法,分别为:1.方差最大旋转法(Varimax);2.四次方最大旋转法(Quartimax);3.等量最大旋转法(Equamax);此处进介绍方差最大法,其余想要了解可见(方差最大法的解释也来源于这一文章):因子分析法之因子旋转

方差最大旋转法从简化因子载荷阵的每一列出发,使和每个因子有关的载荷平方的方差最大,当只有少数几个变量在某个因子上有较高的载荷时候,对因子的解释最简单。

这段话信息量很大,我们慢慢来解释。首先简化因子载荷阵就是我们将载荷矩阵经过因子旋转后得到的新的载荷矩阵,由于这个矩阵是较为简单的,故以此命名。当然,我们现在还不知道如何通过因子旋转得到这个简化因子载荷阵,只是此处采用的是类似待定系数的思想,我们先假设有这么一个东西存在。

其次,从一个因子载荷阵(不管是不是简化的)的每一列来看,我们前面有讲过列元素的平方和gj²称为公因子的方差贡献。然后接下来的这整段话“使和每个因子有关的载荷平方的方差最大,当只有少数几个变量在某个因子上有较高的载荷时候,对因子的解释最简单”的意思是:假设我们有四个变量abcd,两个公因子αβ,比如理想的两极分化的情况是α和ab完全相关,和cd完全无关;β和ab完全无关,和cd完全相关。这样就满足了简化情况的要求,而不是abcd四个变量和αβ都有关系,从而让我们很难去解释α和β这两个因子的含义。方差最大的直观意义是希望通过因子旋转后,使每个因子上的载荷尽量拉开距离,一部分的载荷趋于±1,另一部分趋于0。那方差和上述所说的有什么关系呢?为实现使各个因子上的载荷两极分化,使得因子载荷之间差异极大化,须让描述差异性的统计指标—方差极大化。

正交变换后的公因子共同度不变,因子方差贡献发生变化。因为公因子共同度代表的是全部公因子对某一个变量的影响,公因子共同度不变则代表着全部公因子对某一个变量的影响之和不变;而因子方差贡献代表着某个公因子对所有变量的影响,也就是某个因子对总体解释贡献度的大小。由于做了因子旋转,旋转后的因子和之前的因子已经不一样了,所以每个因子的贡献大小和之前不一样,也是很正常的事情。(这两句话不理解感觉问题不大,大致想讲的就是正交变换的特性使得各个因子的贡献大小发生变化,但总体模型对每一个变量的解释力度大小没有变化。我想这也是为什么采用因子旋转法来简化矩阵的原因)

如何让方差极大化可见原文,算是比较好理解(觉得模糊就看原文):
在这里插入图片描述
接下来如何求正交矩阵就在我的知识范围之外了,可以看一看原文,不理解也没啥关系,不过要注意一段话:
在这里插入图片描述
至此,因子旋转的原理介绍完毕。
不明白也可以看看另一篇文章:文章

计算因子得分

参考文献:文章里的第五部分

通过上面的因子旋转后,我们得到了最终的简化因子载荷阵。但是大多时候我们需要使用这些因子做其他的研究。比如把得到的因子作为自变量来做回归分析,对样本进行分类或评价,这就需要我们对公共因子进行测度,即给出公共因子的值,而不是仅仅只有一个矩阵——矩阵怎么搞回归分析嘛。

在这里插入图片描述
上图还是比较好理解的,但有一点不明白,就是为何p>m就不能得到精确的得分?→我的猜想:平时在矩阵中,如果列数>行数,也就是变量数量多于方程个数,就解不出来,列数=行数才能解。行数若多于列数,说明有一些方程是线性相关的,可以舍去。但此处多出来的行并不能舍去,而是具有自己的意义。比方说方程组中有两个方程,6=2x+1.5和6.5=2.1x+1.3,如果是严格的去算的话,x的解不唯一,因此我们就需要通过某种方法综合两个方程的信息,得到恰当的x。

上面都是题外话,不理解也没什么大关系,接下来介绍得到因子得分的方法。主要有两种方法:巴特莱特因子得分(加权最小二乘法)和回归法。
两种方法的原理见原文,巴特莱特因子得分比较好理解,就像是我们平常做OLS回归中,先待定回归系数,然后用大量的数据估计出回归系数。而此处就是把得分Fj当做回归系数来估计。而法2的回归法,我线代学的实在是太烂了,没看懂。

综合因子得分的计算就等于(各个因子得分乘以其方差贡献率)/各个因子的累计贡献率之和,详见文献

免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://yundeesoft.com/23457.html

(0)

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注

关注微信