Sarcasm detection论文解析 |使用 BERT 进行中间任务迁移学习的刺检测

论文地址

论文地址:https://www.mdpi.com/2227-7390/10/5/844#/

github:edosavini/TransferBertSarcasm (github.com)

论文首页

 

笔记框架

 

使用 BERT 进行中间任务迁移学习的讽刺检测


📅出版年份:2022
📖出版期刊:Mathematics
📈影响因子:2.4
🧑文章作者:Savini Edoardo,Caragea Cornelia
📍 期刊分区:
Number: 5 Publisher: Multidisciplinary Digital Publishing Institute JCR分区: Q1 中科院分区升级版: 数学3区 中科院分区基础版: 数学2区 影响因子: 2.4 5年影响因子: 2.3 南农高质量: A


🔎 摘要:

讽刺检测在自然语言处理中发挥着重要作用,因为它可以影响许多应用程序的性能,包括情感分析、意见挖掘和立场检测。尽管讽刺检测取得了实质性进展,但研究结果分散在数据集和研究中。在本文中,我们调查了当前的最新技术,并提出了基于 BERT 预训练语言模型的讽刺检测的强大基线。我们通过在目标任务上微调之前对相关中间任务进行微调来进一步改进我们的 BERT 模型。具体来说,依靠讽刺与(隐含的负面)情绪和情感之间的相关性,我们探索了一种迁移学习(Transfer Learning)框架,该框架使用情感分类和情感检测作为单独的中间任务,将知识注入讽刺检测的目标任务中。在具有不同特征的三个数据集上的实验结果表明,基于 BERT 的模型优于许多先前的模型。


🌐 研究目的:

我们的目的是分析 BERT 和使用 BERT 的中间任务迁移学习在讽刺检测任务上的有效性,并找到一个能够准确预测从论坛到微博等多种社交平台中讽刺的神经框架。

📰 研究背景:

尽管讽刺检测取得了实质性进展,但研究结果分散在数据集和研究中。

🔬 研究方法:

基于 BERT 预训练语言模型,探索了一种迁移学习(Transfer Learning)框架


🔩 模型架构:

BERT预训练语言模型

我们在我们的目标任务(即讽刺检测)上对 HuggingFace Transformers 库 [36] 中的 BERT bert-base-uncased 进行了微调,在顶部添加了一个线性层作为句子分类器,该分类器使用与 [ 相对应的最终隐藏状态CLS] 令牌。

中级任务迁移学习

我们提议从情感分类和情感检测这两个相关的中间任务中探索迁移学习,以了解我们能否进一步提高 BERT 模型在讽刺语检测目标任务上的性能。

  • 目标任务

  • 中间任务

标准神经网络模型

BiLSTM

使用隐藏维度为 100 的单层 BiLSTM [40] 来获取每个 token 的特征,然后对特征进行均值池化,然后是全连接层和 softmax。

我们注意到,我们的数据集之前的工作中通常使用 CNN。当之前的工作中不可用时,我们使用了[41]中的超参数设置。

CNN

我们注意到,我们的数据集之前的工作中通常使用 CNN。当之前的工作中不可用时,我们使用了[41]中的超参数设置。


🧪 实验:

 📇  数据集:

数据集来自互联网争论语料库 (IAC) [11]、Reddit [18] 和 Twitter [7]。

EmoNet

EmoNet [38] 是一个 Twitter 数据集,由使用 Plutchik-24 情感集的远程监督自动注释的推文组成。

Sarcasm V2 Corpus.

对于我们的方法,我们将 Gen 数据集随机分为 90% 的训练集和 10% 的测试集。然后,我们将临时训练集分为 80% 训练集和 20% 验证集。

五折交叉验证

Reddit Corpus (SARC)

将原始训练集分为 80% 训练和 20% 验证。

SARCTwitter

我们决定将数据集随机分割五次,保持讽刺和非讽刺推文之间的比例不变(与原始集中相同)。

