EM算法应用到 因子分析

因子分析 (还没有完全弄透

一、总结:
因子分析其实就是降维。 (详细笔记见--斯坦福机器学习讲义: 因子分析笔记) 强烈建议回看
 
因子分析其实就是认为高维样本点实际上是由低维样本 点经过高斯分布、线性变换、误差扰动生成的,因此高维数据可以使用低维来表示。

因子分析是对应无监督学习问题,因为用到EM算法,还是有EM算法的,E步都是求出隐性变量Z,而z表示可能的类别,所以凡是有EM算法的,一定是无监督学习.

什么情况下用因子分析:

之前我们考虑的训练数据中样例x(i)的个数m都远远大于其特征个数n,这样不管是进 行回归、聚类等都没有太大的问题。
然而当训练样例个数 m 太小,甚至 m<<n 的时候,使 用梯度下降法进行回归时,如果初值不同,得到的参数结果会有很大偏差(因为方程数小于 参数个数)
这时候要用因子分析
 
因子分析最终目的是求出隐性变量z与样例x的联合分布
并且求出其所有参数:均值μ(n维),转换矩阵Λ和误差协方差Ψ。
下面几步都是围绕着联合分布的产生,参数如何估计得到 而展开的。
 
 

 
 二、问题
样例个数x~n(μ,Σ).
又上面一篇博文可知,高斯混合模型中的参数估计公式 类似 多远高斯分布参数:
 
当样例个数m小于特征个数n,则Σ为奇异矩阵=》不满秩,特征值为0==》Σ不可逆。
估计不出Σ,但仍用高斯分布估计,则假设限制协方差矩阵
 

三、限制协方差矩阵 
 我们假设特征间独立,则Σ为对角阵(即只有主对角线有元素,其余地方为0),高斯分布二维几何图对应的椭圆的两个轴与坐标轴平行。
 
如图,左边是高斯分布的三维图,所以自上而下看,高斯分布是椭圆。右边图可知,椭圆两个轴和坐标轴平行了
 
 缺点:特征间独立这个假设太强。 接下来,引用因子分析,使用更多的参数来分析特征间的关系
 

 
四、因子分析怎样将数据建模
  1.假设有隐性变量z~N(0,I),均值为0。即在一个k维的空间中按照多元高斯分布生成m个z(i)(k维向量)
  2、 然后存在一个变换矩阵Λ ∈ ℝn×k,将z(i)映射到n维空间中,即 Λz(i)因为z(i)的均值是0,映射后仍然是0。
  3.最后的结果认为是真实的训练样例x(i)的生成公式: 

  如下图递进表示:从 到 

 

上面的过程是从隐含随机变量z经过变换和误差扰动来得到  观测到的样本点。其中z被 称为因子,是低维的。

 
五、因子分析模型是:

  因子分析的总式:

对上式x = u +lumda*z + 误差, 分别求三个参数:

  1)求u:

      , 又已知E[z] = 0,所以

  2)求Σ: (......略)

    3)最终联合分布:(最重要!!)

       (总式)因子分析最终目的就是为了求出联合分布的所有参数:均值μ(n维),转换矩阵Λ和误差协方差Ψ。

    

 

    4)

 


 

六、EM参数估计:

  对上面4)式进行EM算法迭代:

    需估计参数:z是隐含变量,μ,Λ,Ψ是待估参数。

回顾EM步骤:

   (1)E步对z进行推导,

          。。。(省略)

     

  (2)M步对μ,Λ,Ψ求导。

          (具体推导过程见讲义。)
    最终是对所有参数进行估计了。

 

 根据上面的EM的过程,要对样本X进行因子分析,只需知道要分解的因子数(z的维 度)即可。通过EM,我们能够得到转换矩阵Λ和误差协方差Ψ。

因子分析实际上是降维,在得到各个参数后,可以求得z。但是z的各个参数含义需要自己去琢磨(还没琢磨出


 

 

 七、因子分析应用例子:

例如,在企业形象或品牌形象的研究中,消费者可以通过一个有24个指标构成的评价 体系,评价百货商场的24个方面的优劣。 但消费者主要关心的是三个方面,即商店的环境、商店的服务和商品的价格。因子分析 找出反映商店环境、
方法可以通过24个变量, 商店服务水平和商品价格的三个潜在的因子, 对商店进行综合评价。而这三个公共因子可以表示为:

 

posted @ 2013-05-20 08:30  无脚的鸟  阅读(2350)  评论(0编辑  收藏  举报