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 中,可能也是因为所涵盖的主题(例如政治、电子游戏),情感模式更加隐晦且难以察觉。

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


💬 讨论:

 

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

[C/C++] -- 装饰器模式

装饰器模式是一种结构型设计模式,它允许在不改变原始对象的基础上动态地扩展其功能。这种模式通过将对象包装在装饰器类的对象中来实现,每个装饰器对象都包含一个原始对象,并可以在调用原始对象的方法之前或之后执行一些额外的操作。 装饰器…

炫龙电脑数据恢复方法有哪些?4个常用方法大放送

随着科技的不断发展,电脑已成为我们日常生活中不可或缺的一部分。然而,无论是由于操作失误、病毒感染、系统崩溃还是硬件故障,数据丢失都可能是每个电脑用户都可能面临的问题。对于使用炫龙电脑的用户来说,了解并掌握一些基本的数…

webassembly入门详解(C++)

一、环境配置 环境说明,操作系统为window操作系统。 1.1 下载和安装python 下载 需要python版本至少3.6版本 python下载地址:https://www.python.org/getit/ 安装 检测安装结果 win+R组合键->cmd->输入python->回车 1.2 下载和安装emsdk 下载 下载地址:https://gi…

这个Python库Streamlit,5分钟内搭建可视化WEB应用

在数据科学的世界里,将分析结果快速、直观地呈现给非技术背景的决策者,是一项重要的技能。而Streamlit,这个开源的Python库,正是为此而生。它允许数据科学家和工程师通过少量的代码,快速创建和分享数据应用。今天&…

OpenAI推出DALL·E 3识别器、媒体管理器

5月8日,OpenAI在官网宣布,将推出面向其文生图模型DALLE 3 的内容识别器,以及一个媒体管理器。 随着ChatGPT、DALLE 3等生成式AI产品被大量应用在实际业务中,人们越来越难分辨AI和人类创建内容的区别,这个识别器可以帮…

【Git】Git学习-15:分支简介和基本操作

学习视频链接:【GeekHour】一小时Git教程_哔哩哔哩_bilibili​编辑https://www.bilibili.com/video/BV1HM411377j/?vd_source95dda35ac10d1ae6785cc7006f365780https://www.bilibili.com/video/BV1HM411377j/?vd_source95dda35ac10d1ae6785cc7006f365780 git bran…

pycharm code行太长显示波浪线取消

实际操作如下:个人比较合适的位置为160,180时有点多 效果:

Agent AI智能体:塑造未来社会的智慧力量

🔥 个人主页:空白诗 文章目录 🤖 Agent AI智能体:塑造未来社会的智慧力量🎯 引言🌱 智能体的未来角色预览💼 行业革新者🌟 创意合作者🛡️ 公共安全与环保🚀 …

武汉星起航:亚马逊欧洲站:丰富商品与卓越服务铸就高客单价典范

亚马逊,作为全球最大的电商平台之一,其欧洲站在全球电商市场中占据着举足轻重的地位。其中,亚马逊欧洲站的人均客单价更是高居世界前列,这背后究竟隐藏着哪些原因呢? 首先,亚马逊具有丰富且高质量的商品品…

工业镜头助力锂电制造业精准检测

在电动汽车、电动轻型车、电动工具、消费电子和新型储能等行业大发展的背景下,锂电池综合优势与下游领域对电池大容量、高功率、使用寿命和环境保护日益提升的需求相契合,存在广阔的市场应用前景。受益于动力、消费和储能三大细分领域的快速发展&#xf…

Debug项目失败Run成功

一:问题 idea中启动服务,服务一直在启动中,最后超时启动失败 重新构建项目也是一样 二:个人分析 debug因为断点太多了项目起不起来,试一下run直接运行,项目可以快速启动 三:解决办法 在控制…

Liunx系统怎么设置免密登录?看这一篇!

远程口令爆破也是黑客常用的手段,有些人安全意识薄弱的会设置一些简单的密码,这样分分钟会被黑客爆破进去,一旦操作系统沦陷,里面的数据必将被黑客一览无余,使用免密登录可以有效降低密码被爆破的风险,具体…

docker 方式 elasticsearch 8.13 简单例子

安装 docker 虚拟机安装 elastic search 安装本地 # 创建 elastic 的网络 docker network create elastic # 用镜像的方式创建并启动容器 docker run -d --name es --net elastic -p 9200:9200 -p 9300:9300 -e "discovery.typesingle-node" -e "xpack.secur…

Android 终端查看CPU信息源码分析

代码如下: 终端获取信息(左为H9,右为H5) 觉得本文对您有用,麻烦点赞、关注、收藏,您的肯定是我创作的无限动力,谢谢!!!

minio安装部署

MinIO 介绍 MinIO是一个对象存储解决方案,它提供了与Amazon Web Services S3兼容的API,并支持所有核心S3功能。 MinIO有能力在任何地方部署 - 公有云或私有云,裸金属基础设施,编排环境,以及边缘基础设施。 MinIO 安装…

Android内核之Binder读写通信:binder_ioctl_write_read用法实例(七十)

简介: CSDN博客专家,专注Android/Linux系统,分享多mic语音方案、音视频、编解码等技术,与大家一起成长! 优质专栏:Audio工程师进阶系列【原创干货持续更新中……】🚀 优质专栏:多媒…

Python专题:三、数字和运算(2)

目录 一、数学运算 二、赋值运算 一、数学运算 1、运算符号 加法 减法- 乘法* 除法/ 计算机中浮点数表示有精度限制,Python有限,所以近似取数 2、除法取整// Python2中 整数/整数 值为整数 Python3中 整数/整数 整数or浮点数 //计算除法对结果取…

植被参数光学遥感反演方法(Python)及遥感与生态模型数据同化算法

原文链接:植被参数光学遥感反演方法(Python)及遥感与生态模型数据同化算法https://mp.weixin.qq.com/s?__bizMzUzNTczMDMxMg&mid2247603741&idx4&sn5b92ff13edfd6e146b7df22ac504c6d5&chksmfa8217facdf59eec9255d24b3e6f6f66b4d2814cae70f85d0ff1a…

月薪从 6k 到 30k,我做对了这3点

本文首发于公众号 极客枫哥 ,日更分享各种好玩的软件、编程知识和个人成长故事 大家好啊~我是枫哥。今天跟大家聊一聊我的个人工作经历。 我是 2014 年来的上海,来到上海后第一份工作做的是 java 开发,转正后的工资是 6000。 这…

中国 Copilot 能在笔记本电脑上起飞吗?

AI PC 是 PC 的下一个进化体? 中国能打造出自己的 AI 研发助手吗? 企业如何构建 AI 竞争力? AI 时代,个体如何避免被取代? 如果你也有此困惑,那就锁定这场直播吧! 视频号搜索【极狐GitLab】预约…