我们将最初的 994 条推文分为 90% 的训练集和 10% 的测试集。然后,我们再次将获得的训练集分为 80% 训练和 20% 验证,始终保持标签之间的比例不变(见表 9)

 📏 评估指标:

 📉  优化器&超参数:

批量大小16

AdaGrad 优化器 [44],将梯度裁剪阈值设置为 5.0。

一旦验证集上的平均 F1 在一些连续的 epoch 后停止增长(耐心设置为 5),训练就会停止(对于目标任务和中间任务)

 💻  实验设备:

我们使用 AllenNLP 库 [42] 和 HuggingFace Transformers 库 [36] 来实现我们的模型。

们在 PyTorch 环境中使用 AWS 平台、EC2 实例(Ubuntu 深度学习 AMI)和一个 GPU。

 📊  消融实验:

 📋  实验结果:

Sarcasm V2 Corpus.

表 10 中的结果表明,我们所有的实验都优于 Sarcasm V2 语料库的现有最新技术。

除 TransferEmoNet 之外的传输模型都达到了类似的结果。

Reddit Corpus (SARC)

该表分为两部分:第一部分包含在不使用任何附加信息的情况下对句子本身进行的所有实验,而第二部分包含利用作者的个性特征的模型的性能评论。

我们可以注意到,在表的第一部分中,我们所有的模型都比所有其他先前的工作表现至少 10%,证实了通过预先训练的语言模型用于讽刺预测任务捕获语义的功效。

然而,来自 EmoNet 的情感信息略微提高了简单 BERT 分类的效率,使我们的 TransferEmoNetSent 模型成为 SARC 数据集上新的最先进的性能。

SARCTwitter

我们所有的模型都比之前最先进的模型至少高出 5%。

这些结果证实了之前实验的模式,证明了讽刺和情绪之间的相关性,并且还表明极化的情绪信息可以帮助主要/目标任务从情绪电荷更明确的数据集中进行转移,例如注释的 EmoNet使用词汇表面模式进行远程监督[38]。


🚩 研究结论:

我们展示了讽刺性言论本身是如何自动识别并具有良好的性能,甚至无需进一步使用上下文信息。

我们还探索了一种迁移学习框架,以利用讽刺与文本中传达的情绪或情感之间的相关性,并发现对相关任务进行中间任务训练可以提高基本 BERT 模型的有效性。

我们在三个数据集上建立了新的最先进的讽刺检测结果。具体来说,与之前的讽刺检测工作相比,基于 BERT 的模型(有或没有中间任务迁移学习)的性能提升非常显着,高达 11.53%。

我们发现,仅使用消息内容的 BERT 模型比利用作者历史中附加信息(在之前的工作中编码为个性特征)的模型表现更好。我们发现这个结果非常显着。

此外,如果目标任务(讽刺检测)的数据集大小很小,那么中间任务迁移学习(以情感作为中间任务)可以进一步提高性能。


📝 总结

💡 创新点:

依靠讽刺与(隐含的负面)情绪和情感之间的相关性,我们探索了一种迁移学习框架,该框架使用情感分类和情感检测作为单独的中间任务,将知识注入讽刺检测的目标任务中。

我们基于 BERT 预训练语言模型为此任务建立了强大的基线。我们的分析基于对三个不同大小(从小数据集到大数据集)的讽刺数据集进行的实验结果。

受现有讽刺研究 [6] 的启发,我们使用不同的中间任务(从一般推文中进行细粒度的情绪检测,通过将上述数据集中的情绪极化为积极和消极情绪来进行粗粒度的情绪极性,以及电影评论的情绪分类)。

对于我们的方法,我们将 Gen 数据集随机分为 90% 的训练集和 10% 的测试集。然后,我们将临时训练集分为 80% 训练集和 20% 验证集。

 ⚠ 局限性:

 🔧 改进方法:

 🖍️ 知识补充:

BERT 预训练语言模型 [16] 突破了许多自然语言理解任务的性能界限。

TransferEmoNet 的较低性能可以通过 IAC 中稀缺的情感分布来解释。

事实上,讽刺V2的评论主要是对辩论的回应,其中恐惧和期待等情绪很少见。

像 Reddit 这样的中间任务的社交平台在内容、表现力和话题上都有很大的不同。例如,SARC 评论的长度可以从 3/4 个单词到数百个单词不等,而 IMDB 电影评论通常更长,由多个句子组成,而 EmoNet 推文通常仅由一两个句子组成。此外,在 EmoNet 上,情绪模式更加明显,因为人们更倾向于在 Twitter 上描述自己的情绪状态。

在 SARC 中,可能也是因为所涵盖的主题(例如政治、电子游戏),情感模式更加隐晦且难以察觉。

此外,如果目标任务(讽刺检测)的数据集大小很小,那么中间任务迁移学习(以情感作为中间任务)可以进一步提高性能。


💬 讨论:

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/8229.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

如何利用AI提高内容生产效率

目录 一、自动化内容生成 二、内容分发与推广 三、内容分析与优化 图片来源网络,侵权联系可删 一、自动化内容生成 随着AI技术的飞速发展,自动化内容生成已经成为提高内容生产效率的重要手段。AI可以通过自然语言处理(NLP)、机…

参数服务器

参数服务器在ROS中主要用于实现不同节点之间的数据共享。参数服务器相当于是独立于所有节点的一个公共容器,可以将数据存储在该容器中,被不同的节点调用,当然不同的节点也可以往其中存储数据。 参数服务器,一般适用于存在数据共享…

鸿蒙内核源码分析(特殊进程篇)

三个进程 鸿蒙有三个特殊的进程,创建顺序如下: 2号进程,KProcess,为内核态根进程.启动过程中创建.0号进程,KIdle为内核态第二个进程,它是通过KProcess fork 而来的.这有点难理解.1号进程,init&#xff0c…

【2024最新华为OD-C卷试题汇总】游戏表演赛分队(100分) - 三语言AC题解(Python/Java/Cpp)

🍭 大家好这里是清隆学长 ,一枚热爱算法的程序员 ✨ 本系列打算持续跟新华为OD-C卷的三语言AC题解 💻 ACM银牌🥈| 多次AK大厂笔试 | 编程一对一辅导 👏 感谢大家的订阅➕ 和 喜欢💗 文章目录 前…

VS编辑器下使用MFC完成数据相册系统

背景: 实验项目8:数字相册系统 (2周) (一)实验目的 通过该实验,使学生掌握windows程序设计的基本方法。了解相册的基本功能,在传统相册的基础上, 通过应用时钟、图形绘制功能、图形文件的读写功能以及数据库技术,实现对…

AI模型:windows本地运行下载安装ollama运行Google CodeGemma可离线运行数据模型【自留记录】

AI模型:windows本地运行下载安装ollama运行Google CodeGemma可离线运行数据模型【自留记录】 CodeGemma 没法直接运行,需要中间软件。下载安装ollama后,使用ollama运行CodeGemma。 类似 前端本地需要安装 node.js 才可能跑vue、react项目 1…

人大金仓数据库报com.kingbase8.util.KSQLException: 致命错误: 用户 “SYSTEM“ Password 认证失败

com.kingbase8.util.KSQLException: 致命错误: 用户 “SYSTEM” Password 认证失败 解决办法: 问题在于用户权限只不足,相关配置文件在一般在 /data/sys hba.conf,修改IPV4 local connections选项中的改为trust。

网络机顶盒哪个牌子好?经销商整理热门网络机顶盒排名

做实体数码店多年来,网络机顶盒这行我非常了解,各种品牌的网络机顶盒我们全销售过。近来很多朋友咨询我网络机顶盒哪个牌子好,我按照店内近一个季度的销量情况整理了是实体店最畅销的网络机顶盒排名,最受欢迎的品牌是以下这些&…

时钟模块RX8025SA 内置32.768 kHz石英晶体振荡器

实时时钟模块RX8025SA,料号Q41802552000100,是一款低功耗,高精度时钟芯片。时钟芯片RX8025SA选型过程中应该注意哪些?RX8025SA又应用在哪些领域呢?爱普生RTC实时时钟RX8025SA,内置32.768 kHz石英晶体振荡器…

泰山众筹:创新电商模式引领共赢新时代

一、泰山众筹模式概述 泰山众筹模式,作为一种创新型的电商策略,巧妙地将产品销售与积分众筹相结合,为用户和平台双方创造了互利共赢的机会。在此模式下,用户购买指定产品即可获得相应积分,进而可将这些积分投入到众筹…

AI换脸原理(2)——人脸检测参考文献S3FD:源码解析

1 介绍 S3FD是一个实时人脸检测器,这篇论文的主要思想是试图解决一个常见的问题,即基于anchor(锚点)的检测器随着人脸变小而急剧恶化。 基于锚点的目标检测方法是通过对一系列预设锚点进行分类和回归来检测目标的,这些锚点是通过在图像上有规律地平铺一组不同尺度和宽高比…

怎么快速分享视频文件?用二维码看视频的方法

怎样不通过传输下载分享视频内容呢?以前分享视频内容,大多会通过微信、QQ、邮箱、网盘等形式来传递。但是这种方式需要下载后才可以观看,不仅占用手机内存,而且效率也比较低,所以现在很多人会采用视频生成二维码的方式…

初学C++——C++基础、变量、字面量、常量、数据类型、类型转换、变量命名规则、开发环境配置

文章目录 简介C 语言的特性C 开发环境配置C 变量,字面量和常量C 变量变量命名规则 C 字面量C 常量 C 数据类型C 基本数据类型派生数据类型 C 类型转换隐式类型转换C 显式转换 简介 C 是一种静态类型的,自由形式的(通常)编译的&…

git commit后发现git pull 拉取代码失败的解决方案(致命错误:需要指定如何调和偏离的分支。)

文章目录 前言一、情况复现1.以前多人开发同一分支提交代码逻辑(下拉取后提交)2.报错 二、解决方案1. 撤销最近一次提交2.提交代码3.注意点:常用的 git stash 命令: 前言 人员张三和人员李四在同一分支(dev)上开发 一、情况复现 …

springboot中使用fastJson返回前端数据出现$ref处理

出现场景: 一个返回对象中的多个属性集合相同 如:下图中的tips和geocodes的对象相同,反参给前端数据结构会出现下面情况 解决方案 在一个集合中,循环给这个对象赋值会出现"$ref":" $ [0]",它会认…

代码随想录算法训练营第四十二天| 01背包问题理论基础,416. 分割等和子集

理论基础: 带你学透0-1背包问题!| 关于背包问题,你不清楚的地方,这里都讲了!| 动态规划经典问题 | 数据结构与算法_哔哩哔哩_bilibili很多同学对背包问题的理解程度都处于一种黑盒的状态,及时这道题目在力…

现在学plc有前途吗?要怎么学习plc,有什么要求?

当然有前途 PLC 是以传统顺序控制器为基础,综合了计算机技术、微电子技术、自动控制技术、数字技术和通信网络技术而形成的新型通用工业自动控制装置,是一种数字运算操作的电子系统,专为在工业环境下应用而设计。 目前,PLC 在国…

47. UE5 RPG 实现角色死亡效果

在上一篇文章中,我们实现了敌人受到攻击后会播放受击动画,并且还给角色设置了受击标签。并在角色受击时,在角色身上挂上受击标签,在c里,如果挂载了此标签,速度将降为0 。 受击有了,接下来我们将…

CSS选择器(基本+复合+伪类)

目录 CSS选择器 基本选择器 标签选择器:使用标签名作为选择器->选中同名标签设置样式 类选择器:给类选择器定义一个名字.类名,并给标签添加class"类名" id选择器:跟类选择器非常相似,给id选择器定义…

QT day2 作业

头文件 #ifndef MYWIDGET_H #define MYWIDGET_H#include <QWidget> #include <QDebug> #include<QIcon> #include<QLabel> #include<QMovie> #include<QLineEdit> #include<QPushButton> QT_BEGIN_NAMESPACE namespace Ui { class …