CS229课程笔记13:Factor Analysis简介

来源:互联网 发布:js trimend用法 编辑:程序博客网 时间:2024/05/17 16:03

Ng将FA作为EM算法隐变量是连续变量的例子进行介绍,讲了很多公式推导的过程;笔者仅介绍其原理以及构造。


若我们假设数据是高斯分布N(μ,Σ),利用最大似然法(maximum likelihood)得到的估计值为

μ^=1mi=1mxiΣ^=1mi=1m(xiμ^)(xiμ^)T

其中xiRnm为样本数量。

m<<n或者mn时,Σ^大概率是奇异的,即行列式为0且不存在逆元。若直接进行估计得到的估计值无法用于求取x的概率分布。根本原因是模型复杂度过高,样本数过少。解决方式可以是加强假设,降低模型复杂度。例如我们可以加入Σ是对角阵的假设,利用最大似然法可以很容易求得

μ^j=1mi=1mxijσ^j=1mi=1m(xijμ^j)2

其中j=1n。更强的假设是Σ=σ2I,当然也可以通过最大似然法求解。

上诉两个假设直接假设了所有predictor之间是无关的,这通常不符合实际情况,所以上诉两个假设实际使用并不广泛,效果不佳。Factor Analysis (FA)的假设相对较弱,相对前两种模型效果有所提升;但仍然依赖于高斯分布的假设,并不流行。目前最常用的成分分析的方法有ICA以及其各种变形。

Factor Analysis的假设

假设变量x是隐变量z的近似线性组合x=μ+Λz+ϵ,其中μRnx的偏移量,ϵRn用于拟合线性组合之外的偏差,zRd是位于低维空间空间中的隐变量(d<ndn),Λn×dzx的线性变换。

上诉是成分分析中常见的线性假设,Factor Analysis进一步假设zN(0,I),以及ϵN(0,Ψ),这也是FA基于高斯分布假设的由来。

Ng之后就开始分析高斯分布的性质,然后利用EM算法对FA进行求解。这里仅稍微讨论一下上诉假设的一些小推论。

xN(μ,ΛΛT+Ψ)x|zN(μ+Λz,Ψ)

值得注意的是FA的假设使得FA的Λ有无穷解,因为zN(0,I)各维对称,所以可以任意变换该低维空间的基而不影响结果。具体地,任意orthonormal的方阵R满足RTR=I,有x=μ+ΛRTRz+ϵ;令Λ=ΛRTz=Rz,则有E(z)=0Var(z)=E(zzT)=E(RRT)=I(因为R是方阵,基于逆元的性质),从而x=μ+Λz+ϵ,且zN(0,I)