潜在狄利克雷分配

Latent Dirichlet Allocation,LDA

LDA是PLSA生成模型的扩展,可以看作引入贝叶斯的PLSA,也是文本集合的生成概率模型

Latent Dirichlet Allocation

PLSA的缺陷与LDA的改进

LDA与PLSA生成模型都假设话题$z$是单词$w$的多项分布,文本$d$是话题$z$的多项分布,即$d\to z \to w$

然而PLSA存在的缺陷:PLSA不使用先验分布,或者说假设先验分布为均匀分布。具体地,回忆PLSA生成模型公式:$P(w,d)=P(d)\sum_zP(w|z)P(z|d)$,这里面的两个概率分布$P(w|z)$和$P(z|d)$(即这两个分布的参数)是没有先验分布的,或者说假设先验分布为均匀分布。

①(改进)LDA则使用了狄利克雷分布作为先验分布,也就是概率分布的参数的分布是狄利克雷分布

即$P(w|z)$和$P(z|d)$两个分布的参数,满足两个各自的狄利克雷分布,由该分布给出

这样一来,两个多项分布的参数就不是确定的了,而是这个参数服从狄利克雷分布,而在PLSA中参数是确定的

这样可以防止学习过程中产生的过拟合

②(不同)在文本生成过程中,PLSA基于极大似然估计(回看PLSA一节使用EM求解),而LDA是基于贝叶斯学习

核心思想

在PLSA生成模型之上(先回看PLSA),根据贝叶斯原则,我们对$P(w|z)$和$P(z|d)$两个分布(多项分布)的参数引入先验分布,以防止学习中产生过拟合

为什么这样能防止过拟合?这就是贝叶斯学派和频率学派的争论。频率学派认为概率是确定存在客观的,也就是PLSA的做法:$P(w|z)$和$P(z|d)$的参数是确定的,我们用已有数据训练模型去拟合这个参数即可。然而贝叶斯学派认为,在引入了新的数据之后,概率也会因为先验的改变而改变,他们认为概率是“主观”的,也就是说概率分布$P(w|z)$和$P(z|d)$的参数是不确定的,于是就从PLSA引入了LDA。

回到问题,当数据量小的时候,PLSA的频率学派做法会导致频率与概率差得很远,导致我们的模型学到的是训练数据的分布与真实的分布差得很远(大数定律失效)!这时候基于贝叶斯学派的LDA的先验就有用了,加入参数的先验分布进去就等于有了一个先验的知识(这个初始先验分布的选择见下面),然后我们再反复迭代参数,由参数产生的新似然数据得到一个新的先验,再继续迭代,这样可以有效防止模型学脱了(过拟合)

显然当样本数据量大的时候,PLSA的效果和LDA会差不多。因为训练集的频率与真实概率分布越来越接近了(大数定律生效),也就是通过增大训练数据量来防止了模型的过拟合

于是我们的文本生成流程(概率计算)就是通过先验分布生成多项分布的参数,然后使用文本-主题多项分布生成一个主题,③再用主题-单词多项分布生成一个单词这时候数据集就改变了,吸收了似然成为了新的先验,通过上面所说的共轭先验的性质可以求得新的多项分布的参数(后验)然后再作为先验,⑤循环生成下一个单词(①~④步)成为文本

这个过程见“共轭分布-4-流程关系”用数学表示

上面只是模型的定义和概率计算(数据文本生成),如果我们想要从已有一堆文章中知道话题、单词分布,那么就是对模型进行参数估计,也即是模型学习过程

那么模型如何学习呢(参数估计)?首先有个误解,既然模型的参数都直接是已知超参数分布给出的了,那为啥还要求参数?因为我们要学习(参数估计)的是在这个反复试验过程中(也就是上面文本生成反复迭代生成单词)通用的模型参数的表达式。在迭代过程中,模型参数不是最初始的先验分布(狄利克雷)了,因为在迭代过程中,上一个先验分布决定的多项分布模型产生了新的似然数据,成为了后验,导致下一此迭代时候的模型参数的先验分布变了!

所以我们想要方便地从多项分布的先验分布计算后验分布但是这很难计算(根据上面引入贝叶斯先验的思想,难以计算后验概率,比如第一次试验由先验分布生成的参数是$\theta_1$,那么现实数据已经改变,第二次分布生成的新参数$\theta_2$时,需要吸收在上一个先验下生成的似然数据变成了求后验,要考虑$P(\theta_2|\theta_1,D)$,分布无时无刻都可能在变化)。于是我们通过选择引入具有满足是多项分布共轭先验性质的先验分布:狄利克雷分布,这样我们就可以很方便通过先验概率计算后验概率(具体见下)

LDA的模型学习由于潜变量过多,直接用MLE是非常困难的,所以会有吉布斯抽样算法和变分EM算法,见下一篇“LDA的学习算法”

共轭分布

  1. 什么是共轭分布?共轭分布是一种分布的关系:如果后验分布与先验分布属于同一种分布(形式相同),则先验分布与后验分布称为共轭分布,先验分布即为共轭先验

  2. 为什么要有共轭分布?因为我们希望这个先验分布和数据似然得到的后验分布能够在后面还可以作为先验分布,也就是说我们希望先验分布和这个后验分布的形式是一样的。

    换句话说,共轭分布能够保证先验分布被赋予的物理意义,在吸收了新的似然知识之后,传递到后验分布时,保持一致

  3. 共轭分布对LDA的意义?从“PLSA的缺陷与LDA的改进”一节可知,我们引入先验概率分布。如果多项分布$P(w|z)$和$P(z|d)$的参数的分布的先验分布与后验分布形式相同(也就是为共轭分布)那么我们在参数估计的时候就【便于从先验分布计算后验分布】(在下一篇:“LDA的学习算法”中会大量用到)

    共轭分布是在学习过程中用来参数计算推导的

  4. 下面的就有几个重要分布和对应共轭分布的重要性质

    高斯分布是高斯分布的共轭先验,Beta分布是二项分布的共轭先验,狄利克雷分布是多项分布的共轭先验。结合3,因此,我们才在LDA中使用狄利克雷函数作为先验分布

    【流程关系】:$Dir(\theta|\alpha)\to\theta\to Mult(n,\theta) \to D \to Dir(\theta|\alpha+n)\to loop[Dir(\theta|\alpha)]$

    这里面的$D$就是一次循环(生成了一个潜在的主题然后)生成了[一个]新的单词出来,就这么不断循环生成下一个单词形成一个文本

    狄利克雷后验分布的参数等于狄利克雷先验分布参数$\alpha=(\alpha_1,\alpha_2,\cdots,\alpha_k)$加上多项分布的观测计数$n=(n_1,n_2,\cdots,n_k)$,好像试验之前就已经观察到计数$\alpha=(\alpha_1,\alpha_2,\cdots,\alpha_k)$,因此也把$\alpha$叫做先验伪计数

    (推导:见后记-5)

  5. 注意表述

    对上面关系中的$Dir(\theta|\alpha),Mult(n,\theta),Dir(\theta|\alpha+n)$

    $Dir(\theta|\alpha)$是$Mult(n,\theta)$的先验分布,$Dir(\theta|\alpha+n)$是$Mult(n,\theta)$的后验分布,$Dir(\theta|\alpha)$与$Dir(\theta|\alpha+n)$为共轭分布,$Dir(\theta|\alpha)$是$Mult(n,\theta)$的共轭先验

  6. 如何理解概率分布的先验分布的意义

    狄利克雷分布和Beta分布因为其特性(共轭分布)常常可以作为概率分布的先验分布

    通过不断添加新的先验来改变概率分布的先验分布,进而影响到概率分布,可以满足贝叶斯学派的观点,引入到原来的PLSA中

    具体可以看知乎:如何通俗理解 beta 分布?这篇文章以beta分布为例举了非常实际的例子。

    beta分布是二维的,该例子中只有一个后验分布的参数,即打中概率受到先验beta分布影响;狄利克雷分布就是多维情况下的beta分布,在LDA中后验分布$P(w|z)$和$P(z|d)$存在大量参数所以是多维情况。当参数维度为多维的时候,概率分布图像可以用二维单纯形表示,可以自行想象。再和上面例子一样的原理,通过不断添加新的先验改变作为先验分布的狄利克雷分布的参数,再进而获得概率分布。

    对于狄利克雷分布,这有个例子举得很好:知乎:如何简单易懂地解释狄利克雷过程(Dirichlet Process)?

几个重要分布

  1. 二项分布:$X∽B(n,p)$

    $m$为事件出现的次数,$n$为随机独立事件的试验总次数,事件只有两种可能状态,$p$为事件出现的概率,$1-p$为事件不发生的概率。二项分布即随机独立试验$n$次,事件发生$m$次的概率,参数为$n,p$

  2. Beta分布:$X∽Be(s,t)$

    $X$为连续随机变量,取值为$[0,1]$,其概率密度函数为

    其中【$s>0,t>0$是参数】,$B(s,t)$是beta函数,见后记2

  3. 多项分布:$X∽Mult(n,p)$

    若多元离散随机变量$X=(X_1,X_2,\cdots,X_k)$的概率质量函数为

    其中$p=(p_1,p_2,\cdots,p_k),p_i≥0,i=1,2,\cdots,k,\sum_{i=1}^kp_i=1,\sum_{i=1}^kn_i=n$,则称随机变量$X$服从参数为$(n,p)$的多项分布

    举例:抛$n$次筛子,第1面朝上出现了$n_1$次,第二面朝上出现了$n_2$次,$\cdots$,第$k$面朝上出现了$n_k$次的概率即为一个多项分布

  4. 狄利克雷分布:$\theta∽Dir(\alpha)$

    若多元连续随机变量$\theta=(\theta_1,\theta_2,\cdots,\theta_k)$的概率密度函数为:

    其中$\sum_{i=1}^k\theta_i=1,\theta_i≥0,\alpha=(\alpha_1,\alpha_2,\cdots,\alpha_k),\alpha_i>0,i=1,2,\cdots,k$,则称随机变量$\theta$服从【参数为$\alpha$】的狄利克雷分布

    ($\Gamma(x)$是Gamma函数,见后记-3

    狄利克雷分布的密度函数可以用多元beta函数$B(\alpha)$简记表示:

    这里$B(\alpha)$视为规范化因子。由密度函数性质,对$\theta$积分为1,于是可得:$B(\alpha)=\int\prod_{i=1}^k \theta_i^{\alpha_i-1}d\theta$

    关于狄利克雷分布的参数的意义:各个$\alpha_i$为各个参数为$\theta_i$的后验分布的强度参数

  5. 关系与总结

    LDA与PLSA都假设话题$z$是单词$w$的多项分布,文本$d$是话题$z$的多项分布

    二项分布是多项分布的一种特殊情况:二项分布(二维)$\to$ 多项分布(多维)

    Beta分布是狄利克雷分布的一种特殊情况:Beta分布(二维)$\to$狄利克雷分布(多维

LDA模型定义

单词集合:$W=\{w_1,\cdots,w_v,\cdots,w_V\}$,共[$V$个单词]

文本集合:$D=\{\mathbb w_1,\cdots,\mathbb w_m,\cdots,\mathbb w_M\}$ (注意一个文本换成用向量$\mathbb w$表示,以前用的是$d$表示),共[$M$个文本]

每个文本是一个单词序列:$\mathbb w_m=(w_{m1},\cdots,w_{mn},\cdots,w_{mN_m})$ ,$N_m$是$\mathbb w_m$中单词的个数

话题集合:$Z=\{z_1,\cdots,z_k,\cdots,z_K\}$,共[$K$个话题]


基于PLSA的两个分布:文档-话题分布$P(z|\mathbb w_m)$和话题-单词分布$P(w|z_k)$,且这两个分布是独立的

  1. 话题-单词

    ①[$z\to w$]:每一个话题$z_k$由一个单词的条件概率分布$P(w|z_k)$决定,$w∈W$。

    ②[$w∽Mult(\phi_k)$]:分布$P(w|z_k)$是多项分布,其参数为$\phi_k$(随机变量$w$服从多项分布)

    话题参数向量:$\phi_k=(\phi_{k1},\phi_{k2},\cdots,\phi_{kV})$,其中$\phi_{kv}$表示话题$z_k$生成单词$w_v$的概率,即多项分布标准表示中每项(这里就是每个单词)的概率$p$,共$V$个(单词总数)

    话题参数矩阵:$\Phi=\{\phi_k\}_{k=1}^K$,所有的话题参数向量构成话题参数矩阵,为$K×V$形状

    ③[$\phi_k∽Dir(\beta)$]:$\phi_k$服从狄利克雷分布(先验分布),其超参数为$\beta$

    超参数是一个$V$维(单词个数)向量:$\beta=(\beta_1,\beta_2,\cdots,\beta_V)$

  2. 文本-话题

    ①[$\mathbb w_m \to z$]:每一个文本$\mathbb w_m$由一个话题的条件概率分布$P(z|\mathbb w_m)$决定,$z∈Z$

    ②[$z∽Mult(\theta_m)$]:分布$P(z|\mathbb w_m)$是多项分布,其参数为$\theta_m$(随机变量$z$服从多项分布)

    文本参数向量:$\theta_m=(\theta_{m1},\theta_{m2},\cdots,\theta_{mK})$,其中$\theta_{mk}$表示文本$\mathbb w_m$生成话题$z_k$的概率,即多项分布标准表示中每项(这里就是每个话题)的概率$p$,共$K$个(话题总数)

    文本参数矩阵:$\Theta=\{\theta_m\}_{m=1}^M$,所有文本参数向量构成文本参数矩阵,为$M×K$形状

    ③[$\theta_m∽Dir(\alpha)$]:$\theta_m$服从狄利克雷分布(先验分布),其超参数为$\alpha$

    超参数是一个$K$维(话题个数)向量:$\alpha=(\alpha_1,\alpha_2,\cdots,\alpha_K)$

  3. 综合1,2

    [$\mathbb w_m \to z \to w$]:每一个文本$\mathbb w_m$中的每一个单词$w_{mn}$由该文本的话题分布$P(z|\mathbb w_m)$以及所有话题的单词分布$P(w|z_k)$决定。

【注】LDA假设文本中的话题对一个随机参数是独立同分布的,也就是说LDA中的文本是无限可交换的。所以在参数给定的条件下,文本中的话题顺序可以忽略。(PLSA也一样)

(单词顺序也可以忽略,所以PLSA和LDA的“生成”并不是生成一个顺序的文本,且更多的在于学习模型潜在的参数

概率计算:LDA生成过程

注:概率计算过程中,先验分布的超参数与多项分布的参数都是已知的,不变的

根据定义和PLSA生成模型中一样的原理就可以写出LDA生成过程

$\mathbb S_1$:$\beta \to\phi_k$

对于话题$z_k(k=1,2,\cdots,K)$生成多项分布参数$\phi_k∽Dir(\beta)$,作为话题的单词分布$p(w|z_k)=Mult(\phi_k)$

$\mathbb S_2$:$\alpha\to \theta_m $

对于文本$\mathbb w_m(m=1,2,\cdots,M)$生成多项分布参数$\theta_m∽Dir(\alpha)$,作为文本的话题分布$p(z|\mathbb w_m)=Mult(\theta_m)$

$\mathbb S_3$:$\theta_m\to z_{mn},\quad \phi_{z_{mn}}\to w_{mn}$

对于文本$\mathbb w_m$的单词$w_{mn}(m=1,2,\cdots,M,n=1,2,\cdots,N_m)$

①生成话题$z_{mn}∽Mult(\theta_m)$,作为单词对应的话题

②生成单词$w_{mn}∽Mult(\phi_{z_{mn}})$

【这就生成了一个单词】

注意理解:一次循环生成一个主题,这个主题生成一个单词;然后再生成下一个主题,这个主题生成下一个单词;这样反复多次就生成了一个文本

概率图模型略


整体概率分布(所有文本):

第$m$个文本的联合概率分布:

其中$\mathbb w$是观测变量,$\mathbb z,\theta,\phi$是隐变量 ,$\alpha,\beta,K,N_m,M$是超参数

(后半部分是所有单词的概率相乘为文本概率,前两个为先验概率,先获取得到后验分布参数$\phi_k和\theta_m$)

搞清每个单词,每篇文档是如何生成的,就通过对概率生成公式(上面的联合概率分布公式),在中间路径的变量上进行积分,以获取全路径的概率,来计算边缘分布求得$p(\mathbb w_m|\theta_m,\phi)$,$p(\mathbb w_m|\alpha,\beta)$,$p(\mathbb w|\alpha,\beta)$

如:$p(\mathbb w_m|\alpha,\beta)=\int_\phi p(\mathbb w_m,\phi|\alpha,\beta)=\int_\phi\int_\theta p(\mathbb w_m,\theta,\phi|\alpha,\beta)=\int_\phi\int_\theta\int_z p(\mathbb w_m,\mathbb z,\theta,\phi|\alpha,\beta)$

$=\prod_{k=1}^K\int p(\phi_k|\beta)[\int p(\theta_m|\alpha)\prod_{n=1}^{N_m}[\Sigma_{l=1}^K p(z_{mn}=l|\theta_m)p(w_{mn}|\theta_l)]d\theta_m]d\phi_k$

确定$\alpha,\beta$后,消去概率生成路径上的隐变量

学习算法

求解LDA模型参数

目标已知文本集合$D=\{\mathbb w_1,\cdots,\mathbb w_m,\cdots,\mathbb w_M\}$,其中$\mathbb w_m$是第$m$个文本$\mathbb w_m=(w_{m1},\cdots,w_{mn},\cdots,w_{mN_m})$,以$\mathbb w $表示文本集合的单词序列,设定话题数$K$和狄利克雷分布初始超参数$\alpha,\beta$,①文档-话题分布$P(z|\mathbb w_m)$的参数$\theta$和②话题-单词分布$P(w|z_k)$的参数$\phi$($[\mathbb w_m],[\alpha] \to \theta\to [z],[\beta]\to\phi\to [w]$)

也就是求模型$p(\mathbb w,\mathbb z,\theta,\phi|\alpha,\beta)$的参数,其中$\mathbb w$是观测变量,$\mathbb z,\theta,\phi$是隐变量 ,$\alpha,\beta,K,N_m,M$是超参数(除$N_m$,$M$外的参数都是高维的,此表述为参数向量形式)

困难:由模型概率公式可知,生成公式中的中间路径存在三个隐变量$\mathbb z,\theta,\phi$,导致直接对其求MLE是非常困难的,隐变量的存在导致我们在求MLE的时候需要消去三个隐变量,计算积分($\mathbb w=\prod \mathbb w_m$):

$p(\mathbb w_m|\alpha,\beta)=\int_\phi\int_\theta\int_z p(\mathbb w_m,\mathbb z,\theta,\phi|\alpha,\beta) $

$=\prod_{k=1}^K\int p(\phi_k|\beta)[\int p(\theta_m|\alpha)\prod_{n=1}^{N_m}[\Sigma_{l=1}^K p(z_{mn}=l|\theta_m)p(w_{mn}|\theta_l)]d\theta_m]d\phi_k$

这样做MLE求解最优化非常困难

超参数(初值事先给定)

假定话题$K$给定,但实际上通常通过实验选定,没有一个固定的最优解。(话题超参数$K$在学习算法中不变)

狄利克雷分布的超参数$\alpha,\beta$的初始值通常也是事先给定的。在没有其他先验知识下,可以假定$\alpha和\beta$的所有分量均为1,这时文本的话题分布$\theta_m$是对称的,话题的单词分布$\phi_k$也是对称的。

超参数$\alpha,\beta$(维度也很高,与多项分布数量一样)相当于各个后验多项分布的权重

超参数$\alpha,\beta$是先验分布的初始参数,在学习过程中后验分布所服从的先验分布参数会改变

$Dir(\theta|\alpha)\to\theta\to Mult(n,\theta) \to D \to Dir(\theta|\alpha+n)\to loop[Dir(\theta|\alpha)]$

(上一篇推得)

基于马尔科夫蒙特卡罗方法:吉布斯抽样

蒙特卡罗方法就是为此而生的,它通过随机抽样来近似计算模型参数$\theta,\phi$

思想

已知$\mathbb w,\alpha,\beta$,那么对$p(\mathbb z|\mathbb w,\alpha,\beta)$进行抽样,就可以获得该分布的样本集合。根据每个样本的概率生成路径:$[\mathbb w_m],([\alpha] \to \theta)\to [z],([\beta]\to\phi)\to [w]$,只要我们抽样获取了主题$z$,那么就可以根据$\mathbb w_m\to z$的样本数量$n_{mk}$来估计参数$\theta$,根据$z \to w$的样本数量$n_{kv}$估计参数$\phi$,这样一来就获得了模型$p(\mathbb w,\mathbb z,\theta,\phi|\alpha,\beta)$的所有待学习参数。

那么如何抽样获取话题$z$才是合理的,能够用它来估算真实的话题概率分布的参数呢?就要使用吉布斯抽样,①给定一个初始化状态(文本的单词序列$\mathbb w$中的每一个单词$w$对应一个随机的隐藏主题),②然后不断进行多轮抽样,状态转移(使用已推导出的 公式$p(z_i|\mathbb z_{¬i},\mathbb w,\alpha,\beta)$,③直到进入燃烧期,在燃烧期的一轮抽样中获得抽样主题$z$和路径上的计数$n_{mk}$,$n_{kv}$

具体略

变分推理:变分EM算法

变分推理通过解析的方法计算模型的后验概率的近似值

通过证据下界最大化实现KL散度的最小化

求解证据下界最大化问题:$L(q,\theta)=E_q[\log p(x,z|\theta)]-E_q[\log q(z)]$

具体略

后记

  1. 概率质量(mass)函数:各个分类的概率,用于离散随机变量

    概率密度(density)函数:数据落在某一段连续的区间的概率

  2. Beta函数

    当$s,t$是自然数的时,

  3. Gamma函数

    关于Gamma函数以前在微积分中不少遇到,可以看这篇文章

    https://cosx.org/2013/01/lda-math-gamma-function

  4. 多元beta函数(拓展的beta函数)

  5. 狄利克雷分布是多项分布的共轭先验的推导

    设$\mathbb W=\{w_1,w_2,\cdots,w_k\}$是由$k$个元素组成的集合,随机变量$X$满足多项分布$X∽Mult(n,\theta)$

    其中$n=(n_1,n_2,\cdots,n_k)和\theta=(\theta_1,\theta_2,\cdots,\theta_k)$是参数。参数$n$为从$\mathbb W$中重复独立随机抽取样本的次数,$n_i$为样本$w_i$出现的次数$(i=1,2,\cdots,k)$,参数$\theta_i$为$w_i$出现的概率(该过程就是普通的多项分布实验,也是文档生成过程)

    引入先验:设其参数$\theta$服从狄利克雷分布:$\theta∽Dir(\alpha)$,即该多项分布参数的先验分布为$p(\theta|\alpha)=Dir(\theta|\alpha)$

    我们的目标:已知先验分布参数$\alpha$和先验数据$D$的情况下推导后验概率:$p(\theta|D,\alpha)$

    (在学习过程中,这个先验分布参数$\alpha$和先验数据$D$是在不断实验中迭代变化的,$D$为在参数$\theta$下多项分布计算出的似然数据,由此调整超参数,它们一直改变,影响着下一个新的参数和数据,也就是说共轭结论是在学习过程中用来参数推导的;在概率计算过程中,超参数与参数全都是已知固定的,没有参数变化过程[=])

    由贝叶斯公式$P(B_i|A)=\frac{P(A,B_i)}{P(A)}=\frac{P(B_i)P(A|B_i)}{\sum_{j=1}^nP(B_j)P(A|B_j)}$,那么我们要求的后验概率即可展开为:

    $p(\theta|D,\alpha)=\frac{p(D|\theta)p(\theta|\alpha)}{p(D|\alpha)}$

    ①由多项分布可得其似然函数:$p(D|\theta)=\theta_1^{n_1}\theta_2^{n_2}\cdots\theta_k^{n_k}=\prod_{i=1}^k\theta_i^{n_i}$

    ②由狄利克雷分布的公式:$p(\theta|\alpha)=\frac{1}{B(\alpha)}\prod_{i=1}^k \theta_i^{\alpha_i-1}$

    ③由全概率公式:$p(D|\alpha)=\int_\theta p(D|\theta)p(\theta|\alpha)d\theta$

    将上述①②③代入后验式子中化简:

    $p(\theta|D,\alpha)=\frac{p(D|\theta)p(\theta|\alpha)}{\int_\theta p(D|\theta)p(\theta|\alpha)d\theta}=\frac{\prod_{i=1}^k\theta_i^{n_i}\frac{1}{B(\alpha)}\prod_{i=1}^k \theta_i^{\alpha_i-1}}{\int_\theta\prod_{i=1}^k\theta_i^{n_i}\frac{1}{B(\alpha)}\prod_{i=1}^k \theta_i^{\alpha_i-1}d\theta}=\frac{1}{B(\alpha+n)}\prod_{i=1}^k\theta_i^{\alpha_i+n_i-1}=Dir(\theta|\alpha+n)$

    最后计算得到后验概率分布也是一个狄利克雷分布(结论)

    于是多项分布的参数$\theta$的先验分布和后验分布都是狄利克雷分布(参数不同),所以狄利克雷分布是多项分布的共轭先验。且狄利克雷后验分布的参数等于狄利克雷先验分布参数$\alpha=(\alpha_1,\alpha_2,\cdots,\alpha_k)$加上多项分布的观测计数$n=(n_1,n_2,\cdots,n_k)$,好像试验之前就已经观察到计数$\alpha=(\alpha_1,\alpha_2,\cdots,\alpha_k)$,因此也把$\alpha$叫做先验伪计数

  6. LDA不止可以用于文本,也可以用于图片等,即把图片当做文本,像素当做文本里的一个词