关闭

LDA-math-认识Beta/Dirichlet分布(3)

1025人阅读 评论(0) 收藏 举报
分类:

终于有了一点点认识,以前对LDA里面的东西头疼死了

2. LDA-math-认识Beta/Dirichlet分布(3)

2.3 Dirichlet-Multinomial 共轭

对于魔鬼变本加厉的新的游戏规则,数学形式化如下:

  1. X1,X2,,XniidUniform(0,1)
  2. 排序后对应的顺序统计量 X(1),X(2),X(n),
  3. 问 (X(k1),X(k1+k2))的联合分布是什么;

游戏3

完全类似于第一个游戏的推导过程,我们可以进行如下的概率计算(为了数学公式的简洁对称,我们取x3满足x1+x2+x3=1,但只有x1,x2是变量)

dirichlet-game
(X(k1),X(k1+k2))的联合分布推导

P(X(k1)(x1,x1+Δx),X(k1+k2)(x2,x2+Δx))=n(n1)(n2k11,k21)xk111xk212xnk1k23(Δx)2=n!(k11)!(k21)!(nk1k2)!xk111xk212xnk1k23(Δx)2

于是我们得到 (X(k1),X(k1+k2))的联合分布是
f(x1,x2,x3)=n!(k11)!(k21)!(nk1k2)!xk111xk212xnk1k23=Γ(n+1)Γ(k1)Γ(k2)Γ(nk1k2+1)xk111xk212xnk1k23

熟悉 Dirichlet的同学一眼就可以看出,上面这个分布其实就是3维形式的 Dirichlet 分布Dir(x1,x2,x3|k1,k2,nk1k2+1)。令 α1=k1,α2=k2,α3=nk1k2+1,于是分布密度可以写为
f(x1,x2,x3)=Γ(α1+α2+α3)Γ(α1)Γ(α2)Γ(α3)xα111xα212xα313

这个就是一般形式的3维 Dirichlet 分布,即便 α=(α1,α2,α3) 延拓到非负实数集合,以上概率分布也是良定义的。

从形式上我们也能看出,Dirichlet 分布是Beta 分布在高维度上的推广,他和Beta 分布一样也是一个百变星君,密度函数可以展现出多种形态。

dirichlet-distribution不同 α 下的Dirichlet 分布

类似于魔鬼的游戏2,我们也可以调整一下游戏3,从魔盒中生成m个随机数Y1,Y2,,YmiidUniform(0,1) 并让魔鬼告诉我们Yi(X(k1),X(k1+k2))相比谁大谁小。于是有如下游戏4

  1.  X1,X2,,XniidUniform(0,1),排序后对应的顺序统计量 X(1),X(2),X(n)
  2. p1=X(k1),p2=X(k1+k2),p3=1p1p2(加上p3是为了数学表达简洁对称),我们要猜测 p=(p1,p2,p3)
  3. Y1,Y2,,YmiidUniform(0,1)Yi中落到[0,p1),[p1,p2),[p2,1] 三个区间的个数分别为 m1,m2,m3m=m1+m2+m3
  4.  问后验分布 P(p|Y1,Y2,,Ym) 的分布是什么。

游戏4

为了方便,我们记

m=(m1,m2,m3),k=(k1,k2,nk1k2+1)

由游戏中的信息,我们可以推理得到 p1,p2X1,X2,,Xn, Y1,Y2,,Ym iidUniform(0,1)这 m+n个数中分别成为了第 k1+m1,k2+m2大的数,于是后验分布 P(p|Y1,Y2,,Ym) 应该是 Dir(p|k1+m1,k1+m2,nk1k2+1+m3),即Dir(p|k+m)。按照贝叶斯推理的逻辑,我们同样可以把以上过程整理如下:

  1.  我们要猜测参数 p=(p1,p2,p3),其先验分布为Dir(p|k)
  2.  数据Yi落到[0,p1),[p1,p2),[p2,1]三个区间的个数分别为 m1,m2,m3,所以m=(m1,m2,m3) 服从多项分布Mult(m|p)
  3.  在给定了来自数据提供的知识m后,p 的后验分布变为 Dir(p|k+m)

贝叶斯推理过程

以上贝叶斯分析过程的简单直观的表述就是

Dir(p|k)+MultCount(m)=Dir(p|k+m)

令 α=k,把α从整数集合延拓到实数集合,更一般的可以证明有如下关系
Dir(p|α)+MultCount(m)=Dir(p|α+m)

以上式子实际上描述的就是 Dirichlet-Multinomial 共轭,而我们从以上过程可以看到,Dirichlet 分布中的参数α都可以理解为物理计数。类似于 Beta 分布,我们也可以把 Dir(p|α)作如下分解
Dir(p|1)+MultCount(m1)=Dir(p|α)

此处1=(1,1,,1)。自然,上式我们也可以类似地用纯粹贝叶斯的观点进行推导和解释。

以上的游戏我们还可以往更高的维度上继续推,譬如猜测 X(1),X(2),X(n) 中的4、5、…等更多个数,于是就得到更高纬度的 Dirichlet 分布和 Dirichlet-Multinomial 共轭。一般形式的 Dirichlet 分布定义如下

Dir(p|α)=Γ(Kk=1αk)Kk=1Γ(αk)k=1Kpαk1k

对于给定的 p和 N,多项分布定义为
Mult(n|p,N)=(Nn)k=1Kpnkk

而 Mult(n|p,N) 和 Dir(p|α)这两个分布是共轭关系。

Beta-Binomail 共轭和 Dirichlet-Multinomail 共轭都可以用纯粹数学的方式进行证明,我们在这两个小节中通过一个游戏来解释这两个共轭关系,主要是想说明这个共轭关系是可以对应到很具体的概率物理过程的。

2.4 Beta/Dirichlet 分布的一个性质

如果 pBeta(t|α,β), 则

E(p)=10tBeta(t|α,β)dt=10tΓ(α+β)Γ(α)Γ(β)tα1(1t)β1dt=Γ(α+β)Γ(α)Γ(β)10tα(1t)β1dt

上式右边的积分对应到概率分布 Beta(t|α+1,β),对于这个分布,我们有
10Γ(α+β+1)Γ(α+1)Γ(β)tα(1t)β1dt=1

把上式带入E(p)的计算式,得到
E(p)=Γ(α+β)Γ(α)Γ(β)Γ(α+1)Γ(β)Γ(α+β+1)=Γ(α+β)Γ(α+β+1)Γ(α+1)Γ(α)=αα+β

这说明,对于Beta 分布的随机变量,其均值可以用αα+β来估计。Dirichlet 分布也有类似的结论,如果pDir(t|α),同样可以证明
E(p)=(α1Ki=1αi,α2Ki=1αi,,αKKi=1αi)

以上两个结论很重要,因为我们在后面的 LDA 数学推导中需要使用这个结论。

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:13795次
    • 积分:272
    • 等级:
    • 排名:千里之外
    • 原创:12篇
    • 转载:3篇
    • 译文:0篇
    • 评论:2条
    博主介绍
    浙江大学EAGLE-lab 研究生
    对推荐系统,数据挖掘,机器学习很感兴趣。起步晚,资质差,通过写博客以坚持学习

    新浪微博:Qinxuzhen
    文章分类
    文章存档
    最新评论