对于主题模型而言,重新再理一遍思路,然后在梳理思路的同时,可以知道自己理解不到位的点,也许可以知道下一步的应用情况。
一般而言,我们对于文档集的表示是通过在词项空间来表示的,即利用词袋模型(bag-of-words)的形式来表示文档,此时的词项空间维数很大,通过主题模型之后,可以将文档的维数降低到K维,(K个主题),此时就可以大幅度的降维。
主题模型的起源是LSA(LSI),其并不是一个概率模型,所以并不算主题模型,但其思想为主题模型的发展奠定了基础。之后,提出了PLSA(PLSI),这个模型被看为一个真正的主题模型,之后Blei先生等人,在PLSI基础上提出了LDA,得到了一个理论更完善,更完全的一个概率生成模型。之后的工作多基于LDA的基础来进行发展。
对于一个主题模型而言,通常包括5项内容:1,主题模型的输入:词项文档矩阵,主题的个数K,K的确定一般是事先确定的,确定K的方法,利用困惑度,语料似然值,分类正确率等最优时来进行判断,也有其他的确定方法。2,主题模型的基本假设:词袋模型。3,主题模型的表示,图模型以及生成过程。4,参数估计的过程。5,新样本的推断。
对于EM算法(期望最大化算法)而言,是一种对于隐变量的概率模型寻找极大似然估计的一般性的方法,通过迭代不断修改参数直到达到局部的最优点。在很多的自然语言处理方法中,均可以利用EM算法来进行处理。
先介绍主成分分析(PCA方法Principal factor analysis):取协方差矩阵S的前m个最大的特征值对应的特征向量来构造一个m维的新空间,此时m可以理解为主题模型的主题个数K,也需要人为的指定。
协方差矩阵揭示了坐标间的相关性,而变换后的样本在新坐标空间中的协方差矩阵是一个以降序特征值为主对角线元素的对角阵,因此在新的空间中各个坐标统计不相干。
介绍LSI方法,通过奇异值分解的方式构造潜在的语义空间。
LSI(SVD)的处理过程:
三个矩阵都有很明确的物理含义,一个是表示文档与主题之间的相关性,一个表示单词与主题的相关性,一个表示影响的因子(同时得到每类文章和每类词的相关性)。值越大,相关性也就越大。
LSI(NMF)非负矩阵分解将矩阵分解为二个矩阵, 却使用了不同的思路,它的目标是期望将矩阵分解为二个矩阵,是的二个矩阵的乘积与原矩阵的对应位置的相比误差尽可能的小。
在NMF中我们要求解的参数很多,常用的迭代方法有梯度下降法和牛顿法,也可以采用坐标轴下降法来求解。
在NMF中,得到的W,H有物理含义,表示了文档-主题,单词-主题的概率相关度。
PLSA(PLSI),概率隐性语义索引,相比于LSI而言,是一个概率生成模型,而且选择了不同的最优化目标函数。利用EM算法得到模型中的参数问题。
LDA,相比与PLSI而言,增加了贝叶斯框架,变成了概率分布的情况,将PLSI认为的确定的概率分布认为是随机向量。
对于主题模型而言,度量的一般的方法:第一是将主题识别作为中间的过程,最终考虑的是最后的结果,故评价标准只是根据最后的结果来进行评价,即根据应用场景来进行评判,利用查全率,查准率来进行判断主题模型的好坏;第二是利用信息论中的熵来进行判断模型的好坏,即利用perplexity来进行判断;第三是采用一种混合的评价手段来进行评估。评价一个主题模型对于主题的识别情况,首先是:识别出几个主题,多少主题是有用的主题,其次是这些主题与经常使用的语义测试的联系情况,以及这些主题对于区分相似的文档的作用情况。
考虑UCImeasure以及UMassmeasure的指标。
前一个指标类似与与经验来进行判定,与另一个经验的常用的语料库来进行判定,后一个指标主要是判定自身测试的语料库的检测主题的情况。
由论文查询,LDA的优势在于对于主题数的增长,其检测主题的能力比较稳定,对于LSI而言,产生的主题的单词更符合于人类的自身的判断,并且在主题数少于50的情况下,LSI表现较好,有更高的精度,但它不能将相似的主题聚类。
相关文章: