27[NLP训练营]collapsed gibbs sampling

Posted oldmao_2001

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了27[NLP训练营]collapsed gibbs sampling相关的知识,希望对你有一定的参考价值。


公式输入请参考: 在线Latex公式

回顾

下图是LDA生成的过程。
在这里插入图片描述
为了更好描述collapsed gibbs sampling。把里面的标识换一下,问题的描述变成:
计算 P ( Z t s ∣ Z − t s , w , α , β ) P(Z_{ts}|Z_{-ts},w,\\alpha,\\beta) P(ZtsZts,w,α,β)
t t t代表第 t t t个文档
s s s代表第 t t t个文档的第 s s s个单词


假设有一个集合
x = { x 1 , x 2 , . . . x n } x=\\{x_1,x_2,...x_n\\} x={x1,x2,...xn}
那么它可以表示为:
x = x i ∪ x − i x=x_i\\cup x_{-i} x=xixi
同样的,问题描述中的 Z = Z t s ∪ Z − t s Z=Z_{ts}\\cup Z_{-ts} Z=ZtsZts


第一步

可以看到,问题描述中是没有 ϕ , θ \\phi,\\theta ϕ,θ的,我们就是要用collapsed 的方式把这两个变量进行边缘化,
P ( Z t s ∣ Z − t s , w , α , β ) = P ( Z , w ∣ α , β ) P ( Z − t s , w ∣ α , β ) P(Z_{ts}|Z_{-ts},w,\\alpha,\\beta)=\\cfrac{P(Z,w|\\alpha,\\beta)}{P(Z_{-ts},w|\\alpha,\\beta)} P(ZtsZts,w,α,β)=P(Zts,wα,β)P(Z,wα,β)
变成这个形式是有点原因的, w w w是观测到的结果,把它挪到概率的前面部分,就相对于利用观测值来推断参数,可以走likelihood的套路。


上面的式子为什么会相等呢?
P ( Z , w ∣ α , β ) P ( Z − t s , w ∣ α , β ) ∗ P ( α , β ) P ( α , β ) = P ( Z , w , α , β ) P ( Z − t s , w , α , β ) (1) \\begin{aligned}&\\cfrac{P(Z,w|\\alpha,\\beta)}{P(Z_{-ts},w|\\alpha,\\beta)}*\\cfrac{P(\\alpha,\\beta)}{P(\\alpha,\\beta)}\\\\ &=\\cfrac{P(Z,w,\\alpha,\\beta)}{P(Z_{-ts},w,\\alpha,\\beta)}\\tag1\\end{aligned} P(Zts,wα,β)P(Z,wα,β)P(α,β)P(α,β)=P(Zts,w,α,β)P(Z,w,α,β)(1)
P ( Z t s ∣ Z − t s , w , α , β ) × P ( Z − t s , w , α , β ) = P ( Z t s , Z − t s , w , α , β ) = P ( Z , w , α , β ) (2) \\begin{aligned}&P(Z_{ts}|Z_{-ts},w,\\alpha,\\beta)\\times P(Z_{-ts},w,\\alpha,\\beta)\\\\ &=P(Z_{ts},Z_{-ts},w,\\alpha,\\beta)\\\\&=P(Z,w,\\alpha,\\beta)\\tag2\\end{aligned} P(ZtsZts,w,α,β)×P(Zts,w,α,β)=P(Zts,Zts,w,α,β)=P(Z,w,α,β)(2)
把公式2代入1就得到上面的等式了。


第二步 看分子

把第一步中的分子分母分开看,先看分子
P ( Z , w ∣ α , β ) P(Z,w|\\alpha,\\beta) P(Z,wα,β)
如果要把 ϕ , θ \\phi,\\theta ϕ,θ边缘化就是要写成下面的积分:
P ( Z , w ∣ α , β ) = P ( Z ∣ α ) ⋅ P ( w ∣ Z , β ) = ∫ P ( Z ∣ θ ) ⋅ P ( θ ∣ α ) d θ ∫ P ( w ∣ Z , ϕ ) ⋅ P ( ϕ ∣ β ) d ϕ \\begin{aligned}P(Z,w|\\alpha,\\beta)&=P(Z|\\alpha)\\cdot P(w|Z,\\beta)\\\\ &=\\int P(Z|\\theta)\\cdot P(\\theta|\\alpha)d\\theta\\int P(w|Z,\\phi)\\cdot P(\\phi|\\beta)d\\phi\\end{aligned} P(Z,wα,β)=P(Zα)P(wZ,β)=P(Zθ)P(θα)dθP(wZ,ϕ)P(ϕβ)dϕ
上面第一个等号实际上是根据LDA那个图进行拆分了一下,用依赖关系把联合概率拆分成对应的条件概率。上面的联合概率是有条件的,就是已知的超参数 α , β \\alpha,\\beta α,β
在这里插入图片描述
按上面的图本来第一个等号后面应该是写: P ( Z ∣ θ ) ⋅ P ( w ∣ Z , ϕ ) P(Z|\\theta)\\cdot P(w|Z,\\phi) P(Zθ)P(wZ,ϕ),但是为了要把 θ , ϕ \\theta,\\phi θ,ϕ进行边缘化,我们就把这个路径直接取到 α , β \\alpha,\\beta α,β那里了。
在这里插入图片描述
所以就写成了: P ( Z ∣ α ) ⋅ P ( w ∣ Z , β ) P(Z|\\alpha)\\cdot P(w|Z,\\beta) 机器学习:Gibbs 采样

最强 NLP 预训练模型库 PyTorch-Transformers 正式开源:支持 6 个预训练框架,27 个预训练模型

深度学习方法:受限玻尔兹曼机RBM模型求解,Gibbs sampling

NLP分词数据准备及模型训练实例

重磅课程上线京东NLP企业级项目实战训练营

NLP词性标注数据准备及模型训练实例