PRML第九章读书笔记——Mixture Models and EM K均值/K中心点、高斯混合奇异性、EM观点下的高斯混合/K-means/混合伯努利分布/贝叶斯线性回归、推广EM算法

隐变量的引入使得复对于观测变量的复杂概率表示由简单分量组成
这一章和12、13章的重点都是隐变量

9.1 K-means Clustering

经典聚类算法了,目标函数为失真度量distortion measure
在这里插入图片描述
其中 r n k ∈ { 0 , 1 } r_{nk} \in \{0, 1\} rnk{0,1},表示是否 n n n属于类 k k k
最小化这个东西,导致K-means一定收敛

  • K-means的初始化很重要。实践中一种好的初始化方法为随机选K个点的集合。
  • K-means算法也用于初始化高斯混合模型的参数
  • 直接算K-means很慢,有一些加速方法
  • K-means有一个在线学习算法,将Robbins-Monro算法用于均值估计
    在这里插入图片描述

P429 K中心点算法K-medoids

K-means对离群点不鲁棒,K-medoids是一种更广泛的方法,其中 V ( ⋅ , ⋅ ) \mathcal V(\cdot, \cdot) V(,)是一个距离度量
在这里插入图片描述
E步好说,M步不好求,所以经常会把限制类中心在类里的某个数据点上。这样对于第 k k k类有 N k N_k Nk个数据点,计算复杂度为 O ( N k 2 ) O(N_k^2) O(Nk2)
下图为用K-means做分割(直接在RGB空间度量,这也可以用来做压缩)
在这里插入图片描述

9.2 Mixtures of Gaussians

经典算法了
在这里插入图片描述
在这里插入图片描述
γ ( z k ) \gamma(z_k) γ(zk)叫做第 k k k类的responsibility责任
在这里插入图片描述

该问题没有解析解。EM算法的更新公式为
在这里插入图片描述
其中
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在梯度优化中,
对于任意给定的最大似然解, K K K个分量混合而成的概率共有 K ! K! K!个等价的解
在EM算法中,优化的E步算每个点的后验概率,M步算新的 π , μ , Σ \pi, \bm \mu, \bm \Sigma π,μ,Σ

  • 高斯混合模型的条件分布仍然是高斯混合模型
    p ( x b ∣ x a ) = ∑ k = 1 K p ( k ∣ x a ) p ( x b ∣ x a , k ) = ∑ k = 1 K π k p ( x a ∣ k ) ∑ j π j p ( x a ∣ j ) p ( x b ∣ x a , k ) p(\bm x_b| \bm x_a)=\sum_{k=1}^K p(k|\bm x_a)p(\bm x_b |\bm x_a, k)=\sum_{k=1}^K \frac{\pi_k p(\bm x_a|k)}{\sum_j \pi_j p(\bm x_a|j)}p(\bm x_b |\bm x_a, k) p(xbxa)=k=1Kp(kxa)p(xbxa,k)=k=1Kjπjp(xaj)πkp(xak)p(xbxa,k)
    见习题9.10
    在这里插入图片描述

P433 高斯混合的奇异性

如果某一类的均值位于某个数据点上,方差可以无穷小,使对数似然概率达到正无穷,这导致了高斯混合的病态解。
注意,如果只有一类高斯,那么这种病态解是不会存在的,但是如果有多类,那么这种解就会存在,因为可以让另一个类有有限的正常的方差。
在这里插入图片描述
如果检测到高斯分量收缩到一个点,那么将它的均值重新设定为一个随机选择的值,并将方差设置为某个较大的值,然后继续优化。

9.3 An Alternative View of EM

PRML的EM算法引入太突兀。看李航《统计学习方法》会好不少。
即利用Jenson不等式构造
B ( θ , θ ( i ) ) = ∑ Z p ( Z ∣ X , θ ( i ) ) ln ⁡ p ( X , Z ∣ θ ) p ( Z ∣ X , θ ( i ) ) B(\theta, \theta(i))=\sum_Z p(Z|X,\theta^{(i)})\ln \frac{p(X,Z|\theta)}{p(Z|X,\theta^{(i)})} B(θ,θ(i))=Zp(ZX,θ(i))lnp(ZX,θ(i))p(X,Zθ)
抄一张CVMLI的图
在这里插入图片描述

  • E步,把 B ( θ , θ ( i − 1 ) ) B(\theta, \theta^{(i-1)}) B(θ,θ(i1))换成 B ( θ , θ ( i ) ) B(\theta, \theta^{(i)}) B(θ,θ(i))。注意,一定有 B ( θ ( i ) , θ ( i ) ) ⩾ B ( θ ( i ) , θ ( i − 1 ) ) B(\theta^{(i)}, \theta^{(i)})\geqslant B(\theta^{(i)}, \theta^{(i-1)}) B(θ(i),θ(i))B(θ(i),θ(i1))
  • M步,优化 B ( θ , θ ( i ) ) B(\theta, \theta^{(i)}) B(θ,θ(i))中的 θ \theta θ,得到 θ ( i + 1 ) \theta^{(i+1)} θ(i+1)
    CVMLI一书关于EM的描述见EM算法极简总结——CVMLI Prince读书随笔第7章,其中也定义了B函数,只不过参数顺序改了,这两个其实是一回事

