本文是经典论文《Latent Dirichlet Allocation》的翻译及注解。
Blei D M, Ng A Y, Jordan M I. Latent dirichlet allocation[J]. J Machine Learning Research Archive, 2003, 3:993-1022.
本文虽然尽可能的讲解涉及的外围知识,但如果有看不懂的地方请点击“参考”后面的链接,进行阅读理解。
强烈建议结合通俗理解LDA主题模型阅读本篇内容。
本文相当长,请做好心理准备。本文是作者花费大量时间精力整理的原创文档,谢绝转载。
由于作者水平有限,如有错漏之出,请不吝赐教,非常感谢。
摘要
我们描述潜在的狄利克雷分配(LDA),它是一种用于离散数据集合(如文本语料库)的生成概率模型。 LDA是一个三层次的贝叶斯模型,其中一个集合中的每个项目都被建模为一组潜在的话题(主体)类型的有限混合。反过来,每个主题都被建模为一组潜在主题概率的无限混合。 在文本建模的背景下,主题概率提供了文档的明确表示。我们提出了基于变分方法和经验贝叶斯参数估计的EM算法的高效近似推理技术。 我们会报告LDA在文档建模,文本分类和协作过滤上的实验结果,并与一元混合模型( unigrams model)和概率LSI模型相比较。
1 介绍
在本文中,我们考虑建模文本语料库和其他离散数据集合的问题。我们的目标是找到对一个集合的成员的简短描述,它不仅可以高效处理大型集合,同时保留对分类,异常检测,摘要(概括)以及相似性和相关性判断等基本任务有用的必要统计关系。
信息检索(IR)领域的研究人员已经在这个问题上取得了重大进展(Baeza-Yates和Ribeiro-Neto,1999)。IR研究人员为文本语料库提出的基本方法 (一种在现代互联网搜索引擎中成功部署的方法)将语料库中的每个文档变为实数表示的向量,每个实数都表示(词汇的)计数比率。流行的tf-idf方案(Salton和McGill,1983),对于文集中的每个文档选择了“词”或“术语”作为基本单位,并且计数由每个词的出现次数。在适当的归一化之后,将该术语频率计数与逆向文档频率计数进行比较,该逆向文档频率计数度量整个语料库中的词的出现次数(通常以对数刻度,并且再次适当标准化)。 最终结果是文档术语矩阵X,其列包含文档集中每个文档的tf-idf值。 因此,tf-idf方案将任意长度的文档缩减为固定长度的数字列表。
对tf-idf描述不太明白,可以参考博客:https://blog.csdn.net/zrc199021/article/details/53728499
尽管tf-idf规约具有一些吸引人的特征 - 特别是(在对集合中的文档进行区分的)单词集合的基本识别中,但是在(对文档的)描述长度上,该方法并没有减少多少,并且揭示出很少的文档内或文档间的统计结构。为了解决这些缺点,IR研究人员提出了其他几种降维技术,其中最著名的是潜在语义索引(LSI)(Deerwester等,1990)。LSI使用X矩阵的奇异值分解来标识tf-idf特征空间中的线性子空间,该子空间捕获集合中的大部分变异数(variance)。这种方法可以在大型集合中实现显着压缩。此外,Deerwester等人 认为LSI的衍生特征(即原始tf-idf特征的线性组合),可以捕捉基本语言学概念的某些方面,比如同义词和多义词等。
为了证实关于LSI的主张,并研究其相对的优缺点,开发文本语料库的生成概率模型和研究LSI从数据中恢复生成模型方面的能力是有用的(Papadimitriou et al。,1998)。然而,目前尚不清楚,考虑文本的生成模型的时候,为什么应该采用LSI方法 - (其实)可以尝试更直接地进行,(比如)使用最大似然法或贝叶斯方法将模型与数据相匹配(即得到数据的模型)。
Hofmann(1999)在这方面迈出了重要的一步,他将LSI的概率LSI(pLSI)模型(也称为特征模型aspect model)作为LSI的替代品。我们在第4.3节中详细描述的pLSI方法将文档中的每个单词作为混合模型中的样本进行建模,其中混合组件是多项随机变量,可以将其视为“主题topics”的表示。因此,每个单词都是从单个主题生成的,而文档中的不同单词可以从不同的主题生成。每个文档都被表示为这些混合组件的混合比例列表,从而将其简化为一组固定主题的概率分布。 这种分布是与文档相关的“简化描述”。
虽然霍夫曼的工作是向文本概率建模迈出的有用的一步,但它并不完整,因为它没有提供文档层面的概率模型。在pLSI中,每个文档都被表示为一个数字列表(数字的值是主题的混合比例),并且这些数字没有生成概率模型。这导致了几个问题:(1)模型中参数的数量与语料库的大小成线性增长,这导致过度拟合的严重问题;(2)不清楚如何将概率分配给训练集之外的文档。
要了解如何超越pLSI,让我们考虑包括LSI和pLSI在内的一类降维方法的基本概率假设。所有这些方法都基于“词袋”的假设 - 文档中的单词顺序可以忽略不计。此外,尽管不经常正式说明,但这些方法也假定文档是可相互交换的; 文集中文档的具体排序也可以忽略不计。
受益于Finetti(1990),一个经典表示理论认为:任何可交换随机变量的集合都具有混合分布(通常是无限混合)的表示。因此,如果我们想考虑文件和单词的可交换表示,我们需要考虑能捕获单词和文档的可交换性的混合模型。这一思路促使我们在当前论文中提出潜在狄利克雷分配(LDA)模型。
需要强调的是,可交换性的假设并不等同于随机变量独立同分布的假设。相反,可交换性本质上可以被解释为“条件独立且分布相同”,其中的条件是与概率分布的潜在隐参数有关的。在一定条件下,随机变量的联合分布是简单的,但如果围绕隐参数考虑,联合分布可能相当复杂。因此,虽然可交换性的假设是文本建模领域的一个主要的简化假设,并且其主要理由是它是一种会导致计算效率较高的方法,但可交换性假设对简单频率的计数或线性操作并不是一个必要的条件。在当前的论文中,我们的目标是,通过认真考虑de Finetti定理,可以通过混合分布获取重要的文档内统计结构。
同样值得注意的是,可交换性的基本概念有大量的总结概括,包括各种形式的部分可交换性,并且上面提到的表示法也可用于部分可交换的情况(Diaconis,1988)。因此,虽然我们在当前论文中讨论的工作集中在简单的“词袋”模型上(这表现为单个单词(unigrams)的混合分布),但我们的方法也适用于涉及较大结构混合的更丰富的模型,如n-grams或段落。
本文的结构如下: 在第2节中,我们介绍基本的表示法和术语。 LDA模型在第3节中介绍,并与第4节中的相关潜变量模型进行比较。我们在第5节讨论LDA的推理和参数估计。第6节提供了LDA拟合数据的一个说明性例子。文本建模,文本分类和协作过滤的实验结果在第7节中给出。最后,第8节给出我们的结论。
2 表示法和术语
我们在整篇论文中使用文本集合的说法,指的是诸如“单词”,“文档”和“语料库”等实体。这很有用,因为它有助于指导靠直觉来感知的知识的处理(intuition),特别是当我们引入旨在捕捉抽象概念(如主题)的潜在变量时(潜在变量和隐变量说的是一回事)。然而,需要指出的是,LDA模型不一定与文本相关,并且可应用于涉及数据集合的其他问题,包括来自诸如协同过滤,基于内容的图像检索和生物信息学等领域的数据。 事实上,在7.3节中,我们将呈现在协同过滤领域的实验结果。
在形式上,我们定义下列术语:
• 单词是离散数据的基本单位,假设有一个V个词组成的词汇表(词典),索引通过{1......V}表示,里面每一项代表一个单词。我们使用单位向量表示单词,它里面一项等于1其他项等于零。我们使用上标来表示第几个成分,因此第v个词在V维向量w中表示为:wv = 1 and wu = 0 for u ≠ v
• 文档中的词来自一个包含N个词的词典,一个文档可以表示成N个词组成的序列,可以表示为w = (w1,w2......wN),下标表示第几个词。(注意,每个词用一个V维的向量表示,每篇文档有最多有N个不同的词,不要搞混了)
• 一个语料库是含有M个文档的集合,用D = (w1,w2......wM)----注意有加粗
我们希望找到一个语料库的概率模型,它不仅为语料库成员分配高概率,而且为其他“类似”文档分配高概率。(意思就是说,语料库中某一文档的某个topic概率比较高,那么测试相似文档。也能得到相同的概率分布)
3 隐狄利克雷分配模型
隐在狄利克雷分配(LDA)是语料库的生成概率模型。 其基本思想是文档被表示为潜在主题的随机混合,每个主题都是有不同的文字(词)分布特征的。
LDA为语料库D中的每个文档w假定以下生成过程:
-
选择N〜泊松(ξ),即假设词典中的词服从泊松分布;
-
选择θ〜Dir(α),即假设θ服从参数为α的狄利克雷分布,θ本身认为是一个多项式分布。θt表示文档t中所包含的每个话题的比例,它是文档t的主题分布,是个向量。
-
对于N中的每个词wn(对于每篇分档中的第n个词的处理):
(a) 根据θt进行话题指派,得到文档t中词n的话题zt,n,即从文档中的主题分布采样词n的主题zn;
(b) 然后根据指派的主题所对应的词分布中采样出词wn(每个主题有各自的词分布,词分布同样是多项分布,服从Dirichlet分布,参数为β)。
重复上述过程,直到M篇文档都完成。
“主题”也常称为“话题”
在这个基本模型中做了几个简化的假设,其中一些我们在后面的章节中会删除。首先,Dirichlet分布的维度k(以及主题变量z的维度)被假定为已知并且是固定的。其次,单词概率通过k×V矩阵β进行参数化,其中βij = p(w j = 1 | zi = 1)(猜测:它表示在某个主题中索引为i的词出现的条件下,文档中第j个词出现的概率),现在我们将其视为待估计的固定量。最后,泊松假设对随后的任何事情都不是关键的,并且可以根据需要使用更真实的文档长度分布。此外,请注意,N与所有其他数据生成变量(θ和z)无关。 因此它是一个辅助变量,我们通常会忽略它在随后发展中的随机性。
z表示主题向量,k是主题的个数
一个k维Dirichlet随机变量θ可以从(k − 1)-simplex(单形或单纯形)中取值,并且在这个单纯形中有以下概率密度:
在几何中,单形是将三角形或四面体概念推广到任意维的概念。具体来说,k单形是一个k维多面体,它是k + 1个顶点的凸包。形式化的说,如果k + 1个点是仿射无关的,那么单形用这些点来定义的话,符合以下集合:
用图形来看可能更直观
一个常规3-单形或叫四面体
对于一组向量,如果其中任一向量都不能被其他向量仿射组合而成则称仿射无关或者线性独立。更详细解释,请参考这篇博客https://blog.csdn.net/hqh45/article/details/49591403
α参数是一个k维向量,并且α的每一项都满足αi > 0,另外Γ(x)是伽马函数。狄利克雷分布在单形(属于指数族)上是一种实用的分布,具有有限维数的充分统计量,并且与多项分布共轭。
在机器学习领域中,常用概率模型来对问题进行建模,有几点好处:1)当给定参数分布的假设空间后,可以通过很严格的数学推导,得到模型的似然分布,这样模型可以有很好的概率解释;2)可以利用现有的EM算法或者Variational method来学习。通常为了方便推导参数的后验分布,会假设参数的先验分布是似然的某个共轭分布,这样后验分布和先验分布具有相同的形式,这对于建模过程中的数学推导可以大大的简化,保证最后的形式是tractable。
先介绍一个概念——共轭先验(Conjugate Prior)。在贝叶斯统计理论中,如果某个随机变量Θ的后验概率 p(θ|x)和先验概率p(θ)属于同一个分布簇,那么称p(θ|x)和p(θ)为共轭分布,同时,也称p(θ)为似然函数p(x|θ)的共轭先验。
通过数学推导可以证明狄利克雷分布和多项式分布共轭。话句话说,可以证明狄利克雷分布是多项式分布的共轭先验概率分布。
参考:https://www.cnblogs.com/wybang/p/3206719.html
https://www.cnblogs.com/yutingliuyl/p/7064997.html
在第5节中,这些属性将有助于开发LDA的推理和参数估计算法。
给定参数α和β,主题混合分布θ、主题z和文档w的联合分布为:
其中,p(zn | θ)表示的是主题分布为θ的情况下,从某篇文档w中采样得到词n的主题zn的概率,对于一个词汇,若出现在主题zn中,则zni = 1,对θ进行积分并在z上求和,我们得到文档的边际分布:
边际分布亦称“边缘分布”。边缘分布(Marginal Distribution)指在概率论和统计学的多维随机变量中,只包含其中部分变量的概率分布。
参考:https://baike.baidu.com/item/%E8%BE%B9%E7%BC%98%E5%88%86%E5%B8%83/15571865?fr=aladdin
上式表示给定参数α和β的条件下,文档的概率分布。
最后,利用单个文档边际概率的乘积,得到一个语料库的概率分布:
LDA模型在图1中表示为概率图模型。如图所示,LDA表示有三个层次。参数α和β是语料库层面的参数,假设在生成语料库的过程中抽样一次得到。 变量θd是文档级变量,每个文档采样一次。 最后,变量zdn和wdn是字(词)级变量,并针对每个文档中的每个单词采样一次。
zdn表示第d篇文档中第n个词的主题,wdn表示第d篇文档中的第n个词。注意不是原文档,而是文档的向量化表示之后的w。
区分LDA和简单的Dirichlet多项式聚类模型很重要。 经典的聚类模型会涉及到一个两层模型:其中,一个Dirichlet为一个语料库抽样一次,一个多项式聚类变量为语料库中的每个文档选择一次,并且以聚类变量为条件,为文档选择一组词语 。与许多聚类模型一样,这种模型将文档限制为与单个主题相关联。另一方面,LDA涉及三个层次,特别是主题节点在文档中被重复采样。在这种模式下,文档可以与多个主题相关联。
图1所示类似结构通常在贝叶斯统计建模中研究,它们被称为分层模型(Gelman等,1995),或者更准确地说,是条件独立的分层模型(Kass和Steffey,1989)。这种模型通常也被称为参数经验贝叶斯模型(parametric empirical Bayes models),这个术语不仅指特定的模型结构,而且还指用于估计模型参数的方法(Morris,1983)。事实上,正如我们在第5节中讨论的那样,我们采用经验贝叶斯方法来估计一个LDA简单实现中的参数(比如,α和β等),但我们也考虑了更充分的贝叶斯方法。
3.1 LDA和可交换性
如果联合分布对于置换是不变的,那么一个有限的随机变量集{z1......zN}被认为是可交换的。 如果π(此π非彼π)表示某种整数从1到N的置换规则,则:
p(z1......zN) = p(zπ(1)......zπ(N))
如果每个有限的子序列是可交换的,则无限序列的随机变量是无限可交换的。
De Finetti的表示定理指出,随机变量的无限可交换序列的联合分布就好像从一些分布中抽取的一个随机参数,以该参数为条件,所讨论的随机变量是独立同分布的。
在LDA中,我们假设单词是由主题(通过固定的条件分布)生成的,而且这些主题在文档中是无限可交换的。根据菲内蒂定理,一组词汇和话题的概率必须具有以下这种形式:
θ是关于主题的多项式的随机参数。通过边缘化主题变量并赋予θ狄利克雷分布,在公式(3)中,我们获得了文档的LDA分布。
边缘化是一种方法,它要求对一个变量的可能值求和,以确定另一个变量的边缘贡献。在这里对主题变量θ进行累加求和,则拿到的就是其他变量的边缘贡献。
参考:http://baijiahao.baidu.com/s?id=1591331715705872783&wfr=spider&for=pc
3.2 一元模型(unigrams)的连续混合
unigram 一元分词,把句子分成一个一个的汉字
bigram 二元分词,把句子从头到尾每两个字组成一个词语
trigram 三元分词,把句子从头到尾每三个字组成一个词语
图1所示的LDA模型比传统分层贝叶斯文献中经常研究的两层模型要复杂得多。然而,通过边缘化隐藏的主题变量z,我们可以将LDA理解为两层模型。
特别是,让我们来构造单词分布p(w|θ,β):
请注意,这是一个随机量,因为它取决于θ。
我们现在为文档w定义下面的生成过程:(对每篇文档)
- 选择θ ∼ Dir(α),即选择一个服从狄利克雷分布的θ;
- 对于N中的每个词wn:
(a) 从p(wn | θ,β)中得到wn的值。
该过程将文档的边际分布定义为连续混合分布:(注意下式表示的是语料库,而非一篇文档 的分布)
其中,p(wn | θ,β)是混合成分,p(θ | α)是混合权重。
混合分布,参考:https://blog.csdn.net/jasonding1354/article/details/43702125
图2说明了LDA的这种解释。 它描绘了LDA模型的一个特定实例引发的p(w| θ,β)的分布。请注意,在(V-1) - simplex中的这种分布仅通过k + kV个参数实现,但展现出非常有趣的多模式结构。
图2,本例子展示了LAD方法,对3个单词和4个主题的一元分布p(w| θ,β)产生的密度图示。嵌入x-y平面中的三角形是代表三个单词上所有可能的多项分布的二维单纯形。三角形的每个顶点对应于一个确定分布,它逐个赋予每个单词概率; 边缘的中点给出两个单词各0.5的概率; 三角形的质心是所有三个词的均匀分布。用x标记的四个点是四个主题中每个主题的多项式分布p(w | z)的位置,单纯形顶部显示的外观是, LDA给出的(V-1) - 单纯形(词的多项分布)上的一个密度表示的例子。
4 与其他潜在(latent)变量模型的关系
在本节中,我们将LDA与文本的简单潜(隐)变量模型(一元模型,一元模型的混合模型和pLSI模型)进行比较。 此外,我们提出了这些模型的统一几何解释,突出了它们的主要区别和相似之处。
图3:离散数据的不同模型的图形模型化表示。
4.1 一元模型( Unigram model)
在一元模型下,每个文档的单词都是独立的按照某个多项分布而绘制的,生成文档的概率为:
这在图3a中的图形模型中进行了说明。p(wn)表示wn的先验概率,w = (w1......wN)。
Unigram Model 中假设了文档之间是独立可交换的,而文档中的词也是独立可交换的,所以一篇文档相当于一个袋子,里面装了一些词,而词的顺序信息就无关紧要了,这样的模型也称为词袋模型(Bag-of-words),有的地方也直接称 Unigram Model为词袋模型。大家想要判断两篇文档是否相似,最简单直接的方法就是看文档里出现的词是否一样,其个数是否相近。于Unigram Model(词袋模型)就是实现这样的思路设计的
一元模型最简单的一个例子:
1 上帝找到一个V面的骰子,然后利用它来进行投掷生成文档。
2 每投掷一次骰子便得到一个词汇,重复N次,便得到一篇文档
3 重复第二步M次,便得到了M篇文档
其中V是词汇量的个数,N是每篇文档的单词个数,M代表所有文档的个数。
参考:https://blog.csdn.net/pipisorry/article/details/42560693
https://blog.csdn.net/suibianti/article/details/60754999
https://blog.csdn.net/zhazhiqiang/article/details/21186353
4.2 混合一元模型(Mixture of unigrams)
如果我们用一个离散的随机主题变量z(图3b)来扩充一元模型,我们就可以得到一个混合一元模型(Nigam et al.,2000)。在这个混合模型下,首先选择一个主题z,然后从条件多项式p(w | z)独立的生成N个单词,从而生成每个文档(该文档中的所有词都来自一个主题)。一篇文档的概率分布:
在每个文档仅显示一个主题的假设背景下,当从语料库做概率估计时,可以将词语分布视为主题的表示。正如第7节的实证结果所示,这种假设通常限制性太强,以至于无法有效地建模量大的文献。
相反,LDA模型允许文档在不同程度上展示多个主题。这是以(增加)一个额外参数为代价实现的:在混合一元模型中有与p(z)相关的参数有k-1个,而在LDA中与p(θ | α)有关的参数有k个。
4.3 概率潜在语义索引
概率潜在语义索引(pLSI)是另一个广泛使用的文档模型(Hofmann,1999)。 如图3c所示,给定了未知的主题z,pLSI模型假设文档标签d和单词wn是条件独立的:
pLSI模型试图放宽混合一元模型中,每个文档仅由一个主题生成的简化假设。从某种意义上说,它确实捕捉到一个文档可能包含多个主题的可能性,使用p(z | d)充当一个特定文档d的主题的混合权重。但是,需要注意的是,d是训练集中文档列表中的虚拟索引(dummy index)。因此,d是一个多项式随机变量,d的取值多少和训练集中文档数量正相关,模型只能为训练集上的文档学的混合权重p(z | d)。出于这个原因,pLSI不是一个良好定义的文档生成模型,它没有办法将概率分配给训练集之外的文档。
使用pLSI的另一个困难(也是来自于通过训练文档进行索引的分布的使用)是必须估计的参数数量与训练文档的数量呈线性增长。k-主题pLSI模型的参数是在k个未知主题上,V和M混合大小的k个多项式分布。这给出了kV + kM个参数,因此在M中线性增长。参数的线性增长表明该模型容易出现过度拟合,并且根据经验确定,过拟合确实是一个严重的问题(参见第7.1节)。在实践中,使用回火试探来平滑模型的参数以获得可接受的预测性能。 然而,已经表明,即使在使用回火时也可能发生过度拟合(Popescul et al.,2001)。
LDA通过将主题混合权重视为一个k个参数的隐藏的随机变量,而不是大量与训练集明确关联的单个参数,来克服这两个问题。如第3节所述,LDA是一个良好定义的生成模型,可轻松推广到新文档。此外,k-topic LDA模型中的k + kV个参数不会随着训练语料库的大小而增长。我们将在7.1节看到,LDA不会遇到与pLSI相同的过度拟合问题。
pLSI资料参考:https://blog.csdn.net/m0_37788308/article/details/78115378
4.4 一个几何解释
说明LDA和其他潜在主题模型之间差异的一种好方法是考虑潜在空间的几何形状,并了解每个模型下文档在该几何体中的表示方式。
潜在空间(latent space)的解释,下面列出Quora上的回答,我认为说的比较好:The word “latent” means “hidden”. It is pretty much used that way in machine learning — you observe some data which is in the space that you can observe, and you want to map it to a latent space where similar data points are closer together.
For instance, consider these 4 images:
In the pixel space that you observe(一般的图像处理方法,大都考虑的像素这一维度), there is no immediate similarity between any two images. However, if you were to map it to a latent space, you would want the images on the left to be closer to each other in the latent space than to any of the images on the right. (椅子更靠近椅子,而非桌子)So your latent space captures the structure of your data w.r.t(with regard to with reference to 关于的意思) your task.
In LDA, you model the task in a way that documents belonging to similar topics are closer in the latent space of topics.
In word embeddings, you want to map words to a latent vector space such that words with similar meaning are closer in that space.
更简洁的说:The "Latent Space" is the vector space within which the vectors that make up the topics found by LDA are found. These topics are latent within the text - that is, they are not immediately apparent, but are found or discovered by the LDA algorithm. In the same way, the vector space within which they reside is latent, or waiting, to be populated.
因为都是一些简单的英语句子,我就不翻译了,相信大家都可以看懂。
上述所有四种模型(unigram, mixture of unigrams, pLSI, and LDA)都是在单词分布空间中进行操作的。每个这样的分布可以被看作是(V-1) - simplex上的一个点,我们称之为词单纯形(the word simplex)。
一元模型在词单纯形上找到一个单一的点,并假定文集中的所有单词来自相应的分布。潜变量模型考虑词单纯形上的k个点,并根据这些点构成子单形体,我们称之为主题单纯形。请注意,主题单纯形上的任何一点也是单词单纯形上的一个点。不同的潜在变量模型以不同的方式使用主题单纯形来生成文档。
图4,以三个词为例,这三个词的主题单纯形是嵌入在词单纯形内的。词单纯形的角部对应于三个分布,其中每个词在这里(分别)具有概率1。主题单纯形的三点对应于词的三种不同分布。混合一元模型将每个文档放在主题单纯形的一个角落。pLSI模型引发了由x表示的主题单纯形的经验分布。LDA在由等高线表示的主题单纯形上进行平滑分布。
• 混合一元模型假设,对于每个文档,词单纯形中的k个点(即,主题单纯形的那些角中的一个)中的一个一旦随机选择后,文档的所有单词都从对应于那一点的分布中获取。
• pLSI模型假定训练文档的每个单词来自随机选择的主题。这些主题本身来自于文档在主题上的特征分布,也就是主题单纯形上的一个角点。每个文件有一个这样的分布,训练文档集因此定义了关于主题单纯形的经验分布。
• LDA假定观察到的(训练集)和未看到的(验证集)文档中的每个词都是由随机选择的主题生成的,该主题是从具有一个随机选择参数的分布中抽取的。 从主题单纯形的平滑分布中,每个文档对此参数进行一次采样。
这些差异在图4中突出显示。
5. 推理和参数估计
我们描述了使用LDA背后的动机,并说明了其与其他潜在主题模型相比的概念优势。在本节中,我们将注意力转向LDA下的推理和参数估计。
左边是LDA的图解模型,右边是变化的分布对LDA后验的近似的表示
5.1 推理
为了使用LDA我们需要解决的关键推理问题是计算给定文档的隐藏变量的后验分布:
先验分布:与试验结果无关,或与随机抽样无关,反映在进行统计试验之前根据其他有关参数口的知识而得到的分布。在抽取样本X之前,人们对所要估计的未知参数θ所了解的信息,通常称为先验信息。先验分布是总体分布参数θ的一个概率分布。
后验分布:在抽取样本X之前,人们对未知参数θ有个了解,即先验分布P(θ)。抽取样本X,得到样本信息,即似然函数P(X|θ),由于样本中包含未知参数θ的信息,所以样本信息可以修正抽样之前的先验分布P(θ)。P(θ|X)为参数θ的后验分布,即抽样加入新的信息后,对先验分布P(θ)进行修正,后验分布综合运用了先验分布P(θ)和样本信息P(X|θ)。
参考:https://blog.csdn.net/xbmatrix/article/details/63253177
不幸的是,这种分布通常难以计算。 实际上,为了规范化分布,我们将忽视隐藏变量并根据模型参数重写方程(3):
这是一个由于在潜在主题的总和中θ和β之间的耦合,而难以处理的函数(Dickey,1983)。Dickey表示这个函数是在Dirichlet分布的特定扩展下的期望,可以用特殊的超几何函数表示。它在贝叶斯环境中可用于删除(或审查,censored 暂时不明白怎么翻译)离散数据,以表示θ的后验(在该设置中,θ是随机参数)(Dickey等,1987)。
尽管后验分布对于精确推断是难以处理的,但是对于LDA可以考虑各种各样的近似推理算法,包括拉普拉斯近似,变分近似和马尔可夫链蒙特卡罗(Jordan,1999)。在本节中,我们描述了一个简单的基于凸性的变分算法,用于推断LDA,并讨论了第8节中的一些替代方案。
5.2 变分推断
基于凸性的变分推理的基本思想是利用Jensen不等式来获得对数似然的可调下界(Jordan et al。,1999)。本质上,人们考虑一系列下界,它们由一组变分参数索引。变分参数由优化程序选择,该程序试图找到最可能的下限。
获得易处理的下界族的简单方法是考虑原始图形模型的简单修改,原始图形模型中一些边和节点已被移除。特别考虑图5(左)中所示的LDA模型。 θ和β之间的有问题的耦合是由于θ,z和w之间的边界而产生的。 通过丢弃这些边和w节点,并赋予所得到的简化图形模型以及自由变分参数,我们获得了潜在变量的一个分布族。这个分布族以下面这个变分分布为特征:
其中Dirichlet参数γ和多项参数(Φ1...ΦN)是自由变分参数。
已经指定了简化的概率分布族,下一步是建立一个确定变分参数γ和Φ的值的优化问题。 正如我们在附录A中所示,找到对数似然的紧密下界的期望直接转化为以下优化问题:
因此,通过最小化变分分布和真实后验p(θ, z | w,α,β)之间的KullbackLeibler(KL)发散来找到变分参数的优化值。这种最小化可以通过迭代定点方法实现。 特别是,我们在附录A.3中表明,通过计算KL散度的导数并将它们设置为零,我们得到以下一对更新方程:
最近有新的项目做,没时间翻译啦,以后有时间再填坑,此处省略3000字......
网友评论