CN111538828B - 文本情感分析方法、装置、计算机装置及可读存储介质 - Google Patents
文本情感分析方法、装置、计算机装置及可读存储介质 Download PDFInfo
- Publication number
- CN111538828B CN111538828B CN202010316601.9A CN202010316601A CN111538828B CN 111538828 B CN111538828 B CN 111538828B CN 202010316601 A CN202010316601 A CN 202010316601A CN 111538828 B CN111538828 B CN 111538828B
- Authority
- CN
- China
- Prior art keywords
- emotion
- article
- articles
- sentences
- classification
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 230000008451 emotion Effects 0.000 title claims abstract description 666
- 238000004458 analytical method Methods 0.000 title claims abstract description 37
- 238000003860 storage Methods 0.000 title claims abstract description 14
- 238000012549 training Methods 0.000 claims abstract description 113
- 238000013145 classification model Methods 0.000 claims abstract description 53
- 238000000034 method Methods 0.000 claims abstract description 43
- 238000012545 processing Methods 0.000 claims abstract description 30
- 230000011218 segmentation Effects 0.000 claims abstract description 19
- 238000000605 extraction Methods 0.000 claims abstract description 18
- 238000004590 computer program Methods 0.000 claims description 25
- 239000013598 vector Substances 0.000 claims description 24
- 238000004422 calculation algorithm Methods 0.000 claims description 11
- 238000007781 pre-processing Methods 0.000 claims description 6
- 230000006870 function Effects 0.000 description 25
- 230000007935 neutral effect Effects 0.000 description 16
- 230000002996 emotional effect Effects 0.000 description 12
- 238000012216 screening Methods 0.000 description 10
- 238000004364 calculation method Methods 0.000 description 9
- 230000008569 process Effects 0.000 description 9
- 239000011159 matrix material Substances 0.000 description 8
- 230000007115 recruitment Effects 0.000 description 8
- 230000000694 effects Effects 0.000 description 7
- 238000012937 correction Methods 0.000 description 6
- 238000010586 diagram Methods 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 5
- 238000013528 artificial neural network Methods 0.000 description 4
- 238000009826 distribution Methods 0.000 description 4
- 238000005457 optimization Methods 0.000 description 4
- 230000003014 reinforcing effect Effects 0.000 description 4
- 238000013135 deep learning Methods 0.000 description 3
- 208000017667 Chronic Disease Diseases 0.000 description 2
- 241000590419 Polygonia interrogationis Species 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 2
- 238000004140 cleaning Methods 0.000 description 2
- 230000010365 information processing Effects 0.000 description 2
- 238000010801 machine learning Methods 0.000 description 2
- 230000008520 organization Effects 0.000 description 2
- 230000003313 weakening effect Effects 0.000 description 2
- 230000004580 weight loss Effects 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/338—Presentation of query results
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/35—Clustering; Classification
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/30—Semantic analysis
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Audiology, Speech & Language Pathology (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种文本情感分析方法、装置、计算机装置及计算机可读存储介质,所述方法包括:利用预设提取规则从预设语料库中提取多个目标文章;利用预先建立的情感分词词典对每一目标文章的语句进行情感分类;根据语句的情感分类结果对每一目标文章的语句进行情感打分;基于每一目标文章中的语句的情感打分情况得到每一目标文章的情感分类结果;对每一目标文章进行预设方式处理,以得到分词后的文本数据;根据每一目标文章的文本数据和每一目标文章的情感分类结果得到带有情感分类标签的训练数据,并基于所述训练数据训练得到情感分类模型;及利用情感分类模型对待处理文章进行情感分类。本发明可以准确地对文章情感进行分析与分类。
Description
技术领域
本发明涉及信息处理技术领域,尤其涉及一种文本情感分析方法、装置、计算机装置及计算机可读存储介质。
背景技术
随着移动互联网的快速发展,新闻类信息也呈现几何式的增长,如何快速的了解某个领域的新闻的整体观点趋势是值得研究的话题。同时,对于新闻内容的情感分析也可以更加有效的对新闻进行监控和管制,是值得研究的一个方向。当前用于文本情感分析的方法主要有基于情感词典的无监督学习方法以及基于机器学习算法的有监督学习方法。基于情感词典的无监督学习方法不采用训练数据,对不同领域的泛化性较强,但对特定领域的识别准确率就不尽如意,而基于机器学习算法的有监督学习方法则需要大量标注训练数据及特征提取,且对新的、未知的语料泛化性较弱。
发明内容
有鉴于此,本发明提出一种文本情感分析方法、装置、计算机装置及计算机可读存储介质,其可准确地对文本情感进行分析与分类,且分类效率高。
首先,为实现上述目的,本发明提出一种文本情感分析方法,所述方法包括:
利用预设提取规则从预设语料库中提取多个目标文章;
利用预先建立的情感分词词典对每一所述目标文章的语句进行情感分类;
根据所述语句的情感分类结果对每一所述目标文章的语句进行情感打分;
基于每一所述目标文章中的语句的情感打分情况得到每一所述目标文章的情感分类结果;
对每一所述目标文章进行预设方式处理,以得到分词后的文本数据;
根据每一所述目标文章的文本数据和每一所述目标文章的情感分类结果得到带有情感分类标签的训练数据,并基于所述训练数据训练得到情感分类模型;及
利用所述情感分类模型对待处理文章进行情感分类。
优选地,所述利用预设提取规则从预设语料库中提取多个目标文章的步骤之后,还包括:
利用预设剔除规则将多个所述目标文章中包含的特定属性文章剔除,其中所述特定属性文章至少包括低质量文章及领域无关文章。
优选地,所述基于每一所述目标文章中的语句的情感打分情况得到每一所述目标文章的情感分类结果的步骤包括:
基于所述目标文章中的语句的情感打分情况计算得到一正面情感分数及一负面情感分数;及
根据所述正面情感分数及所述负面情感分数得到所述目标文章的情感分类结果。
优选地,所述基于所述训练数据训练得到情感分类模型的步骤包括:
利用所述训练数据对连接有Softmax层的文章向量生成模型进行训练,得到所述情感分类模型;
其中,所述文章向量生成模型至少包括Doc2vec模型。
优选地,所述方法还包括:
对所述带有情感分类标签的训练数据进行均衡性操作;
其中,所述均衡性操作至少包括对所述情感分类标签中占比小的情感分类标签的数据进行复制扩充,以均衡每一所述情感分类标签的训练数据。
优选地,所述方法还包括:
获取所述情感分类模型的错误分类结果,并根据所述错误分类结果对所述训练数据进行修正;及
基于修正后的训练数据对所述情感分类模型进行修正。
优选地,所述方法还包括:
提取所述待处理文章的情感句,并对所述待处理文章的情感句进行打分,以根据预设摘要组成条件筛选出目标情感句组成所述待处理文章的情感摘要;及
根据接收到的文章搜索条件返回与所述文章搜索条件匹配的文章排序页面,其中所述文章排序页面按照情感分数高低进行排序,所述文章排序页面中的文章包含有所述情感摘要。
进一步地,为实现上述目的,本发明还提供一种文本情感分析装置,所述装置包括:
提取模块,用于利用预设提取规则从预设语料库中提取多个目标文章;
分类模块,用于利用预先建立的情感分词词典对每一所述目标文章的语句进行情感分类;
评分模块,用于根据所述语句的情感分类结果对每一所述目标文章的语句进行情感打分;
第一处理模块,用于基于每一所述目标文章中的语句的情感打分情况得到每一所述目标文章的情感分类结果;
预处理模块,用于对每一所述目标文章进行预设方式处理,以得到分词后的文本数据;
训练模块,用于根据每一所述目标文章的文本数据和每一所述目标文章的情感分类结果得到带有情感分类标签的训练数据,并基于所述训练数据训练得到情感分类模型;及
第二处理模块,用于利用所述情感分类模型对待处理文章进行情感分类。
进一步地,为实现上述目的,本发明还提供一种计算机装置,所述计算机装置包括处理器及存储器,所述存储器上存储有若干计算机程序,所述处理器用于执行所述存储器中存储的计算机程序时实现上述的文本情感分析方法的步骤。
进一步地,为实现上述目的,本发明还提供一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现上述的文本情感分析方法的步骤。
相较于现有技术,本发明所提出的文本情感分析方法、装置、计算机装置及计算机可读存储介质,结合无监督的情感词典分类和有监督的深度学习分类,提升了文本情感分类效率及准确率,且利用分类结果优化模型训练数据,进一步实现优化模型情感分类的效果,可将文章中表达情感强烈的句子挑选出来作为文章摘要,并在搜索过程中按情感打分进行排序输出,使得情感强烈的文章排序更容易靠前,同时在结果中展示文章摘要,方便用户快速了解文章的具体情感表达。
附图说明
图1是本发明文本情感分析方法一实施例的步骤流程示意图;
图2是本发明文本情感分析方法另一实施例的步骤流程示意图;
图3是本发明文本情感分析装置一实施例的模块示意图;
图4是本发明计算机装置一可选的硬件架构的示意图。
附图标记:
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
除非另有定义,本文所使用的所有的技术和科学术语与属于本发明的技术领域的技术人员通常理解的含义相同。本文中在本发明的说明书中所使用的术语只是为了描述具体的实施方式的目的,不是旨在于限制本发明。
优选地,本发明的文本情感分析方法应用在一个或者多个计算机装置中。所述计算机装置是一种能够按照事先设定或存储的指令,自动进行数值计算和/或信息处理的设备,其硬件包括但不限于微处理器、专用集成电路(Application Specific IntegratedCricuit,ASIC)、可编程门阵列(Field Programmable Gate Array,FPGA)、数字处理器(Digital Signal Processor,DSP)、嵌入式设备等。
所述计算机装置可以是桌上型计算机、笔记本电脑、平板电脑、服务器等计算设备。所述计算机装置可以与用户通过键盘、鼠标、遥控器、触摸板或声控设备等方式进行人机交互。
实施例一:
图1是本发明文本情感分析方法较佳实施例的步骤流程图。根据不同的需求,所述流程图中步骤的顺序可以改变,某些步骤可以省略。
参阅图1所示,所述文本情感分析方法具体包括以下步骤。
步骤S11、利用预设提取规则从预设语料库中提取多个目标文章。
在一实施方式中,所述预设语料库中的语料的来源可以是通过网络爬虫技术所抓取的大量新闻文章,可以先利用实体清单和/或命名实体识别技术从获取的大量新闻文章中筛选出需进行情感分类的待处理语料(该待处理语料定义为所述目标文章),所筛选出来的待处理语料可以是指需要关注的一些公司、个人的相关新闻,其他无需进行情感分类的语料可以直接剔除。
在一实施方式中,所述利用预设提取规则从预设语料库中提取多个目标文章的步骤之后,还包括:利用预设剔除规则将多个所述目标文章中包含的特定属性文章剔除,其中所述特定属性文章至少包括低质量文章及领域无关文章。
可以理解,经过初步筛选的待处理语料中可能仍含有广告等低质量文章或者无关文章,此时可以利用已知的低质量文章特征词和/或关键词对其进行进一步筛选,达到文章初步清洗的效果。具体地,可以利用低质量文章关键词、模式匹配等处理方式从待处理语料中筛出低质量文章及与领域无关文章,并进行剔除。所述模式匹配可以是对初步筛选出包含特定实体关键字的文章进行进一步限定来进行更精确筛选。举例而言,在筛选的实体清单中均有一个关键词“招商局”,筛选出来的目标文章是指与招商局集团相关的文章,并不包括地方性招商局(政府部门),因此,可以利用模式匹配剔除关键词前面具有特定限定词“<省|市|区|县|镇>”的文章,从而达到剔除地方性招商局等领域无关文章的目的。
在一实施方式中,还可以利用训练好的分类器对低质量、领域无关文章进行筛选识别,或者利用聚类算法筛选出这类文章。
步骤S12、利用预先建立的情感分词词典对每一所述目标文章的语句进行情感分类。
在一实施方式中,所述情感分词词典可以包括正/负面情感词典、程度词词典和否定词词典。所述正/负面情感词典可以指带有情感强度的情感词和情感短语。所述程度词词典可以包括加强词和减弱词,如“非常、很、轻微”等词。所述否定词词典可以包括“不、没有、一点也不”等词。可以利用所述情感分词词典对每一所述目标文章中的每一语句进行情感分类。
举例而言,可以将情感强度的取值设定为1~5的整数,情感强度越强,取值越大。将加强词程度的取值范围设定为(1,2),将减弱词程度的取值范围设定为(0,1)。将否定程度的取值范围设定为1~10的整数。
步骤S13、根据所述语句的情感分类结果对每一所述目标文章的语句进行情感打分。
在一实施方式中,若所述目标文章的语句中出现情感词w,其对应的情感强度为s,其前面出现的程度词分数为a,否定词的分数为b,则这一语句对应的情感倾向值p可通过以下公式计算得到:p=s*a-b。
举例而言,在一语句“其实他并不非常优秀”中,“优秀”是正面情感词,情感强度为4,“非常”是加强词,加强程度为1.8,“并不”是否定词,其否定程度为5,因此该语句的情感倾向值为:4*1.8-5=2.2。
在一实施方式中,语句中带有否定词并不是表达完全反面的情感,因此对于否定词的处理,本申请并不是直接将情感值取反处理,而是对情感值作相应减弱。举例而言,“非常优秀”的情感值为7.2,若因为前面的“并不”而直接取反,情感值就会变成-7.2,但这句话并没有表达强烈的负面情感,判定其情感值为-7.2显然是不合理的,可以根据“并不”的否定程度将情感值减5,得到最终的情感倾向值2.2,可更加符合语句实际表达的情感倾向及程度。
在一实施方式中,当一句话中同时出现了正面情感词和负面情感词时,由于程度词和否定词不一定出现在情感词的前面,因此难以定位它们对应的是哪个情感词,无法对其进行判断和打分,此时可以直接对该语句进行舍弃,以免影响打分质量。
步骤S14、基于每一所述目标文章中的语句的情感打分情况得到每一所述目标文章的情感分类结果。
在一实施方式中,目标文章的情感分类结果可以是文章正文的情感分类结果。目标文章的情感分类结果还可以是文章标题与文章正文的分类结果的汇总,比如可以对文章标题的情感分类及文章正文的情感分类结果分别赋予不同的权重,再计算得到目标文章的最终情感分类结果。
在一实施方式中,所述基于每一所述目标文章中的语句的情感打分情况得到每一所述目标文章的情感分类结果的步骤可以包括:基于所述目标文章中的语句的情感打分情况计算得到一正面情感分数及一负面情感分数;及根据所述正面情感分数及所述负面情感分数得到所述目标文章的情感分类结果。
在一实施方式中,可以基于对每一所述目标文章每一语句的情感打分情况计算所述目标文章的一个正面情感分数Spos和一个负面情感分数Sneg,并根据所述正面情感分数Spos和所述负面情感分数Sneg得到所述目标文章的情感分类结果。
举例而言,假设一篇目标文章包括n条语句,将该篇目标文章中每句话的情感强烈程度从前往后标记为s1,s2,...,sn,情感倾向标记为I1,I2,...,In,且si≥0,Ii∈[-1,0,1],i=1,2,...,n。将Ii=±1的下标集合分别标记为I+、I-,可以通过下列公式计算得到目标文章正面情感分数Spos和负面情感分数Sneg:
由上可以看出每个情感分数可以由两个部分相乘得到。利用上述公式得到目标文章的正面情感分数Spos和负面情感分数Sneg。在Spos中,第一个部分表示所有的正面情感句的情感强度si在通过函数f(x)转换后的代数平均值。f(x)可以用来调整不同情感强度之间的差异,例如取f(x)=x2使得情感强度更高的句子对于均值的影响更大。第二个部分表示包含正面情感的语句在全文篇幅中的占比,可以通过g(x)进行平滑化。由于文章中切实表达主观情感的篇幅可能会少于简单陈述客观事实的篇幅,因此包含情感的语句在全文中的占比相对较低,其函数曲线满足:随x的增大,g(x)的增大幅度变缓,于是可以取g(x)=x1/3。
在一实施方式中,在对目标文章进行情感分类时,除了正、负、中三种情感标签,还增加了一种情感标签:混合情感,这一类文章既表达了一定程度的正面情感,又表达了一定程度的负面情感,即正负情感倾向不明确。可以理解,混合情感和中性情感不同,中性情感大多是客观的描述,不带有太多情感词汇,而混合情感则带有较多情感词汇,但其最终倾向不明确。因此,为了更精准地分析目标文章情感,加入了混合情感这一情感标签,可以提升分类准确率,达到更准确分析目标文章情感的目的。
在一实施方式中,设定一个情感高阈值th和一个情感低阈值tl,若正面情感分数Spos和负面情感分数Sneg均大于高阈值th,则目标文章被判定为混合情感。若正面情感分数Spos和负面情感分数Sneg均小于低阈值tl,则目标文章被判定为中性情感。在前两个条件均不成立时,若正面情感分数Spos大于负面情感分数Sneg时,则目标文章被判定为正面情感,否则目标文章被判定为负面情感。
步骤S15、对每一所述目标文章进行预设方式处理,以得到分词后的文本数据。
在一实施方式中,对于所述预设语料库中的每一目标文章,可以进行预设方式处理得到文本数据。所述预设方式处理可以包括分词、去停用词、词性标注等。比如,可以采用Jieba分词工具对经过剔除处理后的预设语料库中的语料进行分词、去停用词、词性标注,以得到文本数据,所述文本数据可以包含多个分词。
步骤S16、根据每一所述目标文章的文本数据和每一所述目标文章的情感分类结果得到带有情感分类标签的训练数据,并基于所述训练数据训练得到情感分类模型。
在一实施方式中,所述基于所述训练数据训练得到情感分类模型的步骤可以包括:利用所述训练数据对连接有Softmax层的文章向量生成模型进行训练,得到所述情感分类模型;其中,所述文章向量生成模型至少包括Doc2vec模型。
在一实施方式中,利用大量训练数据基于Doc2vec模型生成文章向量,训练数据越大,得到的情感分类模型对目标文章语义的表达越充分。当得到文章向量后,将文章向量作为神经网络训练层的输入,将目标文章对应的情感标签作为输出,进行模型训练得到情感分类模型。比如,Doc2vec模型训练数据为从网络获取的134万篇新闻文章。
在一实施方式中,在训练前,可以预加载FastText利用大量中文数据预训练得到的200w个词向量,词向量可以在一定程度上表征词语之间的语义关系,有助于doc2vec模型得到更好的文章向量表达。
在一实施方式中,当得到带有情感分类标签的训练数据时,还可以对所述带有情感分类标签的训练数据进行均衡性操作;其中,所述均衡性操作至少包括对所述情感分类标签中占比小的情感分类标签的数据进行复制扩充,以均衡每一所述情感分类标签的训练数据。
在一实施方式中,在训练前还可以对所述带有情感分类标签的训练数据进行均衡性操作,对情感分类标签中占比少的训练数据进行复制扩充,以保证训练数据分布的均衡性。对训练数据进行复制扩充可以采用基础的扩充方法:直接复制数据量少的标签数据,使得各标签的训练数据比例相同,训练数据扩充原则为尽量保证随机。
举例而言,正/中/负/混合情感标签的数据比例为3:10:1:0.2,则可以将正面情感数据扩充3倍后,再随机抽取原始正面情感数据的三分之一,使得正面情感数据量等于中性情感数据量;再将负面情感数据扩充10倍,混合情感扩充50倍即可。
在一实施方式中,由于对不同情感倾向的新闻数据关注程度不一样,实际情况更关注负面情感的新闻,因此负面情感文章分类错误的代价更大。基于此,可以对损失函数的计算进行优化处理,具体做法为在模型训练过程中加入了一个损失函数权重矩阵。
表1
预测值\实际值 | 正面情感 | 中性情感 | 负面情感 | 混合情感 |
正面情感 | 1 | 2 | 5 | 4 |
中性情感 | 2 | 1 | 4 | 4 |
负面情感 | 3 | 3 | 1 | 3 |
混合情感 | 3 | 3 | 4 | 1 |
如上表1所示,一篇正面情感文章被预测为中性情感,其惩罚系数为2,而若被预测为负面情感或者混合情感,则惩罚系数为3;一篇负面情感文章被预测为正面情感,其惩罚系数为5,而被预测为中性情感或者混合情感,则惩罚系数为4,依此类推。
在本实施例中,所述损失函数可以为交叉熵损失函数,结合权重矩阵,具体的计算公式为:
H=-wi∑iy'i log(yi);
其中,对于每一个训练数据,对应的四种预测类别i,yi是softmax预测为该类别概率,yi表示实际是否属于该类别,wi为预测为该类别对应的惩罚系数。
举例而言,对于一篇负面情感的新闻,若其输出表示为(0,0,1,0),经过softmax层输出后的概率分布为(0.2,0.4,0.2,0.2),则其交叉熵权重损失为:-4×(0+0+1×log(0.2)+0)=-4log(0.2)。
在一实施方式中,使用加了权重矩阵的损失函数,使得负面情感和混合情感文章的准确率分别由87%、82%上升到94%、88%,更好地提升了重要文章的分类准确率。
步骤S17、利用所述情感分类模型对待处理文章进行情感分类。
在一实施方式中,当所述情感分类模型结束模型训练后,即可利用所述情感分类模型对待处理文章进行情感分类,所述情感分类模型的输入为待处理文章,所述情感分类模型的输出为所述待处理文章的情感分类结果。
在一实施方式中,如图2所示,所述文本情感分析方法还包括步骤S18及步骤S19:
步骤S18、获取所述情感分类模型的错误分类结果,并根据所述错误分类结果对所述训练数据进行修正,以基于修正后的训练数据对所述情感分类模型进行修正。
在一实施方式中,由于情感分类词典的有限性,不可能穷举出所有的正负面情感词汇,因此利用情感分类词典对目标文章进行情感分类可能存在一定的错误分类。可以理解,利用doc2vec生成文章向量时,利用了大量预训练语料的语义信息,在一定程度上表征了词汇的正负面情感,因此,部分误分类文章在通过神经网络分类器时,预测得到了实际正确的分类结果。通过修正这一部分训练数据,并利用修正后的训练数据对情感分类模型进行修正,可以得到更准确的情感分类模型。所述修正可以是指利用修正后的训练数据对情感分类模型进行修正训练,也可以是指利用包含修正后的训练数据对连接有Softmax层的文章向量生成模型进行重新训练得到所述情感分类模型。
步骤S19、提取所述待处理文章的情感句,并对所述待处理文章的情感句进行打分,以根据预设摘要组成条件筛选出目标情感句组成所述待处理文章的情感摘要。
在一实施方式中,当利用所述情感分类模型对待处理文章进行情感分类后,提取待处理文章的情感句,所述情感句可以是包含情感关键词且以中文句号、问号、感叹号分隔的语句。提取待处理文章的情感句后对所述待处理文章的情感句进行打分,以根据预设摘要组成条件筛选出合适的情感句(目标情感句)组成所述待处理文章的情感摘要。例如:对于正面情感文章,所述预设摘要组成条件可以是选取正面情感倾向值前三的情感句组成所述待处理文章的情感摘要;对于负面情感文章,所述预设摘要组成条件可以是选取负面情感倾向值前三的情感句组成所述待处理文章的情感摘要;对于中性情感文章,所述预设摘要组成条件可以是选取情感倾向值前三的情感句组成所述待处理文章的情感摘要;对于混合情感文章,所述预设摘要组成条件可以是选取正面情感倾向值前二和负面情感倾向值前二的情感句组成所述待处理文章的情感摘要。当按上述规则确定情感句后,可以按照它们在所述待处理文章中出现的顺序拼接起来,以作为所述待处理文章的情感摘要。
在一实施方式中,所述预设摘要组成条件还可以是与所述待处理文章内容相关的情感句。例如,所述预设摘要组成条件可以是优先选择包含所述待处理文章的主体内容的情感句。所述主体内容可以是人名、地名、机构名称等,这些情感句最好能直接表现所述待处理文章所体现的情感内容。
在一实施方式中,所述预设摘要组成条件还可以与情感句在所述待处理文章中所处位置相关。例如,所述预设摘要组成条件可以是优先选择在所述待处理文章的开头或者结尾部分的情感句。因为开头和结尾一般对于全文具有一定的概括性和总结性,相比文章中间部分的情感句对于理解全文的帮助更加直观。
在一实施方式中,情感摘要的生成可以不用将多句选中的情感句进行拼接,而直接选取最合适的某一情感句作为情感摘要。所述最合适的情感句可以是情感倾向值最高的情感句,还可以是包括文章主体内容且情感倾向值不低的情感句,可以通过文章主体内容与情感倾向值加权运算得到。
在一实施方式中,情感摘要的内容一般限制在一定的字数内或一定的句数内,使得后续再对文章进行搜索时搜索结果不会显得逼仄臃肿,避免了影响排版布局降低用户体验;同时,用户可以通过阅读情感摘要,快速地了解到文章情感分类的细节表述,以及部分文章正文的具体内容。
在一实施方式中,当将所述情感分类模型部署到搜索引擎上时,搜索引擎可以根据接收到的文章搜索条件返回与所述文章搜索条件匹配的文章排序页面,其中所述文章排序页面按照情感分数高低进行排序,所述文章排序页面中的文章包含有所述情感摘要。
在一实施方式中,搜索引擎的主要框架可以搭建在ES平台上,每一篇文章以多个字段组成的整体的模式保存在ES数据库中,组成的字段部分包括:标题,来源与作者,来源与作者评分,正文内容,发布时间,情感倾向,情感打分,情感摘要。所述搜索条件可以包括情感打分结果、作者评分结果等。搜索规则可以是对每篇文章进行打分,根据打分结果从高到底进行排序输出。
在一实施方式中,情感搜索的主要维度是情感,但是其他的属性也是重要的参考,因此在自定义ES搜索规则时,除了情感打分外,可以依旧赋予每个重要属性一定的权重,包括正文内容与搜索内容匹配度、来源于作者评分以及发布时间与搜索时间差值等,进而可以根据这些综合打分结果从高到底进行排序输出。
在一实施方式中,每一篇搜索得到的新闻文章除了常规的标题、来源与作者以及发布时间外,还可以展示文章的情感摘要,使得用户可以不用通过阅读全文去寻找作者表达个人情感或观点的内容,快速地了解到文章情感分类的细节表述,以及部分文章正文的具体内容。可以根据搜索得到的结果数据结合搜索条件对数据进行图形展示。
举例而言,选取预设语料库中的一篇目标文章详述分析过程:
目标文章标题为:《XX再现用户隐私泄露,平台方不该推诿》
通过情感分类词典和情感分类器的分类结果均为负面情感,目标文章中的情感句有:
1:“用户隐私泄露是大顽疾”;
2:“快递行业的隐私泄露危害尤甚”;
3:“会对用户造成直接的不可逆的风险”;
4:“对用户造成潜在风险”;
5:“没有真诚自我反省”;
6:“反而甩锅给一个社交产品”;
7:“更令用户失望的是”;
8:“但作为国内电商巨头的XX却屡现纰漏”;
9:“被曝光之后不是首先自省”;
10:“而且推诿塞责”。
对目标文章语句统计得到:文章的总句数为56句,其中正面情感句数量为0,负面情感句数量为10。也即文章的情感句分数s1,s2,...,s56中有46个0,另外10个为6,5.6,2.6,2.4,2,3,3,5.1,3,4。
按照全文情感分的计算方式得到:
于是可以判定文章的整体情感分数为8.61,而情感倾向值为-1。下面生成文章情感摘要。
从标题中解析出的关键词有:XX、用户隐私。在情感句中查找,第1、2句中出现了用户,第1、3、4句中出现了隐私,第8句中出现了XX。另一方面,情感分最高的三个句子由高到低分别为第1、2、8句,结合两个打分考虑,目标文章的情感摘要为:“用户隐私泄露是大顽疾,快递行业的隐私泄露危害尤甚,但作为国内电商巨头的XX却屡现纰漏”。
可以看出,目标文章的情感摘要的效果令人满意,可以较好地表达目标文章主旨与情感倾向。用户在通过情感搜索查看到这篇文章时,就可以通过阅读情感摘要快速地对文章产生一个大致的了解。
上述文本情感分析方法,结合无监督的情感词典分类和有监督的深度学习分类,提升了文本情感分类效率及准确率,在文本情感分析模型训练过程中,对损失函数加入了权重矩阵优化,更好地提升了对重要文章的分类准确率,且利用分类结果优化模型训练数据,进一步实现优化模型情感分类的效果,可将文章中表达情感强烈的句子挑选出来作为文章摘要,并在搜索过程中按情感打分进行排序输出,使得情感强烈的文章排序更容易靠前,同时在结果中展示文章摘要,方便用户快速了解文章的具体情感表达。
实施例二:
图3位本发明文本情感分析装置较佳实施例的功能模块图。
参阅图3所示,所述文本情感分析装置10可以包括提取模块101、分类模块102、评分模块103、第一处理模块104、预处理模块105、训练模块106、修正模块107、第二处理模块108及组成模块109。
提取模块101用于利用预设提取规则从预设语料库中提取多个目标文章。
在一实施方式中,所述预设语料库中的语料的来源可以是通过网络爬虫技术所抓取的大量新闻文章,提取模块101可以先利用实体清单和/或命名实体识别技术从获取的大量新闻文章中筛选出需进行情感分类的待处理语料(该待处理语料定义为所述目标文章),所筛选出来的待处理语料可以是指需要关注的一些公司、个人的相关新闻,其他无需进行情感分类的语料可以直接剔除。
在一实施方式中,提取模块101还可以利用预设剔除规则将多个所述目标文章中包含的特定属性文章剔除,其中所述特定属性文章至少包括低质量文章及领域无关文章。
可以理解,经过初步筛选的待处理语料中可能仍含有广告等低质量文章或者无关文章,此时可以利用已知的低质量文章特征词和/或关键词对其进行进一步筛选,达到文章初步清洗的效果。具体地,提取模块101可以利用低质量文章关键词、模式匹配等处理方式从待处理语料中筛出低质量文章及与领域无关文章,并进行剔除。所述模式匹配可以是对初步筛选出包含特定实体关键字的文章进行进一步限定来进行更精确筛选。举例而言,在筛选的实体清单中均有一个关键词“招商局”,筛选出来的目标文章是指与招商局集团相关的文章,并不包括地方性招商局(政府部门),因此,可以利用模式匹配剔除关键词前面具有特定限定词“<省|市|区|县|镇>”的文章,从而达到剔除地方性招商局等领域无关文章的目的。
在一实施方式中,提取模块101还可以利用训练好的分类器对低质量、领域无关文章进行筛选识别,或者利用聚类算法筛选出这类文章。
分类模块102用于利用预先建立的情感分词词典对每一所述目标文章的语句进行情感分类。
在一实施方式中,所述情感分词词典可以包括正/负面情感词典、程度词词典和否定词词典。所述正/负面情感词典可以指带有情感强度的情感词和情感短语。所述程度词词典可以包括加强词和减弱词,如“非常、很、轻微”等词。所述否定词词典可以包括“不、没有、一点也不”等词。分类模块102可以利用所述情感分词词典对每一所述目标文章中的每一语句进行情感分类。
举例而言,可以将情感强度的取值设定为1~5的整数,情感强度越强,取值越大。将加强词程度的取值范围设定为(1,2),将减弱词程度的取值范围设定为(0,1)。将否定程度的取值范围设定为1~10的整数。
评分模块103用于根据所述语句的情感分类结果对每一所述目标文章的语句进行情感打分。
在一实施方式中,若所述目标文章的语句中出现情感词w,其对应的情感强度为s,其前面出现的程度词分数为a,否定词的分数为b,则这一语句对应的情感倾向值p可通过以下公式计算得到:p=s*a-b。
举例而言,在一语句“其实他并不非常优秀”中,“优秀”是正面情感词,情感强度为4,“非常”是加强词,加强程度为1.8,“并不”是否定词,其否定程度为5,因此该语句的情感倾向值为:4*1.8-5=2.2。
在一实施方式中,语句中带有否定词并不是表达完全反面的情感,因此对于否定词的处理,评分模块103并不是直接将情感值取反处理,而是对情感值作相应减弱。举例而言,“非常优秀”的情感值为7.2,若因为前面的“并不”而直接取反,情感值就会变成-7.2,但这句话并没有表达强烈的负面情感,判定其情感值为-7.2显然是不合理的,可以根据“并不”的否定程度将情感值减5,得到最终的情感倾向值2.2,可更加符合语句实际表达的情感倾向及程度。
在一实施方式中,当一句话中同时出现了正面情感词和负面情感词时,由于程度词和否定词不一定出现在情感词的前面,因此难以定位它们对应的是哪个情感词,无法对其进行判断和打分,此时评分模块103可以直接对该语句进行舍弃,以免影响打分质量。
第一处理模块104用于基于每一所述目标文章中的语句的情感打分情况得到每一所述目标文章的情感分类结果。
在一实施方式中,目标文章的情感分类结果可以是文章正文的情感分类结果。目标文章的情感分类结果还可以是文章标题与文章正文的分类结果的汇总,比如可以对文章标题的情感分类及文章正文的情感分类结果分别赋予不同的权重,再计算得到目标文章的最终情感分类结果。
在一实施方式中,第一处理模块104基于每一所述目标文章中的语句的情感打分情况得到每一所述目标文章的情感分类结果的具体实施方式可以包括:第一处理模块104基于所述目标文章中的语句的情感打分情况计算得到一正面情感分数及一负面情感分数,再根据所述正面情感分数及所述负面情感分数得到所述目标文章的情感分类结果。
在一实施方式中,第一处理模块104可以基于对每一所述目标文章每一语句的情感打分情况计算所述目标文章的一个正面情感分数Spos和一个负面情感分数Sneg,并根据所述正面情感分数Spos和所述负面情感分数Sneg得到所述目标文章的情感分类结果。
举例而言,假设一篇目标文章包括n条语句,将该篇目标文章中每句话的情感强烈程度从前往后标记为s1,s2,...,sn,情感倾向标记为I1,I2,...,In,且si≥0,Ii∈[-1,0,1],i=1,2,...,n。将Ii=±1的下标集合分别标记为I+、I-,可以通过下列公式计算得到目标文章正面情感分数Spos和负面情感分数Sneg:
由上可以看出每个情感分数可以由两个部分相乘得到。利用上述公式得到目标文章的正面情感分数Spos和负面情感分数Sneg。在Spos中,第一个部分表示所有的正面情感句的情感强度si在通过函数f(x)转换后的代数平均值。f(x)可以用来调整不同情感强度之间的差异,例如取f(x)=x2使得情感强度更高的句子对于均值的影响更大。第二个部分表示包含正面情感的语句在全文篇幅中的占比,可以通过g(x)进行平滑化。由于文章中切实表达主观情感的篇幅可能会少于简单陈述客观事实的篇幅,因此包含情感的语句在全文中的占比相对较低,其函数曲线满足:随x的增大,g(x)的增大幅度变缓,于是可以取g(x)=x1/3。
在一实施方式中,在对目标文章进行情感分类时,除了正、负、中三种情感标签,还增加了一种情感标签:混合情感,这一类文章既表达了一定程度的正面情感,又表达了一定程度的负面情感,即正负情感倾向不明确。可以理解,混合情感和中性情感不同,中性情感大多是客观的描述,不带有太多情感词汇,而混合情感则带有较多情感词汇,但其最终倾向不明确。因此,为了更精准地分析目标文章情感,加入了混合情感这一情感标签,可以提升分类准确率,达到更准确分析目标文章情感的目的。
在一实施方式中,设定一个情感高阈值th和一个情感低阈值tl,若正面情感分数Spos和负面情感分数Sneg均大于高阈值th,则目标文章被判定为混合情感。若正面情感分数Spos和负面情感分数Sneg均小于低阈值tl,则目标文章被判定为中性情感。在前两个条件均不成立时,若正面情感分数Spos大于负面情感分数Sneg时,则目标文章被判定为正面情感,否则目标文章被判定为负面情感。
预处理模块105用于对每一所述目标文章进行预设方式处理,以得到分词后的文本数据。
在一实施方式中,对于所述预设语料库中的每一目标文章,预处理模块105可以进行预设方式处理得到文本数据。所述预设方式处理可以包括分词、去停用词、词性标注等。比如,可以采用Jieba分词工具对经过剔除处理后的预设语料库中的语料进行分词、去停用词、词性标注,以得到文本数据,所述文本数据可以包含多个分词。
训练模块106用于根据每一所述目标文章的文本数据和每一所述目标文章的情感分类结果得到带有情感分类标签的训练数据,并基于所述训练数据训练得到情感分类模型。
在一实施方式中,可以根据每一所述目标文章的文本数据和每一所述目标文章的情感分类结果构建带有情感分类标签的训练数据,训练模块106可以基于所述训练数据训练得到情感分类模型。
在一实施方式中,训练模块106基于所述训练数据训练得到情感分类模型的具体方式可以包括:训练模块106利用所述训练数据对连接有Softmax层的文章向量生成模型进行训练,得到所述情感分类模型;其中,所述文章向量生成模型至少包括Doc2vec模型。
在一实施方式中,利用大量训练数据基于Doc2vec模型生成文章向量,训练数据越大,得到的情感分类模型对目标文章语义的表达越充分。当得到文章向量后,将文章向量作为神经网络训练层的输入,将目标文章对应的情感标签作为输出,进行模型训练得到情感分类模型。比如,Doc2vec模型训练数据为从网络获取的134万篇新闻文章。
在一实施方式中,在训练前,可以预加载FastText利用大量中文数据预训练得到的200w个词向量,词向量可以在一定程度上表征词语之间的语义关系,有助于doc2vec模型得到更好的文章向量表达。
在一实施方式中,当得到带有情感分类标签的训练数据时,还可以对所述带有情感分类标签的训练数据进行均衡性操作;其中,所述均衡性操作至少包括对所述情感分类标签中占比小的情感分类标签的数据进行复制扩充,以均衡每一所述情感分类标签的训练数据。
在一实施方式中,在训练前还可以对所述带有情感分类标签的训练数据进行均衡性操作,对情感分类标签中占比少的训练数据进行复制扩充,以保证训练数据分布的均衡性。对训练数据进行复制扩充可以采用基础的扩充方法:直接复制数据量少的标签数据,使得各标签的训练数据比例相同,训练数据扩充原则为尽量保证随机。
举例而言,正/中/负/混合情感标签的数据比例为3:10:1:0.2,则可以将正面情感数据扩充3倍后,再随机抽取原始正面情感数据的三分之一,使得正面情感数据量等于中性情感数据量;再将负面情感数据扩充10倍,混合情感扩充50倍即可。
在一实施方式中,由于对不同情感倾向的新闻数据关注程度不一样,实际情况更关注负面情感的新闻,因此负面情感文章分类错误的代价更大。基于此,可以对损失函数的计算进行优化处理,具体做法为在模型训练过程中加入了一个损失函数权重矩阵。
表1
预测值\实际值 | 正面情感 | 中性情感 | 负面情感 | 混合情感 |
正面情感 | 1 | 2 | 5 | 4 |
中性情感 | 2 | 1 | 4 | 4 |
负面情感 | 3 | 3 | 1 | 3 |
混合情感 | 3 | 3 | 4 | 1 |
如上表1所示,一篇正面情感文章被预测为中性情感,其惩罚系数为2,而若被预测为负面情感或者混合情感,则惩罚系数为3;一篇负面情感文章被预测为正面情感,其惩罚系数为5,而被预测为中性情感或者混合情感,则惩罚系数为4,依此类推。
在本实施例中,所述损失函数可以为交叉熵损失函数,结合权重矩阵,具体的计算公式为:
H=-wi∑iy'i log(yi);
其中,对于每一个训练数据,对应的四种预测类别i,yi是softmax预测为该类别概率,y'i表示实际是否属于该类别,wi为预测为该类别对应的惩罚系数。
举例而言,对于一篇负面情感的新闻,若其输出表示为(0,0,1,0),经过softmax层输出后的概率分布为(0.2,0.4,0.2,0.2),则其交叉熵权重损失为:-4×(0+0+1×log(0.2)+0)=-4log(0.2)。
在一实施方式中,使用加了权重矩阵的损失函数,使得负面情感和混合情感文章的准确率分别由87%、82%上升到94%、88%,更好地提升了重要文章的分类准确率。
修正模块107用于获取所述情感分类模型的错误分类结果,并根据所述错误分类结果对所述训练数据进行修正,以基于修正后的训练数据对所述情感分类模型进行修正。
在一实施方式中,由于情感分类词典的有限性,不可能穷举出所有的正负面情感词汇,因此利用情感分类词典对目标文章进行情感分类可能存在一定的错误分类。可以理解,利用doc2vec生成文章向量时,利用了大量预训练语料的语义信息,在一定程度上表征了词汇的正负面情感,因此,部分误分类文章在通过神经网络分类器时,预测得到了实际正确的分类结果。修正模块107通过修正这一部分训练数据,并利用修正后的训练数据对情感分类模型进行修正,可以得到更准确的情感分类模型。所述修正可以是指利用修正后的训练数据对情感分类模型进行修正训练,也可以是指利用包含修正后的训练数据对连接有Softmax层的文章向量生成模型进行重新训练得到所述情感分类模型。
第二处理模块108用于利用所述情感分类模型对待处理文章进行情感分类。
在一实施方式中,当所述情感分类模型结束模型训练后,即可利用所述情感分类模型对待处理文章进行情感分类,所述情感分类模型的输入为待处理文章,所述情感分类模型的输出为所述待处理文章的情感分类结果。
组成模块109用于提取所述待处理文章的情感句,并对所述待处理文章的情感句进行打分,以根据预设摘要组成条件筛选出目标情感句组成所述待处理文章的情感摘要。
在一实施方式中,当利用所述情感分类模型对待处理文章进行情感分类后,提取待处理文章的情感句,所述情感句可以是包含情感关键词且以中文句号、问号、感叹号分隔的语句。组成模块109可以提取待处理文章的情感句后对所述待处理文章的情感句进行打分,以根据预设摘要组成条件筛选出合适的情感句(目标情感句)组成所述待处理文章的情感摘要。例如:对于正面情感文章,所述预设摘要组成条件可以是选取正面情感倾向值前三的情感句组成所述待处理文章的情感摘要;对于负面情感文章,所述预设摘要组成条件可以是选取负面情感倾向值前三的情感句组成所述待处理文章的情感摘要;对于中性情感文章,所述预设摘要组成条件可以是选取情感倾向值前三的情感句组成所述待处理文章的情感摘要;对于混合情感文章,所述预设摘要组成条件可以是选取正面情感倾向值前二和负面情感倾向值前二的情感句组成所述待处理文章的情感摘要。当按上述规则确定情感句后,可以按照它们在所述待处理文章中出现的顺序拼接起来,以作为所述待处理文章的情感摘要。
在一实施方式中,所述预设摘要组成条件还可以是与所述待处理文章内容相关的情感句。例如,所述预设摘要组成条件可以是优先选择包含所述待处理文章的主体内容的情感句。所述主体内容可以是人名、地名、机构名称等,这些情感句最好能直接表现所述待处理文章所体现的情感内容。
在一实施方式中,所述预设摘要组成条件还可以与情感句在所述待处理文章中所处位置相关。例如,所述预设摘要组成条件可以是优先选择在所述待处理文章的开头或者结尾部分的情感句。因为开头和结尾一般对于全文具有一定的概括性和总结性,相比文章中间部分的情感句对于理解全文的帮助更加直观。
在一实施方式中,情感摘要的生成可以不用将多句选中的情感句进行拼接,而直接选取最合适的某一情感句作为情感摘要。所述最合适的情感句可以是情感倾向值最高的情感句,还可以是包括文章主体内容且情感倾向值不低的情感句,可以通过文章主体内容与情感倾向值加权运算得到。
在一实施方式中,情感摘要的内容一般限制在一定的字数内或一定的句数内,使得后续再对文章进行搜索时搜索结果不会显得逼仄臃肿,避免了影响排版布局降低用户体验;同时,用户可以通过阅读情感摘要,快速地了解到文章情感分类的细节表述,以及部分文章正文的具体内容。
在一实施方式中,当将所述情感分类模型部署到搜索引擎上时,搜索引擎可以根据接收到的文章搜索条件返回与所述文章搜索条件匹配的文章排序页面,其中所述文章排序页面按照情感分数高低进行排序,所述文章排序页面中的文章包含有所述情感摘要。
在一实施方式中,搜索引擎的主要框架可以搭建在ES平台上,每一篇文章以多个字段组成的整体的模式保存在ES数据库中,组成的字段部分包括:标题,来源与作者,来源与作者评分,正文内容,发布时间,情感倾向,情感打分,情感摘要。所述搜索条件可以包括情感打分结果、作者评分结果等。搜索规则可以是对每篇文章进行打分,根据打分结果从高到底进行排序输出。
在一实施方式中,情感搜索的主要维度是情感,但是其他的属性也是重要的参考,因此在自定义ES搜索规则时,除了情感打分外,可以依旧赋予每个重要属性一定的权重,包括正文内容与搜索内容匹配度、来源于作者评分以及发布时间与搜索时间差值等,进而可以根据这些综合打分结果从高到底进行排序输出。
在一实施方式中,每一篇搜索得到的新闻文章除了常规的标题、来源与作者以及发布时间外,还可以展示文章的情感摘要,使得用户可以不用通过阅读全文去寻找作者表达个人情感或观点的内容,快速地了解到文章情感分类的细节表述,以及部分文章正文的具体内容。可以根据搜索得到的结果数据结合搜索条件对数据进行图形展示。
举例而言,选取预设语料库中的一篇目标文章详述分析过程:
目标文章标题为:《XX再现用户隐私泄露,平台方不该推诿》
通过情感分类词典和情感分类器的分类结果均为负面情感,目标文章中的情感句有:
1:“用户隐私泄露是大顽疾”;
2:“快递行业的隐私泄露危害尤甚”;
3:“会对用户造成直接的不可逆的风险”;
4:“对用户造成潜在风险”;
5:“没有真诚自我反省”;
6:“反而甩锅给一个社交产品”;
7:“更令用户失望的是”;
8:“但作为国内电商巨头的XX却屡现纰漏”;
9:“被曝光之后不是首先自省”;
10:“而且推诿塞责”。
对目标文章语句统计得到:文章的总句数为56句,其中正面情感句数量为0,负面情感句数量为10。也即文章的情感句分数s1,s2,...,s56中有46个0,另外10个为6,5.6,2.6,2.4,2,3,3,5.1,3,4。
按照全文情感分的计算方式得到:
于是可以判定文章的整体情感分数为8.61,而情感倾向值为-1。下面生成文章情感摘要。
从标题中解析出的关键词有:XX、用户隐私。在情感句中查找,第1、2句中出现了用户,第1、3、4句中出现了隐私,第8句中出现了XX。另一方面,情感分最高的三个句子由高到低分别为第1、2、8句,结合两个打分考虑,目标文章的情感摘要为:“用户隐私泄露是大顽疾,快递行业的隐私泄露危害尤甚,但作为国内电商巨头的XX却屡现纰漏”。
可以看出,目标文章的情感摘要的效果令人满意,可以较好地表达目标文章主旨与情感倾向。用户在通过情感搜索查看到这篇文章时,就可以通过阅读情感摘要快速地对文章产生一个大致的了解。
上述文本情感分析装置,结合无监督的情感词典分类和有监督的深度学习分类,提升了文本情感分类效率及准确率,在文本情感分析模型训练过程中,对损失函数加入了权重矩阵优化,更好地提升了对重要文章的分类准确率,且利用分类结果优化模型训练数据,进一步实现优化模型情感分类的效果,可将文章中表达情感强烈的句子挑选出来作为文章摘要,并在搜索过程中按情感打分进行排序输出,使得情感强烈的文章排序更容易靠前,同时在结果中展示文章摘要,方便用户快速了解文章的具体情感表达。
图4为本发明计算机装置较佳实施例的示意图。
所述计算机装置1包括存储器20、处理器30以及存储在所述存储器20中并可在所述处理器30上运行的计算机程序40,例如文本情感分析程序。所述处理器30执行所述计算机程序40时实现上述文本情感分析方法实施例中的步骤,例如图1所示的步骤S11~S17,或图2所示的步骤S11~S19。或者,所述处理器30执行所述计算机程序40时实现上述文本情感分析装置实施例中各模块的功能,例如图3中的模块101~109。
示例性的,所述计算机程序40可以被分割成一个或多个模块/单元,所述一个或者多个模块/单元被存储在所述存储器20中,并由所述处理器30执行,以完成本发明。所述一个或多个模块/单元可以是能够完成特定功能的一系列计算机程序指令段,所述指令段用示例性的,所述计算机程序40可以被分割成一个或多个模块/单元,所述一个或者多个模块/单元被存储在所述存储器20中,并由所述处理器30执行,以完成本发明。所述一个或多个模块/单元可以是能够完成特定功能的一系列计算机程序指令段,所述指令段用于描述所述计算机程序40在所述计算机装置1中的执行过程。例如,所述计算机程序40可以被分割成图3中的提取模块101、分类模块102、评分模块103、第一处理模块104、预处理模块105、训练模块106、修正模块107、第二处理模块108及组成模块109。各模块具体功能参见实施例二。
所述计算机装置1可以是桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备。本领域技术人员可以理解,所述示意图仅仅是计算机装置1的示例,并不构成对计算机装置1的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例
如所述计算机装置1还可以包括输入输出设备、网络接入设备、总线等。
所称处理器30可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者所述处理器30也可以是任何常规的处理器等,所述处理器30是所述计算机装置1的控制中心,利用各种接口和线路连接整个计算机装置1的各个部分。所述存储器20可用于存储所述计算机程序40和/或模块/单元,所述处理器30通过运行或执行存储在所述存储器20内的计算机程序和/或模块/单元,以及调用存储在存储器20内的数据,实现所述计算机装置1的各种功能。所述存储器20可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作***、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据计算机装置1的使用所创建的数据(比如音频数据等)等。此外,存储器20可以包括高速随机存取存储器,还可以包括非易失性存储器,例如硬盘、内存、插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)、至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。
所述计算机装置1集成的模块/单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中,所述计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,所述计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括电载波信号和电信信号。
在本发明所提供的几个实施例中,应该理解到,所揭露的计算机装置和方法,可以通过其它的方式实现。例如,以上所描述的计算机装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
另外,在本发明各个实施例中的各功能单元可以集成在相同处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在相同单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能模块的形式实现。
对于本领域技术人员而言,显然本发明不限于上述示范性实施例的细节,而且在不背离本发明的精神或基本特征的情况下,能够以其他的具体形式实现本发明。因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本发明的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化涵括在本发明内。不应将权利要求中的任何附图标记视为限制所涉及的权利要求。此外,显然“包括”一词不排除其他单元或步骤,单数不排除复数。计算机装置权利要求中陈述的多个单元或计算机装置也可以由同一个单元或计算机装置通过软件或者硬件来实现。第一,第二等词语用来表示名称,而并不表示任何特定的顺序。
最后应说明的是,以上实施例仅用以说明本发明的技术方案而非限制,尽管参照较佳实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或等同替换,而不脱离本发明技术方案的精神和范围。
Claims (9)
1.一种文本情感分析方法,其特征在于,所述方法包括:
利用预设提取规则从预设语料库中提取多个目标文章;
利用预先建立的情感分词词典对每一所述目标文章的语句进行情感分类;
根据所述语句的情感分类结果对每一所述目标文章的语句进行情感打分;
基于每一所述目标文章中的语句的情感打分情况,通过第一算法计算得到每一所述目标文章的正面情感分数和第二算法计算得到每一所述目标文章的负面情感分数,所述第一算法为第二算法为其中,I+为正面情感语句,S+为对应正面情感语句的情感打分值,I-为负面情感语句,S-为对应负面情感语句的情感打分值,n为情感语句的总数;
根据所述正面情感分数及所述负面情感分数得到每一所述目标文章的情感分类结果;
对每一所述目标文章进行预设方式处理,以得到分词后的文本数据;
根据每一所述目标文章的文本数据和每一所述目标文章的情感分类结果得到带有情感分类标签的训练数据,并基于所述训练数据训练得到情感分类模型;及
利用所述情感分类模型对待处理文章进行情感分类。
2.如权利要求1所述的方法,其特征在于,所述利用预设提取规则从预设语料库中提取多个目标文章的步骤之后,还包括:
利用预设剔除规则将多个所述目标文章中包含的特定属性文章剔除,其中所述特定属性文章至少包括低质量文章及领域无关文章。
3.如权利要求1所述的方法,其特征在于,所述基于所述训练数据训练得到情感分类模型的步骤包括:
利用所述训练数据对连接有Softmax层的文章向量生成模型进行训练,得到所述情感分类模型;
其中,所述文章向量生成模型至少包括Doc2vec模型。
4.如权利要求3的方法,其特征在于,所述方法还包括:
对所述带有情感分类标签的训练数据进行均衡性操作;
其中,所述均衡性操作至少包括对所述情感分类标签中占比小的情感分类标签的数据进行复制扩充,以均衡每一所述情感分类标签的训练数据。
5.如权利要求1的方法,其特征在于,所述方法还包括:
获取所述情感分类模型的错误分类结果,并根据所述错误分类结果对所述训练数据进行修正;及
基于修正后的训练数据对所述情感分类模型进行修正。
6.如权利要求1的方法,其特征在于,所述方法还包括:
提取所述待处理文章的情感句,并对所述待处理文章的情感句进行打分,以根据预设摘要组成条件筛选出目标情感句组成所述待处理文章的情感摘要;及
根据接收到的文章搜索条件返回与所述文章搜索条件匹配的文章排序页面,其中所述文章排序页面按照情感分数高低进行排序,所述文章排序页面中的文章包含有所述情感摘要。
7.一种文本情感分析装置,其特征在于,所述装置包括:
提取模块,用于利用预设提取规则从预设语料库中提取多个目标文章;
分类模块,用于利用预先建立的情感分词词典对每一所述目标文章的语句进行情感分类;
评分模块,用于根据所述语句的情感分类结果对每一所述目标文章的语句进行情感打分;
第一处理模块,用于基于每一所述目标文章中的语句的情感打分情况,通过第一算法计算得到每一所述目标文章的正面情感分数和第二算法计算得到每一所述目标文章的负面情感分数,所述第一算法为第二算法为其中,I+为正面情感语句,S+为对应正面情感语句的情感打分值,I-为负面情感语句,S-为对应负面情感语句的情感打分值,n为情感语句的总数;
根据所述正面情感分数及所述负面情感分数得到每一所述目标文章的情感分类结果;
预处理模块,用于对每一所述目标文章进行预设方式处理,以得到分词后的文本数据;
训练模块,用于根据每一所述目标文章的文本数据和每一所述目标文章的情感分类结果得到带有情感分类标签的训练数据,并基于所述训练数据训练得到情感分类模型;及
第二处理模块,用于利用所述情感分类模型对待处理文章进行情感分类。
8.一种计算机装置,所述计算机装置包括处理器及存储器,所述存储器上存储有若干计算机程序,其特征在于,所述处理器用于执行所述存储器中存储的计算机程序时实现如权利要求1-6中任意一项所述的文本情感分析方法的步骤。
9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1-6中任意一项所述的文本情感分析方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010316601.9A CN111538828B (zh) | 2020-04-21 | 2020-04-21 | 文本情感分析方法、装置、计算机装置及可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010316601.9A CN111538828B (zh) | 2020-04-21 | 2020-04-21 | 文本情感分析方法、装置、计算机装置及可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111538828A CN111538828A (zh) | 2020-08-14 |
CN111538828B true CN111538828B (zh) | 2023-04-25 |
Family
ID=71979025
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010316601.9A Active CN111538828B (zh) | 2020-04-21 | 2020-04-21 | 文本情感分析方法、装置、计算机装置及可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111538828B (zh) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111985223A (zh) * | 2020-08-25 | 2020-11-24 | 武汉长江通信产业集团股份有限公司 | 一种基于长短记忆网络和情感词典结合的情感计算方法 |
CN112182210B (zh) * | 2020-09-25 | 2023-11-24 | 四川华空天行科技有限公司 | 基于作文论据特征分类器的语言生成模型及写作支持方法 |
CN112559740A (zh) * | 2020-12-03 | 2021-03-26 | 星宏传媒有限公司 | 一种基于多模型融合的广告标签分类方法、***及设备 |
CN112612895B (zh) * | 2020-12-29 | 2021-12-07 | 中科院计算技术研究所大数据研究院 | 一种主体话题态度指数的计算方法 |
CN112818681B (zh) * | 2020-12-31 | 2023-11-10 | 北京知因智慧科技有限公司 | 文本情感分析方法、***及电子设备 |
CN113535813B (zh) * | 2021-06-30 | 2023-07-28 | 北京百度网讯科技有限公司 | 一种数据挖掘方法、装置、电子设备以及存储介质 |
CN113705206B (zh) * | 2021-08-13 | 2023-01-03 | 北京百度网讯科技有限公司 | 情感预测模型的训练方法、装置、设备及存储介质 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108197109A (zh) * | 2017-12-29 | 2018-06-22 | 北京百分点信息科技有限公司 | 一种基于自然语言处理的多语言分析方法和装置 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109145215B (zh) * | 2018-08-29 | 2023-11-07 | 中国平安保险(集团)股份有限公司 | 网络舆情分析方法、装置及存储介质 |
CN110134947B (zh) * | 2019-04-17 | 2021-03-26 | 中国科学院计算技术研究所 | 一种基于不平衡多源数据的情感分类方法及*** |
CN110287405B (zh) * | 2019-05-21 | 2021-06-01 | 百度在线网络技术(北京)有限公司 | 情感分析的方法、装置和存储介质 |
CN110941963A (zh) * | 2019-11-29 | 2020-03-31 | 福州大学 | 一种基于句子情感属性的文本属性生成观点摘要方法与*** |
-
2020
- 2020-04-21 CN CN202010316601.9A patent/CN111538828B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108197109A (zh) * | 2017-12-29 | 2018-06-22 | 北京百分点信息科技有限公司 | 一种基于自然语言处理的多语言分析方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
CN111538828A (zh) | 2020-08-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111538828B (zh) | 文本情感分析方法、装置、计算机装置及可读存储介质 | |
Kumar et al. | Sentiment analysis of multimodal twitter data | |
Marie-Sainte et al. | Firefly algorithm based feature selection for Arabic text classification | |
Alami et al. | Enhancing unsupervised neural networks based text summarization with word embedding and ensemble learning | |
Kausar et al. | A sentiment polarity categorization technique for online product reviews | |
Spolaôr et al. | A systematic review on content-based video retrieval | |
Saeed et al. | An ensemble approach for spam detection in Arabic opinion texts | |
Dave et al. | Mining the peanut gallery: Opinion extraction and semantic classification of product reviews | |
US8676730B2 (en) | Sentiment classifiers based on feature extraction | |
Zhang et al. | Sentiment Classification Based on Piecewise Pooling Convolutional Neural Network. | |
Raychev et al. | Language-independent sentiment analysis using subjectivity and positional information | |
CN107423371B (zh) | 一种文本正负类情感分类方法 | |
CN107391565B (zh) | 一种基于主题模型的跨语言层次分类体系匹配方法 | |
CN107818173B (zh) | 一种基于向量空间模型的中文虚假评论过滤方法 | |
Smitha et al. | Meme classification using textual and visual features | |
Reddy et al. | Classification of user’s review using modified logistic regression technique | |
Ghorbanali et al. | A comprehensive survey on deep learning-based approaches for multimodal sentiment analysis | |
Dwivedi et al. | Examining the emotional tone in politically polarized Speeches in India: An In-Depth analysis of two contrasting perspectives | |
Haider et al. | Corporate news classification and valence prediction: A supervised approach | |
Zin et al. | Term weighting scheme effect in sentiment analysis of online movie reviews | |
CN117235253A (zh) | 一种基于自然语言处理技术的卡车用户隐性需求挖掘方法 | |
Yafooz et al. | Enhancing multi-class web video categorization model using machine and deep learning approaches | |
CN107729509A (zh) | 基于隐性高维分布式特征表示的篇章相似度判定方法 | |
Podgorny et al. | Semi-Automated Prevention and Curation of Duplicate Content in Social Support Systems. | |
Ameur et al. | Domain adaptation approach for Arabic sarcasm detection in hotel reviews based on hybrid learning |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |