(all is based on the stanford's open-course cs229 lecture 13)

接上次笔记 机器学习 cs229学习笔记2 (k-means,EM & Mixture of Gaussians)

如何确定EM算法converge呢?

当然是比较前后两次迭代的似然函数的大小,如果相差极小,则可以证明算法已经converge了

假设一次迭代开始时的参数是θ(t),迭代结束时的参数是θ(t+1)

因为我们之前对于Qi的选择保证了Jensen不等式的等号成立,所以对于θ(t)的似然函数就是

机器学习 cs229学习笔记3 EM alogrithm Mixture of Gaussians revisited

θ(t+1)的似然函数则大于上式,原因很简单,因为θ(t+1)的取值是通过下图得到的

机器学习 cs229学习笔记3 EM alogrithm Mixture of Gaussians revisited

上面说明了EM算法是converge的

说实话:我感觉EM算法就是一种最大化似然函数的一个方法,因为原似然函数可能很难通过计算求出来

             而EM取巧了,通过Jensen不等式,每次通过最大化一个下界,一次次逼近最大值。而这个下界往往很好求得。

      也不知道对不对,还请知道的指教一下

///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

Mixture Gaussians revisted:

这部分不想讲太多,其实就是反过去用EM算法的通式去推导出之前那个EM算法的特例

大家可以去看看note,需要的话就去看看note,讲得还是很详细的

///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

这节课的视频其实很大一部分用来讲了EM算法的一些应用的推导,比如文本分类之类的

过程大体相似,下来之后我还是得自己思考着试图推一下,这里就不写太多了

然后讲到的就是Factor analysis,这是这节课的主要内容了

///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

Factor analysis:

引入:

我们在执行EM formixture of gaussians的时候,绝大多数情况下样例数一定会比数据的维度大,即sample m >> dimension n

但是如果这个条件不满足的话(这是有可能的,比如文本分类的时候)

这时就会出现异常情况,如果n >> m,那么混合高斯函数的协方差矩阵∑就会变成奇异矩阵(singular),那么∑的逆矩阵就不存在

也就是说(1/||^)(1/2)就会变成1/0,而这些都是计算时需要的

那么可以想到的方法之一就是对∑进行严格要求

1.严格要求∑为对角矩阵

机器学习 cs229学习笔记3 EM alogrithm Mixture of Gaussians revisited

  这样multivariate gaussian的分布图像的等高线就会是一个圆形(二维中,如果是更高维则是高维中的sphere)

这样就会使算法失去一些有用的特性,同样也会出现一些参数上的方差为0而形成奇异矩阵

2.使∑为单位矩阵的倍数,倍数为所有样例的所有参数的方差之和

机器学习 cs229学习笔记3 EM alogrithm Mixture of Gaussians revisited

也就是在1的基础上进行更严格的要求,谨防一些参数上的方差为0而形成奇异矩阵

越严格要求∑,算法就会越死板,因而我们需要Factor analysis

在此之前先介绍一下多元高斯函数的边缘概率和条件概率

多元高斯函数的边缘概率和条件概率(待自证)

这里就直接给出一些公式了,因为我自己还没有推出来,andrew ng也是直接给的公式,等我看看再来补充这里吧(数学方面的确薄弱了些,准备加强)

                             机器学习 cs229学习笔记3 EM alogrithm Mixture of Gaussians revisited

                  机器学习 cs229学习笔记3 EM alogrithm Mixture of Gaussians revisited

其中,机器学习 cs229学习笔记3 EM alogrithm Mixture of Gaussians revisited,x2类推

并且:

机器学习 cs229学习笔记3 EM alogrithm Mixture of Gaussians revisited

等我自己看懂再回来给出推导过程吧。。。。。。。。。。。。。(证明见此

//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

Factor analysis

正文:factor analysis model 到底是啥呢

其实就是用更多的参数来捕获(capture)数据中间的关联关系,通过这些与普通混合高斯不同的参数来使协方差矩阵不至于奇异

那么首先给出下面推导需要的一些定义:

机器学习 cs229学习笔记3 EM alogrithm Mixture of Gaussians revisited

注意前两个式子 等价于 后面三个式子

其中z是隐含变量(latent variable)其实就是之前的y,也就是之前的Qi或者说w。

z是一个k维向量,k是混合高斯的个数(这里有问题,待修改),μ是一个n维向量,∧是一个n*k的矩阵,Ψ是一个n*n的对角矩阵

这个过程就是怎么弄的呢:1.想象x是由z生成的,将x映射到k维的仿射(affine)空间

2.加上ε的noise

也就是说将k维中z上的点映射到n维的空间中,而我们得到的数据x是n维的,所以如果得到了数据,则可以用这样一个model来fit数据

下面是一个实例:其中黄色的点就是我们得到的数据,而黑色的圆圈就是加上的noisy

factor analysis model就是给出黄色的点后我们试图去得到一个黑色的model,注意μ=0

机器学习 cs229学习笔记3 EM alogrithm Mixture of Gaussians revisited

给出这些定义之后,我们就可以得到:

机器学习 cs229学习笔记3 EM alogrithm Mixture of Gaussians revisited

通过上面多远高斯函数的式子,一层层计算就可以将上式演化成:(这部分推导很简单,就是将上面那个cov(x)的各项计算出来,因为其中的每个部分给的比较清楚,所以这部分略过了)

机器学习 cs229学习笔记3 EM alogrithm Mixture of Gaussians revisited

那么这样一个混合高斯的log似然函数就可以根据高斯函数的定义得到

机器学习 cs229学习笔记3 EM alogrithm Mixture of Gaussians revisited

显而易见,这货不好最大化,怎么最大化呢,当然是EM算法啦,这部分会在下节课中讲到。that's all

呼~~累死







           

相关文章:

  • 2021-06-25
  • 2021-11-01
  • 2022-12-23
  • 2021-04-19
  • 2021-05-13
  • 2022-12-23
  • 2021-08-15
  • 2021-04-04
猜你喜欢
  • 2022-01-08
  • 2021-10-22
  • 2021-08-31
  • 2021-04-05
  • 2021-09-29
  • 2021-05-18
相关资源
相似解决方案