| 面向新浪微博文本的情感度判断及其探索性空间分析 |
从2006年推特诞生到现在,国外针对实时分享的短文本研究已经有了很多实质性的进展,如通过对海量推特的分析来预测股市走向[1-3],以及分析大量的推特以获取用户对某一产品的反馈,并因此做出更友好的改进[4]等。文献[5]通过情感跟踪工具对推特上的900多万条博文进行语义分析,测度了大众的乐观、悲观情绪以及6个维度上(冷静、警觉、踏实、充满活力、仁慈、幸福)的情绪[5]。在国内,基于中文字符的自然语言处理也有了一定的成果,然而大部分的工作主要还是集中在对实时性文本的挖掘和处理上[6]。
本文提出了一种基于决策树的新浪微博情感度判断方法,以较高的效率和准确度完成了对一段时间内的新浪微博情感度判断,并对结果进行了探索性空间分析,为中文微博平台的舆情监控和热点事件挖掘提供了一个新的视角。
1 微博情感度判读方法及流程本文针对微博文本进行了为期两周的数据采集,并在已有的研究方法上进行了微博情感度判断。
1) 获取分析数据及训练数据。通过新浪API,利用public_timeline接口连续获取从2015-05-04到2015-05-20的公共微博,包括训练微博和研究所用的微博。提取出的数据有created_at字段和text字段,并同时获取user信息中的province字段,为地学可视化分析使用。
2) 过滤垃圾信息。对获取到的连续微博和之前先行获取的1 000条训练用微博进行预处理,先通过关键词过滤的方式去掉广告等无用微博。
3) 文本分词。利用自然语言处理技术对微博进行文本分词,加入自定义的表情符号词典和部分主流网络词语,并标注词性,分别提取形容词(adj)、动词(verb)、表情符号(emoji)、语气词(voice)。
4) 建立情感倾向表。对提取到的形容词、动词和预先设定好的极性形容词组、极性动词组中的词语进行相似度计算,并建立情感倾向表。将每一条微博文本中每一个词与对应极性词组的词语依次计算相似度,根据计算后的总积极度和总消极度的数量判定该词在这个词性下的情感倾向。微博文本中的表情符号和语气词也要加入判断。由此便可以获得一个由形容词、动词、表情符号、语气词为属性,以及“积极”、“消极”、“无感情偏向”、“无数据”为属性可取值的属性表。
5) 建立决策树。人工判读1 000条训练用微博的情感倾向,积极的记为0,消极的记为1。取其中700条,把情感倾向作为决策属性,和步骤4)中得到的属性表一起来构建微博情感倾向的决策树。通过此决策树判断剩下300条微博的情感倾向,和人工判读的结果进行比较,计算准确度。
6) 基于决策树的情感度判断。由训练数据得到决策树后,对连续获取微博的属性表进行决策树分类,得到连续获取的每一条微博对应的情感度倾向。
2 微博情感度判断关键技术 2.1 微博文本预处理本文的微博文本预处理主要包括中文分词和噪声去除两部分。汉语分词系统(Institute of Computing Technology, Chinese Lexical Analysis System, ICTCLAS)[7]是中国科学院计算技术研究所在多年研究工作积累的基础上研发出来的,主要功能包括中文分词、词性标注、命名实体识别、新词识别,同时支持用户词典。但是,采集到的微博中有大量的无用信息,所以必须要通过关键词过滤的方式去掉包括广告、营销、新闻转发、应用打卡等干扰微博再进行文本分词。过滤设定的关键词包括“试用反馈”、“征集”、“爆款”、“到货”等共350个。
2.2 情感词情感倾向计算文本情感分析的根本在于对含有情绪的词语的分析,例如,“漂亮”是带有积极含义的词语,而“肮脏”是带有消极含义的词语[8]。
当需要判断一个词汇的褒贬倾向时,就需要一种度量方式。本文的情感倾向判断方法如下。
1) 列举出一系列明确表达了积极含义的词语和消极含义的词语。
2) 将待判断词分别与这两组词语进行相似度计算,设定一个阈值,当相似度超过这个阈值时,就将此词语积极(消极)度+1。
3) 计算完全部两组词语后,比较这个词语的总积极度和总消极度。若积极度大于消极度,则认为这个词语为积极的。
4) 对于表情符号和语气词,在一开始人工分为两极组别后,判断本条微博含有表情符号和语气词分别在两极性组中的个数便可以确定此条微博在表情符号和语气词属性下的情感倾向。
对于两个词语的相似度计算,本研究采取知网提供的计算功能。知网是一个以汉语和英语的词语所代表的概念为描述对象, 以揭示概念与概念之间以及概念所具有的属性之间的关系为基本内容的常识知识库。语义相似度的计算功能是根据文献[9]中的原理编写的词汇语义相似度计算程序实现的。
2.3 基于决策树的微博情感度判断数据的分类问题有很多种办法,如判定树归纳、贝叶斯分类、神经网络、遗传算法等。生成决策树的算法有很多,本文采用ID3(iterative dichotomiser 3)算法实现决策树。ID3算法[10, 11]通过计算每个属性的信息增益,每次选择分支结点时都选取信息增益最高的属性,重复这个过程,直至生成一个能完美分类训练样本的决策树。决策树建立完成以后,读取生成的决策树,对获取到的微博生成的微博情感倾向表进行情感判断。
3 空间数据探索分析 3.1 空间数据探索分析方法空间数据探索分析方法(exploratory spatial data analysis, ESDA)主要关注数据的描述、识别数据的统计特征,并通过相关假设初步判断数据的结构。数据探索分析对于数学建模同样具有重要价值[12]。空间探索分析方法通过对空间自相关的分析来揭示空间的异质性和依赖性。空间自相关可分为全局自相关和局域自相关。
1) 全局自相关。全局自相关是对属性值在整个区域的空间特征的描述。表示全局自相关的指标和方法很多,最常用的是Moran’s I。Moran’s I是用于衡量空间要素的相互关系,其值在-1~1之间,大于0表示空间正相关,小于0表示负相关,等于0表示不存在空间相关性。其计算公式为:
| $ I = \frac{N}{{{S_0}}}\frac{{\sum\limits_{i = 1}^N {\sum\limits_{j = 1}^N {{W_{i, j}}({X_i}-\bar X)({X_j}-\bar X)} } }}{{\sum\limits_{i = 1}^N {{{({X_i}-\bar X)}^2}} }} $ | (1) |
式中,N表示研究对象的数目;Xi、Xj为观测值;X为Xi的均值;
计算出Moran’s I之后,还需对其结果进行统计检验,一般采用z检验。公式为:
| $ z\left( I \right) = \frac{{I-E\left( I \right)}}{{S\left( I \right)}} $ | (2) |
式中,
2) 局域自相关。全局Moran’s I统计量是一种总体统计指标,仅说明所有区域与周边地区之间空间差异的平均程度。为了全面反映变化趋势,还需采用ESDA局部分析方法。从本质上看,局域Moran’s I是由Anselin于1994年提出,它是将Moran’s I分解到各个区域单元,并称其为空间联系的局部指标LISA(local indicators of spatial association)[12],可以揭示局部直至每个空间单元的空间自相关性质。对于某个空间单元i:
| $ {I_i} = \frac{{{X_i}-\bar X}}{{{S_3}}}\sum\limits_{j = 1}^N {{W_{i, j}}({X_j}-\bar X)} $ | (3) |
式中,
LISA的z检验为:
3) 空间权重的确认。空间权重表示的是空间单元间潜在的相互作用的力量,其一般通过空间相邻和空间距离来确定。本文采用的是以公共边为邻接的空间权重,其定义如下:
| $ {W_{i, j}} = \left\{ \begin{array}{l} 1, i与j有公共边\\ 0, i与j没有共共边 \end{array} \right. $ | (4) |
本研究从北京时间2015-05-04 15:24:43至2015-05-20 04:31:06,获取了微博文本150万条,经过过滤垃圾信息后,共判断了745 060条微博的情感倾向,并作为空间数据探索的研究范围,微博文本采用了全国省级行政单位作为单元划分。
3.2.1 全局空间自相关利用Anselin设计的GeoDA 1.6.7计算全国微博用户情绪的空间自相关系数Moran’s I=0.176 019(p≤0.05),表明全国微博用户情绪值存在显著正的空间自相关特性,情绪值较高的省份,其周边区域的情绪值也较高,反之亦然。较大的空间正相关特性显示了空间差异的存在。
3.2.2 局域空间自相关1) Moran散点图
Moran散点图用于研究局域空间的异质性,其中横坐标为各单元标准化处理后的属性值,纵坐标为其空间权重所决定的相邻单元的属性值的平均值。Moran散点图的4个象限分别对应于区域单元与其邻居之间4种类型的局部空间关系:①第一象限代表HH(High-High),即属性高值区域的周围区域也是高值的空间关系;②第二象限代表LH(Low-High),即低值区域的周围是高值的空间关系;③第三象限代表LL(Low-Low);④第四象限代表HL(High-Low)。LL和HL的意义正好与HH、LH相反。HH和LL表明具有较强的空间正相关,表示区域的聚集和相似性;HL和LH则表明存在较强的空间负相关,区域具有异质性。图 1是全国各省情绪值Moran散点图,其横坐标表示各地区标准化处理后的情绪值;纵坐标表示其空间权重所决定的相邻地区的情绪值的平均值。其统计结果如表 1所示。
![]() |
| 图 1 全国各省情绪值Moran散点图 Figure 1 Moran Scattered Point Map of Emotional Value in China |
| 表 1 全国情绪值Moran散点图统计结果 Table 1 Statistical Result of Moran Scatter Plot in China |
![]() |
从表 1中可以看出,基本格局是情绪值较高的地区大多集中在东北、西南、华南、港澳等地区,情绪值较低的地区大多集中在华东等地区,具体可分为以下4种类型:①空间差异较小,区域自身和周边情绪值较高(HH),位于该区域的总共有15个,包括黑龙江、吉林、辽宁、北京、广东、广西等。根据中央电视台《中国经济生活大调查》2012-2015年发布的数据,最具幸福感城市依据收入水平(55.53%)、健康状况(48.91%)、婚姻或感情生活状况(32.09%)等多项因素进行评选,其中,哈尔滨、长春、呼和浩特、广州、厦门、长沙、重庆等多次入选最具幸福感城市,从这一点上也能反映出情绪值判断及探索性空间分析的准确性;②空间差异较小,自身和周边情绪值较低(LL)的区域有7个,主要集中在安徽省周围,新疆由于数据量小,具有很大的随机性,因此一个时期的数据并不能完全代表新疆地区的情绪值就一定偏低;③空间差异较大,自身情绪值较高而周边情绪值较低(HL)的区域有10个,主要集中在西北地区和一些发达地区,例如上海、浙江等地,由于海南和台湾没有邻接地区,并不存在空间聚集性;④空间差异较大,自身情绪值较低而周边情绪值较高(LH)的区域有两个,即宁夏和西藏,这两个地区微博数据量小,随机性较大,不宜分析。
2) 空间联系局域指标
空间联系局域指标是衡量观测单元属性和其周边单元的正相关或负相关程度的指标,也可以用来检验不存在的局部空间相关的零假设。由于Moran散点图不能客观反映空间关联类型的显著性,因此,利用GeoDA 1.6.7软件计算了特征时段全国各省微博用户情绪的LISA值。其中,高高空间聚集(中心)的显著性结果是吉林省(LISA值为0.367 3)和广东省(LISA值为0.366 0),低低空间聚集(中心)的显著性结果是安徽省(LISA值为0.475 5)。从表 1结果可知,吉林省和广西壮族自治区都是高高类型区域,其周围省份黑龙江、辽宁、广西、贵州、福建等地区也是情绪值相对较高的区域,安徽省是低低类型区域,其周围的河南、湖北、山东、江苏等地区也是低低类型,所以各自形成以显著性结果为中心的聚集区域。由于海南省和台湾没有邻接省份,所以没有聚集性。
4 结束语本文针对微博文本进行了为期两周的数据采集,在已有研究的基础上设计了一种基于决策树分类器的方法,进行了微博情感度判断,并通过探索性空间分析去探究微博情感波动的规律和用户所处地理区位之间的关系,为理解用户行为和基于中文微博的情绪研究与应用提供一个新的视角。探索性空间分析是研究空间现象的重要技术手段,通过采用Moran’s I指标,可以看到微博用户情绪存在着空间正相关特性,各省区间有着明显的相互作用。同时,通过局域空间自相关分析,可以看到微博用户情绪也存在着地区差异,即空间异质性。
由于本文获取的微博数量有限,且噪音较多、内容简短、语法松散,因此给微博情感分析造成一定的局限性。另外,所采取的数据以省区为划分,缺少更为详细的数据,比如市级、县级数据。同时,探讨尺度的不同也是空间分析研究的另一重要问题。这些都有待进一步研究。
| [1] | Zhao Jichang, Dong Li, Wu Junjie, et al. Mood Lens: An Emotion-based Sentiment Analysis System for Chinese Tweets[C].ACM SIGKDD International Conference on Knowledge Discovery and Data Mining, ACM, Qingdao, China, 2012 |
| [2] | Nguyen V D, Varghese B, Barker A. The Royal Birth of 2013: Analysing and Visualising Public Sentiment in the UK Using Twitter[C].ACM SIGKDD International Conference on Knowledge Discovery and Data Mining, ACM, Qingdao, China, 2012 |
| [3] | Wang Zhitao, Yu Zhiwen, Chen Liming, et al. Sentiment Detection and Visualization of Chinese Micro-blog[C]. IEEE International Conference on Data Science and Advanced Analytics, Shanghai, China, 2014 |
| [4] | Zhang Haiping, Yu Zhengang, Xu Ming, et al. Feature-level Sentiment Analysis for Chinese Product Reviews[C]. IEEE International Conference on Data Science and Advanced Analytics, Shanghai, China, 2014 |
| [5] | Bollen J, Mao Huina, Zeng Xiaojun. Twitter Mood Predicts the Stock Market[J]. Journal of Computational Science, 2011, 2(1): 1–8 DOI: 10.1016/j.jocs.2010.12.007 |
| [6] | 黄萱菁, 张奇, 吴苑斌. 文本情感倾向分析[J]. 中文信息学报, 2011, 25(6): 118–126 |
| [7] | 刘群, 张华平, 俞鸿魁, 等. 基于层叠隐马模型的汉语词法分析[J]. 计算机研究与发展, 2004, 8(8): 1 421–1 429 |
| [8] | 赵妍妍, 秦兵, 刘挺. 文本情感分析[J]. 软件学报, 2010, 21(8): 1 834–1 848 |
| [9] | Liu Qun, Li Sujian. Word Similarity Computing Based on How-net[J]. Computational Linguistics and Chinese Language Processing, 2002, 8(7): 59–76 |
| [10] | 李雄飞, 李军, 董元方. 数据挖掘与知识发现[M]. 北京: 高等教育出版社, 2010 |
| [11] | Quinlan J R. Induction of Decision Trees[J]. Machine Learning, 1986, 1(1): 81–106 |
| [12] | 范新生, 应龙根. 中国SARS疫情的探索性空间数据分析[J]. 地球科学进展, 2005, 20(3): 282–291 |
2018, Vol. 43




