因子分析(Factor Analysis)——理论介绍

发布于 2024年4月22日 星期一 20:57:08 浏览:521
原创不易,转载请注明来源,感谢!

因子分析(Factor Analysis)和主成分分析(Principal Component Analysis,PCA)都是常用的信息浓缩、数据降维的统计学方法。尽管两者在数据处理功能上具有相似性,但却是不同的分析技术。本文主要概述因子分析的理论及应用。

关键词:主成分分析;因子分析;降维;特征提取;数据简化

因子分析不仅是主成分分析的推广和扩展,而且在多个方面进行了更深入研究。它通过综合多个复杂关联的变量(或案例)为少数几个因子,不仅重现了原始变量与因子之间的关系,还探讨了几个可直接测量并具有相关性的实测指标是如何受到少数内在独立因子的影响。此外,因子分析还尝试对变量进行分类,以揭示实测指标背后的潜在因子,这是因子分析的核心目标。

一、基本思想

多变量的实测数据中呈现出的相关性,可能对应同一个不可观测的潜在因素,称之为潜变量(Latent variable)。因子分析是通过研究多个变量间相关矩阵(或协方差矩阵)的内部依赖关系,找出能综合所有变量主要信息的少数几个随机变量,这几个随机变量通常不能直接测量,通常称为潜变量或因子。各个因子间互不相关,所有变量都可以用公因子的线性组合表示。因子分析的目的就是减少变量的数目,用少数因子代替所有变量去分析整个问题。

二、模型结构

举例说明:假设观测了景区的8个指标:X1年旅游人数(万人)、X2年景区住宿人数(万人)、X3人均住宿天数(天)、X4国内游客平均消费(元)、X5国际游客平均消费(元)、X6景区设施投资(万元)、X7景区工作人员数(人)、X8景区导游数(人),这8个指标综合反映旅游人数、旅游消费、旅游服务3个内容,而这3个内容不能直接测定。若用F1F2F3分别表示3个因子,则可以设想,可测指标Xi是不可测因子Fj的线性函数,即Fj对各Xi的影响是线性的,再加上其他对这些Xi有影响的因子ɛi,则各XiF1F2F3的关系可表示为:

\(X_{1}=a_{11} F_{1}+a_{12} F_{2}+a_{13} F_{3}+\varepsilon_{1}\)
\(X_{2}=a_{21} F_{1}+a_{22} F_{2}+a_{23} F_{3}+\varepsilon_{2}\)
\(X_{3}=a_{31} F_{1}+a_{32} F_{2}+a_{33} F_{3}+\varepsilon_{3}\)
\(X_{4}=a_{41} F_{1}+a_{42} F_{2}+a_{43} F_{3}+\varepsilon_{4}\)
\(X_{5}=a_{51} F_{1}+a_{52} F_{2}+a_{53} F_{3}+\varepsilon_{5}\)
\(X_{6}=a_{61} F_{1}+a_{62} F_{2}+a_{63} F_{3}+\varepsilon_{6}\)
\(X_{7}=a_{71} F_{1}+a_{72} F_{2}+a_{73} F_{3}+\varepsilon_{7}\)
\(X_{8}=a_{81} F_{1}+a_{82} F_{2}+a_{83} F_{3}+\varepsilon_{8}\)

由于F1F2F3与每一个Xi都有关,故称F1F2F3为各Xi的公因子(Common factor),又称为共性因子;ɛi只与相应的一个Xi有关,故ɛi称为Xi的特殊因子(Specifc factor),代表公因子以外的影响因素所导致的(不能被公因子所解释的)变量变异。

设有n个样品,k个变量,通过分析实测数据X1X2,…,Xk之间的相关性,存在m个不可观测的公因子F1F2,…,Fm (mk),则可建立如下模型:

\(X_{1}=a_{11} F_{1}+a_{12} F_{2}+\cdots+a_{1 m} F_{m}+\varepsilon_{1}\)
\(X_{2}=a_{21} F_{1}+a_{22} F_{2}+\cdots+a_{2 m} F_{m}+\varepsilon_{2}\)
\(\cdots \cdots\)
\(X_{k}=a_{k l} F_{1}+a_{k 2} F_{2}+\cdots+a_{k m} F_{m}+\varepsilon_{k}\)

