机器学习笔记之em算法——隐变量与em算法的本质
引言
介绍了em算法公式的导出过程,本节将重新回顾em算法,比对各模型的求解方式,并探究引入隐变量与em算法的本质。
回顾:em算法
从性质上介绍em算法
em算法本质上是一种算法,它的目标是通过求解参数 θ \theta θ,将概率模型 p ( x ∣ θ ) p(\mathcal x \mid \theta) p(x∣θ)表示出来。
和em算法具有 相似性质 的如:极大似然估计(mle),最大后验概率估计(map):
θ ^ m l e = arg max θ log p ( x ∣ θ ) θ ^ m a p ∝ arg max θ log p ( x ∣ θ ) p ( θ ) \hat \theta_{mle} = \mathop{\arg\max}\limits_{\theta} \log p(\mathcal x \mid \theta) \\ \hat \theta_{map} \propto \mathop{\arg\max}\limits_{\theta} \log p(\mathcal x \mid \theta)p(\theta) θ^mle=θargmaxlogp(x∣θ)θ^map∝θargmaxlogp(x∣θ)p(θ)
和上述两种方法不同的是,em算法并没有求解析解,而是迭代解:
与其说是求解,不如说是对求解过程中‘对解进行优化’。相似方法的有‘梯度下降’~
θ ( t + 1 ) = arg max θ ∫ z p ( x , z ∣ θ ) p ( z ∣ x , θ ( t ) ) d z \theta^{(t+1)} = \mathop{\arg\max}\limits_{\theta} \int_{\mathcal z} p(\mathcal x,\mathcal z \mid \theta)p(\mathcal z \mid \mathcal x,\theta^{(t)}) d\mathcal z θ(t+1)=θargmax∫zp(x,z∣θ)p(z∣x,θ(t))dz
通过em算法的收敛性证明,可以推导出em算法在迭代过程中可以对模型参数的解 θ \theta θ进行优化,从而达到一个至少是局部最优的解:
log p ( x ∣ θ ( t + 1 ) ) ≥ log p ( x ∣ θ ( t ) ) \log p(\mathcal x \mid \theta^{(t+1)}) \geq \log p(\mathcal x \mid \theta^{(t)}) logp(x∣θ(t+1))≥logp(x∣θ(t))
其他概念回顾
由于em算法的算法性质,自然和之前介绍的其他概念存在明显区分:
线性回归
例如之前介绍的很多概念如:线性回归,它的模型只是一个线性函数:
f ( w , b ) = w t x + b f(\mathcal w,b) = \mathcal w^{t}\mathcal x + b f(w,b)=wtx+b
基于该模型,如何通过求解模型参数 w , b \mathcal w,b w,b来实现回归任务?因此介绍一种求解模型参数 w , b \mathcal w,b w,b的工具:最小二乘估计:
l ( w , b ) = ∑ i = 1 n ∣ ∣ w t x ( i ) + b − y ( i ) ∣ ∣ ( x ( i ) , y ( i ) ) ∈ d a t a \mathcal l(\mathcal w,b) = \sum_{i=1}^n||\mathcal w^{t}x^{(i)} + b - y^{(i)}|| \quad (x^{(i)},y^{(i)}) \in data l(w,b)=i=1
发表评论