期望最大化算法(EM算法)有啥缺陷( 二 )


期望最大化算法(EM算法)有啥缺陷


结果,可以用图像化来表示:
qplot(x=xs, y=ys, data=https://www.zhihu.com/api/v4/questions/24614401/Y) ggplot(aes(x=xs, y=ys), data=Y) + geom_point(aes(color=factor(test$cluster)))
期望最大化算法(EM算法)有啥缺陷



期望最大化算法(EM算法)有啥缺陷

期望最大化算法(EM算法)有啥缺陷

?

期望最大化算法(EM算法)有啥缺陷

期望最大化算法(EM算法)有啥缺陷

?


类似的其他情况这里不呈现了,另外r语言提供了EMCluster包可以比较方便的实现EM进行参数估计和结果的误差分析。
ret \u0026lt;- init.EM(Y, nclass = 2) em.aic(x=Y,emobj=list(pi = ret$pi, Mu = ret$Mu, LTSigma = ret$LTSigma))#计算结果的AIC

通过比较不同情况的AIC,我们可以筛选出适合的聚类数参数值。



■网友
EM算法本质上是非凸的,很容易陷入局部最优。variational bayesian要好一点,对优化函数有个积分操作,能平滑一下目标函数,滤除一些比较小的局部最优。更具体的就不懂啦,期待大神来解释。
■网友
disclaimer: 以下基于各人理解EM alg 有两个motivation (PRML)一般提得比较多的一点是:聚类问题里latent categorical变量Z导致直接对observed X做maximum (log) likelihood不可行,log被挡在sum外。而另一点是限制不够充分的聚类这一目标本身是病态的,举2-GMM为例,总可以单挑出一点x,将其单独归于一种高斯分布,并使该点在此分布下likelihood趋于无穷。因此直接寻求maximize imcomplete dataset的likelihood 不仅不可行,而且有可能无意义。于是EM转而寻求maximize log(p(X|\\theta)) 的lower bound (LB),使用的LB是convex的,maximize过程变得容易实现LB本身不保证找到全局最优对于第2点,对于GMM应该不会出现(聚类数已知)但如果不对p(X,Z|\\theta)分布类型做限制,仍然可以用某种多模分布使得likelihood趋于无穷而无意义(converge to the boundary of parameter space)
■网友
之前看过一点,RBM也是用的EM模型,并且有对它进行了优化,可以搜索一下RBM的优化,应该挺多这方面的论文的。具体优化下次再补充上来


推荐阅读