机器学习非监督分类之因子分析

        随机变量X是混合高斯分布时,我们采用EM算法可以解决,此时样本的数量是远大于特征数量的,当样本数量小于特征数量时,我们该如何建立模型呢?因子分析进入人们的视野。

假设数据是高斯分布,我们估计期望和方差:


由于样本数量小于特征数量,我们可以发现|∑| = 0,Σ是奇异矩阵,那么 Σ-1 就不存在。但我们仍想使用高斯分布,那就需要对∑进行限制。

一、∑的限制

∑没限制之前,对角线上的元素为:


我们添加限制,∑不仅是对角线元素,且元素相等,Σ=σ2I,其中 σ2 是控制参数,σ2为


只要m>2, ∑就是非奇异的。

二、高斯的边缘和条件分布

后面可能会用到高斯的边缘和条件分布,所以我们在这里简单介绍一下。

假设有一个随机变量


其中 x1 属于 r 维向量空间,x1∈Rr,x2∈Rs,x∈Rr+s,假设 x~N(μ,Σ),其中


 E[x1]=μ1,Cov(x1)=E[(x11)(x11)]=Σ11,所以


x1的高斯边缘分布x1~N(μ111),x1|x2条件分布为x1|x2~N(μ1|21|2),所以


三、因子分析模型

我们假设(X,Z)是联合分布,其中Z是隐含变量,所以


其中Z是k维向量 μ∈Rn,矩阵 Λ∈Rn×k,对角矩阵 Ψ∈Rn×n,k 值通常是小于 n 的。我们假设数据xi是由k元高斯zi产生的,将它通过 μ+Λz(i)映射到n维,再加上噪音Ψ。

因子分析模型如下:


(z,x)联合高斯分布为


x的期望


联合分布期望为


我们可得Σzz=Cov(z)=I



联合分布为


x的边缘分布为x~N(μ,ΛΛT+Ψ),给定样本集 {x(i);i=1,2,...,m},我们能得到极大似然估计为


我们采用EM算法

四、求因子分析

EM算法第一步E求期望, Qi(z(i))=p(z(i)|x(i);μ,Λ,Ψ)

                

我们可得到



我们可得到Qi(zi)为


第二部M算法最大化求参数

使最大化

上式可简化为

后面两项与参数无关,所以可以舍去,只留第一项,所以


对Λ求导可得


导数等于0,我们可以得到


我们得到


从 Q 是均值为 μz|x 协方差为 Σz|x 的高斯的定义可得:


第二式对于随机变量 Y,Cov(Y)=E[YYT]-E[Y]E[Y]T。

所以


我们通过求导也可以得到:


设置 Ψiiii。对角矩阵 Ψ 只包含对角元素 Φ。

五、优缺点:

优点:

缺点:

待补充

参考:

https://www.cnblogs.com/NaughtyBaby/p/5408643.html

猜你喜欢

转载自blog.csdn.net/fengziyihang/article/details/79876374