LDA学习笔记---来自《Parameter estimation for text analysis》

2013年10月10日更新。

LDA的概率图如下图1所示:QQ截图20130312094645

参数的意思如图2所示:

QQ截图20130312094711 根据模型,文章m的第n个词t是这样生成的:先从文章m的doc-topic分布中生成一个topic编号\(z_{m,n}\),在根据编号第\(z_{m,n}\)个的topic-word分布中生成这个词,总够有\(K\)个topic,所以总的概率为: \[ p(w_{m,n}=t|\vec{\theta}_m,\underline{\Phi})=\sum^K_{k=1}p(w_{m,n}=t|\vec{\phi}_k)p(z_{m,n}=k|\vec{\theta}_m)\] 如果我们写出这篇文章的complete-data的联合分布(意思就是所以变量都已知的情况下),那么式子就是这样的:

QQ截图20130312094748

通过对\(\vec{\vartheta_m}\)(doc-topic分布)和\(\underline{\Phi}\)(topic-word分布)积分以及\(z_{m,n}\)求和,我们可以求得\(\vec{w_m}\)的边缘分布:

QQ截图20130312094757

(实际上这个边缘分布是求不出来的,因为\(z_{m,n}\)是隐藏变量,从而导致\(\underline{\vartheta}\)\(\underline{\Phi}\)存在耦合现象,无法积分得到。要注意联合分布和边缘分布对Z乘积与加和的区别)

因为一个语料库有很多篇文章,而且文章之间都是相互独立的,所以整个语料库的似然为 \[ p(\mathcal{W}|\vec{\alpha},\vec{\beta})=\prod^{M}_{m=1}p(\vec{w_m}|\vec{\alpha},\vec{\beta})\]

虽然LDA(latent Dirichlet allocation)是个相对简单的模型,对它直接推断一般也是不可行的,所以我们要采用近似推断的方法,比如Gibbs sampling。

Read More