(译)⽤于多选式阅读理解任务的基于BERT的模型
ABERTbadmodelforMultiple-Cho面包的简笔画 iceReadingComprehension
Abstract
在本⽂中,我们提出了⼀个基于BERT的深度协同匹配⽹络(DCN),该⽹络的性能与RACE数据集上的基线模型相⽐有了显著的提⾼。我
们的DCN⽅法通过计算⽂章/问句之间的注意⼒孟读音 权重来获得问句感知的⽂章表⽰,同理,我们也通过计算⽂章/选项之间的注意⼒权重来获得
选项感知的⽂章表⽰。我们对基线模型的超参进⾏了微调,并应⽤了简单数据扩张策略。我们的DCN模型在RACE上实现了66.2%的准确
率。最终,我们基于所有的模型建⽴了集成模型,该模型实现了67.9的准确率,此性能在RACE数据集上排第6名。
1Introduction
⾃动阅读理解可被⼴泛应⽤于商业领域中,例如技术⽀持和故障排除、客户服务、医疗记录和⾦融报告的理解等。本报告将探索如何使得计
算机在⽂本理解任务中达到⼈类⽔平。如果智能代理真的可以通过学习算法在⽆⼈类监督的情况下快速⾼效地理解⽂本,那么许多依赖于⾃
动化的⾏业都将从中受益。在众多⽂本理解任务中,本项⽬主要集中于RACE数据集上的⾃动多选式阅读理解任务。与SQuAD那种⽂本写
作风格固定且单⼀的数据集相⽐,RACE数据集中的答案并不能从原⽂中直接提取,这是因为回答这些问题需要更⾼⽔平的理解和推理。具
体来说,它有以下挑战:
(1)它是由⼈类专家创建⽤于测试⾼中和初中学⽣的阅读理解技能的,因此它要求更⾼⽔平的推理和计算技术。
(2)它包含的问题类型多样,⽐如总拐枣子 结、推理、数值计算和内容匹配。
(3)它的⽂章涉及多个领域,写作风格迥异。
因此,为解决上述挑战,本报告将以四种⽅式处理机器阅读理解问题:⼀种是通过预训练的BERT算法,其他的分别是通过我们提出的DCN
⽅法、AOA⽅法以及将上述三种进⾏集成的模型。我们对这些基础模型的超参进⾏了微调,并且应⽤了简单数据扩张的策略。我们通过集成
技术将所有模型结合起来,希望在多选式阅读理解中能实现最优性能。
1.1Problemdefinitions
我们算法的输⼊是由⼀篇⽂章、⼀个问题和⼀个选项组成的⼀个序列。随后我我们使⽤BERT、AOA、DCN和集成模型去预测该问题的正确
答案。
为了测试该模型在给定⽂章和问题的情况下预测出正确答案的成功性,我们将根据模型预测出的正确答案的数量与数据集中的问题总数之间
的百分⽐来评估模型的性能。因此,整个项⽬中都是⽤accuracy作为评测指标来验证我们模型的性能,该指标定义如下:
2RelatedWork
已经有很多机器学习模型成功解决了阅读理解问题。也有很多数据集(AQuAD、NEWSQA和METest)被⼴泛⽤于测试这些模型。然⽽,
这些数据集的内容均来⾃⼀个特定领域或以⼀种固定的写作风格得到的,并且还有基于范围的答案。因此,我们通过选择⼀个相对较新的数
据集来挑战⾃⼰,RACE包含了多种主题和写作风格的⽂章,因此,我们模型的⽬的是要接近⼈类的逻辑思维和理解能⼒。
先前的论⽂主要关注成对序列匹配以提⾼神经⽹络的阅读理解能⼒。⽆论是匹配⼀篇⽂章和相应问题、选项的联接结果,还是匹配⼀篇⽂章
与问题,然后去选择答案,这些⽅式都是有效的。在这些⽂献中,许多类型的注意⼒被提出去强化神经⽹络在⽂章级别的推理能⼒。Xu等⼈
使⽤多跳推理机制从⽽提出了动态融合⽹络。Zhu等⼈提出了分层注意⼒流⽤于建模⽂章、问题和选项之间的交互。BERT实现了七个NLP
任务的最优结果。受双协同匹配注意⼒的启发,我们提出了基于BERT的DCN。
3DatatandFeatures
RACE数据集包含初中部分和⾼中部分。如图1所⽰,RACE-Middle中有7139篇⽂章,RACE-High中有20794篇⽂章。此外,⽂章加起来总
共27933,问题加起来总共97687。如果我们想看⼀下每个⼦数据集的情况,我们可以很轻松的观察到这两个⼦集的训练集:测试集:验证集为
9:0.5:0.5。我们也计算了初中集部分的⽂章平均约为250个词,⾼中集部分的⽂章平均约为350个词,这将为基线模型选择正确的最⼤序列长
度提供很好的参考。
3.1DataPreprocess
我们将⼀篇⽂章、⼀个问题和⼀个选项及特殊标记CLS和SEP联接起来作为BERT模型的输⼊序列。因此,对于每个问题,我们将有4个这
样的输⼊,并将正确选项的标签作为真实标签并预测答案。
3.2DataAugmentation
简单数据扩张(EDA)原本是⽤于强化⼩规模数据集上的⽂本分类任务的。EDA打算通过以下操作来创建新⽂章和增强⽂章:
(1)通以此替换:随机选择⼀些⾮停⽤词。⽤它们的同义词来替换它们。
(2)词插⼊:找到⼀句话中某个⾮停⽤词。在这句话中的随机位置插⼊其同义词。
(3)词交换:随机选择两个词进⾏位置交换。
(4)词删除:以指定的概率随机删除句⼦中的单词。
因此,EDA扩⼤了现有数据集的⼤⼩和多样性。我们希望这可以训练过程中的过拟合问题,有助于建⽴更健壮的模型。
4Methods
如前所述,我们探索了AoA模型、BERT、DCN和集成模型商业秘密是指 。
4.1BERT
2018年BERT在11个NLP任务上实现了最优性能。我们的多选模型是基于HuggingFace实现的pytorch版本的BERT构造的,在BERT之后添
加⼀个全连接层和⼀个softmax函数去预测正确答案。然后我们在RACE数据集上微调pre-traineduncadBERT作为我们的基线⽅法。基础
版BERT和增⼤版BERT的编码层数量分别为12和24。
BERT通过多头注意⼒进⼀步完善了⾃注意⼒层。它在两⽅⾯提⾼了性能。⼀⽅⾯,它使得模型可以捕获长距离词义依赖。另⼀⽅⾯,它提
供了表⽰⼦空间的能⼒。
最后,在我们实现的BERT模型中总共有15个超参。其中,我们选择了5个对模型性能影响最显著的超参进⾏实验。
(1)Learningrate:Adam优化器的初始学习率。
(2)Freezelayers:冻结BERT的部分编码层。该参数的取值取决于BERT的类型,因此其取值可能是6或12。
(3)L2regularization:权重衰减率被设置为0.1,0.01,或0.001。
(4)Batchsize:训练集中⽤于估计误差梯度的样本数。
(5)Maxquencelength:输⼊序列的最⼤长度。长于此数值的序列被截断,⼩于此数值的序列被填充。
4.2AttentionoverAttention
我们在此项⽬中的最初动机是进⼀步推动BERT中的注意⼒概念并引一朵玫瑰花 ⼊AoA层到原始的BERT中去。这是⼀个相对较新的神经⽹络结构,它
致⼒于在现有的⽂档级别的注意⼒之上使⽤另⼀种注意⼒机制。⽽不是仅仅为每个词汇总或平均单个注意⼒以获得最终的注意得分,在查询
中执⾏额外的“重要性”分布,以确定在给定单个⽂档单词的情况下,哪些查询单词更重要。因此,它增加了可有效⽤于神经⽹络的信息。
我们可以动静结合的诗句 得到按⾏softmax和按列softmax的结果,随后可获得⼀个新的变量Si。每个选项是正确答案的最终概率由如下公式获得:
然⽽,我们很快意识到由于BERT结构的性能,AoA很难被集成到原始的BERT中去。
4.3DeepComatchNetwork
相反,我们通过引⼊问句感知的⽂章表⽰和选项感知的⽂章表⽰设计了DCN结构,以充分挖掘{⽂章、问句、选项}间的有效信息。在进⼊
comatch层之前,⽹络先通过5层P2Q/Q2P和P2A/A2Pcoattention。该结构的输⼊就是BERT编码层输出的⽂章、问句和选项的隐状态。最
后,分类层将在comatch块中的最⼤池化层之后输出预测的答案。
⾸先,⽂章、问句和选项有BERT进⾏编码:
这⾥的Hp
∈R
P*L
,H
q
∈R
Q*L
,H
a
∈R
A*L
是由BERT⽣成的隐状态。这⾥的P、Q、A分别是⽂章、问句和选项的序列长度,L是BERT隐状态
的维度。
然后,我们使⽤如下公式处理P2Q/Q2P和P2A/A2P之间的coattention操作。注意,这⾥与先前的论⽂不同;在我们的模型中,我们还探索了
⽂章和选项之间的(注意⼒)关系。
这⾥的-和.分别表⽰矩阵按元素相减和按元素相乘。[;]表⽰矩阵按⾏联接。我们⽤了不同的权重,因此我们获得了Sp
和S
p`
。然后我们联接
经最⼤池化操作后的结果:
最后,我们计算分类其层输出结果的交叉熵损失函数值。
4.4Enmble
为进⼀步提⾼性能,我们也探索了集合所有上述技术的集成模型。在通过不同超参建⽴不同的BERT模型之后,我们将DCN和EDA数据集进
⾏合并以得到⼀个集成模型。之后,我们将探索每个模型的相对权重并调整权重以获得更好的性能。
5Experiments/Results
我们对基线模型的超参进⾏微调得到了62.2%的准确率。我们应⽤EDA得到了0.6%的提升。加上我们的DCN模型得到了66.2%的准确率。最
终,我们建⽴的集成模型达到了67.9%的准确率,它在RACE排⾏榜上可排到第6名。
5.1BERT
在本项⽬中,我们队BERT基础模型中的以下超参进⾏了实验。
5.1.1Learningrate
基于基线模型,我们尝试了三种初始学习率,即1e-5、5e-5和1e-4。结果如图4所⽰。学习率1e-4⽤蓝线表⽰,其损失先下降后上升并稳
定在⼀个较⾼值,表明学习率太⼤。对于1e-5和5e-5这两个学习率,其损失都随着迭代次数的增加⽽减⼩。但是显然学习率5e-5可以获得更
⼩的损失并提供最佳性能。迭代的单位是1K个样本。在学习过程中,由于学习率会动态变化,所以损失下降地会很⼤。
5.1.2FreezeBERTencoderlayers
我们探讨了冻结层的数量对模型性能的影响。由于GPU内存限制,最⼤序列为320,batchsize为8,结果如上表所⽰。从表中可以看出,
随着冻结数的增加,性能越来越低。当冻结层数超过3层时,性能会下降地更快。
5.1.3L2regularization
此外,我们设置L2正则化系数分别为0.1、0.01和0.001探索了权重衰减参数。我们获得了相应的性能,分别为62.1%,62.2%和62.1%。因
此,L2正则化为0.01时可获得最佳性能。
5.1.4Batchsize
由于BERT是⼀蒙牛广告 个庞⼤的⽹络,因此我们使⽤梯度累加技术来减少GPU内存需求。我们尝试了四种不同的批次⼤⼩:16、24、32和64。我
们先将⽤于BERT训练的batchsize⼤⼩设置为32,获得了61.9%的性能;但是,随着我们将batchsize⼤⼩分别减⼩到24和16,准确性都提
⾼了⼀点,分别达到62.3%和62.5%。同样,当我们将批次⼤⼩增加到64时,准确性会降低。因此,似乎batchsize⼤⼩在32、24和16间
取值时可以达到最佳模型,但是batchsize⼤⼩为16的模型性能最佳,这⽐batchsize⼤⼩为24时⾼0.22%,⽐batchsize⼤⼩为32时⾼
0.65%。
5.1.5Maxquencelength
最⼤序列长度是⼀个超参数,在基于BERT的模型中起着⾄关重要的作⽤。最⼤序列长度从320增加到450时,性能提⾼了1.5%。我们先在
BERT基本模型上对等于320的最⼤序列长度进⾏了测试,得出的准确度为61.1%。随着最⼤序列长度的增加,模型的性能也随之提⾼。对
于最⼤序列长度分别取值380、420和480时,我们分别获得了61.3%,61.8%和62.6%的准确度。因此,我们得出结论,更⼤的最⼤序列长
度可以提⾼模型的准确性。从直觉上讲,这是正确的,因为某些段落的长度超过了400个单词。但是,模型⼤⼩与最⼤序列长度成⽐例,因
此会导致更多的显存需求。由于资源有限,我们⽆法探索更多的长度。
5.2DataAugmentation
我们将训练集整体提⾼了10%,⼀半是基于RACE-middle,另外⼀半是基于RACE-high的。我们仅对随机选择的段落应⽤了增强,并通过
将其与原始问题和选项连接在⼀起进⾏了相同的预处理。在EDA中,有⼀个参数指⽰通过每种增强技术在每个段落中更改的单词百分⽐。例
如,如果设置为0.1,我们的EDA实现将把10%的单词更改为其同义词,随机单词插⼊和交换将发⽣在单词总数的10%上,⽽10%的单词将
被随机删除。我们将该参数分别设置为0.1、0.2、0.3和0.5进⾏了实验,每个参数分别实现了65.2%,65.6%,64.9%和64.9%的精度。因
此,尽管精度差异不是很⼤,但取值0.2时得到了最佳性能。但是,与不使⽤EDA的⼤型BERT模型所获得的准确性相⽐,添加增加参数0.2
的训练数据的10%可以使模型准确性提⾼0.6%。
因此,我们发现最好的性能达到了65.6%,如图5所⽰,与原始的RACE数据集相⽐,⼤约是获得了0.6%的提升。有两个可能的原因使得提
⾼的并不多。⼀种是我们可能需要调整EDA的超参数,对不同的操作使⽤不同的⽐率,同义词替换应该噪声较⼩,但其他3种操作会增加更
多的噪声。另⼀个原因是简单的数据扩充倾向于在⼀个⼩的数据集上很好地⼯作,但是我们的⽐赛包含6400篇⽂章,相对来说是⼀个⼤的数
据集。
5.3DeepComatchNetwork
我们尝试将⼀些新的注意⼒应⽤于多选式阅读理解中。⾸先探讨的是在基础BERT模型中添加AoA层。然⽽却只获得了25.1%的准确率,该
结果很低,这是由于当两个层在编码器层结合时,BERT的⾃注意层与AoA层相冲突。
然后,我们受深度comatch⽹络的启发设计了DCN。我们根据BERT隐藏输出创建了多层深度匹配⽹络。在深度⽹络中,我们设计了⼀个新
的协同注意层,在BERT编码之后,我们⼜设计了5层协同注意层。我们的DCN通过关注⽂章/问题和⽂章/答案之间的关系,从问题感知的⽂
章表⽰和答案感知的⽂章表⽰中获益。然⽽,由于GPU资源的限制,我们对DCN进⾏了三层训练,在DCN的单模模式下,训练精度达到了
66.2%。
5.4Enmble
在探索了所有这些不同的模型之后,我们按照最初的计划创建了集成模型,因为我们确信集成学习可以帮助实现最佳性能。在保持模型最佳
性能的前提下,采⽤随机搜索的⽅法来衡量基本和large-BERT、EDA和DCN之间的精度。最后,在集合模型中得到了67.9%的精度,如图5
所⽰。换句话说,与DCN相⽐,我们的准确率提⾼了1.7%。这⼀结果保证了适当权重的集成学习可以提⾼机器学习的效果。
6Analysis
下图显⽰了DCN和基本模型之间的⽐较。DCN在⾼中和初中两个⼦数据集中的性能都优于基线。DCN在处理⾼中数据集中这种长⽽复杂的
⽂章,其性能更为优越。
关键是,通过对BERT错误回答的问题的分析,发现该模型不能进⾏简单的数值推理。例如,在以下错误标记的情况下,第⼀个选项是正确
的。虽然预测的(第⼆个)选项有更⾼的概率,但答案应该是45-18=27年前。
7Conclusion/FutureWork
在DualComatchNetwork的基础上,我们提出了⼀种新的深度匹配⽹络,该⽹络在BERT输出的隐状态之后添加多个匹配注意层。关于乐观的名言 最终,我
们在单个模型中获得了66.2%的准确率,在整体模型中获得了67.9%的准确率。因此,在我们测试的四种算法中,集成模型的性能最好。
与⽬前最先进的69.7%的性能相⽐,我们落后了⼀点的原因可能是由于GPU资源的限制,我们不得不冻结⼏个层,⽆法以更⾼的序列长度进
⾏探索。即使是使⽤多个teslav100gpu的分布式训练也⾯临着内存分配的问题,因此我们⽆法进⼀步探讨,尽管我们发现使⽤更⼤的序列长
度有助于建⽴更精确的模型。
我们的模型和数据集太⼤,每个实验都需要很长时间来训练和测试。在未来,随着时间和GPU内存的增加,探索更深层的DCN和更⼤的最
⼤序列长度将是⼀件有趣的事情。我们还想花更多的时间在超参数调优EDA、DCN和集成模型上,并尝试在另⼀个数据集上先进⾏训练,
以便在RACE数据集上进⾏迁移学习。
本文发布于:2023-03-23 19:36:49,感谢您对本站的认可!
本文链接:https://www.wtabcd.cn/fanwen/zuowen/1679571411360723.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文word下载地址:于建立.doc
本文 PDF 下载地址:于建立.pdf
留言与评论(共有 0 条评论) |