基于LDA主题建模的微博舆情分析系统研究

2014-02-27 13:16:30张培晶
网络安全技术与应用 2014年4期
关键词:词项中心点分词

宋 蕾 张培晶

(1.北京警察学院 北京 102202;2.中国人民公安大学 北京 100038)

0 引言

微博是基于web2.0实现的社交媒体(Social Media)的一种形式,近年来得到了飞速发展,2010年是我国的微博元年,在许多危机场合发挥着实时信息传播的重要作用,成为民众表达舆情的重要窗口,包涵丰富的舆情信息。然而传统的针对长微博的向量空间模型难以有效解决短文本的数据稀疏性问题,本文的系统设计采用 LDA主题模型,可以充分挖掘隐主题信息,进而挖掘热点话题。

1 LDA主题建模基本思想

LDA(Latent Dirichlet Allocation)是David M.Blei等人于2003年在潜语义分析LSA(Latent Semantic Analysis)和概率潜语义分析PLSA(Probabilistic Latent Semantic Analysis)的基础之上提出的一种主题模型。主题模型的基本思想是:文档是若干主题的混合体,主题是基于词项的概率分布。主题建模通过词项在文档级的共现信息来抽取出语义相关的主题集合,能够将词项空间中的文档变换到主题空间,从而得到文档在低维空间中的表达。

主题模型是一种产生式模型,通过定义一种概率抽样过程来模拟人写文章的思考过程。一个文档的生成过程可以描述为先根据文档的主题混合比例随机选择一个主题,然后从此主题的词项分布中抽取一个词项。反之,利用统计学的推理算法可以逆转这一过程。即通过可观察到的文档语料集合中的词项,找出产生这些词项的概率主题集合,推理出主题与词项之间的概率分布,文档中主题的混合比例,以及每个词项来源于哪个主题。

LDA 是一个三层贝叶斯概率模型,包含词、主题和文档三层结构。与LSA和PLSA相比,LDA主题模型在文本和主题两个层面都实现了概率表示被认为是一个完备的产生式主题模型。LDA利用一个服从狄里克莱(Dirichlet)分布的T维隐含随机变量(θ)来表示文档的主题概率分布,模拟文档的产生过程。在多项式分布之上的一个T维狄里克莱分布的概率密度定义公式如下:

其中,参数α为参数θ的超参数,超参数αj可以被理解为从一个文档中抽样主题j的次数的一个先验。狄里克莱分布和多项式分布之间是共轭概率分布关系,即T维随机向量θ服从狄里克莱分布,θ的这T个分量都是非负值,并且 ∑jθj=1。狄里克莱分布作为一个共轭先验(conjugate prior)的多项式分布,可以有效简化先验概率的统计推理问题。在Blel提出LDA的原始文献中,只为主题分布θ增加了狄里克莱先验,并没有为词汇分布φ增加先验假设。为了便于利用共轭概率分布的特性进行推理运算,T.Giffiths等人为φ加上了狄里克莱先验,其超参数设为β。

使用贝叶斯网络图来阐述完善后的LDA模型,如图1所示。其中空心圆表示隐藏变量,实心圆表示可观察变量,有向边表示两变量间的条件依赖性,方框表示重复抽样,重复次数在方框的右下角。

图1 LDA模型的贝叶斯网络图

LDA模型中文档的生成过程如下:

(1)对于文档d,选择θd,θd服从Dirichlet(α)分布。

(2)对于话题z,选择φz,φz服从Dirichlet(β)分布。

(3)对于文档d中的第i个词wd,i:

①选择主题zd,i,zd,i服从Multinomial(θd)多项分布。

②选择词wd,i,wd,i服从Multinom ial(φz)多项分布。

主题模型隐含变量的值需要借助近似的推理算法来估计,目前常用的统计推理算法主要有:期望最大化(Expectation Maxim ization)算法、变分推理算法(Variational Inference)以及吉布斯采样算法(Gibbs Sampling)等。通过推理算法可以实现根据文本词汇等可观察变量,推导出θ和z的后验概率分布,也可以对模型参数α和β进行估计,从而挖掘出给定文档语料集背后隐含的主题,以及每个文档和各主题之间的关联。

LDA主题模型能够标识出一整套解释性强的概率主题,具有优秀的降维能力、扎实的概率理论基础和良好的扩展能力,LDA主题模型在海量文本的处理中体现出了明显的优势,受到了业界广泛的关注,被越来越多的应用于自然语言文本的分析处理中。

