CWYAlpha

Just another WordPress.com site

Thought this was cool: LDA-math-认识Beta/Dirichlet分布(3)

leave a comment »


2. LDA-math-认识Beta/Dirichlet分布(3)
2.3 Dirichlet-Multinomial 共轭

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

  1. $X_1,X_2,\cdots,X_n {\stackrel{\mathrm{iid}} {\sim}}Uniform(0,1)$,
  2. 排序后对应的顺序统计量 $X_{(1)},X_{(2)},\cdots, X_{(n)}$,
  3. 问 $(X_{(k_1)}, X_{(k_1+k_2)})$的联合分布是什么;

游戏3

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

dirichlet-game
$(X_{(k_1)}, X_{(k_1+k_2)})$的联合分布推导

\begin{align*}
& P\Bigl(X_{(k_1)}\in(x_1,x_1+\Delta x),X_{(k_1+k_2)}\in(x_2,x_2+\Delta x)\Bigr) \\
& = n(n-1)\binom{n-2}{k_1-1,k_2-1}x_1^{k_1-1}x_2^{k_2-1}x_3^{n-k_1-k_2}(\Delta x)^2 \\
& = \frac{n!}{(k_1-1)!(k_2-1)!(n-k_1-k_2)!}x_1^{k_1-1}x_2^{k_2-1}x_3^{n-k_1-k_2}(\Delta x)^2
\end{align*}
于是我们得到 $(X_{(k_1)}, X_{(k_1+k_2)})$的联合分布是
\begin{align*}
f(x_1,x_2,x_3) & = \frac{n!}{(k_1-1)!(k_2-1)!(n-k_1-k_2)!}x_1^{k_1-1}x_2^{k_2-1}x_3^{n-k_1-k_2} \\
& = \frac{\Gamma(n+1)}{\Gamma(k_1)\Gamma(k_2)\Gamma(n-k_1-k_2+1)}x_1^{k_1-1}x_2^{k_2-1}x_3^{n-k_1-k_2}
\end{align*}
熟悉 Dirichlet的同学一眼就可以看出,上面这个分布其实就是3维形式的 Dirichlet 分布$Dir(x_1,x_2,x_3|k_1,k_2,n-k_1-k_2+1)$。令 $\alpha_1=k_1,\alpha_2=k_2,\alpha_3=n-k_1-k_2+1$,于是分布密度可以写为
\begin{equation}
\displaystyle f(x_1,x_2,x_3) = \frac{\Gamma(\alpha_1 + \alpha_2 + \alpha_3)}
{\Gamma(\alpha_1)\Gamma(\alpha_2)\Gamma(\alpha_3)}x_1^{\alpha_1-1}x_2^{\alpha_2-1}x_3^{\alpha_3-1}
\end{equation}

这个就是一般形式的3维 Dirichlet 分布,即便 $\overrightarrow{\alpha}=(\alpha_1,\alpha_2, \alpha_3)$ 延拓到非负实数集合,以上概率分布也是良定义的。

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

dirichlet-distribution不同 $\alpha$ 下的Dirichlet 分布

类似于魔鬼的游戏2,我们也可以调整一下游戏3,从魔盒中生成$m$个随机数$Y_1,Y_2,\cdots,Y_m {\stackrel{\mathrm{iid}}{\sim}}Uniform(0,1)$ 并让魔鬼告诉我们$Y_i$和$(X_{(k_1)}, X_{(k_1+k_2)})$相比谁大谁小。于是有如下游戏4

  1.  $X_1,X_2,\cdots,X_n {\stackrel{\mathrm{iid}}{\sim}}Uniform(0,1)$,排序后对应的顺序统计量 $X_{(1)},X_{(2)},\cdots, X_{(n)}$
  2. 令$p_1=X_{(k_1)}, p_2=X_{(k_1+k_2)},p_3 = 1-p_1-p_2$(加上$p_3$是为了数学表达简洁对称),我们要猜测 $\overrightarrow{p}=(p_1,p_2,p_3)$;
  3. $Y_1,Y_2,\cdots,Y_m {\stackrel{\mathrm{iid}}{\sim}}Uniform(0,1)$, $Y_i$中落到$[0,p_1),[p_1,p_2),[p_2,1]$ 三个区间的个数分别为 $m_1,m_2,m_3$,$m=m_1+m_2+m3$;
  4.  问后验分布 $P(\overrightarrow{p}|Y_1,Y_2,\cdots,Y_m)$ 的分布是什么。