被称为因子模型。矩阵A = (aij)称为因子载荷矩阵,aij为因子载荷(Loading),其实质就是公因子Fj和变量Xi的相关系数。

在因子分析中,对于提取的公因子,首要任务是检查它们在哪些变量上显示出较高的载荷,以此来揭示这些公因子的实际含义。然而,初始因子模型得到的因子载荷矩阵可能相当复杂,这使得直接解释各个因子变得困难。为了简化这一过程并获得更清晰的因子结构,进行因子旋转是一种有效的策略。通过旋转,我们可以重新定位因子载荷,从而使因子之间的关系更加明确,便于提供更加合理的解释。

因子分析得到的模型有两个特点:

  • 其一,模型不受量纲的影响;
  • 其二,因子载荷不是唯一的,通过因子轴的旋转,可以得到新的因子载荷矩阵,使其专业意义更加明显。

三、各统计量意义

除特征值、方差贡献率、累积贡献率等主成分分析中已经解释过的统计量之外,详见主成分分析(Principal Component Analysis)——理论介绍,因子分析中还引入了因子载荷和变量共同度这两个重要概念。

(一) 因子载荷

因子载荷aij为第i个变量在第j个因子上的载荷,实际上就是公因子Fj和变量Xi的相关系数,表示变量Xi依赖因子Fj的程度,或者说反映了第i个变量Xi对于第j个公因子Fj的重要性。

(二) 变量共同度(Communalities)

变量共同度又称为公因子方差比,记为\(h_{i}^{2}\),表示全部公因子对变量Xi的总方差所做出的贡献,或者说变量Xi的信息能够被提取出的k个公因子所描述的程度,数值在0~1之间,取值越大,说明该变量能被公因子解释的信息比例越高,如果各因子间完全独立正交,则公因子方差比和因子载荷是可换算的,公式为:

\(h_{i}^{2}=\sum_{i=1}^{p} a_{i j}^{2},(j=1,2, \cdots, k)\)

四、前提条件

开展因子分析一般需要满足以下前提条件:

(一) 足够的样本量

因子分析旨在解析变量间的内在关联结构,因此,充足的样本量是确保分析结果可靠性的关键。通常,探索性因子分析至少需要样本数量超过分析条目数的5倍。对于验证性因子分析,样本量则需是分析条目数的5~10倍,而为了获得更加理想的分析结果,推荐的样本量应达到变量数的25倍以上。理论上,样本总数不应少于100例。在处理实际问题时,常常面临样本量不足的挑战。尽管这不完全阻止进行因子分析,但研究者必须认识到,不足的样本量可能导致模型不稳定,因此在解释分析结果时需要特别谨慎。这种情况下,可采用适当的统计技巧和方法论调整,以优化分析过程和结果的稳定性与准确性。

(二) 各变量间应当具有相关性

因子分析的有效应用依赖于变量之间存在一定程度的相关性。如果变量彼此独立,无法提取任何共同的因子,因子分析在这种情况下将不适用。为了评估变量间的相关性,可以采用巴特利特球形检验(Barlett's test of sphericity)。如果此检验显示相关矩阵接近单位矩阵,即表明各变量独立,那么因子分析将不适用。进一步的相关性评估可以通过Kaiser-Meyer-Olkin (KMO)检验来完成,该检验的值范围从0到1。KMO值越接近1,表明变量间的偏相关性越强,适用于因子分析的条件越理想。在实践中,KMO值大于0.7通常意味着因子分析将提供可靠的结果。相反,当KMO值低于0.5时,则表明因子分析可能不是最佳的方法选择,此时应考虑重新设计变量结构或采用其他统计分析方法。

(三) 因子分析中各公因子应当具有实际意义

在主成分分析中,各主成分实际上是矩阵变换的结果,因此意义是否明确并不重要。但是,在因子分析中,提取出的各因子具有实际意义这一点至关重要,如果不能找到各因子在专业上的合理解释,就应该重新进行分析。

五、分析步骤

因子分析通常有以下4个步骤:

  • 对于原来k个变量进行标准化,以消除变量在数量级或量纲上的影响。
  • 根据标准化后的数据矩阵求出协方差或相关矩阵。
  • 求出协方差或相关矩阵的特征值和特征向量。
  • 因子分析,确定公因子数目。
  • 因子旋转变换。因子分析要求提取出的公因子有实际含义,未旋转前的因子意义有时不是很明显,为了使因子载荷矩阵中系数更加显著,可以对初始因子载荷矩阵进行旋转,将因子和原始变量间的关系重新进行分配,使相关系数的绝对值向(0,1)区间的两端分化,从而更加容易进行解释。
  • 计算因子得分。即将公因子表达为各变量的线性形式,这种表示称为因子得分函数,用于量化每个主成分在原始数据中的具体影响。然而,在因子分析中,由于所用的算法可能不同于主成分方法,因此我们通常无法直接从因子载荷矩阵得出公因子的精确表达式。在这种情况下,需要通过估计方法来计算因子得分,其中最常用的是回归方法。

六、主要用途

因子分析的用途非常广泛,它不仅可以替代主成分分析用于如主成分综合评价、主成分回归等场景,以获得更合理的分析结果,还可以应用于多种其他分析需求:

  • 研究设计与量表效果评估:在量表开发和评估阶段,因子分析是评价量表结构效度的强有力工具。通过因子分析,研究者可以评估量表中各题目的测量效果,进而对表现不佳的题目进行修改、替换或删除,优化量表结构,使其更能满足测量需求。
  • 统计分析:在统计数据分析阶段,因子分析用于探索和确认变量间的潜在结构。探索性因子分析(Exploratory factor analysis, EFA)主要用于发现数据中可能存在的因子结构,而验证性因子分析(Confirmatory factor analysis, CFA)则用于验证预先设定的因子结构是否得到数据的支持。这些分析通常是研究中解释变量内部结构的核心部分。

(一) 探索性因子分析

在探索性因子分析中,研究者通常没有预先的假设关于可能存在的公因子及其与观测变量之间的关联结构。此分析完全基于数据本身,旨在揭示数据中潜在的结构。EFA的主要目标是确定因子的数量,并进一步探索每个因子的具体含义。

为了确保得到统计上合理的结果,探索性因子分析对模型设定了一些额外的限制,例如要求各观测变量的残差相互独立,以及因子之间不相关。这些假设在实际应用中可能并不完全符合真实情况,因此EFA通常被视为分析流程中的初步步骤。

(二) 验证性因子分析

与探索性因子分析相对应,验证性因子分析是基于研究者对所研究因子和内在结构已有的完整假设而进行的。CFA允许研究者详细描述模型的全部细节,包括各个观测变量、因子和残差之间的具体关系。此分析的核心目的在于验证模型假设,即检验数据是否支持预设的理论结构。在实际应用中,根据模型的拟合结果,可能需要对假设进行调整并重新拟合模型,直到达到满意的拟合度为止。

七、主成分分析与因子分析的异同

(一) 差异

两者的分析重点不一致。从数学模型上看,主成分的数学模型为:

\(F=A X\)

即主成分为原始变量的线性组合。而因子分析的数学模型为:

\(X=A F+\varepsilon\)

即原始变量为公因子与特殊因子的线性组合。由此可见,两者的分析重点不一致,主成分分析主要关注于原始变量信息的综合,通过变量的线性组合提取出主成分以最大化解释原始数据的方差。而因子分析则侧重于解释原始变量之间的关联关系,模型中原始变量被表达为公因子和特殊因子的线性组合。此外,主成分分析和因子分析在因子得分的计算方式上也存在差异。在主成分分析中,每个主成分的得分可以直接通过数学计算得到,反映了每个变量对主成分的贡献程度。相比之下,因子分析中的公因子得分通常无法直接计算,而是需要通过估计方法来确定,这一过程依赖于因子载荷以及其他模型参数。

(二) 联系

如果不需要研究变量的内部结构,只要进行综合评价,同时不需要考虑数据矩阵的结构形式问题,使用主成分和因子分析都能达到预期研究目的,甚至前者更加简单。如果要考察变量间的内部结构,则因子分析法更合适,通过因子旋转可以使得到的公因子更容易解释。

八、知识小贴士

(一) 公因子提取方法

因子分析是从主成分分析法发展而来的,但是却不局限于主成分分析法常用的公因子提取方法包括:

  • 主成分法(Principal components)假设变量是各因子的线性组合,从解释变量的变异出发,尽量使变量的方差能够被主成分所解释,并保证各公因子对方差的解释比例依次减少。此方法的实际应用效果很好,绝大多数情况下无须更改。
  • 不加权最小平方法(Unweight least square)。该方法使实际的相关矩阵和再生的相关矩阵之差的平方和达到最小。
  • 广义最小二乘法(Generalized least square)。该方法也使实际的相关矩阵和再生的相关矩阵之差的平方和达到最小,但是对相关系数要进行加权。权重为其单值的倒数,这样单值高的变量的权重比单值低的变量的权重小。
  • 最大似然法(Maximum likelihood)。该方法要求数据服从多变量正态分布,此时它生成的参数估计最接近观察到的相关矩阵,在样本量较大时使用较好。此外,如果随后需要拟合验证性因子分析模型或结构方程模型,则应当考虑使用最大似然法拟合,这样前后各模型的分析结果会有一致性。
  • 主轴因子法(Principal axis factoring)。该方法从原始变量的相关性出发,使得变量间的相关程度能够尽可能地被公因子解释。该方法重在解释变量的相关性,确定内在结构,而对变量方差的解释不太重视。
  • α因子分析法(Alpha factoring)。该方法将变量看成是从潜变量空间中抽取的样本,在计算中尽量使变量的α信度达到最大。
  • 映像因子法(Image factoring)。该方法把一个变量看作是其他变量的多元回归,据此概念提取公因子。

事实上,如果变量数和样本量都大,而且相关性也高,则各种公因子提取法的结果基本相同,区别仅仅在于分析思想不同。主成分法是最常用的方法,在多数情况下也是最佳的选择;如果样本量极大(1000个以上),则最大似然法的结果更精确些;如果数据不好(样本小或变量少),α因子分析法或映像因子法可能更好。最后,在对各种方法的原理不太清楚或者适用条件不明的情况下,主成分法仍然是最好的选择。

(二) 如何确定公因子数量

确定公因子数量常有以下方法进行考量:

  • 累积贡献率。与主成分分析类似,在选取公因子时,也可以根据方差累积贡献率选取前几个公因子,以达到简化变量结构的目的。如,可以累积贡献率>70%的主成分数目为因子数目。
  • 特征值。特征值在某种程度上可以看作是衡量对应公因子解释力度大小的指标。一般要求特征值大于1。因为如果特征值小于1,说明该公因子的解释力度太弱,还比不上直接引入一个原始变量的平均解释力度大。但是这一点在因子分析中并不是绝对的,在实际应用中,可以将累积贡献率、特征值大小和碎石图等综合起来考虑。
  • 研究目的。必要时也可以保留特征值虽然小于1,但是在专业上有明确含义的公因子。此时,可以在“提取”子对话框中指定要提取的公因子数目,以达到特定的研究目的。如,以量表的维度为因子数目。

(三) 因子旋转方法

常用的因子旋转方法如下:

  • 最大方差正交旋转(Varimax)该方法是最常用的旋转方法,各因子仍然保持正交,但尽量使各因子的方差差异达到最大,即相对的载荷平方和达到最大,以方便对因子的解释。
  • 四次幂极大正交旋转(Quartimax)该方法对各因子方差差异化的效果更强,从而更倾向于减少与每个变量有关联的因子数,以简化对原始变量的解释。
  • 等量最大法(Equamax)该方法的特点介于最大方差正交旋转和四次幂极大正交旋转之间。
  • 直接斜交法。该方法是一种斜交旋转方法,需要首先指定一个因子映像的自相关范围。
  • 最优斜交法。这是最常用的斜交旋转方法,是在最大方差正交旋转的基础上再进行斜交旋转。旋转后允许因子间存在相关,这种旋转方式往往是在有具体的结果倾向时选用,它可以按研究者的目的将因子分解为最希望的形式。但是在实际应用中,由于斜交旋转的结果太容易受研究者主观意愿的左右,所以建议尽量采用默认的正交旋转。
End
文章目录 沉浸式阅读