大师兄的贝叶斯网络学习笔记(三十七):贝叶斯网络(十一)

大师兄的贝叶斯网络学习笔记(三十六):贝叶斯网络(十)
大师兄的贝叶斯网络学习笔记(三十八):贝叶斯网络(十二)

七、缺值数据最大似然估计

2. EM算法的基本理论
  • 数据修补的思想直观易懂,但是为什么上面公式给出的就是基于修补后的碎权完整数据的最大似然估计?为了回答这个问题,首先需要将似然函数的概念推广到补后数据。
  • D = (D_1,D_2,..,D_m)是关于某贝叶斯网络N = (G,\theta)的一组i.i.d数据,对其中任一样本D_i,设X_iD_i中所有值缺变量的集合。
  • \theta^t是关于参数θ的当前估计,D^i是基于\theta^t将D修补而得到的碎权完整数据。
  • 定义θ的机遇D^t的对数似然函数为l(\theta|D^t) = \sum^m_{l=1}\sum_{x_l\in \omega_{x_l}}P(X_l=x_l | D_l,\theta^t)logP(D_l,X_L=x_l|\theta)
  • 其中P(X_l=x_l | D_l,\theta^t)就是\omega_x_l
  • X_l=\fi时,约定P(X_l=x_l|D_l,\theta^t)为1。
  • 由于D^t完全由D和\theta^t决定,l(\theta|D^t)一般写成l(\theta|D,\theta^t),并被称为是θ的基于D的期望对数似然函数(expected loglikelihood function)
  • 在EM算法的迭代过程中,数据D是不变的,因此l(\theta|D,\theta^t)往往被简化记为Q(\theta|\theta^t)
  • 在EM的第t次迭代过程中,第一步计算期望对数似然函数Q(\theta|\theta^t),因此称为E-步骤(E-step)
  • 第二步求得使Q(\theta|\theta^t)达到最大的θ的取值,即\theta^{t+1}=arg \sup_{\theta}Q(\theta|\theta^t),因此称为M-步骤(M-step)
  • 如何计算\theta^{t+1}
  • 首先,碎权样本(D_l,X_l=x_l)的特征函数为:X(i,j,k:D_l,X_l=x_l) = \begin{cases} 1,若在(D_l,X_l=x_l)中X_i=k且\pi(X_i)=j 0,若否 \end{cases}
  • logP(D_l,X_l=x_l|\theta) = \sum^n_{i=1}\sum^{q_i}_{j=1}\sum^{r_i}_{k=1}X(i,j,k:D_l,X_l=x_l)\log\theta_{ijk}
  • 定义:m^l_{ijk}=\sum^m_{l=1}\sum_{x_L\in \omega_{x_l}}P(X_l=x_l|D_l,\theta^t)X(i,j,k:D_l,X_l=x_l)
  • 直观上,m^t_{ijk}是补后数据D^t中所有满足X_i=k和\pi(X_i)=j的样本的权重之和,进而有:Q(\theta|\theta^t)=\sum^n_{i=1}\sum^{q_i}_{j=1}\sum^{r_i}_{k=1}m^t_{ijk}log\theta_{ijk}
  • 当θ取值如下时,\theta^{t+1}_{ijk}= \begin{cases} m^t_{ijk}, 若\sum^{r_i}_{k=1}m^t_{ijk}>0, \sum^{r_i}_{k=1}m^t_{ijk}, \frac{1}{r_i}, 若否 \end{cases}
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容