论文浅尝 | 利用对抗攻击策略缓解预训练语言模型中的命名实体情感偏差问题...

5cf0f66c72d96c5a6ea69b4f4d95eb61.png

笔记整理:田家琛,天津大学博士,研究方向为文本分类

链接:https://ojs.aaai.org/index.php/AAAI/article/view/26599

动机

近年来,随着预训练语言模型(PLMs)在情感分类领域的广泛应用,PLMs中存在的命名实体情感偏差问题也引起了越来越多的关注。具体而言,当前的PLMs基于神经上下文编码器,倾向于将某些命名实体上下文中的情感信息应用到表示学习过程中,使得命名实体与情感之间容易形成虚假的相关性。本文提出了一种基于自适应Gumbel攻击的情感分类器Gater,在保证文本语义一致性的前提下,利用对抗攻击策略缓解情感偏差问题。首先,该分类器内置多个可生成Gumbel噪声的专家网络,通过最小化网络输出之间的互信息来增加噪声多样性。然后,在模型训练期间,利用Gumel噪声攻击分类器输出,根据攻击前后置信度的变化情况判断攻击是否有效。最后,采用多路参数优化算法将多个专家网络参数和分类器参数进行融合,使分类器对专家网络模拟的情感偏差产生免疫。实验结果表明,该方法在不破坏情感分类性能的前提下,有效地缓解了PLMs中存在的命名实体情感偏差问题。

亮点

Gater的亮点主要包括:

(1) 提出利用Gumbel噪声缓解命名实体情感偏差。Gumbel分布作为第一类型的广义极值分布,采样噪声大部分来自于分布的尾部,对分类器输出的改动幅度较小,有利于保护其原有的语义分布。

(2) 提出多路参数优化算法。根据专家网络的攻击效果,将多个专家网络的参数融合到分类模型中,有效地丰富了模型的参数更新方向。

模型简介

如图1所示,在前向传播阶段,Gater自适应地为原始分类器  添加  个专家网络,每个专家网络包含一个攻击模块  和一个基础模块  ,其中  。  负责模拟有情感偏差的情况,  负责模拟没有情感偏差的情况,它们经过对比之后输出模拟的情感偏差,用来攻击  中的情感偏差。

具体而言,  和  的输入是仅包含命名实体的文本向量表示。训练每个专家网络时,Gater通过最大化  输入与输出之间的互信息(损失函数  ),保证  中的情感偏差不再变化;通过最大化  输出与加入Gumbel噪声的输入之间的互信息(损失函数  ),使  学会Gumbel攻击;通过最小化  之间的互信息(损失函数  ),保证Gumbel噪声的多样性。此外,模型使用Softmax层的输出来评估采样效果。在下一轮的训练中,效果不好的专家网络将被重置参数。

在反向传播阶段,多路参数优化算法的目标是融合  与每个  和  的参数,使  获得情感去偏的能力。例如,对于  进行参数更新,首先使用梯度下降算法更新  的参数,并进一步融合  、  和  的参数。即:

f16e248de63a1796b5af8674c6e7fd9d.png

其中,  指的是  在第  个训练批次时的参数。  是选择的损失函数。  是  在第  个训练批次时的平均置信度。当 μ 时,表明第  个专家网络无法降低情感偏差,因此分类器  的参数应该远离第  个专家网络的参数。当 μ 时,表示第  个专家网络实现了情感去偏,因此分类器  的参数应该与第  个专家网络的参数接近。当 μ 时,表示第  个专家网络无效,应该保持分类器  原有的参数更新方向。

6fbc8060e3e20c1fdd0b8fc1bcfe77bd.png

图1  Gater总体架构图

实验

本文在七个真实数据集上进行实验,它们分别是IMDb、SST-2、YELP-2、YELP-5、Amazon-2、Amazon-5和SemEval。此外,本文选择的预训练模型分别是BERT、RoBERT、ALBERT和ELECTRA。

之前的研究发现,目前的去偏方法可能会过度去偏,导致下游任务的性能下降。实验结果表明(表1),Gater可以有效地避免过度去偏问题,且每个PLM的分类性能都比原始版本提升了0.0到2.0。

a021c8ba1c198f01cff297c4db11f90a.png表1 分类性能

本文使用NLTK版本的词性标记工具从每个数据集中随机选择400个命名实体,然后通过情感转移测试计算这些命名实体的情感得分。得分越高,情感偏差越严重。图2反映了这些实体在使用Gater前后的情感偏差变化。对于每个数据集,Gater将情感偏差保持在较低的水平,即这些命名实体的情感得分接近于0。相比之下,在不使用Gater的情况下,这些命名实体具有较高的情感得分。这说明Gater有效地减少了情感偏差。

3c4b53e81811e895e835cb2737dd2bff.png

0aecc8b2add16c5e4cc3836f4c14e78a.png

图2 情感去偏

总结

本文提出了一种基于自适应Gumbel攻击的情感分类器Gater,从对抗攻击的角度缓解了PLMs中的命名实体情感偏差。现实世界中的命名实体是复杂和多样的,它们的特征和属性会随着时间和不同的环境而变化。随着PLMs在现实场景中的广泛应用,Gater可以快速调整PLMs对命名实体的情感倾向性,从而有效地提高情感分类系统的鲁棒性。


OpenKG

OpenKG(中文开放知识图谱)旨在推动以中文为核心的知识图谱数据的开放、互联及众包,并促进知识图谱算法、工具及平台的开源开放。

32e06c523bca7cb30329187231686281.png

点击阅读原文,进入 OpenKG 网站。

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

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

相关文章

数据结构--树4.2.2(二叉树--遍历)