PRML书里是这么写的
在这里插入图片描述
在这里插入图片描述
EM也可以用来找MAP,E步不变(想一下,E步是找关于 z z z的函数,和 θ \theta θ无关)M步改成最大化
Q ( θ , θ o l d ) + ln ⁡ p ( θ ) Q(\bm \theta, \bm \theta^{old})+\ln p(\bm \theta) Q(θ,θold)+lnp(θ)
好的先验 p ( θ ) p(\bm\theta) p(θ)会消除高斯混合中的奇异性

P442 EM观点下的高斯混合

在这里插入图片描述
在这里插入图片描述
全数据对数似然概率公式(全数据这样避免了对数里面的sum)
在这里插入图片描述

P443 EM观点下的K-means

考虑高斯混合模型,其中协方差为 ϵ I \epsilon \bm I ϵI并把它视作一个定值,而不是参数
在这里插入图片描述
在这里插入图片描述
如果 ϵ → 0 \epsilon \to 0 ϵ0,上下同乘 exp ⁡ { ∥ x n − μ k ∥ 2 / 2 ϵ } \exp \{\|\bm x_n-\bm \mu_k\|^2/2\epsilon\} exp{xnμk2/2ϵ},分子为 π k \pi_k πk,对于分母,如果 ∥ x n − μ k ∥ \|\bm x_n - \bm \mu_k\| xnμk如果不是最小的,则分母会到正无穷,也即 γ ( z n k ) = 0 \gamma(z_{nk})=0 γ(znk)=0,只有最小的距离对应的 γ ( z n k ) = 1 \gamma(z_{nk})=1 γ(znk)=1
μ \bm \mu μ的更新公式不变,而 π \bm \pi π也能优化,但失去意义(先验在EM里对推算后验没啥用了,高斯分布太极端了)

此时,全数据对数似然变为(这好像没写 π \bm \pi π啊)在这里插入图片描述

P444 伯努利分布混合模型

真的是一堆高维伯努利分布(注意高维伯努利分布和多类分布是不一样的)
在这里插入图片描述
其中 μ = { μ 1 , ⋯   , μ K } \bm \mu = \{\bm \mu_1,\cdots, \bm \mu_K\} μ={μ1,,μK} π = { π 1 , ⋯   , π K } \bm \pi = \{\pi_1, \cdots, \pi_K\} π={π1,,πK}
在这里插入图片描述
可以得到均值和方差分别为(实际上混合分布的均值和方差都可以这么写,见习题9.12)
在这里插入图片描述
开始EM,先写出
在这里插入图片描述
在这里插入图片描述

联合数据的对数最大似然
在这里插入图片描述
在这里插入图片描述
其中E步后验为
在这里插入图片描述

在M步,可以求出每类系数
在这里插入图片描述
其中
在这里插入图片描述
类的先验概率为
在这里插入图片描述
在这里插入图片描述

  • 混合伯努利分布中,不同于高斯混合,没有奇异性。对数似然概率不会到正无穷,存在对数似然概率极低的病态情况,但是只要初始化的合理,就没问题,毕竟EM只会把对数最大似然往上提
    示例, { 2 , 3 , 4 } \{2,3,4\} {2,3,4}三类二值图像:
  • 伯努利分布的先验是Beta分布,可以引入,当作对 x x x的额外观测(想象一下Beta分布的含义)
    如果即对 μ \bm \mu μ加上伯努利分布先验,又对 π \bm \pi π加上迪利克雷分布先验,则更新公式为(习题9.18)
    在这里插入图片描述
    在这里插入图片描述
  • 类内的伯努利分布也可以推广到多类分布,对应共轭分布先验是迪利克雷分布

P228 EM观点下的贝叶斯线性回归

