主题模型及其在文本情感分析中的应用
随着Web2.0技术的出现和发展,互联网上(包括门户网站、电子商务网站、社交网站、音/视频分享网站、论坛、博客、微博等)产生了海量的、由用户发表的对于诸如人物、事件、产品等目标实体的评论信息。例如,下面这两个短文本评论:
(1)“比较了多个智能手机后选择了8150,性价比还可以。另外,就是考虑到它是3.7的屏幕,大小比较合适,否则携带很不方便。”(京东商城用户,2011.11.25);
(2)“我以前在杭州做二手房地产,用温州炒房客的话说:全世界房价降了,杭州的房价永远不会降,因为他们有一道坚不可摧的屏障,那就是杭州官场的参与。”(网易网友,2011.11.25)。
与客观性文本不同的是,这些主观色彩浓厚的评论信息蕴含着大众舆论对上述目标实体的看法,对潜在用户、商家以及政府部门等具有十分重要的参考价值。例如:潜在用户可能会根据这些评论信息做出是否购买的决定,商家需要了解用户使用其产品的反馈意见或者其他商家的竞争情报,政府各职能部门需要全面掌握大众对其所辖区域的新闻事件的思想动态。如果采用人工方式对这些海量信息进行收集和分析,显然是成本高昂、低效和困难的。利用计算机对非结构化的文本评论进行分类和提取的文本情感分析技术(Text SentimentAnalysis)应运而生。
近年来,主题模型(Topic Modeling)成为近年来文本挖掘领域的热点,它能够发现文档-词语之间所蕴含的潜在语义关系(即主题)——将文档看成一组主题的混合分布,而主题又是词语的概率分布——从而将高维度的“文档-词语”向量空间映射到低维度的“文档-主题”和“主题-词语”空间,有效提高了文本信息处理的性能。基于主题模型的文本情感分析技术,期望通过挖掘各种非结构化文本评论所蕴含的主题及其关联的情感特征,来提高文本情感分析的性能,也成为学术界(如UIC的Bing Liu,UIUC的Chengxiang Zhai等)和工业界(如Google)关注的热点。我们对这个方向进行探讨,期望在知识库建设、商业数据挖掘等方面取得一些研究和应用进展。
一、主题模型
l
l
鉴于TF-IDF存在一些缺点,Deerwester等人于1990年提出潜在语义分析(Latent SemanticAnalysis)模型,用于挖掘文档与词语之间隐含的潜在语义关联。LSA的理论基础是数学中的奇异值矩阵分解(SVD)技术。
在现实世界中,可以用矩阵描述许多事物之间的关联。例如,文本检索领域的“词-文档”权值矩阵(N个词、M个文档),推荐系统中的“用户-产品”评分矩阵(N个用户,M个产品);社会化网络中的“用户-用户”关系矩阵(一般是N*N矩阵)等等。SVD的功能是将一个比较复杂的矩阵转化几个更小、更简单矩阵的乘积:,而这些小矩阵描述了矩阵的重要特征(Feature)。其中的对角线元素为奇异值(特征值的平方根),用于表示这个特征的重要性程度; 、 表示与特征值相关的特征向量组成的矩阵,用于表示有哪些特征。在很多情况下,前r大的奇异值之和就占了全部奇异值之和的99%以上(r远远小于N、M)。为了压缩存储矩阵,只保留前r个对矩阵影响最大的奇异值,而较小的其他奇异值因为不重要而被删除,这便是LSA的“降维”思想:(如下图所示)。
在文本信息检索领域,矩阵C描述N个词语与M个文档之间的已知权重关系(如文档中词的出现次数),通过LSA将其分解为U、D、VT三个小矩阵。这三个矩阵中,U表示词的一些特性,VT表示文档的一些特性;U的第1列大致表示每个词出现的频繁程度,VT的第1行近似与每篇文档中出现词的个数成正比例,D中的奇异值表示潜在语义特征的重要程度;将U、VT的剩余行、列分别取出,并对它们进行聚类,可以发现文档与词之间的潜在语义关联。LSA的优点在于,它对词-文档之间的关联关系进行降维,减少了存储规模;能够发现词语间的相似性、文档与文档之间的相似性、文档与词之间的语义关联,对近义词和多义词有一定的效果。其缺点在于,由于基于SVD,迭代计算次数非常多,在处理海量文本数据时,文档和词的维度将急剧增加,使SVD的计算复杂度呈三次方增长。目前,开源项目Mahout已经实现了基于Hadoop/MapReduce的并行SVD的实现。
l
主题模型主要有两类:PLSA和LDA。如下图所示:主题模型假设每个文档由多个主题混合而成(利用文档在所有主题上的概率分布来表示),而每个主题都是词上的概率分布(即每个词对主题的贡献度),这样文档、词都可以映射到同一个潜在语义空间——主题。
是LDA模型的Dirichlet的先验分布,表示整个文档集上主题的分布;表示文档d上主题的多项式分布;Z表示文档d的第n个词的主题;W表示文档d的第n个词;N表示文档d所包含词的个数;D表示文档集;K表示主题集;表示主题k上词语的多项式分布;表示所有主题上次的先验分布。事实上,去掉 和 ,LDA就变成了PLSA。目前,参数估计是LDA最重要的任务,主要有两种方法:Gibbs抽样法(计算量大,但相对简单和精确)和变分贝叶斯推断法(计算量小,精度度弱)。目前,Mahout已经实现基于变分推断法的LDA模型,但还有许多功能待完善。
l
目前,根据不同的应用需求,已经出现许多扩展的主题模型。
Ø
Ø
Ø
Ø
Ø
二、文本情感分析
文本情感分析,又称意见挖掘(Opinion Mining),是指对带有情感色彩的主观性文本进行分析、处理、归纳和推理的过程;属于计算语言学的范畴,涉及到人工智能、机器学习、数据挖掘、信息检索、自然语言处理等多个研究领域。按照应用领域的不同,可以将文本情感分析技术分为:(1)基于产品评论的文本情感分析:处理用户发表的产品评论文本,一般用于消费者辅助决策和商业舆情监控;(2)基于新闻评论的文本情感分析:处理用户对新闻事件发表的评论文本,多用于帮助政府相关部门进行舆情监控,对大众做出正确舆论引导。
按照文本的不同粒度,可将文本情感分析划分为词语级、句子级、篇章级和海量数据级:
(1)词语级是基础和前提,主要指对评价词进行抽取,并对其情感倾向(如褒/贬、喜怒哀乐等)进行分类。这里主要依赖两种方式:(a)基于语料库,即利用大语料库的统计特性,通过观察词语之间的共现关系、句子的语法模式等现象,来挖掘语料库中的评价词语并判断极性。(b)基于词典:主要使用词典中(如WordNet 或HowNet)词语之间的词义联系(如同义词、反义词、下位词等)来挖掘评价词语。有些还需要考虑词语上下文因素。
(2)句子级的任务主要包括:(a)判断该句子是主观句还是客观句;(b)如果是主观句,则对句子情感倾向进行判断,并从中提取出与情感倾向性论述相关联的各个要素,包括:观点持有者、评价对象、评价对象的特征(如价格、地理位置、售后服务、油耗、性价比等)、情感特征、评价时间。在这里,中文分词技术是句子级中文文本情感分析的一个基础,其中中科院的ICTCLAS系统是目前最好的中文分词工具;监督学习、无监督学习、半监督学习的各种具体方法则应用于句子情感分类。
(3)篇章级是指从整体上判断某篇文档的情感倾向性;由于文档往往包含多个评论对象(或者多个主题),使得篇章级文本情感分析技术相对粗糙而不适合于大多数应用。
(4)海量数据级主要从互联网上抓取大量关于某个新闻或者相关主题、公司及其产品(或者竞争对手及其竞品)的主观评论文本,并对它们进行集成和分析,进而挖掘出大众对这些目标实体的总体褒贬态度和走势。
此外,文本情感分析是领域敏感的,例如来自图书销售领域的在线评论信息挖掘系统,可能并不适用电子数码商品销售领域;也是语言环境敏感的,例如英文文本情感分析的一些技术就不一定适合中文文本情感分析;还有一些用户出于某种目的(通常情况是,通过增强或者诋毁目标实体的声誉,以达到广告促销、错误舆论导向的目的,例如“网络水军”的灌水帖)所撰写伪造的、不真实的意见信息。这都给文本情感分析的实际应用带来困难。
三、主题模型在文本情感分析中的应用
从技术实现的角度,PLSA和LDA及其扩展模型可以直接应用于用户评论文本挖掘中。但是,工业界发现,直接抽取主题的方式效果往往并不理想。以网上购物评论为例,原始的主题模型主要针对篇幅较大的文档或者评论句子的集合,学习到的主题主要针对整个产品品牌;而现实情形是,用户评论大多针围绕产品的某些特征或内容主题展开(如口味、服务、环境、性价比、交通、快递、内存、电池续航能力、原料、保质期等等,这说明相比于对产品的整体评分,用户往往更关心产品特征),而且评论文本往往较短。基于此,有些研究人员提出从“词-句子-段落-文档”多粒度划分的角度抽取评论主题。例如,Yohan Jo等人在WSDM2011会议上提出ASUM方法:将句子看作文档,句子中每个词都是隐含主题的分布,然后利用LDA进行主题挖掘;在此基础上,融合主题特征和情感信息来分析用户对这些主题的偏好,并以<主题,情感词>序对作为输出。以本文开头的评论句“比较了多个智能手机后选择了8150,性价比还可以。另外,就是考虑到它是3.7的屏幕,大小比较合适,否则携带很不方便。”为例,它主要隐含了智能手机三星8150的两个主题“性价比”和“主屏尺寸”,而与主屏尺寸相关的词语包含“3.7”、“屏幕”、“大小”、“携带”(同义词为“便携”);情感词为“还可以”、“合适”、“否则xx不方便”。与此类似的是,Moghaddam等人在SIGIR2011会议上提出ILDA方法,通过增加相关参数来改进LDA,应用于抽取评论主题、计算对主题的数字量化评分。再来考虑一个餐馆评价系统,与“价格”主题相关的词语可能包括:“价格”、“价钱”、“性价比”、“贵”、“便宜”、“人均”、“元”、“免费”、“x折”、“消费”等等;此外,也可能包含“车位”、“热情”、“生日”这样的词(或者与价格存在某些关联,或者是噪音)。
目前,网上购物评论或者新闻评论中,往往还有其他一些与评论相关的信息,如产品评分、产品特征满意度评分、优缺点区分、顶/踩、产品/新闻标签等等。如何利用这些信息帮助更精确地抽取主题、以及对主题的情感偏好,也得到研究人员的关注。例如,有些研究人员利用维基百科中的结构化文本来帮助抽取博客中的主题。此外,有一些研究工作侧重于“主题词”和“情感词”混合在一起,不加区分;还有一些研究工作通过设计合适的方法将“主题词”和“情感词”分开来抽取。
从系统设计的角度,基于主题模型的文本情感分析系统主要包括以下部分:评论信息采集与预处理(如网页爬取、中文分词、停用词处理等)、主题抽取、情感词抽取(可能涉及到情感词典构建)、主题的情感分类或评分、主题情感摘要生成(方便用户直接了解主题)、系统评测等。此外,当前的基于主题模型的文本情感分析技术主要侧重于文本评论,而较少关注与客服人员的文本问答或者语音咨询;而后者对于挖掘用户需求也是有意义的。
四、未来
目前基于主题模型的文本情感分析技术主要关注“评论文本—主题—词语”之间的关联关系,而较少从面向用户层级的角度展开研究;文本情感分析的结果,也主要面向大众化用户需求,而非个性化用户需求。事实上,这些评论都是用户相关的。研究用户层级的文本情感分析技术:用户-评论文本-主题-词语,结合推荐系统并针对特定商业应用背景开发出新型的文本情感分析应用系统,在不久的将来有望从概念走向现实应用。例如:在电子商务领域,用户往往拥有明确的用户标识,可以通过基于主题的文本情感分析技术,挖掘用户的评论信息发现具有相似偏好的用户(集体智慧)、挖掘专家意见(少数人的智慧)、挖掘社交网络中来自朋友的评价信息(社区智慧)等,来发现用户对产品及相关主题的偏好,然后再进行个性化推荐。
互联网用户生成的内容将朝着海量化、复杂化、多样化方向发展,传统的存储和计算模式将不足以支撑处理这些数据。可以利用云计算在大规模数据存储和计算、信息资源整合方面的优势,将其引入基于主题的文本情感分析技术。近年来,移动互联网受到越来越多地重视,而智能移动设备持有者都具备明确的用户标识,为基于地理位置的服务、商品推荐、搜索个性化、广告定向投放等提供了天然平台。但是,智能移动设备的输入输出能力相对较弱,移动用户行为与在传统互联网用户行为也存在较大差异,移动评论文本更短。如何通过挖掘移动互联网上的评论文本所蕴含的主题,更加准确地识别用户对相关主题的个性需求和大众化需求,从而促进精准网络营销,也是我们未来关注的研究和应用点之一。