深度学习在情感分类中的应用

2023-11-12

  • 简介与背景

  • 情感分类及其作用

情感分类是情感分析的重要组成部分,情感分类是针对文本的情感倾向进行极性分类,分类数量可以是二分类(积极或消极),也可以是多分类(按情感表达的不同程度),情感分析在影音评论、商品评价、舆情分析、股民基金情感分析等都有重要的应用。对于社会舆论,研究人员通过情感分类对热点事件进行分析,寻找社会热点话题的爆发原因、判断后续发展,这对政府了解社会民意,预防危害事件的发生具有辅助支撑作用;对于智能问答,机器人或其他人机交互载体可以判断对话人的情感倾向,做出适配对华人情感的回答;在商品和服务评论分析方面,对评价对象和评价表达进行抽取,识别评论中的情感倾向性,对消费者挑选商品,商家改进商品/服务具有一定的辅助作用情感分类可以帮助研究机构、企业为用户建立画像,了解用户在购物、观影、运动等场景下的不同偏好,从而为客户推荐更符号客户心意的产品或服务。也可以帮助决策者建立针对舆情、股票等场景的辅助系统,帮助决策者做出判断。
  • 情感分类方法

根据使用的不同方法,可以将情感分类分为:基于情感词典的情感分类方法、基于机器学习的情感分类方法和基于深度学习的情感分类方法。
1、基于情感词典的情感分类方法
基于情感词典的方法,根据事先给定的情感词典所给出的情感词的情感极性,完成对文章、段落、句子、单词等不同粒度的文本的情感极性分类,常见的情感词典有:SentiwordNetNTUSD、知网Hownet、清华大学李军中文褒贬义词典等。基于情感词典的情感分类可以准确反映文本的单词情感极性,帮助使用者快速理解。但是基于情感词典的情感分类也有很多缺点,当情感词不能被完全覆盖的情况下,情感分类效果令人担忧。基于情感词典的情感分类方法依赖于选取的情感词典的健壮性,随着网络的快速发展,情感词典不能完全包括例如歇后语、成语、网络用语等新词;同时,同一情感词在不同时间、语境下的表达可能不同,这些问题制约了基于情感词典的情感分类的发展。
2、基于机器学习的情感分类方法
基于机器学习的情感分类方法,是让机器对给定的数据训练集,通过研究者给定的一种学习方法,进行学习、建模,达到可以预测文本情感极性的方法,随着计算机性能的提升,基于机器学习的情感分类方法取得了诸多有效成果。

  • 基于深度学习的情感分类方法研究现状

  • 面向情感分类的深度学习架构

1、基于BiLSTM的的情感分类模型

XU等人提出了一种改进的词表示方法,将情感信息整合到传统的TF-IDF算法中生成加权词向量,并将加权词向量输入到BiLSTM中,捕获文本上下文信息,达到更好地表示文本向量的目的。

传统的神经网络模型信息只能向前传播,t的状态只依赖于时间t之前的信息。为了使每个时刻都包含上下文信息,XU等人采用了双向RNN模型和LSTM单元相结合的BiLSTM来捕获上下文信息。在左图中,首先构建了包含情感信息和分类贡献的加权词向量。首先,将加权词向量作为BiLSTM的输入,BiLSTM模型的输出为输入文本的表示。然后,将评论文本向量输入前馈神经网络分类器。最后,得到评论的情感倾向。其中,前馈神经网络的激活函数为ReLU函数,NodeNum为LSTM隐层的节点数,同时为了防止过拟合,XU等人引入dropout机制,并将dropout的丢弃率设置为0.5。

2、SLCABG模型

YANG等人基于情感词,结合CNN和BiGRU,提出了一种新的情感分析模型SLCABG。SLCABG结合了情感词和深度学习技术的优点,首先,利用情感词汇增强评论的情感特征,然后利用CNN和GRU网络提取评论中的主要情感特征和语境特征,并利用注意机制进行权重。最后对加权的情感特征进行分类。

