1. 引子
Bag-of-Words 模型是NLP和IR领域中的一个基本假设。在这个模型中,一个文档(document)被表示为一组单词(word/term)的无序组合,而忽略了语法或者词序的部分。BOW在传统NLP领域取得了巨大的成功,在计算机视觉领域(Computer Vision)也开始崭露头角,但在实际应用过程中,它却有一些不可避免的缺陷,比如:
从同义词和多义词问题我们可以看到,单词也许不是文档的最基本组成元素,在单词与文档之间还有一层隐含的关系,我们称之为主题(Topic)。我们在写文章时,首先想到的是文章的主题,然后才根据主题选择合适的单词来表达自己的观点。在BOW模型中引入Topic的因素,成为了大家研究的方向,这就是我们要讲的Latent Semantic Analysis (LSA) 和 probabilitistic Latent Semantic Analysis (pLSA),至于更复杂的LDA和众多其他的Topic Models,以后再详细研究。
2. LSA简介
已知一个文档数据集及相应的词典,采用BOW模型假设,我们可以将数据集表示为一个的共生矩阵,,其中,表示词典中的第j个单词在第i个文档中出现的次数。
LSA的基本思想就是,将document从稀疏的高维Vocabulary空间映射到一个低维的向量空间,我们称之为隐含语义空间(Latent Semantic Space).
如何得到这个低维空间呢,和PCA采用特征值分解的思想类似,作者采用了奇异值分解(Singular Value Decomposition)的方式来求解Latent Semantic Space。标准的SVD可以写为:
其中,和均为正交矩阵,有,是包含所有奇异值的对角矩阵。LSA降维的方式就是只取中最大的K个奇异值,而其他置为0,得到的近似矩阵,于是得到了共生矩阵的近似:
注意到如果我们利用内积来计算文档与文档之间的的相似度,即的自相关矩阵,可以得到:。于是,我们可以把解释为文档样本在Latent Space上的坐标,而则是两个空间之间的变换矩阵。下图形象的展示了LSA的过程:
由LSA在训练集合上得到的参数,当一个新的文档向量到来时,我们可以利用下式将其原始term space映射到latent space:
LSA的优点
LSA的不足
3. pLSA
类似于LSA的思想,在pLSA中也引入了一个Latent class,但这次要用概率模型的方式来表达LSA的问题,如下图:
在这个probabilitistic模型中,我们引入一个Latent variable ,这对应着一个潜在的语义层。于是,完整的模型为:代表文档在数据集中出现的概率;代表当确定了语义时,相关的term(word)出现的机会分别是多少; 表示一个文档中语义分布的情况。利用以上这些定义,我们就可以一个生成式模型(generative model),利用它产生新的数据:
这样,我们得到了一个观测对,多次重复这一过程我们就得到了一个类似N的共生矩阵,而潜在的语义在观测值中并没有表现出来。为了刻画的联合分布,我们可得到以下公式:
用图模型来表示以上公式如Figure3中的(a),而(b)是pLSA模型的另外一种等价形式,公式可写作:
模型确定好了,已知的数据集N,我们可以利用Maximum Likelihood准则来确定模型的参数,目标函数可写作:
此目标函数也可以解释为使与两个分布之间的K-L Divergence最小,即更好的刻画共生矩阵的实际分布。
EM求解
在似然值的表达式中存在对数内部的加运算,所以球pLSA最大似然解的问题没有闭式解,我们只能求助于EM算法,下面我们从最简单的启发式的角度推导出pLSA的求解过程。
既然似然值无法直接求解最大值,那么我们转而优化其下界,并通过迭代不断的将此下界提高,那么最终得到的解即为近似最大解, 当然,此过程中寻求的下界要求尽量紧确。利用琴生不等式和概率小于1的性质,我们可以得到如下推导:
这样,我们就把拿到了外面来,接下来我们就可以对直接求解了。注意这个最大化问题的约束条件是:
利用拉格朗日法,我们可以得到优化目标:
对此目标函数求导,我们可以得到EM算法中的M-step:
而EM算法中的E-step也就是求已知时隐含变量的后验概率:
观察可以得到,E-step与M-step互相依赖,可以证明每一步都使得下界的期望值提高,通过不断的迭代求解即可最后求得原问题的近似最大似然解。
pLSA与LSA的关系
由Figure4可以看到pLSA与LSA之间的对应关系。其中刻画了Latent Space也即topic space的信息;刻画了topic space与term space之间的关系,对应着LSA中的正交基;在文档分类是,这两部分也就是我们在模型训练结束需要保存的信息,当一个新的文档的到来时, 我们可以再次利用EM算法得到新的文档与主题的对应关系,并由此得到文档在topic空间上的表示。
pLSA的优势
pLSA的不足
针对pLSA的不足,研究者们又提出了各种各样的topic based model, 其中包括大名鼎鼎的Latent Dirichlet Allocation (LDA),在此就不再多说了。
4. 参考文献
您还没有登录,请您登录后再发表评论
### PLSA与LSA深度解析 #### 引言 潜在语义分析(Latent Semantic Analysis,简称LSA)和概率潜在语义分析(Probabilistic Latent Semantic Analysis,简称PLSA)是文本分析和信息检索领域的重要模型,旨在通过...
**概率潜语义分析(Probabilistic Latent Semantic Analysis, PLSA)** 是一种在文本挖掘和信息检索领域广泛应用的统计建模技术。它通过构建一个联合概率模型来揭示文档和词汇之间的潜在主题关系,从而帮助理解大规模...
用于文本分析的pLSA算法。运行demo.m可看到示例程序。 data.mat保存的是“词-文本共生矩阵”X,行表示不同的词, 列表示不同的的文本。共有12个词,9个文本。 [pz pdz pwz pzdw]=plsa(X,k)可以产生文本、词的亲缘...
**主题:pLSA(概率潜在语义分析)在Matlab中的实现** **一、pLSA算法介绍** pLSA(Probabilistic Latent Semantic Analysis,概率潜在语义分析)是一种统计建模方法,广泛应用于文本挖掘和信息检索领域。它通过...
在pLSA模型中,假设存在一些隐含的主题(latent topics),每个文档是由这些主题混合而成,而每个词的出现概率也与这些主题有关。模型包含三个随机变量:文档(D)、主题(Z)和词(W)。pLSA通过期望最大化...
根据给定的信息,本文将详细解释“图片分类的PLSA(Probabilistic Latent Semantic Analysis,概率潜在语义分析)源代码”的相关知识点。 ### PLSA 模型概述 PLSA 是一种统计方法,主要用于文档主题建模,也可以...
【标题】"PLSA python实现" 指的是使用Python编程语言实现概率潜在语义分析(Probabilistic Latent Semantic Analysis,简称pLSA)这一主题建模技术。pLSA是一种统计方法,广泛应用于文本挖掘领域,通过揭示文档中...
绝对位置多段脉冲控制PLSA是一种在自动化设备和机器人领域广泛应用的技术,主要涉及精密定位和运动控制。这种技术主要用于实现设备或机器人的精确位置移动,尤其在需要按预定顺序执行多个不同位置动作的场景中。以下...
### PLSA模型详解 #### 一、引言 概率隐语义分析(Probabilistic Latent Semantic Analysis, PLSA)是一种广泛应用于文本挖掘和信息检索领域的统计模型。相较于传统的基于词频的方法,PLSA能够更好地处理多词一义...
EM算法也可用于pLSA模型的参数估计,其基本原理与混合高斯模型类似,但需要根据pLSA模型的特点来具体定义后验概率和更新模型参数。 在EM算法中,混合高斯模型的参数分为两类,一类是模型参数,包括各个高斯分布的...
对BOW模型,pLSA模型,LDA模型进行详细的分析
【标题】"pLSA.rar"中的主要主题是关于概率潜在语义分析(Probabilistic Latent Semantic Analysis,简称pLSA)的应用,结合了期望最大化(Expectation Maximization,简称EM)算法,并且提到了EM的一种变体——温度...
**主题:pLSA(概率潜在语义分析)在MATLAB中的实现——DEMO_matlab drchrnd_pLSA** **一、pLSA(概率潜在语义分析)概述** pLSA,全称为Probabilistic Latent Semantic Analysis,是一种统计建模方法,常用于文本...
《概率潜在语义分析(PLSA)在MATLAB中的实现》 概率潜在语义分析(Probabilistic Latent Semantic Analysis,简称PLSA)是一种用于文本挖掘的技术,它通过揭示文档中词与潜在主题之间的关系来理解和提取文本的隐含...
**主题模型:潜在语义分析(PLSA)** 潜在语义分析(Probabilistic Latent Semantic Analysis,简称PLSA)是一种统计建模方法,广泛应用于文本挖掘和信息检索领域。PLSA模型假设文档是由多个隐含的主题(topics)...
**概率潜在语义分析(Probabilistic Latent Semantic Analysis,简称PLSA)**是一种在文本挖掘和信息检索领域广泛使用的统计建模技术。它通过构建一个混合模型来解析文档中的词项分布,揭示隐藏的主题结构,并理解...
隐含语义分析(LSA)和概率潜在语义分析(PLSA)是这一领域的重要模型。本系列博文将详细介绍这些模型及其变种,并着重探讨参数估计的方法,特别是期望最大化(EM)算法。 首先,LSA 是一种基于矩阵分解的技术,...
相关推荐
### PLSA与LSA深度解析 #### 引言 潜在语义分析(Latent Semantic Analysis,简称LSA)和概率潜在语义分析(Probabilistic Latent Semantic Analysis,简称PLSA)是文本分析和信息检索领域的重要模型,旨在通过...
**概率潜语义分析(Probabilistic Latent Semantic Analysis, PLSA)** 是一种在文本挖掘和信息检索领域广泛应用的统计建模技术。它通过构建一个联合概率模型来揭示文档和词汇之间的潜在主题关系,从而帮助理解大规模...
用于文本分析的pLSA算法。运行demo.m可看到示例程序。 data.mat保存的是“词-文本共生矩阵”X,行表示不同的词, 列表示不同的的文本。共有12个词,9个文本。 [pz pdz pwz pzdw]=plsa(X,k)可以产生文本、词的亲缘...
**主题:pLSA(概率潜在语义分析)在Matlab中的实现** **一、pLSA算法介绍** pLSA(Probabilistic Latent Semantic Analysis,概率潜在语义分析)是一种统计建模方法,广泛应用于文本挖掘和信息检索领域。它通过...
在pLSA模型中,假设存在一些隐含的主题(latent topics),每个文档是由这些主题混合而成,而每个词的出现概率也与这些主题有关。模型包含三个随机变量:文档(D)、主题(Z)和词(W)。pLSA通过期望最大化...
根据给定的信息,本文将详细解释“图片分类的PLSA(Probabilistic Latent Semantic Analysis,概率潜在语义分析)源代码”的相关知识点。 ### PLSA 模型概述 PLSA 是一种统计方法,主要用于文档主题建模,也可以...
【标题】"PLSA python实现" 指的是使用Python编程语言实现概率潜在语义分析(Probabilistic Latent Semantic Analysis,简称pLSA)这一主题建模技术。pLSA是一种统计方法,广泛应用于文本挖掘领域,通过揭示文档中...
绝对位置多段脉冲控制PLSA是一种在自动化设备和机器人领域广泛应用的技术,主要涉及精密定位和运动控制。这种技术主要用于实现设备或机器人的精确位置移动,尤其在需要按预定顺序执行多个不同位置动作的场景中。以下...
### PLSA模型详解 #### 一、引言 概率隐语义分析(Probabilistic Latent Semantic Analysis, PLSA)是一种广泛应用于文本挖掘和信息检索领域的统计模型。相较于传统的基于词频的方法,PLSA能够更好地处理多词一义...
EM算法也可用于pLSA模型的参数估计,其基本原理与混合高斯模型类似,但需要根据pLSA模型的特点来具体定义后验概率和更新模型参数。 在EM算法中,混合高斯模型的参数分为两类,一类是模型参数,包括各个高斯分布的...
对BOW模型,pLSA模型,LDA模型进行详细的分析
【标题】"pLSA.rar"中的主要主题是关于概率潜在语义分析(Probabilistic Latent Semantic Analysis,简称pLSA)的应用,结合了期望最大化(Expectation Maximization,简称EM)算法,并且提到了EM的一种变体——温度...
**主题:pLSA(概率潜在语义分析)在MATLAB中的实现——DEMO_matlab drchrnd_pLSA** **一、pLSA(概率潜在语义分析)概述** pLSA,全称为Probabilistic Latent Semantic Analysis,是一种统计建模方法,常用于文本...
《概率潜在语义分析(PLSA)在MATLAB中的实现》 概率潜在语义分析(Probabilistic Latent Semantic Analysis,简称PLSA)是一种用于文本挖掘的技术,它通过揭示文档中词与潜在主题之间的关系来理解和提取文本的隐含...
**主题模型:潜在语义分析(PLSA)** 潜在语义分析(Probabilistic Latent Semantic Analysis,简称PLSA)是一种统计建模方法,广泛应用于文本挖掘和信息检索领域。PLSA模型假设文档是由多个隐含的主题(topics)...
**概率潜在语义分析(Probabilistic Latent Semantic Analysis,简称PLSA)**是一种在文本挖掘和信息检索领域广泛使用的统计建模技术。它通过构建一个混合模型来解析文档中的词项分布,揭示隐藏的主题结构,并理解...
隐含语义分析(LSA)和概率潜在语义分析(PLSA)是这一领域的重要模型。本系列博文将详细介绍这些模型及其变种,并着重探讨参数估计的方法,特别是期望最大化(EM)算法。 首先,LSA 是一种基于矩阵分解的技术,...