人工智能咨询培训老师叶梓 转载标明出处
如何让机器更好地理解和执行人类的指令一直是一个重要课题。Google的研究团队中提出了一种新的方法,通过指令微调(instruction finetuning)来提升语言模型的性能和泛化能力。
他们主要研究了如何通过扩展任务数量、模型规模以及在链式思考(chain-of-thought)数据上进行微调,来提升预训练语言模型在未见任务上的表现。研究结果表明,这种方法在多个模型类别(如PaLM、T5、U-PaLM)和不同的提示设置(zero-shot、few-shot、CoT)下都取得了显著的性能提升。
Flan指令微调方法
研究者们扩展了微调任务的数量,通过结合先前研究中的四种任务混合——Muffin、T0-SF、NIV2和CoT——达到了1,836个微调任务。Figure 2 展示了这些任务的分布。Muffin混合包括了80个任务,其中62个来自Wei等人(2021)的研究,新增了26个任务,包括对话数据和程序合成数据。T0-SF混合(193个任务)由Sanh等人(2021)的研究中不与Muffin重叠的任务组成。NIV2混合(1554个任务)由Wang等人(2022c)的研究中的任务组成。
研究者们在多种模型家族上应用了指令微调,包括T5、PaLM和U-PaLM,这些模型家族涵盖了从Flan-T5-small(8000万个参数)到PaLM和U-PaLM(540亿参数)的一系列规模。每个模型都采用了相同的训练过程,除了一些关键的超参数:学习率、批量大小、dropout和微调步骤。研究者们使用恒定的学习率计划,并使用Adafactor优化器进行微调。Table 2 显示了不同模型在指令微调中使用的计算量相对于预训练的百分比。
研究者使用了多个不同的基准测试来评估模型的世界知识和推理任务的能力,包括MMLU、BBH、TyDiQA和MGSM。对于MMLU和BBH,他们评估了直接提示和链式思考(CoT)提示的能力。对于TyDiQA,他们只测量直接提示的精确匹配分数。对于MGSM,他们只测量CoT提示的准确性。Figure 4 展示了模型大小和微调任务数量对保留基准测试的归一化平均值的影响。