©原创作者 | 双鸭山学长

摘要:

文本情感分析是自然语言处理领域的一个重要分支,广泛应用于舆情分析和内容推荐等方面,是近年来的研究热点。根据使用的不同方法,将其划分为基于情感词典的情感分析方法、基于传统机器学习的情感分析方法、基于深度学习的情感分析方法。通过对这三种方法进行对比,分析其研究成果,并对不同方法的优缺点进行归纳总结。

01 文本情感分析介绍

输入一段文字,然后电子系统自动反馈给你这段文字有怎样的情感导向,是正面积极的评价还是负面消极的吐槽,这种神奇的功能就是文本情感分析,又 称 意 见 挖 掘(Opinion Min-ing),是指对带有情感色彩的主观性文本进行采集、处理、分析、归纳和推理的过程,涉及到人工智能、机器学习、数据挖掘、自然语言处理等多个研究领域。

文本情感分析在当下信息产业时代具有重要作用:在舆情分析方面,通过对热点事件进行情感剖析,寻找情感原因,对政府了解民意,预防危害事件的发生具有一定的意义;在情感对话方面,情感机器人可以抚慰心灵,充当情感陪护的角色;在商品和服务评论分析方面,对评价对象和评价表达进行抽取,识别评论中的情感倾向性,对消费者挑选商品,商家改进商品/服务具有一定的辅助作用。

下面我们就来了解一下怎样进行情感分析。

02 文本情感分析方法介绍

根据使用的不同方法,将情感分析方法分为:基于情感词典的情感分析方法、基于传统机器学习的情感分析方法、基于深度学习的情感分析方法。情感分析方法如图1所示:

图1

2.1 情感词典方法

基于情感词典的方法,是指根据不同情感词典所提供的情感词的情感极性,来实现不同粒度下的情感极性划分,该方法的一般流程如图2所示,常见的情感词典如表1所示:

图2

表1

首先是将文本输入,通过对数据的预处理(包含去噪、去除无效字符等),接着进行分词操作,然后将情感词典中的不同类型和程度的词语放入模型中进行训练,最后根据情感判断规则将情感类型输出。

现有的情感词典大部分都是人工构造,按照划分的不同粒度,现有的情感分析任务可以划分为词、短语、属性、句子、篇章等级别。

人工构建情感词典需要花费很大的代价,需要阅读大量的相关资料和现有的词典,通过总结概括含有情感倾向的词语,并对这些词语的情感极性和强度进行不同程度的标注。

优缺点:基于情感词典的方法可以准确反映文本的非结构化特征,易于分析和理解。在这种方法中,当情感词覆盖率和准确率高的情况下,情感分类效果比较准确。

但这种方法仍然存在一定的缺陷:基于情感词典的情感分类方法主要依赖于情感词典的构建,但由于现阶段网络的快速发展,信息更新速度的加快,出现了许多网络新词,对于许多类似于歇后语、成语或网络特殊用语等新词的的识别并不能有很好的效果,现有的情感词典需要不断地扩充才能满足需要;情感词典中的同一情感词可能在不同时间、不同语言或不同领域中所表达的含义不同,因此基于情感词典的方法在跨领域和跨语言中的效果不是很理想;在使用情感词典进行情感分类时,往往考虑不到上下文之间的语义关系。

因此对基于情感词典的方法还需要更多的学者进行充分的研究。

2.2 基于传统机器学习的方法

机器学习是一种通过给定的数据训练模型,通过模型预测结果的一种学习方法。该方法研究至今,已经取得了诸多有效的成果。

基于机器学习的情感分析方法是指通过大量有标注的或无标注的语料,使用统计机器学习算法,抽取特征,最后在进行情感分析输出结果。

基于机器学习的情感分类方法主要分为三类:有监督、半监督和无监督的方法。

在有监督方法中,通过给定带有情绪极性的样本集,可以分类得到不同的情感类别。有监督的方法对数据样本的依赖程度较高,在人工标记和处理数据样本上花费的时间较多。常见的有监督的方法有:KNN、朴素贝叶斯、SVM。

