韩肖赟,侯再恩,孙 绵
(陕西科技大学文理学院,陕西 西安 710021)
互联网技术和智能社会的快速发展,推动了信息的快速交流和传播,表现为常见的信息组织形式(像语音、视频、图片和文本等)向更快捷的形态转变。文本作为其中的重要成员,也实现了由长到短的转变。对于文本分析而言,如何高效地从大量高维、低质量、无标注的非结构化数据中寻找有价值的信息成为当前数据挖掘的重要目标。
主题模型是解决上述问题的一种重要方法,目前已经渗透到主题提取、文本聚类、文本分类、社交网络关系挖掘以及情感极性分析等多个领域[1,2]。目前比较成熟的主题模型包括概率潜语义模型PLSA(Probalistic Latent Semantic Analysis)[3]、潜在狄利克雷分配模型LDA(Latent Dirichlet Allocation)[4]、非负矩阵分解NMF(Non-negative Matrix Factorization)及其它衍生模型。PLSA(PLSI表示概率隐含语义标引模型,又称为PLSA)和LDA都是对隐含语义标引模型LSI(Latent Semantic Indexing)的改进。LSI模型的基本思想是通过奇异值分解将高维的向量空间模型表示的文档映射到低维的潜在语义空间,但其本身却不能提供明确的语义解释。PLSA是在LSI的基础上,引入了概率,增强了潜在主题与词汇文档之间的匹配关系,即文档的主题分布;而LDA是在PLSA的基础上,引入多项式的共轭先验分布Dirichlet来丰富分布的参数。这样可以准确地实现对文档分词、文档和词-主题内部的相似性判定。文献[5]对PLSA和LDA模型的实际应用性能进行了综合比较,发现在文档级分类上,前者要明显优于后者,但却容易出现过拟合现象。文献[6]进一步发现,LDA模型偏向更细粒度的文本分类。上述主题模型的建立主要依赖于长文本中的词共现关系,当文本长度发生变化时,应用性能都会出现不同程度的削减。NMF可以很好地处理短文本数据集,尤其是处理不平衡数据集,但存在拟合结果不一致的问题,且稳定性不如LDA[7]。
文献[8]提出了狄利克雷多项混合模型DMM(Dirichlet Multinomial Mixture),其与LDA最大的不同在于假设每一篇短文本至多有一个主题,而不是多个主题,且文档内部的所有单词之间主题共享,从而可以有效地缓解文本特征稀疏对建模的影响。而且DMM可以看作是LDA的一元混合模型。两者都是基于词-词共同出现的模式(也称同现关系)进行建模,所以改善同现关系将成为主题模型研究的关键。
Salton等[9]在1975年基于词汇的上下文无关文法提出了向量空间模型VSM(Vector Space Model),将所有文档表示成有意义的向量,通过“文档-词项”矩阵有效地实现了模型推导。
关于特征计算,目前已有布尔权重、绝对词频TF(Term Frequency)、熵权重、倒排文档频度IDF(Inverse Document Frequency) 以及组合计算方法TFIDF(或TF-IDF)等。宗成庆研究员[10]指出特征权重计算的实质是,考虑特征项在整个类中的分布问题。
词向量的出现,不仅能够再现文档中词项的同现模式,还能捕捉到文本的语义和句法信息。它经历了从独热编码(One-hot)向分布式表示DR(Distributed Representation)[11]的转变。One-hot编码将每一篇文档表示为一个N(表示文档的词袋规模)维向量。虽然这种文本表示比较直观,但是容易出现数据维灾,且0,1表示不能很好地刻画词与词之间的相关关系。分布式表示将文档中的每一个词在语义空间映射成一个长度固定的向量,并且可以通过欧氏距离刻画词之间的语义相似性。词向量训练经典的工作包括Bengio的语言模型框架,以及SCNNA(Single Convolutional Neural Network Architecture)、HLBLM (Hierarchical Log-Bilinear Language Model)和RNNLM(Recurrent Neural Network Language Model)等模型[12],以及Google的词向量训练工具word2vec[13]。词向量有效地引入上下文信息,从根本上提高了文本的表示效率。
以LDA为主的传统的主题模型依赖于词同现模式实现建模,短文本势必会降低这种模式出现的可能性。但是,近几年短文本数据集的出现频率要远高于长文本的,所以传统主题模型需要去适应和改变,主要包括主题模型的自适应和短文本调整。
(1)主题模型的自适应。
传统主题模型以LDA模型为例,其中最简单的处理方式是对LDA的词假设进行弱化,即文档中每一个词具有不同主题。Yan等[14]基于词对同现模式提出了双词话题模型BTM(Biterm Topic Model),即将原来的一个词扩展到一个词对。但在实际应用过程中,并非所有共现的词对都能表现出高度的主题联系。蔡洋等[15]基于词对网络的主题联系度,提出利用三角图结构筛选目标词对,然后假定这些词同时具有不同的主题。这些方法可以有效地缓解短文本数据集上特征稀疏的问题,其他方法将在第3节介绍。
(2)短文本的人工干预。
主要包括2种方法:①采用聚类或者增加考察属性的方式,将短文本扩展成一个可以接受的伪长文档。文献[16]提出自聚集方法SADTM(Self-Aggregation Dynamic Topic Model)的动态主题模型,能够有效捕捉主题分布随时间的渐变信息,并通过文本聚合为主题建模提供了更多新的词对同现模式。文献[17]利用同一用户的兴趣标签以及文本时间戳等信息元素对推特文本进行特征扩充。这种方法在增加文本特征的同时也丰富了文本形式,但在有些领域上不适用。②基于词向量,依托外部语料库提供额外辅助文本信息,从而缓解短文本上特征稀疏以及同现模式缺乏等问题。虽然这种处理方法目前效果较好,但是其对外部数据源的质量要求较高,且文本依赖性较强。文献[9,18]提出了通过维基百科(Wikipedia)和词网络(WordNet)等外部语料训练词向量来丰富小语料库上短文本语义,但是在实际应用过程中,不可避免地会引入噪声和个人的主观偏好。Zheng等[19]通过引入一组共轭定义来表征主题和词的结构,并提供了一种虚拟生成短文本的方法。这种方法的好处在于保持主题一致的同时,能够有效地处理好新词。
3.1.1 模型生成过程
如图1所示,LDA和DMM具有相似的生成过程,且都为3层贝叶斯网络的生成式概率模型。
Figure 1 Graph model of LDA and DMM图1 LDA和DMM的图模型
以下是LDA模型和DMM模型的具体生成过程:
(1)LDA模型。
假设每一篇文档是由多个主题混合而成;每一个主题是单词集合上的概率分布,且文档中每一个词都是由一个固定的主题生成。
生成过程:
②每一个文档dm,采样一个主题分布θd~Dir(α)。
③对于文档dm中的所有词汇wm,i,遍历a,b:
a 选择一个主题zm,j,zm,j~Multi(θd);
(2)DMM模型。
将整个语料库看作是多个主题的混合;假设每一篇短文档至多有一个主题,且该主题在同一篇文档中的所有词之间共享。
生成过程:
①采样整个语料库上的主题混合比πz~Dir(α)。
③对于每一篇文档d,对于每一个单词wm,i:
a 选择主题分布zd,zd~Multi(πz);
接下来将分别介绍LDA和DMM模型的塌陷吉布斯采样的参数估计推导、潜在主题个数的确定方案、主题模型目前的扩展研究以及在网络舆情上的应用现状。
3.1.2 参数估计
在主题模型中,wm,n(d)为已知变量,α和β为给定的狄利克雷分布先验参数,zm,n为潜在主题,是模型的生成变量,所以真正需要估计的是文档-主题分布θm,k和主题-词分布φk,t。目前主要的参数估计方法主要有期望极大EM(Expectation Maximization)算法、吉布斯采样GS (Gibbs Sampling)、变分贝叶斯估计、消息传递算法、平均场变分期望最大化和期望传播算法[21,22]。吉布斯抽样和变分推断是2种比较常用的方法,前者通过构造一个具有平稳状态的马尔科夫链的后验分布去逼近未知的真实样本分布,而后者使用已知简单分布逼近需推断的复杂分布,并通过限制近似分布的类型,得到一种局部最优且有确定解的近似后验分布[23]。本文主要介绍LDA的塌陷吉布斯抽样和DMM的吉布斯采样GSDMM算法[24]。
(1)LDA模型。
塌陷吉布斯抽样中“塌陷”的含义是指通过积分的形式避开对隐含参数的直接计算,利用主题与参数之间的统计关系,实现对文档-主题分布和主题-词分布的估计。
①根据图1a的图模型所示以及3.1.1节中的生成过程,可以得到主题模型的联合概率分布:
p(w,z|α,β)=p(w|z,β)p(z|α)
(1)
其中,
(2)
②利用主题模型的联合概率分布,计算条件后验概率。
(3)
③利用多项式分布的先验分布——狄利克雷分布的推论以及式(3),可以得到目标参数的概率分布。最终通过狄利克雷的期望实现对参数的估计。
Dir(θm|nm+α)
(2)GSDMM算法。
p(d,z|α,β)=p(d|z,β)p(z|α)=
(4)
(5)
其中,V表示语料库单词的总量。
3.1.3 潜在主题个数的确定
无论是LDA还是DMM模型,都需要确定出具体的主题个数,对应于超参数α的维数K。鉴于两者的相似性,以下主要分析LDA的主题数确定方法。
(1)直接确定方法。这类方法一般选取具体指标作为优化参数,理解简单,比较容易实现。通常采用困惑度(Perplexity)最小作为最优模型的衡量标准[4]。但在实际应用中,存在质量不稳定和主题数范围偏大的问题。后续比较有效的优化指标还包括困惑度-主题方差(Perplexity-Var)指标[25]、主题一致性TC(Topic Coherence)[26]和困惑度拐点法RPC(the Rate of Perplexity Change)[27]。
为了衡量上述常见指标在确定最优主题数时的有效性,以下将选用2个不同分布的数据集进行对比实验,具体实验准备见表1。
具体测试结果如图2和图3所示,图2表示不均匀数据集上的相关指标测试,图3为均匀数据集上的相关指标测试。
Figure 2 Performance comparison of different methods (uneven data)图2 不均匀数据集上相关指标测试
Figure 3 Performance comparison of different methods (uniform data)图3 均匀数据集上相关指标测试
Table 1 Pre-experiment preparation表1 实验前期准备
Table 2 Statistics of optimal number of topics表2 最优主题数结果统计
如表3所示,基于困惑度、困惑度拐点法以及困惑度-方差以及确定的最优主题数对数据集的分布比较敏感,前两者确定的主题数比较相近,后者相差较远。文献[2]的实验数据为期刊论文摘要,训练模型的过程中,主题方差随着主题数目的增加而减少。这与本文的实验结果几乎相反,对于困惑度-主题方差指标而言,引入的主题方差未能实现对宽泛主题的有效约束。本文认为文本篇幅普遍较长,是造成困惑度-方差性能差异的主要原因。当文档词袋规模大幅度增加时,尽管随着主题数的增加会造成分词的主题占比的差异性减小,但是较大的基数并不能保证其累积方差出现显著性下降。根据主题一致性指标在2个数据集上确定的主题数分别为25和30,比较符合实验数据集的主题分布和步长限定(见表2),所以可以确认该指标的有效性。文献[26]认为通常意义上的测试集对选择最优主题数是一个充分非必要条件。在上述实验中发现,基于该指标在训练集和测试上确定的最优主题数比较相近。综上所述,可以认为主题一致性指标的性能要优于其它3种指标的。
(2)间接确定方法。这类方法主要借助其它优化算法实现对问题的有效转化,避免直接求解最优主题数。一是非参数化方法。Teh等[28]通过层次狄利克雷过程对主题数目进行了非参数化处理,得到了与困惑度指标方法类似的结论。但是,这种方法时间复杂度较高。Griffiths等[29]提出用贝叶斯模型确定最优主题数目的方法。二是基于聚类或分类方法。李菲菲等[30]发现文档聚类簇与文档集隐含的主题数相一致的特点,基于高频词网络利用社区发现算法确定出LDA模型的最优主题个数。文献[8]通过模拟学生电影爱好分类情景,提出了MGP(Movies Group Process)算法,实现了主题个数的自适应。
Mazarura等[31]通过测量模型的主题一致性和主题稳定性发现,在短文本上GSDMM算法的性能总体上要优于LDA模型的。Liu等[32]提出主题词嵌入模型TWE(Topical Word Embeddings),以词-主题分布为对象,引入词嵌入实现对特定主题的特征表示。李思宇等[33]针对BTM中词对缺少主题和语义相关性的问题,提出了词对GS采样算法。余冲等[34]权衡了由内外部语料训练得到的词向量对主题表达的影响,提出了词-主题混合WTM(Word Topic Mixture)模型,重新定义了主题模型与词嵌入条件概率分布。这些模型大多都在不同程度上实现了对LDA模型的扩展,要么引入词嵌入技术训练词向量,要么是基于同现关系的文本特征扩展。所以不可否认,LDA模型对主题模型扩展的借鉴意义和重要价值。
Table 3 Research on the extension of thematic models in recent years表3 近几年主题模型的扩展研究
对近2年主题模型的扩展研究进行总结比较(如表3所示)发现,针对不同表现形式以及不同数据结构的主题建模已经进入了一个新的高度。而且关于缓解数据稀疏性、噪声以及数据冗余问题的解决方案较多。与以往的主题模型[2,35]相比,如今主题模型对文本信息考虑得更加全面,主要包括文本信息、语义信息以及句法信息。这些从根本上得益于深度学习算法的快速发展和自然语言模型的自我完善。主题模型作为重要的信息提取手段,虽然可以提取出主题,但是不能直接体现出热点主题与相应主题之间的关联关系。在未来基于主题模型的扩展框架研究将会增多,如文献[36,37]所示,主题模型将承接主题词提取的重要环节,研究重心会偏向主题可扩展性、热点主题词网络演化、可视化和交互应用开发等方面。
主题模型是网络舆情分析的重要工具。网络舆情本身所具有的主观性使其容易被引导,所以针对舆情的演化研究具有十分重要的意义。目前关于网络舆情的研究主要包括舆情热点话题识别[37]、网络社交关系研究、话题演化研究(包括话题强度和话题内容演化)[48]、新话题探测以及基于主题模型的协同过滤等。话题的演化包括初现、衰减、高潮、潜伏、终结等阶段。舆情本身的时效性使得信息的时间属性的作用被放大,尤其是在话题演化研究上。为了提高主题的提取效率,文献[21]提出主题模型的快速推理算法、在线学习算法、文本流推理算法以及分布式学习等研究。目前比较重要的结合时间属性的主题模型有在线LDA模型OLDA(Online LDA)以及增量LDA模型(Increment LDA)。文献[48]对两者做了具体的比较,即两者都可以在线处理,ILDA模型偏向内容演化,文本需要根据时间先分类(即先离散),话题数量可变,且可自动确定;而OLDA既可以进行内容演化又可以进行强度演化,一般按照时间顺序直接建模,虽然提取的话题数量固定,但是可以实现新话题的检测。目前关于短文本的直接在线处理不多,一般是通过时间窗口进行聚类或者分类研究[49,50]。
主题模型作为目前信息提取的重要工具之一,虽然针对短文本的稀疏、噪声以及冗余等问题出现了不同侧重的解决方案,但是缺乏全面型通用模型的研究。数据产生量大、速度快以及存储空间增大等外部环境,将对主题模型的并行化或者分布式协同能力提出更高的要求。此外,面向特定短文本的主题建模研究将越来越多,以网络舆情为例,除了一般意义上的主题提取,目前已经衍生出一系列集成化程度更高的领域,如舆情动态热点识别、热点动态演化预测以及资讯的实时推荐等。主题模型作为其中的重要环节,在模型扩展以及应用扩展等方面已经取得了巨大进步,但是目前关于主题模型算法性能的系统评测体系并不完整,研究略显不足。所以,后续这一部分的研究应该得到充分的重视。