游戏4

为了方便,我们记
$$ \overrightarrow{m}=(m_1,m_2,m_3),\quad \overrightarrow{k}=(k_1,k_2,n-k_1-k_2+1) $$
由游戏中的信息,我们可以推理得到 $p_1, p_2$在$X_1,X_2,\cdots,X_n,$ $Y_1,Y_2,\cdots,Y_m$ ${\stackrel{\mathrm{iid}}{\sim}} Uniform(0,1)$这 $m+n$个数中分别成为了第 $k_1+m_1, k_2+m_2$大的数,于是后验分布 $P(\overrightarrow{p}|Y_1,Y_2,\cdots,Y_m)$ 应该是 $Dir(\overrightarrow{p}|k_1+m_1,k_1+m_2,n-k_1-k_2+1+m_3)$,即$Dir(\overrightarrow{p}|\overrightarrow{k}+\overrightarrow{m})$。按照贝叶斯推理的逻辑,我们同样可以把以上过程整理如下:

  1.  我们要猜测参数 $\overrightarrow{p}=(p_1,p_2,p_3)$,其先验分布为$Dir(\overrightarrow{p}|\overrightarrow{k})$;
  2.  数据$Y_i$落到$[0,p_1), [p_1,p_2),[p_2,1]$三个区间的个数分别为 $m_1,m_2,m_3$,所以$\overrightarrow{m}=(m_1,m_2,m_3)$ 服从多项分布$Mult(\overrightarrow{m}|\overrightarrow{p})$
  3.  在给定了来自数据提供的知识$\overrightarrow{m}$后,$\overrightarrow{p}$ 的后验分布变为 $Dir(\overrightarrow{p}|\overrightarrow{k}+\overrightarrow{m})$

贝叶斯推理过程

以上贝叶斯分析过程的简单直观的表述就是
$$ Dir(\overrightarrow{p}|\overrightarrow{k}) + MultCount(\overrightarrow{m}) = Dir(\overrightarrow{p}|\overrightarrow{k}+\overrightarrow{m}) $$
令 $\overrightarrow{\alpha}=\overrightarrow{k}$,把$\overrightarrow{\alpha}$从整数集合延拓到实数集合,更一般的可以证明有如下关系
\begin{equation}
Dir(\overrightarrow{p}|\overrightarrow{\alpha}) + MultCount(\overrightarrow{m})
= Dir(p|\overrightarrow{\alpha}+\overrightarrow{m})
\end{equation}
以上式子实际上描述的就是 Dirichlet-Multinomial 共轭,而我们从以上过程可以看到,Dirichlet 分布中的参数$\overrightarrow{\alpha}$都可以理解为物理计数。类似于 Beta 分布,我们也可以把 $Dir(\overrightarrow{p}|\overrightarrow{\alpha})$作如下分解
$$ Dir(\overrightarrow{p}|\overrightarrow{1}) + MultCount(\overrightarrow{m}-\overrightarrow{1})
= Dir(\overrightarrow{p}|\overrightarrow{\alpha}) $$
此处$\overrightarrow{1}=(1,1,\cdots,1)$。自然,上式我们也可以类似地用纯粹贝叶斯的观点进行推导和解释。

以上的游戏我们还可以往更高的维度上继续推,譬如猜测 $X_{(1)},X_{(2)},\cdots, X_{(n)}$ 中的4、5、…等更多个数,于是就得到更高纬度的 Dirichlet 分布和 Dirichlet-Multinomial 共轭。一般形式的 Dirichlet 分布定义如下
\begin{equation}
\displaystyle Dir(\overrightarrow{p}|\overrightarrow{\alpha}) =
\displaystyle \frac{\Gamma(\sum_{k=1}^K\alpha_k)}
{\prod_{k=1}^K\Gamma(\alpha_k)} \prod_{k=1}^K p_k^{\alpha_k-1}
\end{equation}
对于给定的 $\overrightarrow{p}$和 $N$,多项分布定义为
\begin{equation}
\displaystyle Mult(\overrightarrow{n} |\overrightarrow{p},N) = \binom{N}{\overrightarrow{n}}\prod_{k=1}^K p_k^{n_k}
\end{equation}
而 $Mult(\overrightarrow{n} |\overrightarrow{p},N)$ 和 $Dir(\overrightarrow{p}|\overrightarrow{\alpha})$这两个分布是共轭关系。

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

2.4 Beta/Dirichlet 分布的一个性质

如果 $p\sim Beta(t|\alpha,\beta)$, 则
\begin{align*}
E(p) & = \int_0^1 t*Beta(t|\alpha,\beta)dt \\
& = \int_0^1 t* \frac{\Gamma(\alpha+\beta)}{\Gamma(\alpha)\Gamma(\beta)} t^{\alpha-1}(1-t)^{\beta-1}dt \\
& = \frac{\Gamma(\alpha+\beta)}{\Gamma(\alpha)\Gamma(\beta)} \int_0^1 t^{\alpha}(1-t)^{\beta-1}dt
\end{align*}
上式右边的积分对应到概率分布 $Beta(t|\alpha+1,\beta)$,对于这个分布,我们有
$$
\int_0^1 \frac{\Gamma(\alpha+\beta+1)}{\Gamma(\alpha+1)\Gamma(\beta)} t^{\alpha}(1-t)^{\beta-1}dt = 1
$$
把上式带入$E(p)$的计算式,得到
\begin{align}
E(p) & = \frac{\Gamma(\alpha+\beta)}{\Gamma(\alpha)\Gamma(\beta)}
\cdot \frac{\Gamma(\alpha+1)\Gamma(\beta)}{\Gamma(\alpha+\beta+1)} \notag \\
& = \frac{\Gamma(\alpha+\beta)}{\Gamma(\alpha+\beta+1)}\frac{\Gamma(\alpha+1)}{\Gamma(\alpha)} \notag \\
& = \frac{\alpha}{\alpha+\beta}
\label{beta-mean}
\end{align}
这说明,对于Beta 分布的随机变量,其均值可以用$\frac{\alpha}{\alpha+\beta}$来估计。Dirichlet 分布也有类似的结论,如果$\overrightarrow{p} \sim Dir(\overrightarrow{t}|\overrightarrow{\alpha})$,同样可以证明
\begin{equation}
E(\overrightarrow{p}) = \Bigl(\frac{\alpha_1}{\sum_{i=1}^K\alpha_i},\frac{\alpha_2}{\sum_{i=1}^K\alpha_i},\cdots, \frac{\alpha_K}{\sum_{i=1}^K\alpha_i} \Bigr)
\label{dir-mean}
\end{equation}
以上两个结论很重要,因为我们在后面的 LDA 数学推导中需要使用这个结论。

相关文章:

  1. LDA-math-认识Beta/Dirichlet分布(1)
  2. LDA-math-认识Beta/Dirichlet分布(2)
  3. LDA-math-神奇的Gamma函数(3)
  4. LDA-math-神奇的Gamma函数(1)
  5. LDA-math-神奇的Gamma函数(2)
  6. 正态分布的前世今生(四)
  7. 正态分布的前世今生(二)
  8. HMM学习最佳范例七:前向-后向算法5
  9. 正态分布的前世今生(三)
  10. 正态分布的前世今生(五)


from 我爱自然语言处理: http://www.52nlp.cn/lda-math-%e8%ae%a4%e8%af%86betadirichlet%e5%88%86%e5%b8%833?utm_source=feedburner&utm_medium=feed&utm_campaign=Feed%3A+52nlp+%28%E6%88%91%E7%88%B1%E8%87%AA%E7%84%B6%E8%AF%AD%E8%A8%80%E5%A4%84%E7%90%86%29

Written by cwyalpha

一月 2, 2013 在 8:10 上午

发表在 Uncategorized

发表评论

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / 更改 )

Twitter picture

You are commenting using your Twitter account. Log Out / 更改 )

Facebook photo

You are commenting using your Facebook account. Log Out / 更改 )

Google+ photo

You are commenting using your Google+ account. Log Out / 更改 )

Connecting to %s

%d 博主赞过: