1 文本生成
1.1 文本生成过程
对于一篇文档,可以看成是一组有序的词的序列
。从统计学的角度看,文档的生成可以看成是上帝抛掷骰子生成的结果,每一次抛掷骰子都生成一个单词,抛掷
次生成一篇文档。对于该抛掷的过程,存在两个不同学派的观点:
频率学派认为,上帝只有一个骰子,这个骰子有V面,每个面对应一个单词。上帝生成文档是通过独立抛掷
次产生n个词;
贝叶斯学派认为,上帝有一个装有多个骰子的坛子,每个骰子有V面,每个面对应一个单词(不同骰子每个面概率不同)。上帝生成文档是通过先在坛子里拿一个骰子,然后再独立抛掷
次产生
个词。
LDA(Latent Dirichlet Allocation)是Blei等人基于上述贝叶斯学派的观点提出的一种生成文档的方法,该方法假设每个单词是由背后的一个潜在隐藏的主题中抽取出来。对于语料库中的每篇文档,其生成过程为:(1)选择主题;(2)生成单词;(3)组成文档。具体过程如下:
对于每篇文档,其主题存在一个分布,根据该主题分布抽取一个主题;
对于每个主题,其单词存在一个分布,根据该分布抽取一个单词;
重复过程2直到遍历文档中的每一个词。
那么上述主题分布和单词分布都是什么分布呢?且分布需要满足什么性质呢?
1.2 贝叶斯规则
对于一篇文档,构成文档的单词是可观测的,但文档的主题是不可观测的,因此我们需要根据可观测的单词去估计隐藏的主题分布。根据贝叶斯规则:
其中:
表示根据观测的数据,得出主题的后验分布;
表示主题的先验分布;
表示观测数据的似然函数;
上述就是贝叶斯思想:对于一个未知的分布,先假设其服从先验分布(来源于以前做试验数据计算得到,或来自于人们的主观经验),通过观测到的数据,根据贝叶斯规则计算对应的后验分布。很显然
时刻的后验分布为
次的先验分布,因此需要满足先验分布和后验分布具有相同的形式,即上述中
与
具有相同的分布形式。
2 前置知识
2.1 gamma函数
根据阶乘可知:
,但是当出现小数时,比如计算
则阶乘无法直接计算,因此才出现了阶乘的函数形式——gamma函数:
根据gamma函数计算可得
,因此有
2.2 二项分布
对于
次独立试验,假设每次试验的结果只有两种:成功与失败。成功的概率为
,则失败的概率为
。
次独立实验的结果中,成功的次数为
,失败的次数为
,则定义似然函数为:
似然函数表示观测数据出现的概率,上式满足:
2.3 beta分布
其中
为beta分布的超参数,表示伪计数。
参数解释:假设NBA运动员的投篮命中率服从beta分布,对一个刚进联盟的篮球运动员的命中率进行建模,很明显该运动员的命中率也服从beta分布。此时利用上赛季全联盟所有人的投篮命中数
,打铁数
,作为该运动员命中率beta分布的参数。且以
作为该运动员的先验命中率。此后,根据该运动员投篮数据的增加,去更新其投篮命中率的计算。
期望计算:
对于分布
,有
则有
代入上式
得
2.4 共轭先验分布
上述二项式分布的似然函数为
先验的beta分布为
根据贝叶斯规则可得后验分布
即后验分布仍满足beta分布,与先验一致。
先验分布
后验分布
其中
为伪计数,
为观测的数据。
综上,二项分布对应的共轭先验为beta分布,其意思为,beta分布*二项分布的结果仍未beta分布。
3 Dirichlet分布
3.1 多项式分布
对二项式分布推广到k种结果的情况,此时变为多项式分布,对应的似然函数为
其中,
,
3.2 Dirichlet分布
对beta分布推广到k种结果的情况,此时表为Dirichle分布
其中
同2.3,Dirichlet分布的期望为:
。
3.3 多项式分布与Dirichlet分布共轭
同2.4可得
先验分布
后验分布
其中
为伪计数,
为观测的数据。
4 LDA模型
4.1 模型表示
现在问题是这样的,我们有
篇文档,对应第
个文档有
个单词。我们的目标是找到每一篇文档的主题分布和每一个主题单词的分布。在LDA模型中,我们需要先假定一个主题数目
,这样所有的分布就都基于
个主题展开。
对于语料库中的每篇文档,LDA定义了一个生成过程,以1文本生成部分的投骰子为例,如下:
。这个过程表示在生成第
篇文档的时候,在D个服从
的坛子中找到骰子
,然后投掷这枚骰子生成第n个词的主题(topic)编号
;
。这个过程表示在生成第
篇文档第
个词的时候,在K个服从
的坛子找到主题编号为
的骰子,然后投掷这枚骰子生成单词
简单来说,步骤1就是
,步骤2就是
,根据条件概率的基本公式可得:
而LDA的目标就是要找出每个词后潜在的主题,所以为了达到这个目标,需要计算后验概率:
4.2 直接计算
针对上述后验概率的计算,在这里对其计算复杂度进行分析。
按照离散分布边缘概率的处理方式,文档中一个单词
的全概率为
因此对于上述后验概率计算中的分母
,其表示为所有单词的联合概率,则有
每个单词都对应着
个主题,总共有
个单词,因此分母计算陷入了
项难题,这个离散状态空间太大以至于无法枚举。
5 模型求解
在上节结尾可知,现实中,往往很难求出精确的概率,因此常常采用近似推断的方法。近似推断的方法大致可分为两大类:第一类是使用随机化采样完成近似,比如Gibbs采样;第二类是使用确定性近似完成近似推断,比如变分推断。