在半监督方法中,通过对未标记的文本进行特征提取可以有效地改善文本情感分类结果,这种方法可以有效解决带有标记的数据集稀缺的问题。

在无监督方法中,根据文本间的相似性对未标记的文本进行分类,这种方法在情感分析中使用较少。

优缺点:基于传统机器学习的情感分类方法主要在于情感特征的提取以及分类器的组合选择,不同分类器的组合选择对情感分析的结果有存在一定的影响,这类方法在对文本内容进行情感分析时常常不能充分利用上下文文本的语境信息,存在忽略上下文语义的问题,因此其分类准确性有一定的影响。

下面表2为基于机器学习方法的情感分析的实验结果。

表2

2.3 基于深度学习的情感分析方法

基于深度学习的情感分析方法是使用神经网络来进行的,典型的神经网络学习方法有:卷积神经网络(Convolutional Neural Network,CNN)、递 归 神 经 网 络 (Recurrent Neural Network,RNN)、长短时记忆(Long Short-Term Memory,LSTM)网络等。

通过对基于深度学习的情感分析方法细分,可以分为:单一神经网络的情感分析方法、混合(组合、融合)神经网络的情感分析方法,引入注意力机制的情感分析和使用预训练模型的情感分析。

单一神经网络的情感分析:2003年Bengio等人提出了神经网络语言模型,该语言模型使用了一个三层前馈神经网络来建模。神经网络主要由输入层、隐藏层、输出层构成。

在该网络的输入层的每个神经元代表一个特质,隐藏层层数及隐藏层神经元是由人工设定,输出层代表分类标签的个数,一个基本的三层神经网络如图3所示。

语言模型的本质就是根据上下文信息来预测下一个词的内容,而不依赖人工标注语料,由此可以发现语言模型的优势就是能从大规模的语料中学习丰富的知识。

这种方法能够有效解决基于传统情感分析方法中忽略上下文语义的问题。

图3

混合(组合、融合)神经网络的情感分析:除了对单一神经网络的方法的研究之外,有不少学者在考虑了不同方法的优点后将这些方法进行组合和改进,并将其用于情感分析方面。

和使用基于情感词典和传统机器学习的情感分析方法相比,采用神经网络的方法在文本特征学习方面有显著优势,能主动学习特征,并对文本中的词语的信息主动保留,从而更好地提取到相应词语的语义信息,来有效实现文本的情感分类。

由于深度学习概念的提出,许多研究者不断对其探索,得到了不少的成果,因此基于深度学习的文本情感分类方法也在不断扩充。

引入注意力机制的情感分析:在神经网络的基础上,2006 年,Hinton 等人率先提出了深度学习的概念,通过深层网络模型学习数据中的关键信息,来反映数据的特征,从而提升学习的性能。

基于深度学习的方法是采用连续、低维度的向量来表示文档和词语,因此能有效解决数据稀疏的问题;此外,基于深度学习的方法属于端到端的方法,能自动提取文本特征,降低文本构建特征的复杂性。

深度学习方法除了在语音和图像领域取得了显著的成果以外,还在自然语言处理领域取得了重大进展,如机器翻译、文本分类、实体识别等,对文本情感分析方法的研究属于文本分类的一个小分支。

通过在深度学习的方法中加入注意力机制,用于情感分析任务的研究,能够更好地捕获上下文相关信息,提取语义信息,防止重要信息的丢失,可以有效提高文本情感分类的准确率。

现阶段的研究更多的是通过对预训练模型的微调和改进,从而更有效地提升实验的效果。

使用预训练模型的情感分析:预训练模型是指用数据集已经训练好的模型。通过对预训练模型的微调,可以实现较好的情感分类结果,因此最新的方法大多是使用预训练模型,最新的预训练模型有:ELMo、BERT、XL-NET、ALBERT等。

通过和传统方法相比,使用语言模型预训练的方法充分利用了大规模的单语语料,可以对一词多义进行建模,使用语言模型预训练的过程可以被看作是一个句子级别的上下文词表示。

通过对大规模语料预训练,使用一个统一的模型或者将特征加到一些简单的模型中,在很多NLP任务中取得了不错的效果,说明这种方法在缓解对模型结构的依赖问题上有明显的效果。

