著录项信息
专利名称 | 一种基于情感值的网络文本情感分析方法 |
申请号 | CN201410224628.X | 申请日期 | 2014-05-26 |
法律状态 | 授权 | 申报国家 | 暂无 |
公开/公告日 | 2014-08-27 | 公开/公告号 | CN104008091A |
优先权 | 暂无 | 优先权号 | 暂无 |
主分类号 | G06F17/27 | IPC分类号 | G;0;6;F;1;7;/;2;7查看分类表>
|
申请人 | 上海大学 | 申请人地址 | 上海市宝山区上大路99号
变更
专利地址、主体等相关变化,请及时变更,防止失效 |
权利人 | 上海大学 | 当前权利人 | 上海大学 |
发明人 | 武星;卓少剑 |
代理机构 | 上海上大专利事务所(普通合伙) | 代理人 | 何文欣 |
摘要
本发明涉及一种基于情感值的网络文本情感分析方法。本方法的操作步骤如下:第一,对文本进行预处理,段落拆分,标点替换等。第二,句式分析,判断分段文本中疑问句式和感叹句式,对情感值进行加权处理。第三,情感值匹配,根据预定义好情感值的情感词典对文本的每一个分段进行情感词匹配,将情感值带入。第四,对匹配到的情感词进行情感赋值,得到分段情感值。第五,情感值计算,将各个分段情感值相结合计算,得到整句情感值。第六,情感值修正,对每一分段进行情感值处理完毕后,将所有情感值按照一定规则进行修正。第七,情感倾向分析,得出情感值后根据情感值进行情感极性分析。该分析方法能比较准确的分析出中文文本的情感信息。
1.一种基于情感值的网络文本情感分析方法,其特征在于分析步骤如下:
(1)文本预处理:对标点符号进行处理以及句子分段;
(2)句式分析:判断分段文本中疑问句式和感叹句式,对情感值进行加权处理;
(3)情感词匹配:对各个分段逐个进行分析,匹配情感值词典,将未匹配到的单词当作中性词语处理;
(4)情感词赋值:对匹配到的情感词进行情感赋值,并对情感赋值后的情感词进行连接,得到分段情感值;
(5)情感值计算:将各个分段情感值相结合计算,得到整句情感值;
(6)情感值修正:对整个文本根据文本长度进行情感值修正;
(7)情感倾向判断:根据情感值区间对情感倾向进行判断,包括正面、中性和负面;
所述基于情感值的网络文本情感分析方法,其特征在于:所述步骤(3)情感词匹配规则要求:匹配情感值词典规则如下:
匹配规则1:定义不同的情感值词典,其中包括以下四种类型情感词典:权值词典weight,负面词词典negative,程度词词典degree,姓氏词典family name;
匹配规则2:以weight词典为主,negative、degree和family name作为辅助词典对词语进行情感值匹配;对weight的匹配拥有最高优先级,其次为negative和degree词典;family name词典为特殊用途,在匹配weight词典之后进行姓名排除;
匹配规则3:将所有匹配到的结果存储,并按顺序存储下来,作为中间结果;
匹配规则4:对上述中间结果进行处理,分析所有可能的句式结果,选取最优结果;选取最优结果的方法为挑选最佳句式匹配的方法,对于句式相近的多结果匹配则根据程度词和情感词之间的距离判断,距离小的一种句式作为结果;
匹配规则5:利用weight、negative和degree中的情感值和权重,进行情感值计算。
2.根据权利要求1所述基于情感值的网络文本情感分析方法,其特征在于:所述步骤(1)文本预处理规则要求:对文本进行基本处理,包括句子按标点符号分段,特征分段提取,标点符号识别分类。
3.根据权利要求1所述基于情感值的网络文本情感分析方法,其特征在于:所述步骤(2)句式分析规则要求:分析步骤(1)中对句子的标点符号识别,根据句式列表,对整个分段情感值进行加权处理;其中,加权的权值从句式权值表中取出。
4.根据权利要求1所述基于情感值的网络文本情感分析方法,其特征在于:所述步骤(4)情感词赋值规则要求如下:
a)根据步骤(3)得出的情感值匹配结果,对分段的情感词赋值;其中赋值包括情感值赋值和权重值赋值;
b)按照特定的句法进行整合:根据中文句法构成,分析句子的组成结构,将负面词语、权重词语以及情感词语进行排列以便进行情感值计算。
5.根据权利要求1所述方法,其特征在于:所述步骤(5)情感值计算规则要求:不同分段之间的情感值按照加法进行统一计算。
6.根据权利要求1所述基于情感值的网络文本情感分析方法,其特征在于:所述步骤(6)情感值修正规则要求:计算方法:按照字数进行加权平均,以使整个情感值处于一个相对平稳的区间内,避免过高或者过低这种不适宜的值出现。
7.根据权利要求1所述基于情感值的网络文本情感分析方法,其特征在于:所述步骤(7)情感倾向判断规则要求:对于结果倾向性分析,以情感值区间划分:低于-2为负面文本,高于2为正面文本,-2和2之间为中性文本。
8.根据权利要求7所述基于情感值的网络文本情感分析方法,其特征在于:所述的情感区间的划分,根据目标文本领域进行适当调整。
一种基于情感值的网络文本情感分析方法\n技术领域\n[0001] 本发明涉及自然语言处理、数据挖掘领域和语言学,尤其涉及一种基于情感值的网络文本情感分析方法。\n背景技术\n[0002] 目前,文本倾向性分析技术正逐渐被应用到许多的领域中。例如,微软公司开发的商业智能系统Pulse,它能够从大量的评论文本数据中,利用文本聚类技术提取出用户对产品细节的看法;产品评论挖掘系统Opinion Observer,利用网络上丰富的顾客评论资源,对评论的主观内容进行分析处理,提取产品各个特征及消费者对其的评价并给出一个可视化结果。\n[0003] 国内针对汉语网络文本的情感分析主要集中在情感倾向性分析,一般分为褒义、贬义和中性三种,还包括倾向性的强烈程度,包括:主观性分类(subjectivity classification),情感极性(polarity或者valence),语义倾向(semantic orientation),观点挖掘(opinion mining),观点抽取(opinion extractive),情感分析(sentiment analysis),情感摘要(sentiment summarization)等。\n[0004] 情感分析,也被称为观点挖掘、观点分析、主客观分析等。情感分析的目的是从文本中挖掘用户表达的观点以及情感极性。挖掘用户观点意义重大,既能吸引潜在用户,帮助用户做决策,又能得到产品反馈,还能对政治选举等重大事件进行预测。除此以外,情感分析的技术还有助于自然语言处理领域其他研究方面的发展,例如,自动文本摘要以及问答系统等。在情感分析方面,主要使用的技术分两大类:一类是采用情感词典与规则相结合的方法,根据文本中所包含的正向情感词和负向情感词的个数来进行情感分类;另一类是采用机器学习的方法,选择文本中的一些特征,标注训练集和测试集,使用朴素贝叶斯(Naive Bayes)、最大熵(Max Entropy)、支持向量机(Support Vector Machine)等分类器来进行情感分类。\n[0005] 所谓词汇的情感倾向, 即对于词汇的褒贬程度计算出一个度量值。为了便于统计和比较,目前比较常用的做法是将度量值规定为位于±1 之间的实数。当度量值高于某阈值时,判别为褒义倾向;反之,则判为贬义倾向。研究显示:大多数的形容词和副词,以及一部分的名词和副词都具有语义倾向性。而词汇作为语言学的一个基本语义单位,其情感倾向的判别对更大语言粒度的情感倾向性分析有着非常重要的作用。国内关于汉语词汇、短语的情感倾向研究主要分两类方法:基于统计方法和基于语义词典的方法。\n发明内容\n[0006] 本发明的目的是针对已有技术存在的不足,提供一种基于情感值的网络文本情感分析方法对中文文本进行情感分析,能准确的分析得到文本的情感倾向性以及情感程度(情感值)。根据上述发明的目的,本发明的构思是:\n[0007] 本发明的基于情感值的网络文本情感分析方法采用的是情感词典与规则相结合的方法,这种方法的优势是对语法句法敏感,更容易表现出语言的细微之处。另外采用权威的情感值词典和权值词典,情感分析的结果更加准确。情感分析结果是一种情感倾向和情感程度,一篇文本或者一段话是正面、中性或者负面情感,情感值(情感程度)是多少。\n[0008] 根据上述发明构思,本发明采用下述技术方案:\n[0009] 一种基于情感值的网络文本情感分析方法,其特征在于分析步骤如下:\n[0010] (1)文本预处理:主要是对标点符号进行处理以及句子分段。\n[0011] (2)句式分析:判断分段文本中疑问句式和感叹句式,对情感值进行加权处理。\n[0012] (3)情感词匹配:对各个分段逐个进行分析,匹配情感值词典,将未匹配到的单词当作中性词语处理。\n[0013] (4)情感词赋值:对匹配到的情感词进行情感赋值,并进行连接,得到分段情感值。\n[0014] (5)情感值计算:将各个分段情感值相结合计算,得到整句情感值。\n[0015] (6)情感值修正:对整个文本根据文本长度进行情感值修正。\n[0016] (7)情感倾向判断:根据情感值区间对情感倾向进行判断,包括正面、中性和负面。\n[0017] 本发明与已有技术相比较,具有如下显而易见的突出实质性特点和显著的技术进步:针对中文文本,提出一种基于情感值词典的文本情感分析方法,对于细致的情感计算以及情感倾向性分析,在文本分析准确率和分析结果的参考价值上都有显著的提升,对于信息挖掘也有相当大的现实意义。\n附图说明\n[0018] 附图1为本发明基于情感值的文本情感分析方法流程图。\n[0019] 附图2为本发明情感值匹配流程图\n[0020] 附图3为本发明句式分析流程图。\n具体实施方式\n[0021] 本发明的优选实施例结合附图详述如下:\n[0022] 实施例一:\n[0023] 参见图1,本基于情感值的网络文本情感分析方法,其特征在于分析步骤如下:\n[0024] (1)文本预处理:主要是对标点符号进行处理以及句子分段;\n[0025] (2)句式分析:判断分段文本中疑问句式和感叹句式,对情感值进行加权处理;\n[0026] (3)情感词匹配:对各个分段逐个进行分析,匹配情感值词典,将未匹配到的单词当作中性词语处理;\n[0027] (4)情感词赋值:对匹配到的情感词进行情感赋值,并进行连接,得到分段情感值;\n[0028] (5)情感值计算:将各个分段情感值相结合计算,得到整句情感值;\n[0029] (6)情感值修正:对整个文本根据文本长度进行情感值修正;\n[0030] (7)情感倾向判断:根据情感值区间对情感倾向进行判断,包括正面、中性和负面。\n[0031] 实施例二:本实施例与实施例一基本相同,特别之处如下:\n[0032] 参见图2和图3,所述:\n[0033] 步骤(1)文本预处理规则要求:对文本进行基本处理,包括句子按标点符号分段,特征分段提取,标点符号识别分类。\n[0034] 步骤(2)句式分析规则要求:分析步骤(1)中对句子的标点符号识别,根据句式列表,对整个分段情感值进行加权处理;其中,加权的权值从句式权值表中取出。\n[0035] 步骤(3)情感词匹配规则要求:匹配情感值词典规则如下:\n[0036] 匹配规则1:定义不同的情感值词典,其中包括以下四种类型情感词典:权值词典weight,负面词词典negative,程度词词典degree,姓氏词典family name;\n[0037] 匹配规则2:以weight词典为主,negative、degree和family name作为辅助词典对词语进行情感值匹配;对weight的匹配拥有最高优先级,其次为negative和degree词典;\nfamily name词典为特殊用途,在匹配weight词典之后进行姓名排除;\n[0038] 匹配规则3:将所有匹配到的结果存储,并按顺序存储下来,作为中间结果;\n[0039] 匹配规则4:对上述中间结果进行处理,分析所有可能的句式结果,选取最优结果;\n选取最优结果的方法为挑选最佳句式匹配的方法,对于句式相近的多结果匹配则根据程度词和情感词之间的距离判断,距离小的一种句式作为结果;\n[0040] 匹配规则5:利用weight、negative和degree中的情感值和权重,进行情感值计算。\n[0041] 步骤(4)情感词赋值规则要求如下:\n[0042] a)根据步骤(3)得出的情感值匹配结果,对分段的情感词赋值;其中赋值包括情感值赋值和权重值赋值;\n[0043] b)按照特定的句法进行整合:根据中文句法构成,分析句子的组成结构,将负面词语、权重词语以及情感词语进行排列以便进行情感值计算。\n[0044] 步骤(5)情感值计算规则要求:不同分段之间的情感值按照加法进行统一计算。\n[0045] 步骤(6)情感值修正规则要求:计算方法:按照字数进行加权平均,以使整个情感值处于一个相对平稳的区间内,避免过高或者过低这种不适宜的值出现。\n[0046] 步骤(7)情感倾向判断规则要求:于结果倾向性分析,以情感值区间划分:低于-2为负面文本,高于2为正面文本,-2和2之间为中性文本;情感值区间根据目标文本领域进行适当调整。\n[0047] 实施例三:\n[0048] 参见图1 图3,本基于情感值的网络文本情感分析方法的具体操作步骤如下:\n~\n[0049] 步骤(1)文本预处理:对标点符号进行处理以及句子分段。现今的大多数中文文本,尤其是微博、论坛的文本,都含有大量的标点符号和表情符号。这些符号大多伴随在一段话之后,用来表示情感,由于符号表情复杂多样且不规则,同时一个表情又可以表达多种情感,不适宜作为参考。一部分文本中存在多个符号重叠的现象,这些文本和发表文本的用户使用习惯有关,也是千差万别,都需要进行统一的规格化。规则如下:\n[0050] 1)对整句进行预处理,根据定义好的终结词表stoplist(终结词表就是部分情感词的非情感词集合),将所有终结词识别出来并替换为统一字符“0”;\n[0051] 2)对整句进行分段,一般为按标点符号(括号和书名号除外)隔开,同时保留每个分段结尾的标点符号,供步骤(4)使用;\n[0052] 3)将每个分段连同其结尾标点符号保存起来,以此作为文本预处理最终结果。\n[0053] 步骤(2)句式分析:判断分段文本中疑问句式和感叹句式,对情感值进行加权处理。。在进行情感值计算之前的文本预处理结果对计算结果影响较大,所以对分段和标点处理方法的选择比较重要。本发明所采用的方法是:\n[0054] 根据汉语特征,通常一句话都会有特定的语法特定的句法,定义一个规则来为特殊情感句式加权。得到分段结果之后,就要对每个分段进行处理,针对每一段,进行如下步骤的处理操作:\n[0055] a)判断是否含有疑问句式,如“难道……吗”;\n[0056] b)判断是否含有感叹句式,如“……啊”;\n[0057] c)判断分段结尾标点符号,是否为“?”和“!”,并断定句式;\n[0058] d)为整段情感值附加权值,暂不参与运算,待句式分析计算完毕后再进行加权计算。\n[0059] 本发明对于疑问句式采用以枚举为主的方法,同时以关键字“不,是否,?”作为最关键的处理对象。首先判断句子中是否有“不”字,如果有则获得“不”字所在的位置,然后依次向后寻找是否有“不……不……”的句式,对于这样的句式不会对情感的倾向性产生影响因此对情感值不加权,否则判断为反向情感,情感值取反,如果有“不……吗”这样的疑问句式,则加权提升情感值的绝对值大小。其次判断句子中是否含有“是否”,同样地,这个关键字不会影响情感倾向,只做轻微加权提升情感值。之后处理疑问句最重要的一步是对各种特殊疑问句式的处理,因为疑问句一般以“?”结尾,因此首先判断是否含有“?”,然后判断是否还有以下样式的疑问句式,然后加权处理,见下表:\n[0060]\n[0061] 对匹配到的每个疑问句式都做情感值计算之后得到初步的情感值结果。当然,如果这不是一个疑问句式,那么情感值在经过这一步之后不会改变。然后,紧接着判断是否是一个感叹句式。对于感叹句式,则采用和疑问句式相类似的方法处理,见下表:\n[0062]\n[0063] 情感值经过这样的句式处理之后就会得到一个整句情感的权值,这样一个权值在和之后的情感词值进行统一计算,则可得到分段的最终情感值。\n[0064] 步骤(3)情感词匹配:对各个分段逐个进行分析,匹配情感值词典,将未匹配到的单词当作中性词语处理。规则要求:\n[0065] a)定义不同的情感值词典,其中包括以下四种类型情感词典:权值词典weight、负面词词典negative、程度词词典degree和姓氏词典family name;\n[0066] b)以weight词典为主,negative、degree和family name作为辅助词典对词语进行情感值匹配。对weight的匹配具有最高优先级,其次为negative和degree词典。family name词典为特殊用途,在匹配weight词典之后进行姓名排除;\n[0067] c)将所有匹配到的结果存储,并按顺序将词语的首尾索引和词语类型存储下来,作为中间结果;\n[0068] d)对上述中间结果进行预处理,分析所有可能的句式匹配结果,选取最优结果。选取最优结果的方法为挑选最佳句式匹配的方法,对于句式相近的多结果匹配则根据程度词和情感词之间的字符距离判断,距离小的一种句式作为结果;\n[0069] e)利用情感值词典weight、负面词词典negative和程度词词典degree中的情感值和权值,进行情感值计算。\n[0070] 本发明所采用的情感词匹配方法详细解释如下:\n[0071] 对于字符串开始的一段字符,从长度为1的第一个字开始判断,在对应的情感值词典weight中匹配,判断是否存在于情感值词典中,如果存在则将字符串的首尾记录下来并连同类型“e”存入到一个临时文件中。如果不存在主要情感值词典中,则接着在degree和negative词典中进行匹配,如果匹配在“degree”中则标示类型为“d”;如果在“negative”中匹配成功则标示为类型“n”。\n[0072] 在进行完上述的匹配之后,将字符串长度加2,开始匹配字数为2的文本。接着匹配\n3个到更多的词(限定最大长度为8)。同样的将匹配到的首尾索引结果以及类型保存下来。\n在1个字和2个字的时候进行特殊处理:在权值词典中匹配成功,就先判断字符串前面一个字是否包含在family name字典中,如果存在,则判断此字符串为一个姓名的一部分,将这段忽略掉。从紧接着的后面一个字重新开始匹配。\n[0073] 本发明提出,在匹配长度为8的字完毕后,去掉匹配成功的最长字符串,迭代处理剩余字符串。\n[0074] 步骤(4)情感词赋值:对匹配到的情感词进行情感赋值,并进行连接,得到分段情感值。规则要求如下:\n[0075] c)根据步骤(3)得出的情感值匹配结果,对分段的情感词赋值;其中赋值包括情感值赋值和权重值赋值。\n[0076] d)按照特定的句法进行整合。根据中文句法构成,分析句子的组成结构,将负面词语、权重词语以及情感词语进行排列以便进行情感值计算。\n[0077] 进行完所有的情感词以及程度词、负面词匹配之后,匹配结果已经保存,并且标示出了是何类型的词语。接着进行分段情感赋值,规则如下:\n[0078] a)获取情感值匹配保存的结果,读取匹配值序列;\n[0079] b)如果当前字符串已经只剩下一个词,并且类型为e(表示在weight词典中)则返回单个情感词的情感值,句式为单一句型“e”;\n[0080] c)如果当前字符串不是最后一个词,而且第一个匹配词类型为e,则赋值第一个词情感值,对后面的字符串(用s表示)进行迭代处理,句式分析为“e+s”;\n[0081] d)如果当前字符串第一个匹配词类型为d(表示在degree词典中),而且第一个匹配词和后一个匹配词的间距大于3,迭代处理除去第一个词之后的字符串,句式分析为“d*0+s”。如果间距小于或等于3,则寻找其中的e(表示在weight词典中)类型的匹配词,句式分析为“d*e”;\n[0082] e)如果当前第一个匹配词类型为n并且之后的匹配间距大于3,则直接取反处理并迭代处理之后的字符串,句式为“n*s”。否则循环处理下一个词,根据下一个匹配词类型判断,如果为d类型,则句式为“n*d*s”,如果为e类型则句式为“n*e+s”;\n[0083] f)最优句式匹配的选取则为匹配词之间平均距离最短,也就是匹配的词最紧凑。d类型程度词值紧接着e类型情感词值直接相乘;\n[0084] g)计算出初步情感值之后,进行情感值修正,以免数值趋向性过大,添加修正权值\n0.8;\n[0085] h)计算得出情感值结果之后与之前的情感句式加权相乘,则得到最终情感值。\n[0086] 步骤(5) 情感值计算:将各个分段情感值相结合计算,得到整句情感值。上述步骤完成后,将所有分段计算得出的整段情感值相加,得到最终文本情感值。\n[0087] 步骤(6)情感值修正:对整个文本根据文本长度进行情感值修正。由于文本长度会对文本情感值产生影响,需要对全文的情感值进行修正。本发明按照字数进行加权平均,以使整个文本情感值处于一个相对平稳的区间内,避免过高或者过低这种不适宜的情感值出。规则如下:\n[0088] a)对于长度小于140个字符的文本不作修正;\n[0089] b)对于长度超过140的文本添加修正权值方法:\n[0090]\n[0091] 步骤(7)情感倾向判断:根据情感值区间对情感倾向进行判断,包括正面、中性和负面。本发明在计算得到最终情感值之后,情感值在2以上的多为正面情感,-2以下的多为负面情感,2和-2之间的判断为中性情感。当目标文本对象偏向性较明显时可作略微调整,缩短中性情感区间。\n[0092] 本发明采用现有的情感极性文本进行准确率测试,共有三类不同文本:htl(旅店顾客评价)、NB(笔记本电脑评价)和book(书籍评价),本测试集其中正、负面情感各有2000条。针对本发明所提出的文本情感分析方法进行测试,得出情感倾向性分析正确率统计见下表:\n[0093]
法律信息
- 2017-03-15
- 2014-09-24
实质审查的生效
IPC(主分类): G06F 17/27
专利申请号: 201410224628.X
申请日: 2014.05.26
- 2014-08-27
引用专利(该专利引用了哪些专利)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 |
1
| |
2014-03-26
|
2013-12-16
| | |
2
| |
2010-11-24
|
2010-07-16
| | |
3
| | 暂无 |
2009-02-25
| | |
被引用专利(该专利被哪些专利引用)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 | 该专利没有被任何外部专利所引用! |