本章目录:
上一章讲了用图模型定义高维联合分布,基本思想是建模变量间的条件独立性。一个替代的方案是假设观测变量都与一个隐藏的“原因”关联,这种用隐变量建模的模型也被称为latent variable models 或 LVMs。这类模型比直接在可观测空间表征相关性的模型具有更少的参数,同时这类模型还可以作为一种瓶颈bottleneck,来获得数据的压缩表征。
隐变量模型LVM的DGM表示为:
11.2 Mixture models
最简单的隐变量模型是用
混合权重满足
11.2.1 Mixtures of Gaussians
最常见的混合模型就是高斯混合模型GMM:
有充分的大的
11.2.2 Mixture of multinoullis
当数据是多维二值向量时,类条件密度可以用伯努利分布的乘积表示:
此时对应混合模型(隐变量的分布和高斯混合的相同)的均值方差为:
其中
11.2.4 Mixtures of experts
混合模型还可以用来建模生成式(第14章)和判别式分类器。例如混合专家模型:
其中第二个等式被称为门函数。最终的预测为:
看着有点聚类的意思,聚类之后每个类都有个回归模型。
11.3 Parameter estimation for mixture models
第十章提到在参数给定时由观测变量计算隐变量的后验,这一节介绍如何学习参数。
上一节也提到计算完整数据时(不含隐变量),累积先验可以得到累积后验(所有family的累积),这给计算带来了极大便利;但是当有隐变量或缺失数据时,情况变得复杂,看上面的隐变量模型的DGM,如果
俩参数条件独立性不在就会导致以下问题。
11.3.1 Unidentifiability
最主要的问题是参数的后验将会有多个mode,也就是说密度是多峰的。例如下图2个高斯的混合,会造成2个后验峰值:
这种多峰会给贝叶斯推断带来问题,例如假设我们从后验得到一些
针对Unidentifiability的问题,有一些解决方法,例如把普通的MC近似变成MCMC。但是本章介绍的EM算法更加简单,思想是仅计算单个的局部mode,然后仅用它来近似MAP。
11.3.2 Computing a MAP estimate is non-convex
这里通过代数方式更严格的解释多个mode的原因,并且会得到更深层次的insight。考虑LVM的似然:
注意到求和是在log里面,这导致计算变得复杂。现在假设联合分布
此时完整数据的对数似然(注意是完整数据)重新写为:
第一项是参数的线性函数,第二项被证明是凸函数,因此整体有单个的最大值点。这个时候若有隐晗变量,那么观测数据的似然就变为:
这个时候虽然第一项和第二项都是凸的(log-sum-e是凸的),但是他们不一定凸在一个点上,这就导致多峰的存在。
11.4 The EM algorithm
上面说了有隐变量或有缺失数据的情况下,MLE和MAP难以计算,这个时候一个思路是使用基于梯度的优化算法,比如优化负对数似然,但是优化时需要始终保证协方差矩阵正定、混合权重和为1,所以优化也是困难的。一个更加简单的方法是使用期望最大化算法(EM算法)。
因为优化完整数据是容易的,所以EM在俩步之间迭代:参数已知,推导隐变量(E步);隐变量已知,推导参数(M步)。
11.4.1 Basic idea
设
EM算法首先定义完整数据的对数似然:
隐变量未知,完整数据似然无法计算,所以定义完整数据对数似然的期望:
其中t是当前迭代步,
如果计算MAP,那么M步修改为(加上先验对应的项):
注意到EM获得的对数似然要么单调增加要么不变,永远不会下降。
11.4.2 EM for GMMs
Auxiliary function
完整数据的对数似然的期望为:
其中
E-step
E步可以简单写成计算如下的责任值,这对于任何混合模型都是一样的:
M step
在M步中,主要优化
对于
这就是一个加权版本的MVN的MLE求解问题,容易求得新的参数估值为:
11.4.2.5 K-means algorithm
K-means是用EM算法解高斯混合的变体,在GMM中,我们假设
其中
注意到,在E步中,我们要计算N个点对于K个簇中心的距离,时间复杂度为
M步只需再更新每个簇的均值中心即可:
通常初始化可以随机选取一些点作为簇中心,但是一个更好的方法是,首先均匀随机地选一个点,然后从剩下的点中选择下一个点,并且距离最近簇中心越远的点选中概率越大,这被称为k-means++算法。
一个启发式的GMM改进是,将混合权重看成簇的评分,每次将最大得分的簇分成两部分,新的簇中心是原始中心的扰动,新的评分是原始评分的一半;同时,如果一个新的簇评分过小,或者方差过小,则将其删除。
11.4.2.8 MAP estimation
以上的MLE解存在过拟合问题,并且GMM中的过拟合会更加严重,因为一旦某个簇的均值刚好取到一个数据点上,那么此数据点对应的似然将会无穷大,这显然是无法接受的。此时需要求MAP解。MAP下的辅助函数Q只需加上先验对应的项:
也就是E步算的责任值不变,但是M步的计算改变了,对于
由于参数
由第四章结果可知MAP为:
至于先验NIW的超参设置,书中写详细分析了一波,先不记了。
11.4.3 EM for mixture of experts
书中还举了几个EM的实际例子,这里介绍专家混合模型和DGM中的应用。前面提到的专家混合模型,完整数据的对数似然为:
在M步中,需要关于
这是一个加权最小二乘问题,由8.3.4的结论,容易获得:
其中
对于
11.4.4 EM for DGMs with hidden variables
将条件概率分布看做表格,即
完整数据的对数似然为:
其中
其中
于是M的结果容易得到(拉格朗日乘数法,