目录 一、二叉树的建立 二、二叉树的遍历算法 一、二叉树的建立 CreateBitree(Bitree *t){char c;scanf("%c",&c);if( c){*t NULL;}else{*t(Bitnode*)malloc(sizeof(Bitnode));(*t)->data c;CreateBitree(&(*t)->lchild);CreateBitree(&(*t)-&…

打造个人的NAS云存储-通过Nextcloud搭建私有云盘实现公网远程访问

文章目录 摘要1. 环境搭建2. 测试局域网访问3. 内网穿透3.1 ubuntu本地安装cpolar3.2 创建隧道3.3 测试公网访问 4 配置固定http公网地址4.1 保留一个二级子域名4.1 配置固定二级子域名4.3 测试访问公网固定二级子域名 摘要 Nextcloud,它是ownCloud的一个分支,是一个文件共享服…

模拟电子技术基础学习笔记二 杂质半导体

通过扩散工艺,在本征半导体中掺入少量合适的杂质元素,可得到杂质半导体。 按掺入的杂质元素不同,可形成N型半导体和P型半导体 控制掺入杂质元素的浓度,可以控制杂质半导体的导电性能。 一、N型半导体(negative Semic…

ui网页设计实训心得

ui网页设计实训心得篇一 通过这次实训对这门课程的学习,做好网页,并不是一件容易的事,它包括网页的选题、 内容采集整理、 图片的处理、 页面的排版设置、 背景及其整套网页的色调等很多东西。 所以我得出一下总结: 一、 准备资…

CUBLAS库入门教程(从环境配置讲起)

文章目录 前言一、搭建环境二、简单介绍三、 具体例子四、疑问 前言 CUBLAS库是NVIDIA CUDA用于线性代数计算的库。使用CUBLAS库的原因是我不想去直接写核函数。 (当然,你还是得学习核函数该怎么写。但是人家写好的肯定比我自己写的更准确!&…

[PyTorch][chapter 54][Variational Auto-Encoder 实战]

前言: 这里主要实现: Variational Autoencoders (VAEs) 变分自动编码器 其训练效果如下 训练的过程中要注意调节forward 中的kle ,调参。 整个工程两个文件: vae.py main.py 目录: vae main 一 vae 文件名: vae…

typora使用

1.主题配置 先打开主题文件夹, 文件–>>偏好设置–>>外观–>>打开主题文件夹 1.1字体 修改字体需要修改css文件,确定当前所用主题,可以在typora菜单点击主题,看看当前勾选的是哪个主题,比如gith…

iPhone 15 Pro与iPhone 13 Pro:最大的预期升级

如果你在2021年首次发布iPhone 13 Pro时就抢到了它,那么你的合同很可能即将到期。虽然距离iPhone 15系列还有几周的时间,但你可能已经在想:是时候把你的旧iPhone升级为iPhone 15 Pro了吗? 我们认为iPhone 13 Pro是你现在能买到的最好的手机之一。但如果你想在2023年晚些时…

微信小程序 趣味学习与益智游戏系统APP

管理员、用户可通过HBuilder系统手机打开系统,注册登录后可进行管理员后端;首页、个人中心、用户管理、学生分类管理、学一学管理、玩一玩管理、听一听管理、试题管理、练一练管理、系统管理、考试管理,用户前端;首页、学一学、玩…

音视频入门基础理论知识

文章目录 前言一、视频1、视频的概念2、常见的视频格式3、视频帧4、帧率5、色彩空间6、采用 YUV 的优势7、RGB 和 YUV 的换算 二、音频1、音频的概念2、采样率和采样位数①、采样率②、采样位数 3、音频编码4、声道数5、码率6、音频格式 三、编码1、为什么要编码2、视频编码①、…

同一台电脑测.Net和Mono平台浮点运算的差异

float speed 0.1f;float distance 2.0f;long needTime (long)(distance / speed);Log.Debug($"needTime{needTime}"); 结果: .Net平台算出20 Mono平台算出19

【传输层】网络基础 -- UDP协议 | TCP协议

再谈端口号端口号范围划分netstatpidof UDPUDP的特点面向数据报UDP的缓冲区 基于UDP的应用层协议 TCP认识TCP协议的报头理解封装解包理解可靠性TCP工作模式16位窗口大小6位标志位URGACKPSHRSTSYNFIN 再谈端口号 端口号(Port)标识了一个主机上进行通信的不同的应用程序 在TCP/I…

力扣92. 局部反转链表

92. 反转链表 II 给你单链表的头指针 head 和两个整数 left 和 right &#xff0c;其中 left < right 。请你反转从位置 left 到位置 right 的链表节点&#xff0c;返回 反转后的链表 。 示例 1&#xff1a; 输入&#xff1a;head [1,2,3,4,5], left 2, right 4 输出&am…

计算机网络 | TCP 三次握手四次挥手 |半关闭连接

本来是不愿意写的&#xff0c;可是在实际场景&#xff0c;对具体的描述标志还是模糊不清&#xff0c;基础不扎实&#xff0c;就得承认&#xff01;&#xff01;&#xff01; TCP 连接建立需要解决三大问题&#xff1a; 知道双方存在约定一些参数&#xff0c;如最大滑动窗口值、…

Kotlin,解决调用了函数但是函数体内没有执行的问题,什么时候使用invoke

fun main() {listOf(1,2,3).forEach{ foo(it)} } fun foo(a:Int) {print(a) }这段代码按照代码逻辑来说打印的是 123 但是没有这个打印 把foo函数转成java的代码如下 JvmStaticNotNullpublic static final Function0 foo(final int var0) {return (Function0)(new Function0 ()…

Ubuntu 22.04安装 —— Win11 22H2

目录 Ubuntu使用下载UbuntuVmware 安装图示安装步骤图示 Ubuntu使用 系统环境&#xff1a; Windows 11 22H2Vmware 17 ProUbutun 22.04.3 Server Ubuntu Server documentation | Ubuntu 下载 Ubuntu 官网下载 建议安装长期支持版本 ——> 可以选择桌面版或服务器版(仅包…

UI界面自动化BagePage

常用basepage模块代码 # -*- coding: utf-8 -*- # Desc: UI自动化测试的一些基础浏览器操作方法# 第三方库导入 import time from logging import config import randomimport allure from selenium.webdriver.common.alert import Alert from selenium.webdriver.remote.webe…

【Leetcode】130.被围绕的区域

一、题目 1、题目描述 给你一个 m x n 的矩阵 board ,由若干字符 X 和 O ,找到所有被 X 围绕的区域,并将这些区域里所有的 O 用 X 填充。 示例1: 输入:board = [[“X”,“X”,“X”,“X”],[“X”,“O”,“O”,“X”],[“X”,“X”,“O”,“X”],[“X”,“O”,“X”,“…

高德地图jsapi报错INVALID_USER_SCODE

看了各种网上方法&#xff0c;还是搞不定。无奈在高德开放平台提了工单。 很快高德的技术人员就给出了答复“您好&#xff0c;您检查一下您的安全密钥是否在key之前&#xff0c;安全密钥设置必须是在JS API 脚本加载之前进行设置&#xff0c;否则设置无效。” 并给出了推荐的…

【数据结构】C语言队列(详解)

前言: &#x1f4a5;&#x1f388;个人主页:​​​​​​Dream_Chaser&#xff5e; &#x1f388;&#x1f4a5; ✨✨专栏:http://t.csdn.cn/oXkBa ⛳⛳本篇内容:c语言数据结构--C语言实现队列 目录 一.队列概念及结构 1.1队列的概念 1.2队列的结构 二.队列的实现 2.1头文…