当前位置: 首页 > news >正文

论文浅尝 | CI4MRC:基于因果推断去除机器阅读理解中的名字偏差

2bed06ea0daf285be51c726d5c6a25f4.png

笔记整理:朱珈徵,天津大学硕士,研究方向:问答

链接:https://aclanthology.org/2023.findings-acl.812/

动机

机器阅读理解(Machine Reading Comprehension,MRC)是根据给定的文章回答问题,基于预训练语言模型(Language Model,LM)已经取得了很大的成功。一个普遍的常识是,预训练模型越强则下游任务就越好,然而在MRC中不总是如此。本文研究了MRC模型对名字的鲁棒性。名字具有可互换性,即名字作为一个代号应具有可互换性,即对于篇章的某个名字,替换成任意名字,答案不会发生变化。基于LM的MRC模型可能会过度使用名字信息进行预测,从而导致名字表示的不可互换,称为名字偏差。在本文中,提出了一种新的MRC因果干预范式(Causal Interventional paradigm for MRC,CI4MRC)来减轻名字偏差。具体而言,首先基于结构因果模型(Structural Causal Model,SCM)分析了预训练知识、上下文表示和答案之间的因果关系,发现关于名字的预训练知识确实是一个混杂因素。其次,开发了有效的CI4MRC算法实现基于神经元感知和词元感知的调整来约束该混杂因素。实验表明,本文提出的CI4MRC有效地减轻了名字偏差,并在原始SQuAD上取得了竞争性能。此外,本文的方法对各种预训练LM具有通用性,并且对开源对抗的数据集同样具有鲁棒性。

亮点

CI4MRC的亮点主要包括:

(1) 构建一个结构因果模型,表明预训练知识本质上是一个混杂因素,导致名字的上下文表示和答案之间的虚假相关性,并且从理论上分析了因果干预MRC更好的根本原因;

(2) 设计基于神经元感知的后门调整,利用混合专家模型将前馈网络划分为多个专家模块,并将特定于名字激活的专家消除,以保证无实际意义的名字发生变化时不会对整体语义造成影响。

(3) 提出词元感知的后门调整将分类器作为额外的知识,针对前馈网络的干预对MRC任务的毒性,弥补名字表示的信息缺失,增强模型的性能。

概念及模型

CI4MRC主要由SCM的理论指导设计了有效的干预实现。基于神经元感知的后门调整,将预训练模型的前馈网络(Feed-Forward Networks,简记FFNs)参数分为多个专家,并将特定于名字的专家消除,促使MRC模型在训练阶段深入学习阅读理解能力。这一干预的实现成功地减轻了名字偏差,使模型的名字嵌入表示符合名字的可互换性,即名字的变化不会对整体语义产生影响。但是神经元感知的调整对整体上下文表示有一定损害,使名字在满足可互换性的情况下不可识别,即模型难以识别该处代表人名。因此,引入基于词元感知的后门调整将分类器作为额外的知识来弥补这一缺陷,从而保证模型的性能和鲁棒性。

(1)结构因果模型

图1是考虑了预训练模型因素的MRC结构因果模型,X表示为篇章和问题的上下文表示,K为预训练知识;

X  M  KM是一个中介变量,表示来自于文章、问题和K这三者的低维多源知识。根据调整方式的不同,M可以被理解为预训练模型的一系列特征或语义判别信息;

X  Y  MX总共以两种方式影响Y,直接路径X ➡ Y和中介路径X  M  Y。如果X可以完全由M表示,X  Y可以忽略,但是这对于现有语言模型来说几乎是不可能的。

168136358edbdb558dddd23072178452.png

图1  (a) MRC因果图;(b)干预MRC,其中直接对  建模

进一步分析相关性概率和和根据后门调整及do演算得出干预后概率,并经过图2中实验的验证表明对x进行干预,阻止预训练中有关名字的知识影响x的表示,能避免名字偏差。

6a70295712814095451c7102082b2d15.png

图2  对干预和不干预两者差异的案例研究

(2)基于神经元感知的调整模块

FFNs构成了近三分之二的模型参数,可被视为存储了大量的知识。基于 FFNs 的稀疏激活特性,首先对其中的神经元进行参数分割,将经常同时激活的神经元组合在一起,再将其参数分割构成各个专家。首先构造一个图,一个节点被表示为一个神经元,每一条边的值由共激活信息计算,然后通过图划分算法进行分割。对于FFN中的权重矩阵通过一个排列矩阵来实现。专家选择通过一个多层感知机为每组神经元打分,得到最终结果。应用归一化加权几何平均(Normalized Weighted Geometric Mean,NWGM)将由外部对概率求和转化为先由内部求和再计算概率。值得注意的是,因为稀疏激活现象被证明出现在Transformer架构的预训练模型的FFNs中,所以基于神经元感知的调整模块可以应用于大多数基于Transformer的预训练语言模型中。

0367195eec3903bb533f44eb333b522c.png

(3)知识图谱嵌入模型适用性

为了弥补掩码造成的信息损失并进一步提高MRC模型的性能,本小节提出了词元感知的调整模块以提供额外的知识。在MRC任务中,大多数主流的预训练模型使用一个分类器进行预测,因此分类器可以看作是经过提炼的知识,其整体调整为:

f92188c5a0b597718205ea2937928101.png

将神经元感知的调整模块和词元感知的调整模块结合起来作为整体去偏方法,在词元感知的调整之后再应用神经元感知的调整,使名字表示在满足可互换性的同时具备可识别性。因此,总体的调整为:

b36acb4fbfbee3ec7a2be965bdb044dc.png

实验

本节在两个偏差基准上进行了实验来评估本文的去偏见方法,分别是SQuAD及其变体和用于个人名字偏差的模板测试。实验也在公开的SQuAD对抗数据集上对各个模型进行了测试以进一步验证模型的鲁棒性,分别为Adversarial SQuAD数据集和Textflint数据集。

评价指标包括两类,分别为准确率指标,即EM分数和F1分数,以及偏差程度指标,即刻板印象分数(StereoType Score,ST分数)和名字敏感度(Name Fragility,NF),其中偏差程度指标越接近0表明模型受偏差影响更小。

09ba97b5f6c85219d1b0d80f3a4fb529.png

ce1bbcf2b0ea0855a59cad3e14b32a5b.png

9c5b0eced0d9df485d37b2542e3fc3e8.png

图3  实验结果

实验结果如图3所示,CI4MRC在各个基线上的性能都得到了持续的提高,与其他去偏方法相比取得了最好的成绩。和之间的巨大差距反映出他们的预测高度偏向于名字。特别是在XLNet的情况下,的EM得分为80.10%,而的EM得分为40.74%,下降了几乎一半。与XLNet相比,BERT受名字偏差的影响较小,从78.29%下降到44.26%。CI4MRC和R-LACE都显著提高了模型的性能。然而,R-LACE倾向于从模型表示中删除所有名字信息,这是一种消除名字偏差的激进方法。深入观察Template的结果,BERT的性能低于XLNet,说明模型本身的阅读理解能力也很关键。其他基于BERT的去偏差方法的性能不如XLNet,这表明BERT可能很难减轻名字偏差。虽然CI4MRC在这一点上与它们相似,但性能提升更大。ST分数进一步证明BERT中的名字偏差是顽固的。值得注意的是,BERT和XLNet之间的NF和NF top-5差异较大(分别为36.00%和24.28%),说明XLNet比BERT更健壮。

进一步,使用模板示例进行案例研究。本文对EM平均得分之间的差距进行了排名,并列出了排名前六的名字。XLNet 的差距非常大,说明该模型在预训练LM中存在名字先验。CI4MRC将差距缩小到很小的程度,表明本文的模型确实减轻了名字偏差。

cda0f872a3b8c328b157ed1f79814d1d.png

进行消融研究来验证神经元调整和词元调整的效果。结果如表所示。w/o表示去除对应模块。词元调整的去偏效果比神经元调整的去偏效果弱得多。然而,词元调整可以恢复神经元调整对MRC任务造成的损害,提高了模型的准确性,而单独的神经元感知调整在原始测试集上的性能降低。

827f76bd7e6e2b473f2cac34760340d0.png

总结

本文提出了一个新的因果干预范式CI4MRC来解决MRC中的名字偏差。关于名字的预训练知识是限制鲁棒性表现的混杂因素。具体来说,本文基于MRC系统中因果关系的结构因果模型,从理论上分析了预训练模型中有关名字的知识是导致模型产生名字偏差并影响模型鲁棒性的混杂因素。设计了基于神经元感知和词元感知的后门调整,对模型进行因果干预,在不损害模型原本上下文表示性能的前提下,去除名字偏差的不良影响。

实验表明,CI4MRC在各种名称偏差数据集上实现了所有基线的最佳去偏性能。

分析表明,两种调整相结合,既能有效缓解名字偏差,又能提高模型的准确率。本文认为CI4MRC提供了一种替代方案,可以在许多下游任务(例如,问答)中提高模型的鲁棒性。本文的工作仅限于最常见的名字名单,这些名字在美国具有很高的代表性。在未来的工作中,本文将考虑将实验扩展到更广泛的名称,并寻求因果干预的其他实现以获得更好的性能。


OpenKG

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

cff3288e53d9e17815d3a3a7af8bc3c9.png

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

http://www.lryc.cn/news/123350.html

相关文章:

  • 【校招VIP】测试计划之黑盒测试白盒测试
  • 学习笔记整理-JS-01-语法与变量
  • PHP之PHPExcel
  • Redis系列(一):深入了解Redis数据类型和底层数据结构
  • javaScript:如何获取html中的元素对象
  • 面试总结-webpack/git
  • 深入解析美颜SDK:算法、效果与实现
  • ChatGPT Plus和ChatGPT对比
  • 计算机网络 运输层 TCP连接建立、释放
  • npm run xxx 的时候发生了什么?(以npm run dev举例说明)
  • 图解结构体大小和位域例子
  • 游戏行业实战案例 5 :玩家在线分布
  • TypeScript 关于对【泛型】的定义使用解读
  • 盛元广通食品药品检验检测实验室LIMS系统
  • 【数据结构】-- 栈和队列
  • 使用SpringAop切面编程通过Spel表达式实现Controller权限控制
  • Flutter:简单搞一个内容高亮
  • 2023/08/10
  • LeetCode 1289. 下降路径最小和 II:通俗易懂地讲解O(n^2) + O(1)的做法
  • Coin Change
  • 2023 8 -14链表OJ
  • 大数据必回之LSM树
  • Vue中的Object.defineProperty详解
  • MySQL高阶知识点(一)一条SQL【更新】语句是如何执行的
  • threejs实现模型gltf的动画效果
  • Harmony创建项目ohpm报错
  • 44 | 酒店预订及取消的数据分析
  • 物联网和不断发展的ITSM
  • 加了ComponentScan,但是feign接口无法注入的原因
  • C#Winform中DataGridView控件显示行号实例