PLSA模型简介
PLSA作为一种主题模型,提供了一种文本语义分析的手段,在自然语言处理中有很多应用,例如广告推荐、文本分类、改善搜索相关性等。关于PLSA的应用场景在下一篇博客中介绍,这里先对模型作一个简单的介绍,也算是对PLSA的推导过程做一个梳理。
PLSA:Probabilistic LatentSemantic Analysis,也即浅层概率语义分析,大体来讲就是通过概率手段计算潜在主题与word、document之间的关系。
传统的bag of words模型,通过word之间的匹配来计算文档之间的距离,对于汉语中的一词多义、同义词现象解决起来相对乏力。主题模型通过引入潜在主题维度,将文档投影到潜在主题上,将字面上不同的文档从语义上进行关联。
P(d):在海量文档中选出文档d的概率
P(z|d):文档d属于主题z的概率
p(w|z):在主题z的中选中单词w的概率
因此可以得出以下等式:
在文档di中选出单词wj的概率:
根据条件概率可以得到:
文档集合被选中的概率:
对p求极大似然估计可得到:
极大似然估计也即要估计出的值,以使L最大,也即是使观测到的状态(文档集合)概率最大。
因此目标函数为:
在目标函数中含有对数加法,所以的似然解问题没有闭式解,但可以采用EM算法,不断迭代逼近最优解。
因此:
根据Jenson不等式可以得到:
可以同步不断的求F的最大值从而来逼近L的最大值。因此该问题转化为了一个约束条件下的最优化问题,约束条件为:
通过拉格朗日函数方法可以得到优化的目标函数为:
注意F’中的变量是 ,对他们分别求导可以得到:
通过简单的变形可以得到:
(EM算法中的E步)
(EM算法中的M步)
(EM算法中的M步)
通过给定初始的 ,从而就可以计算出 ,然后又可以不同后者再计算出前者,以此不断迭代,从而逼近F的最优解。
至此,最后得到的 也即PLSA模型的所求。
- 点赞 1
- 收藏
- 分享
- 文章举报
- PLSA模型简介
- ORM模型简介
- Spark简介与计算模型
- V4L2编程模型简介
- 对象模型简介
- 模型驱动式架构(MDA)技术简介
- 图像分割之(五)活动轮廓模型之Snake模型简介
- SCA编程模型简介
- Reactor/Proactor模型简介
- Microsoft 用于构建面向服务的应用程序的统一编程模型--Indigo简介 - WCF(WindowsCommunicationFoundation)构建面向服务的分布式应用
- 机器学习与神经网络(一):人工神经网络模型简介
- OSI模型与TCP/IP模型简介
- 2. NoSql 数据模型简介
- initramfs 简介,一个新的 initial RAM disks 模型
- 概率语言模型 Probabilistic Language Modeling (一) --- 整体简介
- Java分布式应用简介------I/O模型:阻塞与非阻塞、同步与异步
- C++对象模型(1):对象内存布局简介
- 转:五种I/O模型和select函数简介
- Linux C程序I/O模型简介与异步 I/O性能模型分析
- initramfs 简介,一个新的 initial RAM disks 模型