我想知道对同一数据集执行主成分分析(PCA)和探索性因素分析(EFA)是否合乎逻辑。我听说专业人士明确建议:
- 了解分析的目的是什么,并选择PCA或EFA进行数据分析;
- 完成一项分析后,无需执行另一项分析。
我理解两者之间的动机差异,但是我只是想知道在同时解释PCA和EFA提供的结果时是否有错误?
我想知道对同一数据集执行主成分分析(PCA)和探索性因素分析(EFA)是否合乎逻辑。我听说专业人士明确建议:
我理解两者之间的动机差异,但是我只是想知道在同时解释PCA和EFA提供的结果时是否有错误?
Answers:
两种模型- 主成分和公共因子 -都是相似的简单线性回归模型,可以通过潜在变量预测观察到的变量。让我们拥有中心变量V1 V2 ... Vp,我们选择提取2个分量/因子FI和FII。那么模型就是方程系统:
其中系数a是载荷,F是因子或分量,变量E是回归残差。在此,FA模型与PCA模型的完全不同之处在于FA施加了以下要求:变量E1 E2 ... Ep(与F s 不相关的误差项)必须彼此不相关(参见图片)。这些误差变量FA称为“唯一因素”;它们的方差是已知的(“唯一性”),但按大小写的值则不是。因此,因子得分F仅作为良好的近似值进行计算,并不精确。
(此公共因子分析模型的矩阵代数表示法在脚注1中。)
在PCA中,来自预测不同变量的误差变量可以自由关联:没有施加任何误差变量。它们表示我们采用了遗漏的p-2尺寸的“浮渣” 。我们知道E的值,因此我们可以将组件分数F计算为精确值。
那就是PCA模型和FA模型之间的差异。
由于上述差异,FA能够解释成对的相关性(协方差)。PCA通常无法做到(除非提取的组件数= p);它只能解释多元方差2。因此,只要通过解释相关性的目的来定义“因子分析”术语,PCA 就不是因子分析。如果将“因子分析”更广泛地定义为提供或暗示可以解释的潜在“特征”的方法,则可以将PCA视为因子分析的一种特殊且最简单的形式。
有时 -在某些条件下的某些数据集中-PCA留下几乎不相关的E项。然后PCA可以解释相关性,变得像FA。具有许多变量的数据集并不少见。这使一些观察者断言,随着数据的增长,PCA结果变得接近FA结果。我不认为这是规则,但趋势确实可能是。无论如何,考虑到它们的理论差异,最好有意识地选择该方法。如果您想将变量减少到潜在值,FA将是一个更现实的模型,您将把这些潜在值视为变量背后的真实潜在特征并使它们相互关联。
但是,如果您还有另一个目标-在降低维度的同时尽可能保持数据云的各个点之间的距离-PCA比FA更好。(但是,迭代多维缩放(MDS)程序会更好。PCA 等于非迭代度量MDS。)如果您再也不关心距离,并且只对保留尽可能多的数据总体差异感兴趣尽可能少地选择-PCA是最佳选择。
因子分析数据模型: V = ˚F 甲' + é ð 我一克(Û )其中, V是分析的数据(列居中或标准化的), ˚F是常见的因子值(未知真实的,而不是因子分)与单元方差, A是公共因子负载的矩阵(模式矩阵), E是唯一因子值(未知), u是唯一因子负载的向量,等于唯一性的平方根( u 2)。一部分n cases x p variables
n x m
p x m
n x p
p
可以只标记为“é”为简单起见,因为它是在式打开的答案。
该模型的主要假设:
从公共因子分析模型得出,m个公共因子(m<p变量)的负荷 A(也表示为 A (m ))应密切再现变量 Σ之间观察到的协方差(或相关性)。因此,如果因子是正交的,则基本因子定理指出:
和Σ听,说: Σ +ð我一克(Ú2),
其中Σ是协方差再现(或相关性)与在其对角线上共同方差(“共同度”)的基质; 向量u 2是唯一方差(“唯一性”),即方差减去社区。非对角线差异(≈)是由于这些因素是生成数据的理论模型,因此,它比建立在其上的观测数据更简单。观察到的和再现的协方差(或相关性)之间差异的主要原因可能是:(1)因子数量m在统计上不是最优的;(2)偏相关(这些是p(p-1)/2
不属于共同因素的因素)(3)社区的评估价值不高,其初始价值不高;(4)关系不是线性的,采用线性模型是有问题的;(5)提取方法产生的模型“亚型”对于数据不是最佳的(请参阅有关不同的提取方法)。换句话说,某些FA数据假设未得到完全满足。
对于普通PCA,当m = p(使用所有分量)时,它会根据载荷精确地再现协方差,并且如果m < p(仅保留少量第一分量),则通常无法做到。PCA的因子定理是:
,
因此,负载和掉落的A (p - m )负载都是公用性和唯一性的混合体,并且两者都不能单独帮助恢复协方差。越接近米是p,更好的PCA恢复协方差,作为一项规则,但小米(这往往是我们感兴趣的)没有帮助。这与FA不同,FA 旨在以很小的最佳因子数恢复协方差。如果A A ' (p - m )接近对角线,则PCA变为FA,其中A恢复所有协方差。正如我已经提到的,PCA偶尔会发生这种情况。但是PCA缺乏强制这种对角化的算法能力。它是由FA算法完成的。
FA,而不是PCA,是一个数据生成模型:它假定为生成协方差的“真实”值的“真实”公因数(通常是未知数,因此请尝试在一定范围内尝试m)。观察到的协方差是“真实”的协方差+小随机噪声。(由于执行对角线化,使成为所有协方差的唯一恢复者,因此上述噪声可能很小且是随机的。)试图将比最佳量更多的因子拟合到过度拟合尝试中,而不一定是有效的过度拟合尝试。
两个FA和PCA旨在最大化,但对于PCA它是唯一的目标; 对于FA来说,这是随之而来的目标,另一个是消除独特性。该轨迹是PCA中特征值的总和。FA中的某些提取方法以最大化痕量为代价增加了更多的伴随目标,因此它并不重要。
总结两种方法之间的明显差异。FA旨在(直接或间接)最小化和A A '的各个对应非对角元素之间的差异。一个成功的FA模型是为协方差留下很小且类似随机变量的误差模型(正常或均匀值约为0,没有异常值/肥胖尾部)。PCA 仅最大化吨ř 一个Ç ë (甲甲'),其等于吨ř 一个Ç ë (甲'甲)(和等于主分量的协方差矩阵,该矩阵是对角的矩阵)。因此,PCA并不对所有个体协方差都“忙”着:它根本不能,只是数据正交旋转的一种形式。
由于最大化迹-方差解释由米部件- PCA 是占协方差,因为协方差是共享的方差。从这个意义上讲,PCA是变量的整个协方差矩阵的“低秩近似” 。从观测的角度来看,这种近似是观测的欧几里得距离矩阵的近似(这就是为什么PCA是度量MDS,称为“主坐标分析”)。这一事实不应使我们脱离PCA不建模的现实协方差矩阵(每个协方差),它是由极少的活着的潜在特征生成的,可以想象成对我们的变量而言是超验的;即使它很好,PCA近似仍然是固有的:这是数据的简化。
如果您想查看在PCA和FA中完成的分步计算,请进行注释和比较,请在此处查看。
我在以下主题中提供了PCA和FA之间异同的我自己的描述:是否有充分的理由使用PCA代替EFA?另外,PCA可以代替因子分析吗?
请注意,我的帐户与@ttnphns的帐户有所不同(如上面他的回答所示)。我的主要主张是PCA和FA并没有人们通常认为的那么不同。当变量数量很少时,它们的确可以有很大的不同,但是一旦变量数量超过十几个,它们往往会产生非常相似的结果。有关数学细节和蒙特卡洛模拟,请参见链接线程中的[long!]答案。有关我的论点的更为简洁的版本,请参见此处: PCA和FA在哪些条件下会产生相似的结果?
在这里,我想明确回答您的主要问题:对同一数据集执行PCA和FA是否有问题?我对此的回答是:不。
运行PCA或FA时,您无需检验任何假设。两者都是探索性技术,可用于更好地理解数据。那么,为什么不使用两种不同的工具探索数据呢?实际上,让我们开始吧!
variables. See my answer here: What are the differences between Factor Analysis and Principal Component Analysis? for mode details, but briefly -- I ran both PCA and FA analysis and made 2D biplots for both of them. One can easily see that the difference is minimal:
If the results turn out to be very similar, then you can decide to stick with only one approach
。当然。多少相似呢?If the results turn out to be very different, then maybe it tells you something about your data
那是完全神秘而深奥的。