祖 弦,谢 飞
(合肥师范学院 计算机学院,安徽 合肥 230601)
LDA主题模型研究综述
祖弦,谢飞
(合肥师范学院 计算机学院,安徽 合肥 230601)
[摘要]主题模型在机器学习领域已成为研究的一大热点问题。本文系统阐述LDA(Latent Dirichlet Allocation)主题模型参数估计和Gibbs抽样算法,介绍常见的LDA改进和扩展模型,最后分析LDA模型在文本挖掘领域的应用情况。 抽取是指从文本中抽取出能概括出文本核心内容的总结性句子,包括单文档和多文档摘要抽取。LDA模型可建立多文档之间的语义联系,排除文档间的冗余成分,提高了多文档摘要抽取的准确性。如Arora等人假设文档中的每条语句对应同一个主题[25],利用LDA技术计算出每个主题下的单词权重,而每条语句定义为各词语权重的向量,然后利用奇异值分解算法计算出最能表达这些主题含义的句子作为文档摘要,这种面向主题的方法利用LDA和SVD混合模型降低了最终文摘中的冗余成分。Petinot等人将文档层次看成是一棵具有代表类别的内部结点和代表文档的叶子结点,提出hLLDA(hierarchical Labeled Latent Dirichlet Allocation)模型[26],利用多层次标签建立每个标签与主题之间的对应关系,通过类别分层自动提取文档摘要。
[关键词]主题模型;LDA;参数估计;Gibbs抽样
随着Internet技术的发展,互联网上的数据飞速增长,如何从这些海量数据中快速、准确、全面地找到人们所需要的信息,成为当前信息科学和技术领域面临的一大挑战。主题模型是一种使用概率的产生式模型来对文字隐含主题进行建模的一种新方法,基本思想是假设语料库中有若干个独立的隐含主题,根据这些主题的概率分布可生成语料库各文档中的全部词语,从而将文档理解成特定隐含主题的分布。目前,主题模型广泛地应用于主题挖掘、文本检索、文本分类、引文分析和社交网络分析等领域。
本文详细阐述LDA模型的技术和原理,第2节介绍LDA研究进展;第3节给出LDA图模型表示,介绍参数估计和Gibbs抽样算法;第4节分析LDA在文本分类聚类、摘要抽取、情感分析等领域的应用情况;第5节是总结全文。
1LDA研究进展
主题模型的起源是潜在语义分析(LSA, Latent Semantic Analysis)[1],该方法通过奇异值分解,将高维文档向量近似地映射到一个低维潜在的语义空间上,以达到降低文档维数和消除词语存在的同义、多义等问题。在LSA基础上,Hofmann提出概率潜在语义分析(pLSA, probabilistic Latent Semantic Analysis)模型[2],这也是第一个完整意义上的概率主题模型,它通过引入概率统计的思想,避免了SVD的复杂计算。但是,pLSA模型对文档中主题的混合权重没有做任何假设,使得模型参数与特定文档相关,有时会出现过拟合现象。因此,Blei等人在2003年提出一个更为完全的概率主题模型LDA[3],它是一个层次贝叶斯模型,把模型的参数看作随机变量,从而可以引入控制参数的参数,实现彻底的“概率化”。
为了描述主题间的相关性问题,Blei等人提出CTM(Correlated Topic model)模型[4],用逻辑正态分布(Logistic-Normal)替换Dirichlet主题先验分布,通过引入主题间的协方差矩阵来描述主题相关性。为了更完整地描述所有主题之间的关系, Li等人提出PAM(Pachinko Allocation Model)模型[5],利用有向无环图来描述主题间的关系。
基于话题演化的思想,Blei等人提出动态主题模型DTM(Dynamic Topic Model)[6],假设LDA模型中的超参数α和β按时间顺序变化,且后一时间片段的超参数依赖于前一时间片段的超参数,从而体现出生成的主题随时间变化的特点。Wang等人在DTM的基础上提出了cDTM(continuous time dynamic topic model )模型[7],改进了DTM模型中将时间离散化的思想,引入了布朗运动(Brownian motion)为语料库中连续时间的主题演变建模,cDTM利用稀疏变分推断用于模型快速对比选择,避免了DTM中关于时间细粒度选择的复杂问题。Alsumait等人提出一种OLDA(On-line LDA)模型可以实时地对动态文本流进行主题建模[8],当有新的文本流更新时,OLDA模型利用已得出的主题模型,增量式的更新当前模型,而不需要重新访问之前的所有数据,该模型能实时获取随时间变化的主题结构。
针对社交网络中出现的短文本数据,Zhao等人提出Twitter-LDA模型[9],通过引入背景模型,实现对用户层面和帖子文本层面同时进行主题建模,提高了帖子层面的数据分析能力。Wang等人提出TM-LDA模型[10],通过对数据中产生的主题变迁建模,实现对文本流的有效主题挖掘。Liu等人于2014年提出一种MA-LDA(multi-attribute latent dirichlet allocation)主题分析模型[11],该模型将微博的时间属性和标签属性添加到LDA模型中,可用于微博当前热点话题的抽取。
LDA本质上是一种无监督无指导的机器学习模型,将高维文本单词空间表示为低维主题空间,忽略了跟文本相关的类别信息。因此,为了解决分类等有监督机器学习问题,人们开始研究有监督LDA模型。
Blei等人提出sLDA(supervised latent dirichlet allocation)模型[12],该模型为每篇文档关联一个服从正态分布的实值响应变量,代表着该文档的类别标识,采用EM算法进行最大似然参数估计,但是该模型只能处理单一类别标识文档。Jordan等人在sLDA模型基础上,提出MLSLDA模型[13],用于跨语言语料库的情感分析工作,该生成模型融合了树结构和WordNet结构思想为跨语言语料库建模,通过学习某一种语言的数据可以捕捉其他语言的特性。Wang等人提出S-LDA(Semi-Latent Dirichlet Allocation)模型[14],该模型用于从视频片段中识别人体动作,通过在模型训练阶段添加人体运动标识,来获得更好的识别准确度。Ramage等人提出PLDA(Partially Labeled Dirichlet Allocation)模型[15],通过改进文档类别与文档主题之间的对应关联关系,假设每篇文档的主题类分别关联一个或多个文档类别标签,每个文档类别对应为多个主题的混合。Mao等人提出半监督的分层主题模型SSHLDA(Semi-supervised Hierarchical Latent Dirichlet Allocation)[16],在文本生成过程中融合有标签的主题,获取关于主题的层次结构。
不仅针对LDA模型进行了性能的扩展和优化,研究人员对如何提高模型生成的效率方面也有了相应的改进,如刘知远等人提出PLDA+模型[17],采用数据放置(Data Placement)等多种策略提高了LDA模型的并行化效率。Zhai等人提出Mr.LDA模型[18],在LDA变分推断过程中引入了MapReduce框架,提高LDA在分布式环境下运行效率。曾嘉等人提出基于BP(Belief Propagation)算法的LDA模型学习策略[19],在大规模文档数据集上实验表明,该方法在效率和精度方面优于变分贝叶斯(VB, Variational Bayes)和Gibbs抽样学习策略。本文介绍的扩展模型汇总见表1。
2LDA模型
2.1基本原理
LDA是一个三层贝叶斯模型,其图模型表示如图1所示。
图1 LDA图模型
其中,M代表文档数目,K代表主题数目,词汇表中有V个词,Nm表示第m篇文档的单词个数,wm,n和zm,n表示第m篇文档中第n个单词及其主题。φk表示主题k中所有单词的概率分布,θm表示第m篇文档的所有主题概率分布。θm和φk分别服从超参数α和β的Dirichlet先验分布。
2.2基于Gibbs抽样的参数估计
LDA主题模型中有两个重要的参数需要估计:文档-主题分布θm和主题-词语分布φk。目前,LDA模型参数估计主要采用Gibbs抽样算法[20]:
1.初始化阶段:为语料库中的所有单词采样初始主题:
zm,n=k~Mult(1/K)
2.每当新观察到一个词语wi=t,利用公式(1)计算的当前主题。
(1)
表1 扩展的LDA模型汇总
3.重复执行第2步的抽样过程,直至所有的主题分布达到收敛,此时,每个单词的主题标号确定以后,两个参数的计算公式如下:
(2)
(3)
3基于LDA模型的应用
本小节主要讨论LDA模型在文本分类、文本聚类、摘要抽取、情感分析等领域的应用情况。
3.1文本分类
文本分类是指根据训练文档集学习得出分类系统,从而判别未知新文本的类别。LDA作为一种无监督文本表示模型,其本身并不能直接判断文本类别,必须集成到合适的分类模型中协同工作。在最初利用LDA模型的分类过程中,LDA对给定训练集中所有文档进行特征降维,将文本训练集表示成主题的概率分布,在得到的主题-文本矩阵上选择一种分类算法进行训练,构造出文本分类器。假设同一类别的文档共享同一类主题,不同类别的主题之间是独立的,因此每个类别的文档都将对应一个LDA子模型。在判断新文本类别时,将训练得到的每一个LDA子模型对新文本进行主题推断,计算出此文档的主题概率分布,之后根据分类算法判别新文本属于哪一个类别。新文本的类别其实只有一种,但在分类过程中却存在着对主题的强制分配,因此很多研究人员针对这一缺陷进行了改进,如李文波等人提出通过附加类别标签的Labeled-LDA模型改善分类效率[21],该模型协同计算新文档在各类别上隐含主题的分配份额,克服了传统LDA模型强制分配主题的缺陷,提高了LDA分类性能。Zhao等人提出主题文本分类的gLDA新算法[22],通过在原始LDA中添加主题-类别分布参数,模型中的文本可划分为不同种类,每个类别共享一组主题,使得文本是由相关的类别所生成,极大避免了主题-词的错误分配。
3.2文本聚类
文本聚类作为一种无监督的学习方法,将相似度较高的相关文本划分为相同类别集合,低相似度的文本则分布在不同的类别集合中,不同类别的集合对象彼此间差异较大。传统的聚类方法完全依靠词频等基本特征作为聚类分析依据,忽略了文本语义信息,聚类效果并不明显。人们开始考虑引入主题模型对文本建模,按照语义关系对文本进行聚类分析,每一聚簇内文本共享同一主题,使聚类更符合文本语义特征,提高了文本聚类的准确性。如Lee等人提出了一种基于LDA技术的交互可视分析系统iVisClustering[23],将LDA应用于自动聚类过程中,通过具有代表性的关键字为每一个子聚簇赋予一个概括总结的同时,生成聚类结果,并允许用户实现对聚类过程的指导。Xie等人基于文本聚类和主题建模互相作用的思想上,提出一种MGCTM(multi-grain clustering topic model)模型[24],使文本聚类和文本建模可以同时发生。通过估计全局主题分布参数和局部主题分布参数,可以得出更多对聚类分析有用的文本特征,从而提高聚类效果。
3.3摘要抽取
3.4情感分析
情感分析是指通过挖掘带有个人观点的文本,分析并整理出用户所表达的情感倾向信息。最初的情感分析主要针对文章整体的情感倾向,而在一篇文章中通常可能会涉及多个话题的讨论,用户对不同的话题通常会持不同的情感倾向,同一个情感描述词在不同文本主题下所表达的情感倾向也可能完全不同,因此Li等人考虑到情感表达与文本所描述主题间的对应关系,提出基于主题的情感分类模型Sentiment-LDA[27],该模型在LDA基础上引入了一个情感变量,假设文本中每个单词是由主题和情感变量的联合分布共同生成,实现了对一篇文本所包含的所有主题进行相应的情感分析。Fu等人在LDA基础上依赖Hownet词典对博客文本进行多方面话题情感分析[28],通过训练LDA模型得出多个话题子模型,采用KL-divergence算法判断文本各段落的话题,利用基于Hownet的情感词标注方法计算每个博客话题所包含句子的情感定位,从而总结出博客文本中所有话题的情感定位。
4总结
本文主要从模型表示、参数估计的角度,详细阐述LDA模型的原理技术和发展情况,通过分析LDA在文本挖掘各领域的应用情况,充分说明LDA主题模型在数据挖掘领域有着较大的发展空间,体现了LDA主题模型强大的建模功能。
[参考文献]
[1]Deerwester S, Dumais S, Furnas G, et al. Indexing by latent semantic analysis. Journal of the American Society for Information Science, 1990, 41(6): 391-407.
[2]Hofmann T. Probabilistic latent semantic analysis. In: Proc. of the Conference on Uncertainty in Artificial Intelligence, 1999:289-296.
[3]Blei D, Ng A, Jordan M. Latent Dirichlet Allocation. Journal of Machine Learning Research, 2003, 3:993-1022.
[4]Blei D, Lafferty J. Correlated topic models[J]. In:Proc. of International Conference on Machine Learning, 2006:113-120.
[5]Li W, McCallum A. Pachinko allocation: DAG-structured mixture models of topic correlations. In: Proc. of international conference on Machine learning. 2006: 577-584.
[6]Blei D, Lafferty J. Dynamic topic models. In: Proc. of the ACM SIGKDD, 2006: 424-433.
[7]Wang C, Blei D, Heckerman D. Continuous time dynamic topic models. In:proc. of Uncertainty in Artificial Intelligence. 2008:579-586.
[8]AlSumait L, Barbara D, Domeniconi C. On-line LDA: Adaptive Topic Models for Mining Text Streams with Applications to Topic Detection and Tracking[J]. In: Proc. of the IEEE International Conference on Data Mining, 2008:3 - 12.
[9]Zhao W X, Jiang J, et al. Comparing twitter and traditional media using topic models. In: Proc. of ECIR, 2011: 338-349.
[10]Wang Y, Agichtein E, Benzi M. TM-LDA: efficient online modeling of latent topic transitions in social media. In Proc. of ACM SIGKDD, 2012: 123-131.
[11]Liu G, Xu X, Zhu Y, et al. An Improved Latent Dirichlet Allocation Model for Hot Topic Extraction. In: Proc. of the IEEE International Conference on Big Data and Cloud Computing, 2014: 470-476.
[12]Blei D, Mcauliffe J. Supervised topic models. Advances in Neural Information Processing Systems. 2007: 121-128.
[13]Boyd-Graber J, Resnik P. Holistic sentiment analysis across languages: multilingual supervised latent Dirichlet allocation. In Proc. of EMNLP, 2010: 45-55.
[14]Wang Y, Sabzmeydani P, Mori G. Semi-Latent Dirichlet Allocation: A Hierarchical Model for Human Action Recognition. Human Motion-Understanding, Modeling, Capture and Animation, 2007: 240-254.
[15]Ramage D, Manning C, Dumais S. Partially labeled topic models for interpretable text mining. In: Proc. of ACM SIGKDD, 2011: 457-465.
[16]Mao X L, Ming Z Y, et al. SSHLDA: a semi-supervised hierarchical topic model. In Proc. of EMNLP-CoNLL, 2012: 800-809.
[17]Liu Z, Zhang Y, Chang E, Sun M. PLDA+: Parallel latent dirichlet allocation with data placement and pipeline processing. ACM Transactions on Intelligent Systems and Technology, 2011, 2(3): 26: 1-18.
[18]Zhai K, Boyd-Graber J, et al. Mr. LDA: a flexible large scale topic modeling package using variational inference in MapReduce. In Proc. of international conference on World Wide Web, 2012: 879-888.
[19]Zeng J, Cheung W, Liu J.Learning topic models by belief propagation. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2013, 35(5): 1121-1134.
[20]Griffiths T, Steyvers M. Finding scientific topics. In Proc. of National Academy of Sciences, 2004, 101(Suppl.1):5228-5235.
[21]李文波, 孙乐, 张大鲲. 基于Labeled-LDA模型的文本分类新算法. 计算机学报, 2008, 31(4): 620-627.
[22]Zhao D, He J, Liu J. An Improved LDA Algorithm for Text Classification. In Proc. of ISEEE, 2014:217-221.
[23]Lee H, J Kihm J, et al. iVisClustering: An Interactive Visual Document Clustering via Topic Modeling. Computer Graphics Forum, 2012: 1155-1164.
[24]Xie P, Eric P. Integrating Document Clustering and Topic Modeling. In Proc. of the 20th conference on uncertainty in artificial intelligence, 2013:694-703.
[25]Arora R, Ravindran B. Latent Dirichlet Allocation and Singular Value Decomposition based Multi-Document Summarization. In: Proc. of ICDM, 2008: 713-718.
[26]Petinot Y, McKeown K, Thadani K. A hierarchical model of web summaries. In: Proc. of the Annual Meeting of the Association for Computational Linguistics. 2011: 670-675.
[27]Li F, Huang M, Zhu X. Sentiment analysis with global topics and local dependency. In: Proc. of the AAAI Conference on Artificial Intelligence, 2010:1371-1376.
[28]Fu X, Liu G, et al. Multi-aspect Blog Sentiment Analysis Based on LDA Topic Model and Hownet Lexicon.Web Information Systems and Mining.2011:131-138.
Review of the Latent Dirichlet Allocation Topic Model
ZU Xian, XIE Fei
(SchoolofComputerScience,HefeiNormalUniversity,Hefei230039,China)
Abstract:Topic model is one of the hottest issues in the research area of machine learning. In this paper, the parameter estimation method and the Gibbs sampling algorithm of the Latent Dirichlet Allocation (LDA) model are systematically described. And then, several improved and generalized LDA models are introduced. Finally, the applications of the LDA model in the field of text mining are analyzed.
Key words:topic model; LDA; parameter estimation; Gibbs sampling
[中图分类号]TP391.4
[文献标识码]A
[文章编号]1674-2273(2015)06-0055-04
作者简介][第一 祖弦(1990-)女,硕士,合肥师范学院计算机学院教师。研究方向:数据挖掘。
[基金项目]安徽省高校省级自然科学研究重点项目(KJ2014A198),合肥师范学院校级科研项目(2015TD05)
[收稿日期]2015-06-20