下面表3列举了基于深度学习方法的文本情感分析中的实验结果。

表3

未来对于自然语言处理的任务的研究将会更多,尤其是文本的情感挖掘方面。其中最新的情感分析方法大多基于对预训练模型的微调,并取得了较好的效果。

因此,可以预知未来的情感分析方法将更加专注于研究基于深度学习的方法,并且通过对预训练模型的微调,实现更好的情感分析效果。

下面表4是这几种情感分析方法的优缺点对比:

03 结语

可以预测在未来的自然语言处理领域中,文本数据的规模不断扩大,将深度学习用于情感分析是未来的研究趋势。从不同方法的发展趋势来看,未来文本情感分析的研究需要关注以下方面:

(1)通过对比不同的研究方法可以发现,现有的对于情感分析的研究方法多基于单一领域,如社交网络媒体平台weibo、酒店评论等,在个性化推荐中如何将多个领域的内容结合,进行情感分类,实现更好的推荐效果,并实现在提高模型的泛用性能,都是未来值得研究和探索的工作方向。

(2)大部分对于情感分析的研究多用于显式的文本情感分类问题,采用含有明显情感词的数据集,而对于某些隐式词的检测和分类效果不佳。现阶段对于隐式情感分析的研究还处于起步阶段,不是很充分,未来可以通过构建隐式情感词词典,或者通过使用更好的深度学习方法来更深层次地提取语义相关信息来实现更好的情感分类效果。

(3)对于复杂语句的情感分析研究需要进一步完善,当带有情感倾向的网络用语、歇后语、成语等越来越频繁地出现,尤其在文本中含有反讽或隐喻类的词时,情感极性的检测就会存在难度,这也需要进一步研究。

(4)多模态情感分析也是近来的研究热点,如何将多个模态中的情感信息进行提取和融合,是大家主要研究的方向,当多个模态中的情感表达不一致时,该如何权重不同模态中的情感信息也是需要考虑的;以及是否能考虑外部语义信息,这对情感分析的准确性是否有帮助,也是需要有大量的研究。

(5)在情感分析的子任务中,也能发现大多研究是基于简单二分类情感分析,实现多分类,更加细粒度的情感分析也是将来的研究热点。

(6)预训练模型是现阶段的研究热点,它能有效解决传统方法中存在的问题,如不能并行化计算的限制等,还能有效捕获词语之间的相互关系,并且通过微调就能在下游任务中实现较好的效果,但也会存在模型参数量大,训练时间较长的问题。如何在模型的参数量小,有效缩短训练时间的前提下,达到好的分类效果,也会是值得研究的方向。

情感分析是一项相当有意义的研究工作,有着广泛的应用前景,在将来会有更多有效的方法和成果。同时也希望本文能对感兴趣文本情感分析领域的学者给予一定的帮助。

参考文献

[1] 王婷,杨文忠.文本情感分析方法研究综述[J].计算机工程与应用,2021,57(12):11-24.

[2] 洪巍,李敏.文本情感分析方法研究综述[J].计算机工程与科学,2019,41(04):750-757.

文献链接:

https://docs.qq.com/s/kbNm9Kaujjd90VNLeSDQoq

私信我领取目标检测与R-CNN/数据分析的应用/电商数据分析/数据分析在医疗领域的应用/NLP学员项目展示/中文NLP的介绍与实际应用/NLP系列直播课/NLP前沿模型训练营等干货学习资源。

