文本处理中经典的LSA与PLSA 对比,EM算法,EM算法求解PLSA
主要参考:
1. 引子
Bag-of-Words 模型是NLP和IR领域中的一个基本假设。在这个模型中,一个文档(document)被表示为一组单词(word/term)的无序组合,而忽略了语法或者词序的部分。BOW在传统NLP领域取得了巨大的成功,在计算机视觉领域(Computer Vision)也开始崭露头角,但在实际应用过程中,它却有一些不可避免的缺陷,比如:
稀疏性(Sparseness): 对于大词典,尤其是包括了生僻字的词典,文档稀疏性不可避免;
多义词(Polysem): 一词多义在文档中是常见的现象,BOW模型只统计单词出现的次数,而忽略了他们之间的区别;
同义词(Synonym): 同样的,在不同的文档中,或者在相同的文档中,可以有多个单词表示同一个意思;
从同义词和多义词问题我们可以看到,单词也许不是文档的最基本组成元素,在单词与文档之间还有一层隐含的关系,我们称之为主题(Topic)。我们在写文章时,首先想到的是文章的主题,然后才根据主题选择合适的单词来表达自己的观点。在BOW模型中引入Topic的因素,成为了大家研究的方向,这就是我们要讲的Latent Semantic Analysis (LSA) 和 probabilitistic Latent Semantic Analysis (pLSA),至于更复杂的LDA和众多其他的Topic Models,以后再详细研究。
2. LSA简介
SA的基本思想就是,将document从稀疏的高维Vocabulary空间映射到一个低维的向量空间,我们称之为隐含语义空间(Latent Semantic Space).
如何得到这个低维空间呢,和PCA采用特征值分解的思想类似,作者采用了奇异值分解(Singular Value Decomposition)的方式来求解Latent Semantic Space。标准的SVD可以写为:
LSA的优点
低维空间表示可以刻画同义词,同义词会对应着相同或相似的主题;
降维可去除部分噪声,是特征更鲁棒;
充分利用冗余数据;
无监督/完全自动化;
与语言无关;
LSA的不足
没有刻画term出现次数的概率模型;
SVD的优化目标基于L-2 norm 或者是 Frobenius Norm的,这相当于隐含了对数据的高斯噪声假设。而term出现的次数是非负的,这明显不符合Gaussian假设,而更接近Multi-nomial分布;
对于count vectors 而言,欧式距离表达是不合适的(重建时会产生负数);
特征向量的方向没有对应的物理解释;
SVD的计算复杂度很高,而且当有新的文档来到时,若要更新模型需重新训练;
维数的选择是ad-hoc的;
3. pLSA
类似于LSA的思想,在pLSA中也引入了一个Latent class,但这次要用概率模型的方式来表达LSA的问题,如下图:
用图模型表示如上图所示,d和w表示观测变量,z是隐藏变量,M,N表示重复次数。
我们可以观察到的数据就是
对,而
是隐含变量。
的联合分布为
而
和
分布对应了两组 Multinomial 分布, 我们需要估计这两组分布的参数。由于词和词之间是互相独立的,于是可以得到整篇文档的词的分布;并且文档和文档也是互相独立的,于是我们可以得到整个样本的词的分布:
其中
是term
出现在文档
中的次数
直接用MLE来估计参数,就会得到似然函数
其中
可以认为是每个文档都一样,是常数,则
和
是要求的参数,一共有N*K + M*K个自变量,如果直接对这些自变量求偏导数,我们会发现由于自变量包含在对数和中,这个方程的求解很困难。因此我们采用EM算法。
下面给出用EM算法估计PLSA参数的详细推导过程。
(1) EM算法
EM算法主要解决的问题是:
我们有model:
,但是我们只观察到x,z是隐变量,
是参数, 想要极大化似然函数
即
其中
是关于z的后验概率分布,Q的求解见Andrew NG 机器学习EM算法讲解。
根据Jensen不等式
EM算法具体步骤:
(1)E-step:
Set
(2)M-step:
此步中,Q是已知的
EM算法本质是通过构造原问题的一个紧的下界,
然后采用Co-ordinate assent算法不断优化下界,
E-step: fix
, Max J respect to Q
M-step: fix Q, Max J respect to
达到最终收敛的目的。
E-step找到跟L(
)(黑色弧线)交于
(t)的J(蓝色弧线),M-step得到J取最大值时的
(t+1),这样下去直到收敛。(此图源于Andrew)
(2) EM算法,求解PLSA
EM算法框架是固定的,直接套用到PLSA中
记得PLSA中似然函数
常数,所以
约束条件
拉格朗日乘子法:
(1)构造Q
(2)max J respect to
即
和
注意到
是已知的 ,分别对
和
求偏导数,我们可以得到
我们就可以解出M步骤中通过最大化期望估计出的新的参数值
如此不断迭代,直到满足终止条件。
4.pLSA与LSA的关系
由Figure4可以看到pLSA与LSA之间的对应关系。其中 p ( z ) 刻画了Latent Space也即topic space的信息; p ( w | z ) 刻画了topic space与term space之间的关系,对应着LSA中的正交基 V ;在文档分类是,这两部分也就是我们在模型训练结束需要保存的信息,当一个新的文档的到来时, 我们可以再次利用EM算法得到新的文档与主题的对应关系 p ( d | z ) ,并由此得到文档在topic空间上的表示 p ( z | d ) 。
pLSA的优势
定义了概率模型,而且每个变量以及相应的概率分布和条件概率分布都有明确的物理解释;
相比于LSA隐含了高斯分布假设,pLSA隐含的Multi-nomial分布假设更符合文本特性;
pLSA的优化目标是是KL-divergence最小,而不是依赖于最小均方误差等准则;
可以利用各种model selection和complexity control准则来确定topic的维数;
pLSA的不足
概率模型不够完备:在document层面上没有提供合适的概率模型,使得pLSA并不是完备的生成式模型,而必须在确定document i的情况下才能对模型进行随机抽样;
随着document和term 个数的增加,pLSA模型也线性增加,变得越来越庞大;
当一个新的document来到时,没有一个好的方式得到$p(d_i)$;
EM算法需要反复的迭代,需要很大计算量;
针对pLSA的不足,研究者们又提出了各种各样的topic based model, 其中包括大名鼎鼎的Latent Dirichlet Allocation (LDA),在此就不再多说了。
5. 参考文献
Thomas Hofmann, “Unsupervised Learning by Probabilistic Latent Semantic Analysis,” Machine Learning 42, no. 1 (January 1, 2001): 177-196.
欢迎加入我爱机器学习QQ14群:336582044
微信扫一扫,关注我爱机器学习公众号