SLCABG模型包含嵌入层、卷积层、池化层、BiGRU层、注意层和全连接层。模型结构如图1所示。嵌入层使用BERT模型将文本表示为一个加权词向量矩阵,使用情感权重对单词向量进行加权;卷积层的主要功能是提取输入矩阵中最重要的局部特征。池化层对卷积层得到的文本特征进行压缩,进行更深一步的特征提取,YANG等人认为在一个句子中影响最大的往往是几个单词或短语,因此使用k-max pooling进行特征提取。

3、ABCDM模型

Mohammad Ehsan Basiri等人提出了一种新的深度模型ABCDM。ABCDM使用嵌入、BiGRU、BiLSTM、注意力机制和CNN捕获长依赖关系和局部特征。首先在嵌入层使用Bi-LSTM和Bi-GRU两个并行层对任意的文本序列进行处理,提取文本的长依赖关系和后向信息。之后将注意机制应用于htLSTM和htGRU,使ABCDM能够对文本中的不同单词进行注意力加权。最后,对重要权重进行加权和,将其聚合为评论向量。同时,利用CNN提取信息局部特征,降低输入数据的维数。模型最后数据输出至具有sigmoid函数的全连接层进行分类。ABCDM架构如下图所示:

  • 基于深度学习的情感分类方法论述

Faisal Alshuwaier等人对深度学习方法进行文献综述,对情感分类技术的最新进展进行调查,发现递归神经网络、深度信念网络、领域-对抗网络模型和混合神经网络在情感分类方面效果显著。Anisha P Rodrigues等人认为基于情感分类判断推特推文是否为垃圾信息。首先提取推文特征并分类,而后使用决策树、逻辑回归、多项式纳乌夫贝叶斯、支持向量机、随机森林和贝叶斯等机器学习方法进行垃圾邮件检测,之后使用RNN、LSTM、BiLSTM和CNN进行情感分类,其中隶属于RNN的深度学习模型LSTM的验证准确率达到了98.74%。

Anirban Adak等人研究了机器学习和深度学习在预测情感分类方面的工作,他们认为基于词法和机器学习的情感分类广泛使用但是由于缺乏可解释性,深度学习技术使用有限,但是也没有否认深度学习模型具有良好的性能,Anirban Adak等人认为基于深度学习的情感分类模型下一步工作应该使模型更具解释性。

Chetanpal Singh等人提出了一种基于LSTM-RNN的深度学习方法,用于分析与COVID-19相关的推特数据。该算法基于现有的LSTM-RNN模型,使用增强的注意力机制特征转换框架加强特征权重,与现有方法相比,本方法准确率提高了20%,可以实现对新冠肺炎疫情评论的情感分类。

RAJ PAREKH等人提出了一种DL-Gues框架进行加密货币价格预测,该框架首先对数据进行归一化处理,然后将预测价格作为过去w天加密货币价格的输入保存到模型中,预测w+1天的价格,直到迭代次数等于预测窗口长度,此外,该模型使用基于GRU和LSTM的混合模型解决梯度消失问题。

Ahmed Alsayat使用自定义深度学习模型,结合词嵌入,建立基于词嵌入和LSTM网络的鲁棒框架,学习单词之间的上下文关系,理解冠状病毒等相对新兴单词。加入对新兴词的权重提高情感分类精度,通过模型在亚马逊和Yelp数据集的实验可以证明,提出的模型的性能在分类精度方面优于其他模型。

  • 使用Cornell情感分类数据集进行的情感分类方法

Sourav Das等人提出了一种利用深度神经网络进行情感评估准确性的新方法——构建了一个深度CNN架构,能够将具有情感标记的词向量作为输入,通过调整学习率和减少输入数据的向量维度来防止过拟合,提供一个有限维度的矩阵帮助池化层学习到最好的数据特征,通过在Cornell情感分类数据集等几个流行的开源文本语料库进行测试发现,Sourav Das等人提出的模型保持了整体性能的稳定性。

