EMNLP 2023:基于微调和上下文学习的机器翻译大型语言模型


EMNLP 2023:基于微调和上下文学习的机器翻译大型语言模型

摘要:大型语言模型(LLMs)是机器翻译(MT)的一个有前景的途径。然而,当前基于LLM的MT系统存在脆弱性:其有效性高度依赖于挑选的少数示例,而且它们通常需要额外的后处理以应对生成过剩的问题。例如在翻译指令上进行微调的替代方案虽然可以,但计算成本高,并且由于过度专业化可能会削弱上下文学习能力。在本文中,我们对这个问题进行了更深入的探讨。我们首先展示了基于适配器的微调与LoRA相结合,其性能可匹配传统微调,同时训练参数数量减少了50倍。这种方法还优于少数示例提示,并消除了后处理或上下文示例的需要。然而,我们发现微调通常会降低少数示例的性能,从而阻碍适应能力。最后,为了获得两全其美的效果,我们提出了一种在微调期间结合少数示例的简单方法。对10种语言对的实验显示,我们提出的方法在保持微调的附加好处的同时,恢复了原有的少数示例能力。

1、引言

大型语言模型(LLMs)通过利用上下文学习,在广泛的自然语言处理任务上展示了显著的性能(Brownet al., 2020)。特别是,在提供少量示例的情况下,这些模型已经显示出在不需要对平行数据进行显式监督的情况下执行机器翻译(MT)的令人印象深刻的能力(Garcia et al., 2023)。然而,这种方法存在几个缺点:性能高度依赖于示例的质量(Vilar et al., 2022),输出受到过度生成的困扰(Bawden and Yvon, 2023),并且通过处理所有输入对,推理成本大幅增加。当有平行数据可用时,LLMs可以选择在翻译指令上进行微调(Li et al., 2023)。这种方法通常优于少量样本提示,并消除了对上下文示例的需求。然而,目前尚不清楚微调过的模型是否能从上下文学习的有益属性中获益,例如实时领域适应(Agrawal et al., 2022)。此外,传统的微调(Devlin et al., 2019; Radford et al., 2018)由于更新所有模型权重的成本而导致高计算开销。
在本文中,我们仔细研究了微调和少量示例提示对于适应大型语言模型(LLMs)进行翻译的影响。我们的实验涵盖了10种语言对,在一般和特定领域上,共生成了超过100,000个翻译结果(§2)。我们的主要发现包括:

  • 我们展示了使用适配器进行微调(Houlsby等人,2019年;Hu等人,2022年)是引导LLMs进行翻译的一种非常有效的方法(§3.1)。这种方法在计算成本上仅为传统微调的一小部分,通过训练数量减少50倍的参数,达到了与传统微调相匹配的性能。它还实现了比上下文学习更好的翻译质量,并且消除了对生成输出后处理和选择上下文示例的需求。
  • 我们展示了对大型语言模型进行微调会降低它们的少量示例性能,限制了它们的适应能力(§3.2)。特别是,我们展示了在提供上下文示例的情况下,经过微调的LLMs在领域适应场景中表现不佳。
  • 为解决这一问题,我们提出了一种在微调过程中引入少量示例的简单方法(§4)。我们的结果显示,我们可以在保留微调的好处的同时恢复少量示例的能力。

2、实验设置

在我们的实验中,我们使用了LLaMA 7B和13B(Touvron等,2023)作为基础语言模型,并使用标准的交叉熵损失对它们进行微调。我们在欧洲议会、Globalvoices、Paracrawl、Tilde、Ubuntu和维基百科等领域的通用领域OPUS数据(Tiedemann,2012)上训练我们的模型。我们考虑的语言包括荷兰语(nl)、法语(fr)、德语(de)、葡萄牙语(pt)和俄语(ru),都是从英语(en)转换过来的,也可以转换回英语。为了确保训练记录的质量,我们首先使用阈值为0.85的Bicleaner(Ramírez-Sánchez等,2020)进行筛选,然后过滤剩余的配对,确保两个语言方向的COMETKiwi(Rei等,2022b)得分均高于0.8。最后,我们为每对语言样本抽取25万条记录。在训练期间,我们均匀地从数据中抽样,确保每对语言组合被看到的次数相似。我们在Flores-200开发集上对训练数据中的语言对进行验证。

对于领域内评估,我们考虑在训练期间包括的所有翻译方向上的Flores-200(NLLB团队等,2022)测试数据集,以及我们训练数据中考虑的语言对的WMT22测试集。关于专业领域的数据,我们考虑了Aharoni和Goldberg(2020)的医学和法律领域,TICO数据集(Anastasopoulos等,2020)和WMT Chat(Farinha等,2022)。我们在零次和五次射击设置下评估我们的模型,对每个测试句子从各自的开发集中均匀抽样五个独立的少量样本。

