赞
踩
BART: Denoising Sequence-to-Sequence Pre-training for Natural Language Generation, Translation, and Comprehension
BART: 用于自然语言生成、翻译和理解的去噪序列对序列预训练
【机构】:Facebook AI
【作者】:Mike Lewis, Yinhan Liu, Naman Goyal, Marjan Ghazvininejad, Abdelrahman Mohamed, Omer Levy, Ves Stoyanov, Luke Zettlemoyer
【论文地址】:https://www.aminer.cn/pub/5dbab2523a55acea3c05b02b?conf=acl2020
【收录会议】:ACL 2020
【代码】:https://github.com/pytorch/fairseq/tree/master/examples/bart
《BART: Denoising Sequence-to-Sequence Pre-training for Natural Language Generation, Translation, and Comprehension》是由Facebook AI Research的一组研究人员提出的一种序列到序列的预训练模型。这篇论文主要介绍了BART模型的设计和实现,以及在自然语言生成、翻译和理解等多个领域上的表现。
BART(Bidirectional and Auto-Regressive Transformer)模型是一种基于Transformer的序列到序列预训练模型,通过对输入序列进行随机掩码和文本生成,学习对文本进行压缩、生成和解压缩的能力。BART使用了一种特殊的掩码方法,称为“噪声掩码”,以此来实现输入的噪声生成和自监督训练。同时,BART也采用了一种自回归的方式进行训练,即在解码器中逐步生成输出,从而保证生成的输出和原始输入之间的语义一致性。
BART的训练主要包括两个部分:
BART在多个自然语言处理任务中取得了很好的表现,包括机器翻译、文本生成、问答系统等任务。其表现优于以往的一些经典的预训练模型,如BERT、GPT-2等。
总之,《BART: Denoising Sequence-to-Sequence Pre-training for Natural Language Generation, Translation, and Comprehension》这篇论文提出了一种序列到序列的预训练模型,其设计和实现具有创新性,并在多个自然语言处理任务上取得了优秀的表现。
BART论文的总体思想是使用一个序列到序列的模型,通过对原始文本进行噪声修复任务的预训练来提高各种自然语言处理任务的性能,包括生成、翻译和理解任务。通过引入不同类型的噪声(如掩码、轮换和删除),模型学习从损坏的输入中重构原始文本的能力,从而增强模型的泛化能力和鲁棒性。此外,论文还引入了一种可控的文本生成方法,称为“填充掩码的语言建模”,以帮助模型进行无监督的多任务预训练。通过这些创新点,BART论文提出了一个全新的预训练模型,成为了自然语言处理领域中最具竞争力的模型之一
BART(双向和自动回归转化器)是一种序列到序列(Seq2Seq)模型的预训练方法。它基于变换器结构,使用去噪自动编码器(DAE)框架进行预训练。
BART的方法包括几个步骤:
在预训练之后,BART模型可以针对各种下游任务进行微调,如机器翻译、总结和问题回答。
BART(Bidirectional and Auto-Regressive Transformer)是在 "BART: 用于自然语言生成、翻译和理解的去噪序列对序列预训练 "的论文中提出的。它是一个基于Transformer架构的序列到序列模型,并在去噪自动编码器任务上进行了预训练。
BART预训练包含以下几个部分:
Masked Language Model (MLM):在输入序列中,将随机一定比例的token替换为特殊的掩码标记,让模型预测掩码标记所代表的单词。
Sequence-to-Sequence Learning (Seq2Seq):将一段文本作为输入序列,在输出序列中生成一段文本,用于翻译、摘要等任务。
Denoising Autoencoder:将输入序列损坏后作为模型的输入,模型的目标是还原原始输入序列。
DAE主要应用于BART预训练的第一阶段,即Masked Language Model(MLM)和Sequence-to-Sequence Learning(Seq2Seq)之前
Shuffled Language Modeling (SLM):将输入序列中的一些token随机打乱,让模型重新将它们组合成原始序列。
Sentence Reconstruction (SR):将输入序列分为若干个段落或句子,随机删除其中一些句子或段落,并让模型重新生成完整的原始序列。
Text Infilling (TI):在输入序列中随机删除一些单词或短语,并让模型填充缺失的部分。
Document Modeling (DM):将输入序列分为若干个段落或文档,随机删除其中一些段落或文档,并让模型重新生成完整的原始序列。
- BART模型的Sequence-to-Sequence Learning(Seq2Seq)和洗牌语言建模(SLM),句子重建(SR),文本填充(TI),文档建模(DM)这几个技术都是BART模型中的预训练任务。
- 具体来说,Seq2Seq任务在BART的训练中起到了基础的作用,通过大量的无监督训练,BART的Seq2Seq部分能够自动学习到输入输出序列之间的对应关系,这对后续的生成任务有很大帮助。
- SLM任务和SR任务也有助于训练BART的Seq2Seq部分,因为它们通过改变输入和输出的顺序,引入了更多的随机性和噪声,可以使模型更加健壮。
- TI任务则可以帮助模型学习到填充缺失的文本信息,从而提高模型的生成能力。
- 最后,DM任务则可以使模型学习到更长的文本结构和关系,从而提高其理解能力。
总的来说,BART模型中的这些预训练任务相辅相成,共同构建了一个强大的自然语言处理模型。
BART模型的Masked Language Model (MLM)与洗牌语言建模(SLM),句子重建(SR),文本填充(TI),文档建模(DM)都是预训练任务。其中,MLM是基础任务,其他任务都是在MLM的基础上进行的补充,以进一步提高BART模型的能力。
- SLM任务通过对输入序列中的随机位置进行洗牌,使得模型更加关注输入序列的全局结构,学习序列的长期依赖关系。
- SR任务则通过将输入序列分为两个部分,随机删除其中的一部分,并要求模型根据另一部分重构原始序列,从而促进模型学习语义信息和句子结构。
- TI任务则通过将输入序列中的随机位置替换为特定的占位符(如[MASK]),然后要求模型预测这些占位符所代表的单词。这使得模型更加注重局部信息和上下文,从而提高了模型的上下文感知能力。
- DM任务则通过将多个文档合并成一个较长的文档,并将这个文档随机分成多个段落,要求模型根据上下文生成下一个段落。这个任务可以帮助模型理解文档的整体结构和语义关系,提高模型的文档生成能力。
BART的预训练分为两个阶段,第一个阶段使用MLM、SLM和SR三个任务进行预训练,第二个阶段使用TI和DM两个任务进行微调。
具体来说,第一个阶段分别使用以下任务:
第二个阶段分别使用以下任务:
这些任务的目标是让BART学习自然语言的各个方面,使其能够适应各种下游任务,例如机器翻译、文本摘要和对话生成。
BART模型的Masked Language Model (MLM)部分与BERT模型的MLM部分相似,都是将输入序列的一部分token进行遮盖(mask),然后预测被遮盖的token。
总之,BART模型的MLM部分通过遮盖一部分token来预测被遮盖的token,同时使用了多种tricks来增强模型的泛化能力和鲁棒性。
BART模型的Sequence-to-Sequence Learning部分包含了两个阶段的训练过程:预训练和微调。
总之,BART模型的Sequence-to-Sequence Learning部分通过预训练和微调两个阶段的训练过程,实现了在自然语言处理任务上的高效学习和应用。
BART模型的Denoising Autoencoder (DAE)部分是用于预训练BART的一个关键组成部分。它的目的是让模型从噪声数据中学习如何生成干净的数据。
BART模型中的洗牌语言建模(Shuffled Language Modeling, SLM)是一种自监督学习任务,旨在进一步提高模型的泛化能力。
在SLM中,模型需要预测一个句子中打乱顺序的单词序列的正确顺序。具体来说,给定一个句子,首先随机打乱其中的单词顺序,然后将这个打乱顺序后的句子作为模型的输入,模型需要输出原始句子中单词的正确顺序。这个任务要求模型对单词在句子中的位置有更深入的理解,进一步提高了模型的泛化能力。
L S L M = − l o g P ( y t ∣ x 1 : t ) L_{SLM} = -logP(y_t|x_{1:t}) LSLM=−logP(yt∣x1:t)
通过最小化SLM损失函数,模型能够学习到单词在句子中的位置信息,进一步提高模型的泛化能力。
BART模型的句子重建(Sentence Reconstruction,SR)部分是指对输入句子进行随机删除、添加、替换等操作,然后将操作后的句子输入到BART模型中,通过最小化重建句子与原始句子的差异来进一步训练模型。这一部分的主要目的是使模型更好地学习语言的局部上下文和语义信息,提高其对输入序列的理解能力。具体来说,SR部分分为两个阶段:
整个SR部分的训练过程可以看作是一个无监督的预训练过程,通过训练模型对不完整的句子进行重建,从而提高模型的鲁棒性和泛化能力。
BART模型的文本填充(Text Infilling,TI)部分是指在训练时,随机遮蔽句子中的一些单词,并要求模型预测被遮蔽的单词。这个任务可以被看作是句子层面的语言模型,其中模型需要对整个句子进行理解,并预测遮蔽单词的上下文。这个任务可以提高模型对文本上下文的理解和生成能力。
在预测时,TI部分可以用于生成带有缺失单词的文本。具体来说,可以将一个完整的句子输入模型,并遮蔽一些单词。模型会预测被遮蔽的单词,并输出一个完整的句子。这个任务可以用于生成缺失的文本,比如自动摘要、机器翻译等。
BART模型的文档建模(Document Modeling,DM)是其预训练中的另一任务。该任务的目标是将一个文档中的多个句子合并成单个连续的文本序列,并在此基础上预测下一个句子。具体来说,该任务将一个文档拆分成多个句子,对每个句子进行一些噪声处理,然后将它们合并成一个文本序列,其中不同句子之间用一个特殊的分隔符进行分割。这个序列作为模型的输入,而目标是预测下一个句子。为了使模型能够更好地理解文档级别的语义,DM任务还引入了一个掩码机制,用于掩盖输入序列中的一些句子,以便模型在训练时必须学习如何从其余句子中推断出被掩盖的句子的内容。
BART模型的训练目标是最大化给定输入序列x的条件概率 P ( y ∣ x ) P(y|x) P(y∣x),其中y表示目标序列。
BART模型的微调是指在预训练阶段之后,将模型进一步调整以适应特定任务的过程。通常情况下,微调阶段包括以下步骤:
加载预训练模型:首先,需要加载已经预训练好的BART模型,可以使用Hugging Face Transformers库中的预训练模型。预训练模型可以是通用的,也可以是针对特定任务的。
数据准备:准备一个包含有标注数据的数据集,该数据集应与模型预训练时使用的数据集相似。此外,需要将数据集转换为BART模型的输入格式,通常是将输入序列编码为tokens或token IDs,并将标注的目标序列进行相应的编码和处理。
定义微调目标:根据具体任务需要,定义合适的微调目标和损失函数。例如,对于文本摘要任务,可以使用ROUGE指标作为微调目标,对于文本翻译任务,可以使用BLEU指标作为微调目标。
微调模型:使用预训练模型初始化模型参数,并在任务特定的数据集上进行微调。在微调过程中,可以选择冻结部分模型参数,如编码器或解码器的一部分,以避免过拟合。
超参数调整:调整学习率、批次大小、梯度累积等超参数,以提高模型性能和稳定性。
训练和验证:使用训练集进行训练,使用验证集进行调参,通过监测验证集的性能来确定何时停止训练。
评估性能:使用评估指标对模型性能进行评估,如ROUGE或BLEU指标。
保存模型:在微调完成后,需要保存微调后的模型以备后续使用。可以将模型保存为Hugging Face Transformers库支持的格式,如PyTorch模型或TensorFlow模型。
在实现上,可以使用PyTorch等深度学习框架来实现BART模型的微调。PyTorch提供了许多方便的工具和函数,例如预训练模型的加载、优化器的选择、损失函数的定义等。同时,也可以借助开源的工具库,如Hugging Face的transformers库等,来快速构建微调模型。
BART模型微调的目标函数取决于具体的任务。对于文本生成任务,如机器翻译和文本摘要,通常采用交叉熵损失作为目标函数。对于序列标注任务,如命名实体识别和情感分析,通常采用序列标注损失函数,如交叉熵损失和F1损失。而对于问答任务,通常采用交叉熵损失和辅助损失函数来优化模型。需要根据具体任务和数据集来选择合适的目标函数。
BART模型的优点
BART模型的缺点:
训练时间长:BART模型的训练时间较长,需要大量的计算资源和时间。
参数过多:BART模型的参数较多,需要较大的存储空间和计算能力。
BART模型的参数量可以有不同的大小,取决于所选择的预训练和微调的规模和任务。根据论文中的描述,BART-base包含了约1.4亿个参数,BART-large包含了约3亿个参数。微调过程中,还可以根据具体任务对BART进行更改,例如添加或减少一些层或隐藏单元,从而更改模型的规模和参数数量。因此,BART的参数量是可以灵活调整的。
生成质量不稳定:虽然BART模型在生成文本方面表现良好,但是有时会出现生成的文本不连贯或不准确的情况,尤其是在生成长文本时。
BART模型接受的最长输入文本长度可以根据具体的实现而有所不同,一般来说,BART在预训练时使用的文本长度可能比在微调时使用的文本长度要长。
根据BART论文中的描述,预训练时使用的最大文本长度为1024个token,而微调时可以根据具体任务进行调整。在使用BART进行生成任务时,输出文本长度也可以根据需要进行调整。
可解释性差:BART模型是一种黑盒模型,其生成文本的过程难以解释,可能会导致一些不可预测的错误。
input_batch = [ ["BOS", "The", "cat", "is", "sleeping", "EOS"],
["BOS", "I", "love", "you", "EOS"],
["BOS", "He", "likes", "to", "eat", "fish", "EOS"]
]
output_batch = [ ["BOS", "The", "cat", "is", "sleeping", "EOS"],
["BOS", "I", "like", "you", "too", "EOS"],
["BOS", "He", "loves", "to", "eat", "fish", "EOS"]
]
input_seq = ["BOS", "I", "like", "apples", "EOS"]
output_seq = bart_model.generate(input_seq)
其中,output_seq
就是由BART模型生成的一个文本序列,例如["BOS", "I", "like", "eating", "bananas", "EOS"]
。
首先加载了预训练的BART模型和分词器,然后通过微调BART模型来适应特定的任务,最后使用微调后的模型生成文本摘要。在微调阶段,需要定义优化器和损失函数,并循环遍历训练数据集来更新模型参数。在生成摘要时,需要将输入文本编码为模型可接受的格式,然后使用模型的generate
方法生成摘要,最后使用分词器将摘要解码为可读的文本格式。
import torch import torch.nn as nn from transformers import BartTokenizer, BartForConditionalGeneration # 加载预训练的BART模型和分词器 tokenizer = BartTokenizer.from_pretrained('facebook/bart-large') model = BartForConditionalGeneration.from_pretrained('facebook/bart-large') # 微调BART模型 optimizer = torch.optim.Adam(model.parameters(), lr=3e-5) loss_fn = nn.CrossEntropyLoss() for epoch in range(3): for input_ids, attention_mask, labels in train_dataloader: optimizer.zero_grad() outputs = model(input_ids=input_ids, attention_mask=attention_mask, labels=labels) loss = loss_fn(outputs.logits.view(-1, model.config.vocab_size), labels.view(-1)) loss.backward() optimizer.step() # 使用微调后的模型生成摘要 input_text = "BART is a powerful model for sequence-to-sequence learning." input_ids = tokenizer.encode(input_text, return_tensors='pt') summary_ids = model.generate(input_ids) summary_text = tokenizer.decode(summary_ids[0], skip_special_tokens=True) print("Input text:", input_text) print("Generated summary:", summary_text)
BART模型的应用范围非常广泛,主要涵盖了自然语言生成、翻译和理解等任务。在自然语言生成方面,BART模型可以用于生成对话、摘要、问题回答等;在机器翻译方面,BART模型可以用于跨语言翻译任务;在自然语言理解方面,BART模型可以用于命名实体识别、语义角色标注、关系抽取等任务。由于BART模型在预训练阶段充分学习了语言的潜在表示,因此在各种自然语言处理任务中都取得了很好的效果。
值得注意的是,作者使用了一种新颖的方法来处理从原始数据中提取的语言生成任务,即将它们分成三个不同的类别(generation, translation和comprehension),分别使用不同的任务和目标函数进行预训练和微调。这种方法有效地扩展了BART的应用范围,同时也可以为未来的自然语言处理任务提供一种可行的框架。
BART使用了多种类型的数据集进行预训练和微调。对于预训练,它使用了包括BooksCorpus、Wikipedia、OpenWebText等在内的大规模文本数据集,用于生成无噪声的输入输出对。对于微调,它使用了各种自然语言处理任务相关的数据集,例如GLUE、SQuAD、WMT等。这些数据集都是公开可用的,可以从官方网站或其他相关资源中获取。
BART模型论文中给出了多个评估指标,具体如下:
这些评估指标用于评估BART模型在各种自然语言处理任务上的性能。
总体来说,论文介绍了BART模型的结构和目标函数,该模型使用无噪声自编码器进行预训练,并具有在各种下游任务上进行微调的接口。论文还对BART模型进行了实验和分析,并对其性能和结构进行了评估和解释。该模型在各种下游任务上都表现出色,具有广泛的应用前景。
我们介绍了 BART,一种用于预训练序列到序列模型的去噪自动编码器。 BART 通过 (1) 使用任意噪声函数破坏文本,以及 (2) 学习模型来重建原始文本进行训练。它使用标准的基于 Tranformer 的神经机器翻译架构,尽管它很简单,但可以看作是对 BERT(由于双向编码器)、GPT(具有从左到右的解码器)和许多其他更新预训练计划。我们评估了许多噪声方法,通过随机打乱原始句子的顺序和使用新颖的填充方案找到最佳性能,其中文本跨度被替换为单个掩码标记。 BART 在针对文本生成进行微调时特别有效,但也适用于理解任务。它将 RoBERTa 的性能与 GLUE 和 SQuAD 上的可比训练资源相匹配,在一系列抽象对话、问答和摘要任务上取得了最新的最新成果,增益高达 6 ROUGE。 BART 还为机器翻译提供了比回译系统高 1.1 BLEU,仅使用目标语言预训练。我们还报告了在 BART 框架内复制其他预训练方案的消融实验,以更好地衡量哪些因素对最终任务的表现影响最大。
自监督方法在广泛的 NLP 任务中取得了显着的成功(Mikolov 等人,2013 年;Peters 等人,2018 年;Devlin 等人,2019 年;Joshi 等人,2019 年;Yang 等人。 , 2019; Liu et al., 2019).最成功的方法是屏蔽语言模型的变体,它们是去噪自动编码器,经过训练可以重建文本,其中单词的随机子集被屏蔽掉了。最近的工作表明,通过改进屏蔽标记的分布(Joshi 等人,2019 年)、预测屏蔽标记的顺序(Yang 等人,2019 年)以及替换屏蔽标记的可用上下文(Dong 等人, ., 2019).然而,这些方法通常侧重于特定类型的最终任务(例如跨度预测、生成等),限制了它们的适用性。在本文中,我们介绍了 BART,它预训练了一个结合了双向和自回归变压器的模型。
BART 是一种使用序列到序列模型构建的去噪自动编码器,适用于非常广泛的终端任务。预训练有两个阶段
BART 使用标准的基于 Tranformer 的神经机器翻译架构,尽管它很简单,但可以看作是对 BERT(由于双向编码器)、GPT(具有从左到右的解码器)和许多其他最近的预训练方案的概括(见图 1)。这种设置的一个关键优势是噪声灵活性;可以对原始文本应用任意变换,包括改变其长度。我们评估了许多噪声方法,通过随机打乱原始句子的顺序和使用新颖的填充方案找到最佳性能,其中任意长度的文本跨度(包括零长度)被替换为单个掩码标记.该方法通过强制模型对整体句子长度进行更多推理并对输入进行更大范围的转换,从而概括了 BERT 中的原始单词掩码和下一句预测目标。
BART 是一种去噪自动编码器,可将损坏的文档映射到原始文档。它被实现为一个序列到序列模型,在损坏的文本上有一个双向编码器和一个从左到右的自回归解码器。对于预训练,我们优化了原始文档的负对数似然。
BART 生成的表示可以多种方式用于下游应用程序。
BART 在预训练期间比以前的工作支持更广泛的噪声方案。我们使用基本大小模型(6 个编码器层和 6 个解码器层,隐藏大小为 768)比较一系列选项,对我们将在第 5 节中的完整大规模实验中考虑的代表性任务子集进行评估。
虽然已经提出了许多预训练目标,但很难对这些目标进行公平比较,至少部分原因是训练数据、训练资源、模型之间的架构差异和微调程序。我们重新实施了最近针对判别和生成任务提出的强大的预训练方法。我们的目标是尽可能控制与预训练目标无关的差异。然而,我们确实对学习率和层归一化的使用进行了微小的更改以提高性能(针对每个目标分别进行调整)。作为参考,我们将我们的实现与 BERT 发布的数字进行比较,BERT 也在书籍和维基百科数据的组合上接受了 1M 步的训练。我们比较了以下方法:
对于 Permuted LM、Masked LM 和 Multitask Masked LM,我们使用双流注意力 (Yang et al., 2019) 来有效地计算序列输出部分的可能性(在输出上使用对角线自注意力掩码来预测从左到右的单词)。我们尝试
表1:预训练目标的比较。所有的模型都具有可比性,并在书籍和维基百科数据的组合上训练了100万步。底部两个区块中的条目使用相同的代码库在相同的数据上进行训练,并使用相同的程序进行微调。第二块中的条目受到以前工作中提出的预训练目标的启发,但已被简化,以专注于评估目标(见4.1节)。不同任务的性能差异很大,但带有文本填充的BART模型表现出最稳定的性能。
结果如表 1 所示。几个趋势很明显例如,
最近的工作表明,当预训练扩展到大批量(Yang et al., 2019; Liu et al., 2019)和语料库时,下游性能可以显着提高。为了测试 BART 在这种情况下的表现,并为下游任务创建一个有用的模型,我们使用与 RoBERTa 模型相同的规模来训练 BART。
我们预训练一个大型模型,每个编码器和解码器都有 12 层,隐藏大小为 1024。按照 RoBERTa (Liu et al., 2019),我们使用 8000 的批量大小,并训练500000 步的模型。文档使用与 GPT-2 相同的字节对编码进行标记化(Radford 等人,2019)。基于第 §4 节的结果,我们结合使用文本填充和句子排列。我们屏蔽每个文档中 30% 的标记,并排列所有句子。尽管句子置换仅在 CNN/DM 摘要数据集上显示出显着的附加增益,但我们假设更大的预训练模型可能能够更好地从该任务中学习。为了帮助模型更好地拟合数据,我们在最后 10% 的训练步骤中禁用了 dropout。我们使用与 Liu 等人相同的预训练数据。 (2019),包括 160Gb 的新闻、书籍、故事和网络文本。
我们还试验了几个文本生成任务。 BART 被微调为从输入到输出文本的标准序列到序列模型。在微调期间,我们使用标签平滑交叉熵损失(Pereyra 等人,2017),平滑参数设置为 0.1。在生成过程中,我们将 beam 大小设置为 5,在 beam search 中删除重复的 trigram,并在验证集上使用 min-len、max-len、长度惩罚调整模型(Fan 等人,2017)。
表6:基线和BART在WMT’16 RO-EN上的性能(BLEU),并增加了回译数据。BART通过使用单语英语的预训练,比强大的回译(BT)基线有所提高。
早期的预训练方法基于语言模型。 GPT (Radford et al., 2018) 只对离开病房的上下文建模,这对某些任务来说是有问题的。 ELMo (Peters et al., 2018) 连接了仅左和仅右表示,但不预先训练这些特征之间的交互。雷德福等人。 (2019) 证明了非常大的语言模型可以充当无监督的多任务模型。
BERT(Devlin 等人,2019 年)引入了掩码语言建模,它允许预训练学习左右上下文单词之间的交互。最近的工作表明,通过更长时间的训练(Liu 等人,2019 年)、跨层绑定参数(Lan 等人,2019 年)以及屏蔽跨度而不是单词(Joshi 等人, ., 2019).预测不是自动回归的,这降低了 BERT 对生成任务的有效性。
UniLM(Dong 等人,2019 年)使用一组掩码对 BERT 进行微调,其中一些掩码只允许向左的上下文。与 BART 一样,这允许 UniLM 用于生成和判别任务。不同之处在于 UniLM 预测是条件独立的,而 BART 是自回归的。 BART 减少了预训练和生成任务之间的不匹配,因为解码器总是在未损坏的上下文中进行训练。 MASS(Song 等人,2019 年)可能是与 BART 最相似的模型。将标记的连续跨度被屏蔽的输入序列映射到由缺失标记组成的序列。 MASS 对于判别任务不太有效,因为不相交的标记集被输入编码器和解码器。
XL-Net(Yang 等人,2019 年)通过按排列顺序自动回归预测掩码标记来扩展 BERT。这个目标允许预测以左右上下文为条件。相比之下,BART 解码器在预训练期间从左到右工作,匹配生成期间的设置。
几篇论文探索了使用预训练的表示来改进机器翻译。最大的改进来自对源语言和目标语言的预训练(Song 等人,2019 年;Lample & Conneau,2019 年),但这需要对所有感兴趣的语言进行预训练。其他工作表明,可以使用预训练表示来改进编码器(Edunov 等人,2019 年),但解码器的收益更为有限。我们展示了如何使用 BART 来改进机器翻译解码器。
我们介绍了 BART,这是一种学习将损坏的文档映射到原始文档的预训练方法。 BART 在判别任务上取得了与 RoBERTa 相似的性能,同时在许多文本生成任务上取得了新的最先进的结果。未来的工作应该探索新的方法来破坏文件以进行预训练,或许可以针对特定的最终任务对其进行定制。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。