2 系统设计及模块功能

系统主要包括数据采集、数据预处理、热点话题发现以及话题分析模块。如图2所示。

图2 系统架构设计

2.1 微博数据获取

微博数据的获取可以通过新浪微博官方API和网页爬虫两种方式来抓取。新浪微博拥有几亿注册用户,活跃用户量为1.29亿,日活跃用户6140万,每天发博量超过1亿条,数量庞大,其中不乏人们的一些感情表达,对我们发现热点话题没有实质作用。因此,在数据源的选取上,应当着重选取具有一定威望的用户所发布的微博,字符长度应当在4个字符以上。

2.2 数据预处理

针对微博数据的预处理包括中文分词和去停用词两个步骤。一方面,与西文文档以空格为词项的自然分隔符不同,中文文档中的词项没有明确的形式上的分隔符。因此,在对中文微博文本进行主题建模之前,需要先利用中文分词预处理技术将中文文档中的汉字序列切分成单独的具有明确语义的词项。常用的分词算法主要有基于规则匹配的分词算法和基于统计的分词算法。基于语义的分词算法是近年来中文分词领域新的研究热点,可以实现更灵活的分词效果,但由于中文语法的复杂性,其算法仍有待进一步的完善。另一方面,在海量微博数据收集的过程中,为了尽可能的节省存储空间以及提高数据采集效率,需要在数据采集环节设置必要的停用词,使得系统在数据采集时自动忽略掉某些字或者词项。一般情况下,停用词可分为两类:一类是使用极其广泛且频繁的词项,这些词项在几乎所有类型的微博文档中都有非常高的出现概率,但是这些词项对于表达文档的相关程度或者对于缩小文档的分类范围没有实际意义,例如“微博”、“你”、“这”等等。另一类是这类词使用非常普遍,但没有什么明确含义,只有将其放入一个完整的句子中才有一定的作用,主要包括“啊”、“在”、“就”、“的”、“和”等等之类的语气助词、介词、系动词、副词、连词。我们可以建立中文停用词库对微博数据进行去噪处理。

2.3 Tw itter-LDA主题建模

由于微博文档篇幅太短等原因,直接利用LDA模型进行主题建模效果并不理想。克服微博的短文本的数据稀疏性影响,需要对LDA主题建模进行调整或对LDA主题模型进行适当变形。一种解决的思路是扩展文档的长度,将同一作者发表的微博集合在一起,视为一个文档来进行主题建模,从而克服微博文档篇幅过短的问题。利用最初在维基百科短文档上进行主题建模的LDA扩展模型ATM(Author-Topic Model)可以实现上述基于用户层面的微博文档主题建模。此时,主题模型中“文档-主题”的分布被“作者-主题”分布所取代。但是,由于ATM模型只能刻画用户层面的主题混合分布,对微博帖子层面的主题混合情况无法表达。Zhao等人对 LDA模型进行了类似 ATM 的扩展,提出了Twitter-LDA模型。Twitter-LDA模型通过在ATM基础上引入背景词项分布 φB,实现了同时在微博用户层面和微博帖子层面两个背景下进行主题建模,能够较好地刻画微博文档的主题分布。本文使用Twitter-LDA模型来进行微博文本的主题建模。

图3 Tw itter-LDA的贝叶斯图模型

Tw itter-LDA的贝叶斯网络图模型如图3所示。其中,φt表示主题的词项分布,φB表示背景词项分布。θu表示用户的主题分布,π表示控制在背景词项和主题词项之间选择的伯努利分布。微博帖子的生成过程如下:

(1)选择φB,φB服从Dirichlet(β)分布;选择π,π服从伯努利(λ)分布。

(2)对于1到K中的每个主题k,选择φz,φz服从Dirichlet(β)分布。

(3)对于1到U中的每个用户u:选择θu,θu服从Dirichlet(α)分布。

(4)对于1到Nu中的每个微博帖子s:选择主题zu,s,zu,s服从Multinomial(θu)多项分布。

(5)对于1到Nu,s中的每个词项n:选择yu,s,n,yu,s,n服从Multinomial(π)多项分布。如果yu,s,n=0,选择wu,s, n,wu,s,n服从Multinomial(φB)多项分布;如果yu,s,n=1,选择wu,s,n,wu,s,n服从Multinomial(φz,u,s)多项分布。

从Tw itter-LDA产生过程可以发现,当生成一条微博时,用户首先选择一个主题分布中的主题,然后从被选的主题的词袋中选择词项或者从背景模型的词袋中选择词项。该模型基于一个前提假设:一个单独的微博帖子通常只有一个单一主题。

2.4 K-means聚类算法

本文采用K-means聚类算法,它的算法简单并且收敛速度很快,是最经典的基于划分的聚类方法。它的基本思想是:在空间中寻找任意k个点做为中心开始进行聚类,对最接近这些中心点的对象进行归类。然后再通过迭代的方法,多次更新各个聚类的中心点,直到不再进行迭代,就是最终的聚类结果。具体步骤如下:首先,由Tw itter-LDA建模得到的未聚类初始点集N中选取K个点(K

2.5 热点话题分析模块

对已经获取的微博热点话题便可进行情感倾向性分析、社会关系分析以及传播态势分析。由于立场、出发点、个人状况和偏好的不同,民众对生活中各种对象和事件所表达出的信念、态度、意见和情绪的倾向性必然存在很大的差异,对这种差异的分析便是情感倾向性分析。因此,我们需要建立深度标注的情感语料库,从极性和强度两个方面进行标注,一般极性分为褒义、贬义、中性三类,强度分为强、中、弱三个等级。每个微博用户都有自己的粉丝和关注用户,以及信息转发、传播的路径,都可以帮助我们有效分析个体的社会关系,以及热点的传播态势。

3 结论

本文构建的微博舆情分析系统,采用LDA主题建模方法对微博类文本进行建模,可以有效的解决短文本数据稀疏性等问题,然后利用K-means聚类算法发现热点话题,并在此基础上开展情感倾向性等方面的深入分析。在今后的工作中,获取更精确微博主题和完整的描述热点话题是重要研究方向。例如,本文引用 twitter-LDA模型只是从扩展建模背景的角度来完善LDA模型在微博文本上的适用,还可以通过加入对微博结构化特征信息的利用来实现半监督的 LDA模型,用以进一步增强LDA模型在微博文本上的主题建模效果。

[1]David M.Blei,Andrew Y.Ng,M ichael I.Jordan.Latent dirichl et allocation[J].Journal of M achine Learning Research,2003(3):993-1022.

[2]Steyvers M,Griffiths T.Probabilistic topic models[M].//T.La ndauer,D.M cNamara,S.Dennis,W.Kintsch,et al.Latent Sema ntic Analysis:A Road to Meaning.2007:424-440.

[3]张培晶,宋蕾.基于LDA的微博文本主题建模方法研究述评[J].图书情报工作.2012(12):120-126.

[4]医学编辑 gogo3569.中文分词与停用词的作用.[2012-05-08].http://blog.sina.com.cn/s/ blog_78ba8d9701012by0.htm l

[5]M.Zvi,T.Griffiths,M.Steyvers,et al.The author-topic model f or authors and documents[C]//Proceedings of the 20th Conference on Uncertainty in Artificial Intelligence(UAI'04).2004:487-494.

[6]W ayne Xin Zhao,Jing Jiang,Jianshu Weng,et al.Compari ng tw itter and traditional media using topic models[C]//Proce edings of the 33rd European Conference on Information Retrie val(ECIR '11).2011:338-349.

[7]黄静,张琦,江文斌.基于该技能k-means算法的蚕茧自动计数方法的研究[J].丝绸.2014(1):37-40.

猜你喜欢
词项中心点分词
Scratch 3.9更新了什么?
电脑报(2020年12期)2020-06-30 19:56:42
如何设置造型中心点?
电脑报(2019年4期)2019-09-10 07:22:44
结巴分词在词云中的应用
智富时代(2019年6期)2019-07-24 10:33:16
自然种类词项二难、卡茨解决与二维框架
哲学评论(2018年1期)2018-09-14 02:34:18
值得重视的分词的特殊用法
汉字艺术结构解析(二)中心点处笔画应紧奏
寻找视觉中心点
大众摄影(2015年9期)2015-09-06 17:05:41
高考分词作状语考点归纳与疑难解析
英语词项搭配范围及可预见度
英语词项搭配范围及可预见度