基于神经网络的文本倾向性分析系统的研究

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

Micr ocomputer Applica tions V ol.27,No.12,2011研究与设计微型电脑应用2011年第27卷第12期文章编号:1007-757X(2011)12-0020-04
基于神经网络的文本倾向性分析系统的研究
佘正炜,钱松荣
摘要:随着信息时代的到来,网络评论数量急剧增加,对于这些网络评论的倾向性分析是网络舆情研究中的重要课题。

为了对网络评论的倾向性进行分析,提出了基于神经网络的网络舆情文本倾向性分析算法,使用神经网络训练的方法构建了较好的情感词倾向值词典,对网络评论的倾向性预测达到了较高的准确率。

对算法进行了细致的描述,同时提出了基于神经网络的网络舆情文本倾向性分析系统框架。

最后通过实验进行测试,证明了该系统能够达到较好的准确率。

关键词:倾向性分析;神经网络;文本处理;网络舆情
中图分类号:TP311文献标志码:A
0引言
随着互联网的飞速发展,我们已经进入了信息时代。

上网逐渐成为了人们的日常生活方式,据统计,截止至2011年2月份,我国的网民人数已达4亿。

如此众多的网民人数逐渐形成了一种新的现象——网络舆情,对于网络舆情的研究是当前的一大热点。

网络舆情主要是由网民们在博客、BBS以及论坛上的发表自己对于某些事件或者热点问题的看法以及见解来体现的。

通过对带有网民们的主观情感色彩的评论的分析,可以了解大众舆论对于某一事件或者产品的看法。

然而,飞速发展的互联网使得这些评论的规模越来越大,单单通过人工进行分析已经不能满足我们的分析需求,由此文本倾向性分析技术应运而生。

本文使用神经网络训练的方式改进对应的词语倾向度词典,并且在实践中取得较好的效果。

1相关工作
文本情感分析按照不同的文本粒度可分为词汇、句子以及篇章3个层面进行分析。

词汇的情感分析主要分为基于语料库和基于词典两种方法[1]。

基于语料库的评价词语抽取和判别主要是利用大语料库的统计特性,观察现象来挖掘语料库中的评价词语并判断极性。

另一种是基于HowNet[2]之类的知识库,首先选择两组具有明显正向和负向极性的词语作为种子词,对于一个情感倾向未知的词,计算这个词与两组种子词的相似度,与正向种子词组相似度高的则判定为正面倾向,反之则判定为负面倾向。

本文采用的神经网络的倾向词权重的初始值就是采用第二种方法计算得到的。

在句子和篇章级的文本倾向性分析方面,将主观文本的极性分为褒义和贬义两类。

目前主要有两种方法:基于情感知识的方法以及基于特征分类的方法。

基于情感知识的方法主要是依靠一些已有的情感词典或领域词典以及主观文本中带有情感极性的组合评价单元进行计算,来获取主观文本的极性。

比如文献[3]首先分析句子/篇章中的评价词语或组合评价单元的极性,然后进行极性加权求和。

在这种方法中,获得评价短语的极性,得到具体的评价短语的情感度倾向值词典是主要工作。

这个算法就是构建了一个较为合理的情感词倾向值词典,已取得了较好的效果。

基于特征分类的方法则主要使用神经网络NB,支持向量机ME和SVM(Support Vector Machine)等分类模型对一部分语料进行训练,得到对应的分类器,然后对其他语料进行分类。

其中SVM的方法是该分类方法中效果最好的,本文的对比试验就采用了该方法。

2基于神经网络的网络舆情文本倾向性分析
前面已经说到基于情感知识的句子和篇章级的文本倾向性分析方法前人已经取得了一些成果,比如文献[3]已经构建了一个情感度倾向值词典。

但是现今社会网络评论的规模已经变得越来越大。

随着网络文化的发展,网民的语法用语的习惯也在不断地发生改变。

同时由于用户群的不同,评论中情感词在不同的领域中所能表达的情感度倾向也是不同的。

所以使用固定的情感词词典,由于语料库的过时,以及语料库的领域过于广泛,运用在具体的情感分析中效果不佳。

我们研究的基于神经网络的网络舆情文本倾向性分析技术将会使用最新的语料库进行训练,从而调整情感词倾向值词典,能够获得较好的效果。

2.1神经网络的训练模型
人工神经网络是由大量处理单元互联组成的非线性、自适应信息处理系统。

神经网络实现了一个从输入到输出的映射功能,而数学理论已证明它具有实现任何复杂非线性映射的功能,这使得它特别适合于求解内部机制复杂的问题,足以进行文本倾向性判断的处理。

在本文中,使用神经网络对于正负面情感词的权重进行训练,得到一个更为合理的权重,以对文本的倾向性进行分析。

———————————
作者简介:佘正炜(1986-),男,江苏苏州,复旦大学硕士研究生,研究方向:文本倾向性分析,网络舆情,上海,200433钱松荣(1963-),男,复旦大学教授,博士,研究方向:网络与数据通信,RFID的研究与应用,上海,200433
20
Microcomputer Applications V ol.27,No.12,2011研究与设计微型电脑应用2011年第27卷第12期
神经网络训练模型图,如图1
所示:图1神经网络训练模型
n X ...X X 21,为输入层,是文本分词统计的情感词的TF 。

Oi H 是隐藏层输出,On O O h h h W W W ...21,是每个倾向词的倾向度权重,
O Y 是输出层输出,即为最后的文本倾向值。

O i H 和O Y 满足:h i Oi b X f H
(1)以及
i O h oi Oi O b W H f Y *(2)
式中x f 为激活函数;h b 和o b 分别为隐藏层和输出层
的阈值。

在训练时,每个样本的输入都有一个对应的期望输出
值,计算的结果与这个期望的输出有一个误差,我们训练的
方法就是由这个误差来逐步修正对应的隐藏层到输出层的
权值,即每个词语的倾向度。

2.2神经网络的输入确定
本文采用通用的VSM (Vector Space Model )向量空间
模型来进行文本分析的。

一般可以选择3种类型的权值来代
替具体的文本,即TF 、DF 以及TFIDF 。

在文献[4]中,经
过比较使用特征加权进行中文文本倾向性判断的各个方法,
得出结论:TF 加权要好于DF 加权和TFIDF 加权。

鉴于此,使用ICTCLAS 分词系统来对文本进行分词,
然后进行相关的倾向词的TF 的统计,最后得到一个使用情
感词作为特征的向量来具体表征文本。

此外,在网民的各类评论中,存在着大量的副词修饰情
感词汇,比如“太不周到了”这句话中的“太”、以及“不”。


者加强了周到这个词的感情色彩,“太不周到”明显比“不周
到”的情感色彩要强烈;后者则进行了否定。

所以需要对这
样的程度修饰词进行加权。

为此构建了程度修饰词字典。


典共收录了224个修饰词,并且对于这224个词进行不同的
权重标示。

比如“不”的权重为-1,“极度”的权重为2,“稍微”的权重为0.6等等。

为了验证,根据使用TF 、DF 、TFIDF 、以及加不加上
程度修饰词的加权,进行了验证,结果基本和预想相同。


于这不是本文重点,此处简略。

2.3神经网络的各个参数确定
有了以上神经网络的模型以及样本输入以后,就可以对
于神经网络的各种参数进行确定以及调整了。

2.3.1激活函数
标准神经网络的激活函数为“S ”型函数:
net e net f y 11
)((3)
对于应用来说,需要一个关于原点中心对称的升函数,
然而“S ”型函数是将输入范围),(
映射到输出范围)1,0(上去,故需要对它进行相应的改进以使之满足要求。

经变换使用的激活函数为:
2111
*2)(b ne t e net f y (4)
b 是一个确定常数,取值需要看具体的样本的情况来确定。

经过统计,在对于本文实验的文本进行分词以及统计TF 值后,得到的TF 值的平均值大概为1.4左右,最大值为34。

整个系统搭建完成之后,将b 的范围由2到17进行变化,经测试发现73b 时,结果最好,故取b=3。

由此得
到的激活函数的图像,如图2
所示:图1激活函数
2.3.2阈值阈值是神经网络中的一个重要的参数,可采用固定值,也可采用变化的阈值。

采用变化阈值即在神经网络训练的过程中,在误差反转改变权值同时改变阈值,相当于再把输入样本增加了一维,更有利于解决问题。

但是在本文的实验中,为简单起见将隐藏层及输出层的阈值均固定设为0。

2.3.3倾向词的初始权重的选取在标准神经网络的权重选择中,一般是在一个范围内随机选择权重,随后的权重修改过程都由训练过程来决定,但是这样的方法放在实验系统中并不理想,因为这样会使得训练的时间变得过长。

所以本文的初始倾向词权重的选取使用文献[5]中的结果,当然是为了适应本文系统还是有一定的修
21
Micr ocomputer Applica tions V ol.27,No.12,2011研究与设计微型电脑应用2011年第27卷第12期正。

简单介绍获取步骤如下:
1)获取基本情感词
从知网获得基本的情感词,共计3116个负面情感词以
及3730个正面情感词。

