Probability Latent Semantic Analysis (PLSA) 模型 学习笔记
PLSA是前面LSA的兄弟版,相比于LSA而言,PLSA定义了几率模型,而且每一个变量和相应的几率散布和条件几率散布都有明确的物理解释了。这篇博文我们分3部份来讲PLSA:基本思想,EM算法推导,和优缺点分析。
PLSA是1种主题模型topic model,是针对文本中隐含的主题来建模的方法。PLSA就是给定了文档d以后,需要以1定的几率选择与文档相对应的主题z,然后再从主题z中以1定的几率选择单词w。我们用下图来形象说明:
中间的那1层就是PLSA引入的“主题层”。其实从上面的介绍中你就能够发现,PLSA是1种混合模型,需要使用两层几率(上面中两处红色标记)对全部样本空间建模。下面的图更加抽象地描写了PLSA的模型:
我们继续使用1个例子来通俗理解PLSA的基本思想和它的利用:
想象某个人要写N篇文档,他需要肯定每篇文档里每一个位置上的词。假定他1共有K个可选的主题,有V个可选的词项,所以,他制作了K个V面的 “主题-词项” 骰子,每一个骰子对应1个主题,骰子每面对应要选择的词项。然后,每写1篇文档会再制作1颗K面的 ”文档-主题“ 骰子;每写1个词,先扔该骰子选择主题;得到主题的结果后,使用和主题结果对应的那颗”主题-词项“骰子,扔该骰子选择要写的词。他不停的重复如上两个扔骰子步骤,终究完成了这篇文档。重复该方法N次,则写完所有的文档。在这个进程中,我们并未关注词和词之间的出现顺序,所以PLSA也是1种词袋方法;并且我们使用两层几率散布对全部样本空间建模,所以PLSA也是1种混合模型。
而真实的PLSA方法两个“骰子”可能就不是均匀的,由于每一个主题的几率不1定1样,主题下每一个词的几率也不1定1样。在PLSA模型中,我们需要做的就是如何求出这两个几率。
这部份网上讲授的太多了,我选择1个比较好懂,参考过来。(powered by Xinyan Lu)
优点:PLSA可以解决了同义词和多义词的问题,利用了强化的期望最大化算法(EM)来训练隐含类(潜伏类)。而且相对了LSA,有了坚实的统计学基础。
缺点:随着document和term 个数的增加,pLSA模型也线性增加,变得愈来愈庞大,也就是说PLSA中训练参数的值会随着文档的数目线性递增。还有,PLSA可以生成其所在数据集的的文档的模型,但却不能生成新文档的模型。