当前位置: 首页 > 科技观察

计算能力就这么小,如何提高语言模型的性能呢?谷歌有新思路

时间:2023-03-18 23:20:09 科技观察

近年来,语言模型(LMs)在自然语言处理(NLP)研究中的地位越来越突出,在实践中也越来越有影响力。一般来说,扩大模型已被证明可以提高一系列NLP任务的性能。尽管如此,扩大模型的挑战是显而易见的:训练新的、更大的模型需要大量的计算资源。此外,新模型通常是从??头开始训练的,无法利用先前模型的训练权重。针对这个问题,谷歌的研究人员探索了两种互补的方法,在不消耗大量额外计算资源的情况下,大幅提升现有语言模型的性能。首先,在论文“TranscendingScalingLawswith0.1%ExtraCompute”中,研究人员介绍了UL2R,这是一种使用混合噪声器目标的轻量级第二阶段预训练模型。UL2R提高了一系列任务的性能,甚至释放了以前具有近乎随机性能的任务的突发性能。论文链接:https://arxiv.org/pdf/2210.11399.pdf另外,在《ScalingInstruction-FinetunedLanguageModels》中,微调语言模型在一个数据集wordedbyinstructions的问题是讨论过。这个过程我们称之为“Flan”。这种方法不仅提高了性能,而且提高了语言模型对用户输入的可用性。论文链接:https://arxiv.org/abs/2210.11416最后,Flan和UL2R可以作为互补技术组合在一个名为Flan-U-PaLM540B的模型中,该模型在一系列具有挑战性的在基准测试中,它比未经调整的PaLM540B模型高出10%。UL2R的训练传统上,大多数语言模型都是在因果语言建模目标上进行预训练,使模型能够预测序列中的下一个单词(例如GPT-3或PaLM)或去噪目标,其中模型从中恢复原始句子损坏的单词序列(例如T5)。尽管在语言建模目标上存在一些折衷,即因果语言模型在长句生成方面表现更好,而在去噪目标上训练的语言模型在微调方面表现更好,但在之前的工作中,研究人员表明,混合噪声器包含这两个目标的目标在这两种情况下都能获得更好的性能。然而,在不同目标上从头开始预训练大型语言模型在计算上很困难。因此,我们提出了UL2恢复(UL2R),这是一个额外的阶段,可以继续使用UL2目标进行预训练,需要相对较少的计算。我们将UL2R应用于PaLM,并将生成的新语言模型称为U-PaLM。在实证评估中,我们发现只有少量的UL2训练会导致模型的大幅改进。例如,通过在PaLM540B的中间检查点使用UL2R,可以达到PaLM540B在最终检查点的性能,同时使用2倍的计算量。当然,将UL2R应用于最终的PaLM540B检查点也会产生巨大的改进。PaLM540B和U-PaLM540B在26个NLP基准测试中的计算和模型性能比较。U-PaLM540B以极小的计算量继续训练PaLM,但在性能上有很大的提升。使用UL2R的另一个好处是它在某些任务上的表现比纯粹根据因果语言建模目标训练的模型要好得多。例如,有许多BIG-Bench任务具有所谓的“新兴能力”,即只有在足够大的语言模型中才有的能力。虽然发现新兴能力的最常见方法是扩大模型,但UL2R实际上可以在不扩大模型的情况下激发新兴能力。例如,在BIG-Bench的导航任务中,衡量模型进行状态跟踪的能力,除了U-PaLM,所有模型的trainingFLOPs都小于10^23。另一个例子是BIG-Bench的Snarks任务,它衡量模型检测讽刺的能力。对于BIG-Bench的两种功能,展示了新兴任务性能,并且由于使用UL2R目标,U-PaLM在较小的模型尺寸下实现了新兴性能。指令微调在第二篇论文中,我们探讨了指令微调,其中涉及在一组由指令编写的NLP数据集上微调LM。在之前的工作中,我们在62个NLP任务上对137B参数模型进行了指令微调,例如回答一个小问题,对电影中表达的情感进行分类,或者将句子翻译成西班牙语等。在这项工作中,我们微调了一种语言在超过1.8K个任务上具有540B个参数的模型。此外,以前的工作只微调了具有少量实例的语言模型(例如MetaICL)或没有实例的零实例语言模型(例如FLAN,T0),而我们微调了两者的组合。我们还包括思维链微调数据,使模型能够执行多步推理。我们将改进后的方法称为“Flan”,用于微调语言模型。值得注意的是,即使对1.8K任务进行微调,与预训练相比,Flan仅使用一小部分计算(对于PaLM540B,Flan仅需要预训练计算的0.2%)。语言模型在以指令形式制定的1.8K任务上进行微调,模型在新任务上进行评估,这些任务不包括在微调中。分别使用/不使用示例(即0-shot和few-shot)以及使用/不使用思维链进行微调,使模型能够概括一系列评估场景。在本文中,对一系列大小的LM进行了指令微调,目的是研究同时增加语言模型的大小和增加微调任务数量的联合效果。例如,对于类PaLM语言模型,包括8B、62B和540B参数规范。我们根据四个具有挑战性的基准评估标准(MMLU、BBH、TyDiQA和MGSM)评估我们的模型,并发现扩大参数数量和微调任务数量可以提高以前从未见过的新任务的性能。扩展到540B参数模型和使用1.8K微调任务都可以提高性能。上图的y轴是四个评估套件(MMLU、BBH、TyDiQA和MGSM)的归一化平均值。除了更好的性能之外,指令微调的LM能够在推理时对用户指令做出反应,而无需更少的示例或提示工程。这使得LM在一系列输入中更加用户友好。例如,没有指令微调的LM有时会重复输入或无法遵循指令,但指令微调可以减轻此类错误。我们微调的语言模型Flan-PaLM比没有微调的PaLM模型对指令的响应更好。强强联合实现“1+1>2”最后,我们展示了UL2R和Flan可以结合训练Flan-U-PaLM模型。由于Flan使用来自NLP任务的新数据并启用零点指令跟踪,因此我们将Flan作为UL2R之后的第二选择。我们再次评估了四个基准套件,发现Flan-U-PaLM模型优于仅具有UL2R(U-PaLM)或仅具有Flan(Flan-PaLM)的PaLM模型。此外,结合思想链和自洽性,Flan-U-PaLM在MMLU基准测试中获得了75.4%的新SOTA分数。与仅使用UL2R(U-PaLM)或仅使用Flan(Flan-U-PaLM)相比,结合UL2R和Flan(Flan-U-PaLM)可提供最佳性能:四个评估套件(MMLU、BBH、TyDiQA和MGSM)归一化平均值.总体而言,UL2R和Flan是改进预训练语言模型的两种互补方法。UL2R使用相同的数据使LM适应降噪器的混合目标,而Flan利用来自超过1.8KNLP任务的训练数据来教模型遵循指令。随着语言模型变得越来越大,像UL2R和Flan这样无需大量计算即可提高总体性能的技术可能会变得越来越有吸引力。