1
模式识别与智能计算的MATLAB实现
1.16.6.1 14.6.1 因子分析的一般数学模型
14.6.1 因子分析的一般数学模型

假定有p个变量X1,X2,…,Xp,在n个样品中对这p个变量观察的结果组成了如下的原始数据矩阵:

alt

通常为了消除变量之间在数量级或量纲上的不同,在进行因子分析之间都要对变量进行如下公式的标准化处理:

alt

其中,alt和σi分别是第i个变量的平均值和标准差。假定标准化以后的变量是z1,z2,…,zp,则标准化数据矩阵为

alt

标准化的目的是使每一个变量的平均值都为零,方差都为1。

因子分析的基本假设是p个标准化变量z1,z2,…,zp,可以是由k个新的标准化变量即因子F1,F2,…,Fk的线性组合,如下式表示:

alt

aij(i=1,2,…,p;j=1,2,…,k)是变量zi在因子Fj中的载荷。

可以证明

alt

其中,fij为因子在某个样品中的得分值。

由此可见,alt就是因子Fk对变量Zi所提供的方差。各个因子对同一变量Zi所提供的总方差就等于该变量的方差,即1。

alt是同一因子F对不同的变量z1,z2,…,zp所提供的方差的总和,称为Fj的方差贡献,也即n个样品点沿Fj轴的方向的方差,此值越大,说明n个样品在Fj轴方向上的变化就越大,Fj所提供的信息也就越多,越重要。

在计算因子载荷时,需要变换和旋转因子,但不改变特征间的距离,因子保持正交。在数学上这样的变换通过解特征值问题得以实现。最佳载荷因子可由因子旋转的方法获得。因子旋转的目的在于使因子的载荷的结果简单化,获取的新坐标系统是最佳的将测量数据点进行分组的方式。

若L表示载荷矩阵,Lrot表示旋转后的载荷矩阵,T表示变换矩阵,则对于正交旋转,有

Lrot=LT

对非正交旋转,若用Lfst表示因子结构矩阵,Lfst含有公共因子特征的相关的信息,则

Lfst=LT

最常用的是方差最大正交因子旋转。它是一种以因子载荷的方差达到极大为基础的一种正交因子旋转方法。通过正交变换后,使因子载荷中尽可能多的元素接近于零,而只在少数几个特征上有较大的载荷,从而使载荷矩阵的结构简化,有利于作出有意义的解释。

因子分析和主成分分析既有共同点,也有区别。主成分分析仅仅是一种数据变换而不假定数据矩阵有什么样的结构形式,而因子分析假定数据有特定的模型,而且其中的因子满足特定的条件。

因子分析和主成分分析都是从相关矩阵(协方差矩阵)出发,找出解决问题的方法。但因子分析是利用主成分分析法从相关矩阵中提取公因子,公因子个数q小于变量个数p,这q个不同因子对同一变量Zi所提供的变量总方差作说明,其分析模型为

Z=AF+ε

主成分分析是利用p个主成分说明p个变量的总方差,其分析模型为

Y=AX或X=A-1Y

因子分析和主成分分析模型中矩阵A的元素是不相同的。在因子分析中,因子载荷(即矩阵A的列向量)平方和等于对应因子的特征值。主成分分析法是将相关阵(协方差阵)“分解”为相互正交的、彼此无关的主成分,而因子分析除可“分解”为正交、独立的之外,还可“分解”为斜交的相关的因子。

事实上,当独特因子(ε)方差贡献很小时,主成分分析和因子分析会得出相同的结果,但当独特因子贡献较大时,因子分析是把公因子和独特因子严格区别,但主成分分析则把这些因子不加区别地混在一起作为主成分被保留或舍弃。