综述:一文带你了解情感分析的方法有几种相关推荐

  1. 提高方面级情感分析的性能:一种结合词汇图和句法图的方法

    ©PaperWeekly 原创 · 作者|张咪 学校|武汉大学硕士生 研究方向|情感分析.信息抽取等 本文介绍一篇发表于 EMNLP 2020 的论文<Convolution over Hier ...

  2. 综述:基于深度学习的情感分析

    近年来,深度学习有了突破性发展,NLP 领域里的情感分析任务逐渐引入了这种方法,并形成了很多业内最佳结果.本文中,来自领英与伊利诺伊大学芝加哥分校的研究人员对基于深度学习的情感分析研究进行了详细论述. ...

  3. 【跟着ChatGPT学深度学习】ChatGPT带我学情感分析

    ❤️觉得内容不错的话,欢迎点赞收藏加关注

  4. 多模态情感分析研究综述 论文笔记

    这里写目录标题 论文标题 引言 论文学术结构 1.总体介绍 2.介绍叙述式多模态情感分析 3.介绍交互式多模态情感分析 4.多模态情感分析存在的交互建模科学问题 5.结束语 阅读论文初体验 思维导图 ...

  5. NLP 实战:手把手带你搞定文本情感分析

    随着移动互联网的普及,很多人已经习惯于在网络上表达意见和建议.比如电商网站上对商品的评价.社交媒体中对品牌.产品.政策的评价等等.这些评价中都蕴含着巨大的商业价值.而对这种评价的分析就是情感分析的主要 ...

  6. Day 20: 斯坦福CoreNLP —— 用Java给Twitter进行情感分析

    今天学习如何使用斯坦福CoreNLP Java API来进行情感分析(sentiment analysis).前几天,我还写了一篇关于如何使用TextBlob API在Python里做情感分析,我已经 ...

  7. NLP研究方向的「情感分析领域」的简单调研

    情感分析领域相关内容,非正式综述,仅供参考.有些链接在可能在微信文章失效,请点击阅读原文获取. (https://blog.csdn.net/DoJintian/article/details/883 ...

  8. 基于AdaBoost算法的情感分析研究

    源码下载 http://www.byamd.xyz/hui-zong-1/ 基于AdaBoost算法的情感分析研究 摘 要 随着互联网的快速发展,各类社交媒体平台如微信.QQ等也与日俱增,而微博更是集 ...

  9. 中文情感分析 (Sentiment Analysis) 的难点在哪?现在做得比较好的有哪几家?

    点击上方,选择星标或置顶,每天给你送干货! 阅读大概需要25分钟 跟随小博主,每天进步一丢丢 来自: 知乎 编辑: 深度学习自然语言处理公众号 地址: https://www.zhihu.com/qu ...

最新文章

  1. 技术项目 - Linux Swap
  2. php oop 实际工作,PHP OOP注意点(一)
  3. 第六十节,文本元素标签
  4. macos mojave_如何修复macOS Mojave上的模糊字体(使用亚像素抗锯齿)
  5. 损失函数——交叉熵损失函数
  6. 鸿蒙硬件HI3861开发环境搭建-串口2测试
  7. 指针知识(四):指针数学计算
  8. 华为机试HJ77:火车进站
  9. 很多人都对3dB带宽有一定误解
  10. SQL server修改字段名,属性
  11. cad线加粗怎么设置_cad2016怎么把线加粗
  12. 2022年茶艺师(初级)考试试卷及茶艺师(初级)模拟试题
  13. Pandas中,使用reindex方法报错:index must be monotonic increasing or decreasing的分析
  14. DeepMind AI碾压《星际争霸2》人类职业玩家 但它还不完美
  15. tree | 分类回归树模型
  16. 行业分析是什么?该怎么做?
  17. [EGNN] Exploiting Edge Features for Graph Neural Networks 利用图神经网络的边特征 论文详解 CVPR 2019
  18. solr中英文分词模糊查询
  19. GAM做interaction时常见的报错及解决办法
  20. Java语言中po什么意思,java语言:PO,BO,VO和POJO的概念区别

热门文章

  1. CEVA-X16自由式编程-2-编写第一个“应用程序”
  2. 《Static Timing Analysis for Nanometer Designs》汇总传送门
  3. 2021年安全员-B证考试试卷及安全员-B证模拟考试题
  4. python音频颤音算法_数字音效算法的研究与实现
  5. springcloud中Gateway的限流熔断机制!
  6. 传感器课程作业创新项目申报书--高分辨率3D激光雷达
  7. Python里面数据库连接
  8. 挡不住了,中国芯片制造产业链的重大突破,5nm设备即将发给台积电
  9. 台积电先进制程布局:2020年量产5nm 2021年量产5+nm
  10. 【小伟玩DAPP】疯狂角斗士:NEO上第一款上线即凉格斗游戏