我们的主要评估指标是COMET(Rei等,2020,2022a)。我们还在附录G中报告了使用BLEU(Papineni等,2002)、chrF(Popović,2015)和COMETKiwi(Rei等,2022b)的结果。
关于超参数和在接下来的实验中使用的指令格式的完整细节,请参阅附录A。

3、微调大型语言模型以执行机器翻译指令

在本节中,我们研究了在机器翻译指令上进行微调的大型语言模型(LLMs)的性能,并将其与使用预训练语言模型进行少量样本提示(few-shot prompting)的性能进行了比较。请注意,在本节中,我们始终分析预训练模型的少量样本提示。我们认为,这提供了一个更公平的比较基准,用于评估在翻译指令上进行微调,因为这两种方法都可以访问训练样本。尽管如此,我们还是在附录G中提供了使用预训练模型进行零样本(zero-shot)翻译的结果。与Bawden和Yvon(2023年)的发现类似,零样本性能远远落后于少量样本性能,特别是在英语之外的语言对中,这很可能是因为在预训练大型语言模型(LLaMA)时使用了大量的英语数据。

3.1 高效微调LoRA

我们首先研究了使用低秩适应(LoRA)的参数高效训练(Hu等人,2022年),并将其与传统微调进行了比较。在图1中,我们观察到LoRA的表现与传统微调相当,而训练的参数数量却少了50倍。我们还看到LoRA和传统微调都比用少量提示的预训练模型表现得更好——后者与Li等人(2023年)的发现一致,这些发现表明微调比预训练语言模型的少次提示能带来更好的翻译效果。作为一个普遍趋势,所有方法在翻译成英语时都表现出更好的翻译质量,这与最近的文献趋势一致(Arivazhagan等人,2019年;Vilar等人,2022年)。我们还发现,微调LoRA需要很少的翻译例子就可以达到报告中的表现,如图2所示。特别是,它用尽可能少的2,000个训练样本就超过了少次提示的预训练模型。考虑到与参数高效微调相比,全面微调的高计算成本,以及基于LoRA模型的微小退化,我们在后续实验中使用LoRA。

图1 Flores-200测试集上,使用LLaMA 7B预训练模型(少量样本)和经过完全微调以及LoRA(零样本)训练的LLaMA 7B的COMET得分。

图2 在 Flores-200 测试集上,使用不同数量的训练数据对 LLaMA 7B 进行微调后的零次学习评估的 COMET 分数。

3.2 微调模型的少样本提示

我们现在将注意力转向比较零次和五次射击的表现。我们认为,即使语言模型(LLM)可以实现高质量的零次射击翻译,少数次射击的能力对于高效适应也是非常有益的。正如Agrawal等人(2022年)所显示的,LLM可以利用非常小的少数次射击样例池来执行新领域的翻译。

在图3的最左边的图表中,我们检查了在通用领域上我们微调模型的零次和少数次射击表现。少数次射击的表现下降,并被零次射击的表现超越,这表明微调程序阻碍了在上下文中学习的能力。
为了进一步研究这一现象,我们在专业领域上评估上述模型。对于已经在该领域训练过的模型来说,通用领域的例子可能帮助不大。相反,在专业领域中,例子应该带来关于翻译属性的领域特定信息,例如风格、语体,从而帮助模型实现更好的表现。

在图3的最右边的图表中,我们观察到上述问题在所有领域中一致发生,表现出更大的下降。这一发现进一步支持了我们的假设,即微调可能会降低少数次提示的表现。
图3 通过模型微调的零次和五次尝试翻译的COMET分数,分别有无少量样本。分数是在所有语言对中平均计算的。“FT w/o few-shot”指的是按照第3节的内容,使用翻译指令进行微调。“FT w/ few-shot”指的是使用少量示例进行微调,详细内容在第4节中说明。

4、使用少量样本进行微调

为了恢复小样本性能,我们在训练过程中引入了带有小样本示例的指令:即我们在包含零样本和小样本指令的数据上进行微调。根据 Min 等人(2022年)的方法,我们从之前与训练数据分开的示例池中,为每个训练示例均匀抽取0至5个小样本示例。从这里开始,我们用训练示例和选定的示例构建一个指令提示,并继续进行训练。
在图3中,我们观察到,使用上下文中的示例进行训练的模型恢复了其小样本能力,无论是在一般领域还是在专业领域。小样本性能与零样本性能相当或更高,这进一步表明模型从示例中提取了有用信息。在附录D中,我们展示了一组凸显这些收益的示例。

4.1. 输出格式学习