总共6846个情感词。

2)选取种子词
随机选取15%的情感词作为种子词。

3)根据种子词计算情感词的倾向度
计算的公式为:
N w n Key Similarity M w p Key Similarity w IR SO N i i M i i ),_(),_()((5)式中i p Key_i n Key _为第i 个正面(负面)的种子词,w 为待求倾向度的倾向词,),(w Key Similarity 为通过知网计算出来的Key 与w 之间的相关度(详细计算方法请参见文献[5])。

4)合并处理获得情感词表经过步骤3得到2907个负面情感词,3292个正面情感
词。

共计6199个情感词。

(已经删除一些生僻词)
此时,得到的情感词表还需要经过一些处理才能正式成
为神经网络训练的权重。

主要需要解决的问题有3个:一是
对情感词权重的归一化;二是处理经由知网计算得到较大误
差的权重(比如正面的情感词经由计算得到一个负值);三
是计算的结果整体有一个偏移。

相应处理如下:
对所有正面情感词中大于0的权重取平均,对所有负面
情感词中小于0的权重取平均,再对两个平均值简单地求平
均。

然后把所有的情感词权重均减去这个偏移值。

记为权重
列表A 。

接下来对于权重列表A 中的情感词权重进行线性变换:
1*2min mi n 'K K K K
K man (6)式中'K 即为计算后的权重,K 为权重列表A 中的权重,min K 为权重列表A 中最小的权重值,man K 为权重列表
中最大的权重值。

最后,对于那些计算误差较大的权重进行赋默认值。


案是对于正面情感词权重小于0的词赋初始权重为0.1,而
负面情感词中权重大于0的词赋初始权重为-0.1。

至此得到了神经网络训练的倾向词的初始权重,将之作
为隐藏层到输出层的对应权重。

2.3.4期望输出确定
使用神经网络来进行训练都需要有一个确定的预期输
出值,但是文本只有一个正面或负面的判定(做3类倾向性
分析时还需加上一个中性),这就需要通过计算确定该预期
输出值,同时确定输出的正确范围。

由于神经网络最后的输出范围是1,1,故规定正面的文本倾向度输出范围应该为1,Up ,负面的文本倾向度输出范围应该为Dow n ,1,中性的文本倾向度输出范围为Up Down,。

其中Up 和Down 均为一个1,0的常数。

在本文的只需判断正负倾向的实验中,00.0Up Down 。

首先对于每一种分类结果都预先设定一个默认的标准输出值,比如正面的文本倾向度设为0.5,负面的文本倾向
度设为-0.5,中性的(如果有的话)文本倾向度设为0。

将训练文本的TF 值输入神经网络,经过隐藏层再到输
出层,得到一个表示文本倾向度的结果,即为文本倾向值,
如果该文本倾向值处于正确的输出范围,则使用该输出值作
为该文本的预期输出值,否则以标准值代替。

例如某正面文
本的计算输出值为0.7,在正确的输出范围内,则它的预期
输出值亦设为0.7。

但是如果该正面文本的计算输出值为
-0.4,则将它的预期输出值设为默认的0.5。

对所有的训练文
本采取这样的处理得到训练文本的预期输出。

2.3.5误差函数及反馈
选择的误差函数为:221k Y k D e o o (7)全局误差为:m k o o k Y k D m E 1221(8)式中E 为总体误差,k D o 为第k 个样本的预期输出,k Y o 为第k 个样本的实际输出,可通过式(1)和式(2)计算获得。

m 为训练样本的个数。

根据神经网路的反馈机制,权重的更新公式为:ho i N hoi N hoi W e W W 1(9)将e 代入公式,并经过一系列推导以后,得到:
o o o o
Oi N hoi N hoi Y Y Y D H W W 11***61
*1(10)式中1N hoi W 为更新后的权重,N ho i W 为更新前的权重,Oi H 为隐藏层输出,o D 为预期输出,o Y 为神经网络实际输出,为学习速率。

在每次训练时,将训练样本一个个输入神经网络,每个样本输入后,都需要根据上式对于权重进行一次更新,训练样本全部输入完毕以后,一次训练结束。

下次训练开始后重复这个过程。

2.4训练算法流程为使算法明晰,在明确了各参数的获得方法后将训练流程复述如下:首先获得训练样本;然后通过分词统计确定神经网络的
22
Microcomputer Applications V ol.27,No.12,2011研究与设计微型电脑应用2011年第27卷第12期3
输入;确定神经网络的各个训练参数;每次训练中将样本依
次输入神经网络,获取误差,逐步修改倾向词权重;重复这
个过程直到训练结束。