Erik Cambria等人提出了一个基于常识的神经符号框架——SenticNet 7,首先,通过词汇替代的方法发现近义词集合,其次,计算近义词的情感相似性,为每个近义词集选定最具代表性的术语命名,最后,通过研究各对立基元对之间的多维路径,进一步细化基元集。SenticNet 7采用了无监督和可再现的次符号技术,如自动回归语言模型,将自然语言转换为一种原始语言,从而以完全可解释和解释的方式从文本中提取情感极性。SenticNet 7评估了包括Cornell情感分类数据集在内的多个情感分类数据集,SenticNet 7丰富的单词特征提取能力使得其显示了较好的准确性。

Rabeeh Karimi Mahabadi等人提出了PERFECT模型,在不依赖任何人工处理的情况下对预训练掩码语言模型进行少次微调,在微调期间学习新的多标记标签嵌入,使得嵌入不仅可以从有限的数据中学习,而且可以使训练和预测速度有效提升。在Cornell情感分类数据集中的实验表明,PERFECT在简单高效的同时,也优于现有的其他方法。

  • 关于方法和参考文献的讨论

1、面向情感分类的深度学习架构

本文分析的3个面向情感分类的深度学习架构参考文献信息为:

2、基于深度学习的情感分类方法论述

本文分析的5个基于深度学习的情感分类方法论述参考文献信息为:

3、使用Cornell情感分类数据集进行的情感分类方法

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

深度学习在情感分类中的应用 的相关文章