我们还分析了微调后的模型是否继续在达到期望翻译后生成上下文。这个问题存在于预训练的大型语言模型(LLM)的输出中,并且需要对生成的内容进行后处理,删除第一个新行之后生成的所有单词。在图4中,我们展示了7B模型的tokenized输出长度。我们观察到,由两个微调模型生成的输出长度的分布与参考文献的分布相匹配。这表明微调模型不再过度生成。我们还发现这些模型不再以换行符为输出界限,而是生成句子结束标记,从而消除了后处理的必要性,提高了计算效率。在附录F中,我们提供了一组示例来说明这些发现。

图 4 7B模型在Flores-200测试集上tokenized的输出长度比较(比较两种微调方式的输出长度是否跟参考文献一致长)

4.2. 在上下文示例的影响

为了更细致地分析通过增加上下文示例所获得的提升,我们分析了在有无示例的情况下,使用7B微调模型对每个源句子的COMET分数差异。
在图5中,我们观察到分布中有大量点略高于0。然而,我们也观察到了非常长的尾部,特别是对于非英语语言对。

我们手动检查了差异最大的示例,并发现引入示例可以修正模型生成错误的语言,这支持了Bawden和Yvon (2023)的发现。令人惊讶的是,我们还发现了在零样本情况下模型正确生成翻译的示例,而引入上下文示例则导致了虚构内容的产生。

为了更好地描述这一现象,我们从对幻觉在扰动下的分析中获得灵感(Lee等,2018),并测量了在没有示例的情况下提示模型会导致多少次翻译超过30个BLEU点,而引入示例则将分数降到低于3(这些阈值是基于以往的工作选定的(Lee等,2018;Raunak等,2021;Guerreiro等,2023))。

图 5 在 Flores-200 上,7B FT 带有少量样本模型的零次和少量试验翻译的 COMET 分数差异(∆ > 0 表示少量试验翻译的分数更高)。

在表1中,我们看到未使用示例进行微调的模型比其对应的模型有更高的幻觉率,进一步显示了它们在少样本性能上的退化。通过对获得的输出进行人工检查,我们观察到模型生成了不同类别的幻觉。特别是,它们生成了脱离的(完全和强烈的)和振荡的幻觉,也能生成偏离目标的翻译。一个常见的情况是,模型会从指令中复制(无论是从源还是示例中复制)。
使用少量样本示例微调的模型表现出更低的幻觉率,表明训练程序减少了这个问题的普遍性。特别是,这些模型不再从指令中复制。然而,它们仍然产生幻觉,其影响非常严重。因此,我们认为这进一步激发了对上下文示例及其生成输出影响的研究兴趣。

表1 考虑所有语言对在每个评估数据集上微调模型的幻觉率。

5、总结

在本文中,我们对微调和少样本提示技术在适配大型语言模型(LLMs)进行翻译方面进行了研究。我们展示了基于适配器的微调在性能上可以匹敌传统的微调方法,同时训练的参数数量减少了50倍。此外,使用适配器的微调超过了大型语言模型的少样本提示,并且消除了输出后处理和上下文示例的需求。我们还发现,微调后的模型在使用上下文示例进行提示时表现不佳。为了解决这个问题,我们提出了一个简单的方法,在微调过程中混合使用少样本提示。我们的结果表明,这种方法恢复了原始的少样本能力,并保留了微调的优势。

6、限制

在本文中,我们关注以英语为中心的高资源语言对。这些发现如何泛化到非英语语言对或低资源环境中,仍是一个未解决的问题。由于进行这项研究的时间和成本,我们也没有对翻译质量进行人工评估。相反,我们基于COMET评估,这是机器翻译评估的最新标准,并在附录G中提供其他指标的结果。

7、伦理声明

本文基于大型语言模型。这些模型可能涉及多种风险,Brown 等人(2020年)和 Chowdhery 等人(2022年)的研究中已经详细讨论了这些风险。具体来说,这些模型是基于大型网络语料库训练的,这些语料库可能包含有害内容(Gehman 等人,2020年),并且在训练期间特别耗能高(Strubell 等人,2019年)。此外,我们的评估基于根据人类偏好调整的自动度量。在这种情况下,评注者在评估生成的文本时可能不会考虑更好的替代方案,并错误地将文本分类为高质量(Bansal 等人,2021年)。

关于源码上门取算法码上到
源码上门取算法码上到是一个有趣有AI的自然语言处理公众号,专注于 AI、NLP、机器学习、深度学习、推荐算法等相关技术的分享,主题包括多模态大语言模型、大模型、智能问答、聊天机器人、机器翻译、自动生成、知识图谱、预训练模型、推荐系统、计算广告、招聘信息、求职经验分享等,欢迎关注!

欢迎关注我的公众号“源码上门取算法码上来”,原创技术文章第一时间推送。

原论文:https://arxiv.org/abs/2402.15061


文章作者: 沙九
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 沙九 !
  目录
s's