LDA的演变2--从模型假设方面理解LDA的由来

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u010626937/article/details/80929742

从模型假设方面理解LDA的由来

预先知识

在介绍之前,先给出频率派和贝叶斯派各自不同的思考方式:

  • 频率派把需要推断的参数θ看做是固定的未知常数,即概率θ虽然是未知的,但是最起码是一个确定的值,同时,样本X是随机的,所以频率派重点研究样本空间,大部分的概率计算都是针对样本X的分布;
  • 贝叶斯派的观点则截然相反,他们认为待估计的参数θ是随机变量,服从一定的分布,而样本X是固定的,由于样本是固定的,所以他们重点研究的是参数θ的分布。

文本建模

我们日常生活中总是产生大量的文本,如果每一个文本存储为一篇文档,那么每篇文档从人的观察来说就是有序的词的序列 d = ( w 1 , w 2 , . . . , w n )
这里写图片描述

  统计文本建模的目的就是追问这些观察到语料库中的词序列数如何生成的。统计学被人们描述为猜测上帝的游戏,人类产生的所有的语料文本我们都可以看成是一个伟大的上帝在天堂中抛掷骰子生成的,我们观察到的只是上帝玩这个游戏的结果—–词序列构成的语料。而上帝玩这个游戏的过程对我们来说是一个黑盒子。所以,在统计文本建模中,我们希望猜测出上帝是如何玩这个游戏的,具体一点,最核心的两个问题是:
1、上帝有什么样的骰子;2、上帝是如何抛掷这些骰子的。第一个问题就是表示模型中都有哪些参数,骰子的每一个面的概率都对应于模型中的参数;第二个问题就是表示游戏的规则是什么,上帝可能有各种不同类型的骰子,上帝可以按照一定的规则抛掷这些骰子,从而产生词序列。
这里写图片描述

介绍四个模型

UNigram Model

假设我们的词典中一共有V个词,那么最简单的Unigram Model就是认为上帝是按照如下的游戏规则产生文本的。
这里写图片描述
这里写图片描述
这里写图片描述
这里写图片描述

  在Unigram Mode中,我们假设了文档之间是独立可交换的,而文档中的词也是独立可交换的,所以一篇文档相当于一个袋子,里面装了一些词,而词的顺序信息就无关紧要了,这样的模型也称为词袋模型(Bag-of-words).

当然,我们很重要的一个任务就是估计模型中的参数,也就是问上帝拥有的这个骰子的各个面的概率是多大,按照统计学家中的频率派的观点,使用最大似然估计最大化P(W),于是参数的估计值就是:

  对于这个模型,贝叶斯统计学派的统计学家是会有不同意见的。他们会很挑剔的批评只假设上帝拥有唯一一个固定的骰子是不合理的,在贝叶斯学派看来,一切参数都是随机变量,以上模型中的不是唯一固定的,它也是一个随机变量,所以又有了加入了贝叶斯思想的Unigram model,或者叫mixture Unigram model,该模型假设每个文档具有一个主题 。

Mixture Unigram Model(贝叶斯Unigram Model)

这里写图片描述

  该方法假设是一个文档只包含一个主题,对于实际情况并不是非常适合的,并且对于大规模文档集来讲,效率不高。

图像如下图所示:
这里写图片描述
这里写图片描述

  上帝的这个坛子里面装有无穷多个骰子,有些类型的骰子的数量多,有些类型的骰子的数量少,所以从概率的角度看,坛子里面的骰子服从一个概率分布,这个分布称为参数的先验分布。
这里写图片描述
这里写图片描述
这里写图片描述
这里写图片描述

PLSI/PLSA model

  以上的Unigram Model是一个很简单的模型,模型中的假设看起来过于简单,和人类写文章产生的每一个词的过程差距比较大,所以模型的效果不是特别理想。如果我们要写一篇文章,往往会是先确定要写那几个主题,譬如构思一篇自然语言处理相关的文章,可能40%会谈语言学、30%会谈概率统计、20%会谈计算机、还有10%谈论其他主题。我们可以看到一篇文章通常是由多个主题构成的、每个主题大概可以用与该主题相关的频率最高的一些词来描述。

这种想法由Hoffmn于1990年给出的PLSA(Probabilistic Latent Semantic Analysis)模型中首先进行了明确的数学化。Hoffman认为一篇文档(Document)可以由多个主题(Topic)混合而成,而每个Topic都是词汇上的概率分布,文章中的每个词都是由一个固定的topic生成的。
这里写图片描述
这里写图片描述
这里写图片描述
这里写图片描述
这里写图片描述

LDA Model

  对于上述的PLSA模型,贝叶斯学派显然是有意见的,doc-topic骰子和topic-word骰子都是模型中的参数,参数都是随机变量,怎么没有先验分布呢?于是,类似于对Unigram Model的贝叶斯改造,我们也可以如下在两个骰子参数前加上先验分布从而把PLSA对应的游戏过程改造为一个贝叶斯的游戏过程。由于都对应到多项式分布,所以先验分布的一个好的选择就是Dirchilet分布,于是我们就得到了LDA(Latent Dirichlet Allocation)模型。
这里写图片描述
这里写图片描述
这里写图片描述
这里写图片描述
这里写图片描述
这里写图片描述
这里写图片描述

猜你喜欢

转载自blog.csdn.net/u010626937/article/details/80929742
LDA
今日推荐