随机推荐

  • cloudfoundry简介

    cloudfoundry 负载均衡 对Router做负载均衡不属于Cloud Foundry的实现范围 Cloud Foundry只须保证所有Router都可以处理任何请求 而管理员可用DNS实现负载均衡 也可部署专用硬件来实现 或者简单点
  • Shell脚本中$0、$?、$!、$$、$*、$#、$@等符号的意义

    0 Shell本身的文件名 Shell最后运行的后台进程PID 当前脚本运行的进程PID 执行上一个指令的返回值 显示最后命令的退出状态 0表示没有错误 其他任何值表明有错误 所有参数列表 如 用双引号引起来的情况 以 1 2 n 的形式输
  • Flutter中使用sqlite

    在本教程中 我们将介绍如何在flutter中使用sqlite SQLite是用于移动设备和某些计算机SQL引擎 我们可以使用它来保存应用程序的数据 持久性存储对于在加载新数据时缓存网络呼叫和脱机应用程序很有用 引入依赖 查询sqflite最
  • git快速创建多个文件夹和文件

    小目标 创建多个文件夹 1 首先切换到想要创建文件夹的位置 点击右键 git Bash Here打开终端 输入下面一串 mkdir departments employees setting salarys social attendanc
  • C++ this指针详解

    this指针 this指针介绍 成员函数的参数和成员变量重名 this区分 在类的普通成员函数中返回对象本身 this指针介绍 1 this 指针是 C 实现封装的一 种机制 它将对象和该对象调用的成员函数连接在一起 在外部看来 每一个对象
  • jar包classes文件进阶版替换

    我相信大家在做项目的时候有时候看源码 或者想改源码代码的时候 一定是修改不了滴 今天教大家一个进阶版的修改jar源码包的方式 80 的人不知道怎么处理 因为通过解压方式 java zcvf 方式会导致清单文件不存在 从而缺少信息而不能打包
  • 全概率公式习题

    简单的记录下关于全概率公式的习题 我们可以先看下抓阄不分先后的一个例子 设袋中装有10个阄 其中8个是白阄 2个是有物之阄 甲 乙二人依次抓取一个 求没人抓得有物之阄的概率 设A B分别为甲 乙抓得有物之阄的事件 显然P A 2 10 下面
  • 【Git】OpenSSL SSL_read: Connection was aborted, errno 10053

    OpenSSL SSL read Connection was aborted errno 10053报错 解决办法 1 Git默认限制推送的大小 运行命令更改限制大小即可 增加缓冲 git config global http postB
  • 用axure给按钮图片等添加点击事件跳转页面

    由于公司产品离职 只能自己做了 汗 整体过程挺好理解的 拖拽一个图片 双击能设置背景图片 然后选中按钮 并双击OnClick 2 在弹出的视图中可以修改点击事件的名字 3 由于我这个是在当前页面弹出二级页面 所以点击Current Wind
  • python tk库

    tk库是 Python 的一个图形用户界面 GUI 库 可以用来创建窗口 菜单 按钮 文本输入框等 GUI 元素 可以通过它在 Python 中创建复杂的图形界面 使用 tk库时 需要先导入 tkinter 模块 然后使用 tkinter
  • python与vb可以互换吗_vb和python混合编程

    展开全部 解题思路 把 Python 设计成带命令行参数调用的形式 在 VB6 中借助 IWshRuntimeLibrary WshShell Exec 方法进行命令行参数调用 通过 IWshRuntimeLibrary WshExec S
  • 闲谈开闭原则——基于UI动画框架

    本文继续聊另外一个设计原则 开闭原则 在UI动画框架中 开闭原则在 动画策略 和 移动算法 这两个类体系中均有所体现 照旧 先看一下开闭原则的定义 1 开闭原则 一个软件实体如类 模块和函数应该对扩展开放 对修改关闭 有人说过 唯一不变的就
  • No artifacts marked for deployment 解决方法(ideaweb项目配置tomcat步骤)

    No artifacts marked for deployment 出现这种情况的原因 创建新项目的时候要先添加freework support 步骤如下 添加完成后点击添加tomcat的位置 有main的情况也不影响 接下来按下面步骤就
  • 【airtest架构】pytest+pocoui+airtest+allure 完成安卓UI自动化框架

    一 背景 为了做app的自动化 由于app元素定位麻烦或者定位不稳定 又或者使用驱动版本等原因 不想使用启动appnium服务的方式 本文采用网易的airtest框架图像识别作为基础 配合pytest进行简单的二次开发形成一套对安卓app
  • 操作系统内存管理4.21

    离散内存管理方案 为了提高内存的利用率 缺点 访问效率下降 分页式内存管理方案 现代操作系统常用方案 分段式内存管理方案 段页式内存管理方案
  • 【Vue】/deep/、>>>、v::deep 三种深度选择器

    在 Vue项目中 当一个组件使用了 scoped 特性时 组件内的样式只会应用于组件自身 但是有时候我们需要在 父组件中改变子组件中的样式 这时就需要用到深度选择器 一 deep 二 gt gt gt search input gt gt
  • uni-app 使用Weex/nvue的注意事项

    介绍 uni app App端内置了一个基于 weex 改进的原生渲染引擎 提供了原生渲染能力 在App端 如果使用vue页面 则使用webview渲染 如果使用nvue页面 native vue的缩写 则使用原生渲染 一个App中可以同时
  • java 日历 获取月份_使用Java日历获取月份和年份的星期

    要使用Calendar类 请导入以下程序包 import java util Calendar 创建一个Calendar类对象 Calendar cal Calendar getInstance 现在 使用以下字段获取月份和年份的星期 Ca
  • 浅析:Spring框架中IOC容器和Bean的配置

    一 IOC和DI的解释 1 IOC Inversion of Control 反转控制 在应用程序中的组件需要获取资源时 传统的方式是组件主动的从容器中获取所需要的资源 在这样的模式下开发人员往往需要知道在具体容器中特定资源的获取方式 增加
  • 深度学习在情感分类中的应用

    简介与背景 情感分类及其作用 情感分类是情感分析的重要组成部分 情感分类是针对文本的情感倾向进行极性分类 分类数量可以是二分类 积极或消极 也可以是多分类 按情感表达的不同程度 情感分析在影音评论 商品评价 舆情分析 股民基金情感分析等都有