题目:逻辑引导数据增强和正则化用于一致性问答
作者:Akari Asai and Hannaneh Hajishirzi
发布地方:ACL2020
面向任务:一致性问答
论文地址:https://arxiv.org/abs/2004.10157
论文代码:https://github. com/AkariAsai/logic_guided_qa
目录
摘要
1 介绍
2 相关工作
3 方法
3.1 一致性问题回答
3.2 逻辑引导的数据增强
3.3逻辑引导的一致性正则化
4 实验
5 结论
引出背景:许多自然语言问题需要在两个实体或事件之间进行定性、定量或逻辑比较。
本文创新点:通过集成逻辑规则和神经模型来提高对比较问题的回答准确性和一致性。
具体方法:①利用逻辑和语言知识来增加标记的训练数据;
②使用基于一致性的正则化器来训练模型,提高预测的全局一致性。
实验结果:本文方法在因果推理(WIQA)、多项选择定性推理(QuaRel)和抽取式机器阅读理解(HotpotQA)等各种QA任务中比以前的方法取得了很大的改进。①显著提高了基于RoBERTa模型1-5%的性能。②在WIQA和QuaRel数据集上测试将SOTA技术提高了大约5-8%,并在HotpotQA上测试将违反一致性的情况减少了58%。③进一步证明本文的方法可以从有限的数据中进行有效地学习。
补充:state of the art(SOTA),某一领域内目前最流行、最高效、最先进的模型、算法或技术,如目前A技术是最先进的模型,若过一段时间后,B技术打败了A成为相应领域最先进的模型,则B称为SOTA,A就不是SOTA。
比较类型的问题询问实体或事件的属性之间的关系,例如因果关系、定性或定量推理。例如:
·因果推理问题:小明昨晚没写作业,会受到老师的批评吗? 因:小明没写作业 果:小明受到批评 ·定性比较问题:小明比小强高吗?
·定量比较问题:小明比小强高多少?
本文技术提出的背景:
①要训练一个擅长比较类型问题的模型,需要大量相应的训练数据集,当前关于比较问题的大多数数据集都比标准机器阅读理解(MRC)数据集小得多,如果要新创建需要推理知识和推理能力的比较问题数据集,注释者需要理解多个段落中呈现的上下文或根据给定情况仔细地提出问题,注释大量比较问题变得具有挑战性(费时费力)。
②目前SOTA模型显示出不一致的比较预测,如图1所示。
③之前有人在自然语言推理(NLI)任务中研究了提高预测的一致性(Minervini and Riedel, 2018; Li et al., 2019),但尚未在QA中解决。
图1:RoBERTa的不一致预测。第一行显示对称不一致的示例,第二行显示传递不一致的示例。
根据以上局限性,本文利用数据增强和训练正则化的逻辑和符号知识为比较问题生成全局一致性和准确预测,数据增强:使用一组逻辑和语言知识来开发额外的一致标记训练数据;正则化:使用符号逻辑来合并一致性正则化,以获得超出数据增强给出的归纳偏差的额外监督信号。本文方法概括了以前用于NLI任务的一致性促进方法以适应截然不同的问题格式。
本文实验表明,在各种QA任务上比现有技术有显着改进:基于分类的因果推理QA、用于定性推理的多项选择QA和具有实体之间比较的抽取 MRC任务。值得注意的是,数据增强和一致性约束训练正则化将基于RoBERTa的模型 (Liu et al., 2019)在WIQA、QuaRel和HotpotQA上的性能提高了1.0%、5.0%和2.5%。本文的方法在WIQA和QuaRel上取得了最先进的结果,绝对准确度分别提高了4.7%和8.4%,从而减少了不一致的预测。进一步证明,本文的方法可以从有限的标记数据中有效地学习:给定原始标记数据的20%,本文的方法实现的性能与使用完整标记数据学习的竞争基线相当。
已经在各种任务和领域中探索了数据增强。在NLP中,使用反向翻译 (Yu et al.,2018) 或基于字典的单词替换(Zhang et al., 2015)已经被研究过。与本文的工作最相关的是,Kang et al. (2018)研究了NLI特定的逻辑和基于知识的数据增强。在本文工作的同时,Gokhale et al. (2020) 研究视觉QA模型回答逻辑组合问题的能力,并展示了逻辑引导数据增强的有效性。本文的数据增强不依赖于任务特定的假设,并且可以适应不同格式的QA任务。进一步利用促进一致性的正则化,从而提高准确性和一致性。
已经在NLI任务中研究了通过训练正则化来提高预测一致性。Min ervini和Riedel提出了依赖模型的一阶逻辑引导对抗性示例生成和正则化。Li et al. (2019) 引入了包含一阶逻辑规则的基于一致性的正则化。以前的方法依赖于模型或依赖于NLI特定的规则,而本文的方法与模型无关,并且通过将其与数据增强相结合而更普遍适用。
在先前关于结构化学习中的约束满足的工作中也研究了正则化损失以惩罚模型输出中违反结构约的行为(Lee et al., 2019; Ganchev et al., 2010)。我们的工作规范模型以在遵循逻辑约束的增强数据中生成全局一致的预测,而这些研究结合了遵循语言学规则的结构化预测模型。
本文介绍了QA方法的组成部分:一阶逻辑引导数据增强(第3.1节和第3.2节)和基于一致性的正则化(第3.3节)。
对于QA任务,要求响应遵循两个重要的一般逻辑规则:对称一致性和传递一致性,图1上半部分: ①Q:陶瓷花瓶不比塑料球更柔韧,所以它是 A:更易碎
②Q:陶瓷花瓶比塑料球更柔韧,所以它是 A:不易碎 当使用模型RoBERTa预测①的时候,预测“更易碎”正确,但是预测②的时候,预测为“更易碎”则错误。
符号说明:q:问题
p:段落
a:模型预测的答案;
A:候选答案(从p中抽取的span、一种类别、任意的答案选择)
X={q,p,a}:一个逻辑原子
对称一致性
在比较问题中,小的表面变化(例如用反义词替换单词)可以反转答案,同时保持问题的整体语义和以前一样(例如“小明身高170cm,小强身高160cm,小明比小强?”,答案是“高”。用反义词替换为“小明身高170cm,小强身高160cm,小明不比小强?”,答案是“矮”,由比变为不比,问题的语义是不变的,还是说明小明高)。本文在QA的上下文中定义问题的对称性如下:(q,p,a*)↔(,p,),其中q和是互为反义词的问题,也与A中的真实答案a∗相反。例如,图1上半部分中的两个问题是对称对。将QA中预测的对称一致性定义为以下逻辑规则:
这表明系统如果给定(q,p)能预测a,那么应该能给定 (,p)预测。
传递一致性
三个谓词A、B、C 之间的传递推理表示为:A→B∧B→C然后A→C(小明考上公务员,会找到女朋友吗?∧小明找到女朋友,会受到丈母娘的喜爱吗?->小明考上公务员,会受到丈母娘的喜爱)。在QA的上下文中,传递示例主要用于因果推理问题,这些问题询问给定原因c的结果e。图1的下半部分是违反传递一致性的示例。对于q1(=e1)的影响等于q2(=c2)的原因的两个问题q1和q2(这里看不懂没关系,后边有介绍),将QA中预测的传递一致性定义为以下逻辑规则:
给定一组(q,p,a∗)形式的训练样例X,我们使用对称和传递性逻辑规则自动生成额外的样例Xaug={qaug,p,a∗aug}。目标是增加训练数据,以便在训练期间观察对称和传递示例。表1中提供了一些增强示例。
表1:WIQA的增强传递示例,以及QuaRel和HotpotQA的对称示例。修改了部分段落和问题。粗体字符表示连接两个问题的共享事件。红色或蓝色部分表示反义词,突出显示的文本是数据增强添加的否定。
增强对称示例
为了创建一个对称问题,使用以下操作将问题转换为相反的问题:
(a)用它们的反义词替换单词
(b)添加否定词(not)
(c)删除否定词(not)
对于(a),从训练语料库中选择出现频率最高的形容词或动词(例如更小smaller,增加increases),然后专业的注释者为每个频繁出现的词编写反义词(我们将这个小词典记为D)。更多细节可以在附录A中看到。
附录A 人工注释的详细信息
本节中,将介绍用于对称示例创建(the(a)操作)的人工注释的详细信息。首先从WIQA和QuaRel训练数据中抽取最常用的500个动词、50个动词短语和500个形容词。然后,注释者选择具有某种极性的单词(例如,增加,更早)。随后,他们为每个选定的动词和形容词注释反义词。因此,创建了从比较QA数据集中挖掘的64个反义词对。对所有三个数据集重用相同的字典。带注释的反义词对的示例如表5所示。
对于(b)和(c),添加否定词或删除否定词(例如,not)。对于训练数据中的所有问题,如果一个问题在操作(a) 中包含D中的一个单词,或者在(b)和(c)匹配操作的模板(which * is↔which * is not),我们应用该操作来生成qsym。我们通过将答案a∗重新标记为A中的相反答案选择来获得a∗ sym(参见附录 B)。
附录B 在WIQA和HotpotQA上重新标记答案的详细信息
介绍WIQA和HotpotQA中答案重新标记操作的详细信息,其中候选答案的数量超过了两个。
WIQA 中的答案重新标记(对称) 在WIQA中,每个标记的答案a∗采用以下值之一:{更多,更少,无影响}。其中更多more与更少less是相反的,无影响no effects是中性的选择。另外,在WIQA中,一个问题q由一个原因c和一个结果e组成(如上述发生海啸为因,木头会更潮湿为果),可以执行三个操作:(a)替换,(b)添加和(c)删除单词。当对c和e都加上运算时,它会将问题两次转换为相反的问题,因此原始答案保持不变(如果不发生海啸,木头潮湿情况会更少吗?发生->不发生、更潮湿->不潮湿,因和果双重改变,原始答案不变)。当我们将c、e其中一个执行操作时,它会将问题转换一次,因此答案应该是相反的(如果不发生海啸,木头会更潮湿吗?,因此答案不会更潮湿)。鉴于这两个假设,将答案重新标记为: (i)如果我们只对e或c应用一个操作并且a∗是more或less,则a∗ sym 将与 a∗ 相反, (ii)如果我们只对e或c应用一个操作并且a* 是no effect,则a* sym还为no effect (iii)如果我们对e和c中同时都应用一个操作,asym保持不变
WIQA 中的答案重新标记(传递) 对于传递性示例,根据因果关系的两个假设重新标记答案。传递性问题由两个问题创建,X1=(q1,p,a∗1)和 X2=(q2,p,a∗2),其中q1和q2由(c1,e1)和(c2,e2)当e1=c2时成立。如果X1的a1为“更多”,则表示c1导致e1。e1相当于第二个问题(c2)的原因,a*2代表c2和e2的因果关系。因此,如果a∗1是正因果关系,则c1和e2的关系定义为a∗2。我们假设如果a∗1是“更多”,a∗3(=a∗trans)将与a2相同,并按照这个假设重新标记答案。
HotpotQA上的答案重新标记 在HotpotQA中,没有给出候选答案A。因此,从q中提取可能的答案。通过与数据集给出的段落标题进行字符串匹配来提取问题q中包含的两个实体。如果发现要比较的两个实体并且它们都包含在黄金段落中,我们假设这两个实体是可能的答案。新答案a∗ sym将被确定为不是原始答案a∗的那个。
增强传递示例
首先找到一对两个因果问题X1=(q1,p,a∗1)和X2=(q2,p,a∗2),其q1和q2由(c1,e1)和(c2,e2)组成,其中e1=c2成立。当a∗1是正因果关系时,为q3=(c1, e2)创建一个新示例Xtrans=(q3,p,a∗2)。和->
采样增强数据
添加所有一致的示例可能会改变原始数据分布,这可能导致性能下降。可以基于模型的预测不一致或在每个epoch随机抽样来选择数据。本文在训练开始时随机抽样增强数据,并在训练期间对所有时期使用相同的例子。尽管它很简单,但与其他采样策略相比,这产生了具有竞争力甚至更好的性能。
使用促进预测一致性的正则化项(一致性损失,Lcons)对学习目标(任务损失,Ltask)进行正则化
第一项Ltask惩罚做出不正确的预测。第二项Lcons惩罚违反对称和传递逻辑规则的预测,如下所示,λsym和λtrans是加权标量以平衡两个一致性促进目标:.
先前对于NLI一致性的研究(Li et al.,2019)通过交换前提和假设来计算一对示例之间的预测不一致,这不能直接应用于QA任务。相反,本文的方法利用数据增强的一致性来创建基于通用逻辑规则的配对示例。这使得可以将一致性正则化应用于各种QA任务。
不一致损失
一致性损失:计算原始标记答案的预测概率与增强数据的预测概率之间的不相似性定义损失,定义如下:
传递性损失:使用带有乘积T范数的绝对损失,该范数将逻辑合运算(q1,p,a1)∧(q2,c,a2)投影到两个运算概率的乘积p(a1|q1,p) p(a2|q2,p),遵循(Li et al.,2019),计算传递一致性损失为:
退火
模型的预测在训练开始时可能不够准确,无法使一致性正则化有效。我们执行退火。首先在方程中设置λ{sym,trans}=0。(4)并为τ epochs训练一个模型,然后用完整的目标训练它。
数据集和实验设置
本文在三个QA数据集上进行实验:WIQA、QuaRel和HotpotQA。如表1所示,这三个数据集在推理能力和任务格式方面大不相同。在WIQA中,有3,238个对称示例和4,287个传递示例,而从原始训练数据中遗漏了50,732个对称对和1,609个传递三元组。QuaRel和HotpotQA没有任何需要一致性的训练对。本文的方法随机抽取了WIQA、QuaRel 和HotpotQA的50%、80%、90%的增强数据,分别为这些数据集产生了24,715/836/3,538个新的训练示例。
本文使用标准的F1和EM(Exact Match)分数来评估HotpotQA的性能,并使用accuracy来评估WIQA和QuaRel。遵循Minervini and Riedel (2018)本文报告了违反一致性的情况,以评估提高预测一致性的方法的有效性。将违反一致性度量v计算为不符合对称和传递逻辑规则的示例的百分比。更多模型和实验细节见附录。
附录C 基线模型的详细信息 本文使用RoBERTa(Li et al.,2019)作为baseline(基线,补充)。在这里,展示了三个不同QA数据集的模型细节。
对于WIQA,使用基于分类的模型
由于WIQA问题的候选答案设置为{more,less,no effects},使用基于分类的模型来研究NLI任务。该模型的输入是 [CLS] p [SEP] q [SEP]。使用与第一个输入标记([CLS])对应的最终隐藏向量作为聚合表示。然后,以与 (Devlin et al.,2019;Liu et al.,2019)中相同的方式预测答案为C类的概率。
对于QuaRel,使用 的多项选择QA模型
对于QuaRel,给出了两个答案选择,因此将任务表述为多项选择QA。在原始数据集中,所有的p、q和A组合在一起,例如(地球上最快的陆地动物,一只猎豹正在与一只兔子进行 100 米的比赛。谁赢得了比赛?(A)猎豹(B)兔子),因此可以将给定的组合问题处理为p、q和A(例如,上面写的问题将是p =地球上最快的陆地动物,猎豹正在与兔子进行 100 米的比赛。q=哪一个赢得了比赛?A ={猎豹,兔子})。那么输入将是[CLS] p [SEP] “Q:”q “A:”ai [SEP],使用第一个输入标记([CLS])对应的最终隐藏向量作为聚合表示。然后,以与 (Liu et al., 2019) 中相同的方式预测答案是答案选择ai的概率。
对于HotpotQA,使用Span QA模型
使用为SQuAD研究的RoBERTa span QA模型用于HotpotQA。由于只考虑可以从p中提取答案的问题,因此与HotpotQA之前的一些研究不同,没有对模型添加任何修改。
补充:如果你是机器学习的初学者,做相关的实验时,那么你可能用“随机猜测”作为和你正在实验的模型比较的依据。如果你在机器学习领域有深入研究,想发顶会论文,那么需要使用目前最好的系统或模型(SOTA)来作为和你的创新点的模型进行比较的依据。这个作为和你的模型就行比较的模型称为基线模型,说白了就是参照物。
主要结果
表2表明,本文的方法(DA和DA+Reg)比最先进的RoBERTa QA在所有三个数据集上的性能提高1到5分, ②使得最先进的分数在WIQA和QuaRel分别增长了4.7%和8.4%(绿色) ③在三个数据集上,本文的方法显着减少了预测的不一致,展示了数据增强和正则化方法的效果。(红色) ④在WIQA上,RoBERTa在13.9%的对称示例和10.0%的传递示例中表现出违反一致性。本文的方法将违反对称和传递一致性的情况分别减少到8.3%和2.5%。(表中未显示)
表2:WIQA、QuaRel和HotpotQA结果:我们报告了WIQA和QuaRel的测试和开发accuracy(%)以及HotpotQA的开发F1。DA和Reg表示数据增强和一致性正则化。“SOTA”是 Tandon et al. (2019)为WIQA和Mitra et al. (2019)对于QuaRel.v存在违反一致性的情况。
训练数据有限的结果
表2还表明,本文的方法在训练数据稀缺的情况下特别有效:当只有20%的标记数据可用时,DA+Reg相较于 WIQA和QuaRel在RoBERTa基线上分别有超过12%和14%的绝对精度(accuracy)改进。
消融研究
本文在表3上分析了每个组件的有效性。DA和Reg各自改进了基线,并且组合在WIQA和QuaRel上表现最佳。DA(standard)在准确性和一致性方面都没有比基线模型有显着的改进,这表明逻辑引导的增强为一致的QA提供了额外的归纳偏差,而不是放大训练数据的数量。由于WIQA由一些传递或对称示例组成,还报告了仅在WIQA上使用Reg的性能。性能提升较小,说明与DA结合的重要性。
表3:对WIQA和QuaRel开发数据集进行数据增强的消融研究。
定性分析
表4显示了定性示例,将本文的方法与RoBERTa基线进行了比较。定性分析表明,DA+Reg 减少了相反选择之间的混淆,并为DA显示出相对较小概率差异的问题分配了更大的概率给真实标签。
表 4:RoBERTa、+ DA、+ DA + Reg 的定性比较。示例被部分修改。
在HotpotQA上,基线模型显示出严重的一致性违规,如表2所示。表4中的HotpotQA示例表明,RoBERTa对q和qsym选择了相同的答案,而 DA对这两个问题的回答都正确,证明了其对表面的鲁棒性变化。假设基线模型利用了问题中出现的统计模式或数据集偏差,并且本文的方法减少了模型利用这些虚假统计模式的趋势,这导致一致性的巨大改进。
本文引入了一个逻辑引导的数据增强和基于一致性的正则化框架,以实现准确且全局一致的QA,尤其是在有限的训练数据设置下。本文的方法在三个完全不同的QA数据集上显着改进了最先进的模型。值得注意的是,本文的方法提高了QuaRel和WIQA的最先进模型,这两个标准基准需要丰富的逻辑和语言理解。本文进一步表明该方法可以有效地从极其有限的训练数据中学习。