最后使用训练之后的倾向词权重参数
进行文本倾向性预测。

2.5文本倾向性判定方法
由于本文的权重经过神经网络的训练,最后的文本倾向
性判定方法也需要经过神经网络,计算得到的神经网络输出
即为文本倾向值,查看它是否在正确的输出范围内来确认判
定类型。

比如正面的文本倾向度输出范围应该为1,Up ,输
出结果处于该区间,则判定为正面。

3基于神经网络的网络舆情文本倾向性分析的总
体系统框架
所研制的网络舆情倾向性分析系统,如图3所示:
I NTRENET 抽取评论资源评论文本数
据库ICTC LAS 分词及标注情感词典修饰词词典根据修饰词统
计情感词T F 评论TF 数
据库神经网络训练情感权重词典
文本倾向性预

网络爬虫
获取评论资源图2网络舆情倾向性分析系统网络爬虫模块和分词、标注及统计模块抓取评论信息并
进行前期处理工作。

神经网络训练模块根据具体的需要,定期或者不定期地
对于已有的数据进行一定的训练,得到最新的情感词权重。

文本倾向性预测模块对新抓取的数据进行预测,用于舆
情的监控及判断。

4实验分析设计了实验对于本文算法的有效性进行验证。

实验采用谭松波先生采集的关于酒店的评论文[6],进行测试,共计2000篇正面评论,2000负面评论(实验时由于材料问题去除了3篇负面评论以及1篇正面评论)。

随机选取500篇正面评论以及500篇负面评论作为测试样本。

选取其他的评论作为训练样本。

在取为0.01以及训练次数选为100次的情况下进行了60次实验,得到了如下实验结果,如图4
所示:图3训练结果图
训练之后的准确率平均为81.59%,训练之前的准确率平均为72.16%。

平均而言准确率提高了9.43%。

选取的对比实验,一个是无训练的基于极性加权求和的方法,即使用文献[5]中获得的情感词权重词典,通过每篇文章的情感词TF 与倾向值加权求和得到一个文章的情感度,根据它是正数还是负数来判断是否是正负面文章。

一个是文献[5]中的将权重加入TFIDF 的SVM 分类方法。

如表1所示:表1准确率对比表测试方法神经网络无训练的极性加权求和法SVM
准确率81.59%72.16%82.1%使用神经网络训练方法获得的结果,要比无训练的基于极性加权求和的方法的准确率要高上10%左右,而与基于SVM 的分类方法来看,准确率相近,当然,算法比较简单是它比基于SVM 算法要优异的地方。

5
结语及进一步工作
本文基于神经网络的思想构建了网络舆情文本倾向性分析系统,通过对于文本倾向词的权重进行训练,得到较为合理的文本倾向词权重,从而提高了对于文本倾向性的判定准确率。

实验表明可以达到比较高的准确率(见表1)。

进一步的工作是看看是否可以构建复杂神经网络来对于倾向词权重进行训练,或者将神经网络与SVM 方法结合起来进行文本倾向性分析,从而进一步提高文本倾向性分析的精度。

参考文献:[1]Rao D,Ravichandran D.Semi-Supervised polarity lexi-con induction.In:Lascarides A,ed.Proc.of the EACL 2009.Morristown:ACL,2009.675682.
[2]HowNet./
[3]杨超,冯时,王大玲,杨楠,于戈。

基于情感词典扩
展技术的网络舆情倾向性分析[j]。

小型微型计算机系
统。

V ol 31No.42010
[4]朱杰,刘功申,陈卓。

中文文本倾向性分类技术比较
研究[j]。

信息安全与通信保密。

2010年第4期
[5]Yanhui ZHU,ZhiQiang WEN,Ping Wang,Zhaoyi PENG .
A Method of Building Chinese Basic Semantic Lexicon
Based on Word Similarity.Pattern Recognition,2009.
CCPR 2009.Chinese Conference on Digital Object Iden-
tifier.
[6]SongBo TAN.Chinese Sentiment Mining
Corpus-ChenSentiCorp[EB/OL].
/tansongbo/corpus-senti.ht
m,2008-12-19.
[7]
赵妍妍,秦兵,刘挺。

文本情感分析[j]。

Journal of
Software,Vol.21,No.8,August 2010,pp.18341848.doi:
10.3724/SP.J.1001.2010.03832
(收稿日期:2011.08.14)2。

相关文档
最新文档