在第三章中,计算模型证据,用MLE找超参数 α , β \alpha,\beta α,β
可以把 w \bm w w视作隐变量,这样就可以用EM了!
在这里插入图片描述
w \bm w w的后验求期望,得到E步
在这里插入图片描述
M步,求导后得到
在这里插入图片描述
在这里插入图片描述
这和第三章的形式稍有区别,但会收敛到同样的结果,(如果能收敛到同一个局部极小值的话)。注意第三章中极小值导数为0的等式(注意逆矩阵特征值为原矩阵的倒数)
在这里插入图片描述
在这里插入图片描述

  • EM也可以用于求RVM中的 α , β \alpha, \beta α,β w \bm w w的先验为。RVM和贝叶斯线性回归的证据函数很像,只不过就是 α \alpha α打散了
    在这里插入图片描述
    E步有 w \bm w w后验
    在这里插入图片描述
    在这里插入图片描述
    其中 Φ ∈ R N × M , A = diag ( α i ) \bm \Phi \in \mathbb R^{N\times M}, \bm A=\text{diag}(\alpha_i) ΦRN×M,A=diag(αi)
    M步优化参数
    在这里插入图片描述
    在这里插入图片描述
    可以看出,这和第七章的极值点情况一样

9.4 The EM Algorithm in General

(这一块内容感觉博客没组织好),其实还是在说 ln ⁡ p ( X ∣ θ ) \ln p(\bm X|\bm \theta) lnp(Xθ)这个事情
我们假定直接优化 p ( X ∣ θ ) p(\bm X|\bm \theta) p(Xθ)很难,但优化 p ( X , Z ∣ θ ) p(\bm X, \bm Z|\bm \theta) p(X,Zθ)很容易。从而
在这里插入图片描述
其中定义了
在这里插入图片描述
注意 L ( q , θ ) \mathcal L(q,\bm \theta) L(q,θ)是一个泛函
在这里插入图片描述

  • E步:当 q ( Z ) = p ( Z ∣ X , θ o l d ) q(\bm Z)=p(\bm Z|\bm X, \bm \theta^{old}) q(Z)=p(ZX,θold) L ( q , θ ) \mathcal L(q,\bm \theta) L(q,θ)达到最大
  • M步:
    在这里插入图片描述
    其实就是在优化如下的 Q \mathcal Q Q,这样能优化 L \mathcal L L L \mathcal L L ln ⁡ p ( X ∣ θ ) \ln p(\bm X|\bm \theta) lnp(Xθ)的下界。注意 L \mathcal L L抬升,必然导致对数似然的抬升,因为KL那一项更高了。。。
    在这里插入图片描述

EM的总体优化感受如图(跟上面CVMLI那图差不多)
在这里插入图片描述

  • 注意蓝线和红线相切那一点,也就是E步之后那一点,可以证明两线是相切的。( 习题9.25)

  • 如果 p ( Z , X ∣ θ ) p(\bm Z,\bm X|\bm \theta) p(Z,Xθ)是指数族函数的话, ln ⁡ \ln ln会使得指数消失,非常方便。EM方便的地方还是在于把 ln ⁡ \ln ln里面对于隐变量积分的操作去掉了,算起来容易!

  • 对于指数族分布混合来说,上图蓝线是上凸函数(我也不知道为啥)

  • 对于带先验 p ( θ ) p(\bm \theta) p(θ)的情况,EM的原理分析类似
    在这里插入图片描述

  • 对于iid的数据集
    在这里插入图片描述
    也即 z n \bm z_n zn只和 x n \bm x_n xn有关,和其他 x \bm x x无关。这使得EM也可以在每轮迭代中只采用一个数据点。。如果混合分量是指数族,则新数据点的后验(responsibility)是充分统计量,只更新一个数据点的后验即可。例如高斯混合模型中,对于数据点 m m m的迭代(习题9.26)
    在这里插入图片描述
    其中
    在这里插入图片描述
    方差和混合系数也能写出来(习题9.27)
    这样EM的计算速度就和数据量无关了。这种EM收敛更快。注意和梯度下降不同的是,这种EM仍然保证 L \mathcal L L单调递增!

P454 推广EM算法 generalized EM(GEM)

EM让E步和M步都变得可解,如果E步和M步仍然不可解,那么就需要generalized EM(GEM)。

  • 对于优化M步,方法可以是
    • 在M步用共轭梯度法之类的非线性优化方法
    • 期望条件最大化expectation conditional maximization(ECM),在M步中进行了若干具有限制条件的优化,例如把参数划分为若干组,M步被分为很多步,每一步只优化一个子集参数
  • 对于优化E步,方法可以是
    • q ( Z ) q(\bm Z) q(Z)也进行局部优化

参考文献:
[1] Christopher M. Bishop. Pattern Recognition and Machine Learning. 2006

  • 2
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值