因子分析(FA)算法简述


前言

在学习数据降维时,了解到因子分析(FA)算法是其中的一种方式,因此,在这里对因子分析算法做一个简要的归纳、梳理,后续会对数据降维的几种方式做个总结,感兴趣的朋友,可以持续关注。

一、什么是因子分析?

因子分析法是指: 研究从变量群中提取共性因子的统计技术,这里的共性因子指的是不同变量之间内在的隐藏因子。例如,一个学生的英语、数据、语文成绩都很好,那么潜在的共性因子可能是智力水平高。因此,因子分析的过程其实是寻找共性因子和个性因子并得到最优解释的过程。
其基本思想是: 根据相关性大小把变量分组,使得同组内的变量之间相关性较高,但不同组的变量不相关或相关性较低,每组变量代表一个基本结构一即公共因子。
因子分析有两个核心问题: 一是如何构造因子变量,二是如何对因子变量进行命名解释。
因子分析类型: R型因子分析与Q型因子分析,就像聚类分析分为R型和Q型一样,R型的因子分析是对变量作因子分析,Q型因子分析是对样品作因子分析,本文是以R型因子分析展开。

1.1 因子分析应用背景

因子分析用于处理高斯数据,主要应用于以下两种情形

  1. 假如有 m 个样本,每个样本的维度是 n, 如果 n » m;这时哪怕拟合出一个高斯模型都很困难,更不用说高斯混合, 为什么呢?其实,这和解多元线性方程组是一样的道理,就是自变量的个数多于非线性相关的方程的个数,这必然导致解的不唯一,虽然在解方程的时候可以随便选一个解满足方程组,但是对于某一实际数据集,往往样本对应的概率分布在客观上都是唯一的,只是我们无法简单地用概率论中的几个典型的分布准确表示出来罢了!
  2. m 个样本的维度都较低。用高斯分布对数据建模,用最大似然估计去估计均值(期望)和方差:
    在这里插入图片描述
    我们会发现,协方差矩阵 Σ 是奇异的,即 Σ 不可逆,Σ-1 不存在,且有:
    在这里插入图片描述
    但是这两项在计算多元高斯分布时,又都是必不可少的。所以,除非 m 比 n 大一定较合适的数值,否则对方差和均值的最大似然估计将会很难找到正确的值。

1.2 因子分析算法的基本步骤

应用因子分析算法时,常常有如下几个基本步骤:

  1. 确定原有若干变量是否适合于因子分析;因子分析的基本逻辑是从原始变量中构造出少数几个具有代表意义的因子变量,这就要求原有变量之间要具有比较强的相关性,否则,因子分析将无法提取变量间的“共性特征”(变量间没有共性还如何提取共性?)。实际应用时,可以使用相关性矩阵进行验证,如果相关系数小于0.3,那么变量间的共性较小,不适合使用因子分析;也可以用KMO 和 Bartlett 的检验来判断是否适合做因子分析,一般来说KMO的值越接近于1越好,大于zhi0.5的话适合做因dao子分析,你的KMO值是0.674大于0.5。Bartlett 的检验主要看Sig.越小越好,你的接近于0.由此可以得出,你的数据适合做因子分析。
  2. 构造因子变量;因子分析中有多种确定因子变量的方法,如基于主成分模型的主成分分析法和基于因子分析模型的主轴因子法、极大似然法、最小二乘法等。
  3. 利用旋转使得因子变量更具有可解释性 ;在实际分析工作中,主要是因子分析得到因子和原变量的关系,从而对新的因子能够进行命名和解释,否则其不具有可解释性的前提下对比PCA就没有明显的可解释价值。
  4. 计算因子变量的得分 。子变量确定以后,对每一样本数据,希望得到它们在不同因子上的具体数据值,这些数值就是因子得分,它和原变量的得分相对应。

具体而言:

  • (1) 相关性检验,一般采用KMO检验法和Bartlett球形检验法两种方法来对原始变量进行相关性检验;
  • (2) 输入原始数据Xn*p,计算样本均值和方差,对数据样本进行标准化处理;
  • (3) 计算样本
  • 169
    点赞
  • 1072
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值