指令调优(Instruction Tuning, IT),一种针对大型语言模型(LLMs)的训练方法,是提高大型语言模型能力和可控性的关键技术。该方法的核心目标是使 LLM 具备遵循自然语言指令并完成现实世界任务的能力。它弥补了 LLM 的下一个单词预测目标与用户让 LLM 遵循人类指令的目标之间的差距,约束了模型的输出,使其符合预期的响应特征或领域知识。
随着计算机技术的发展,指令调优在一些需要执行特定任务的场景上,如机器翻译、问答系统等,都有着广泛的应用前景。以下整理了 18 种指令调优方法,包含指令微调 LLMs、多模态指令微调两个方向。
指令微调 LLMs
1. InstructGPT
论文:Training language models to follow instructions with human feedback
通过人类反馈训练语言模型遵循指令
简述: 本文提出一种通过人类反馈微调语言模型的方法,使其与用户意图对齐。作者收集了标注者演示所需行为的数据集和模型输出排名的数据集,微调 GPT-3 得到 InstructGPT 模型。在人机评估中,1.3B 参数的 InstructGPT 模型比 175B GPT-3 更受青睐,同时减少了输出不真实和有害的情况,性能下降不大。
2. BLOOMZ
论文:Crosslingual Generalization through Multitask Finetuning
跨语言泛化通过多任务微调实现
简述: 本文将多任务微调应用于预训练的多语言 BLOOM 和 mT5 模型族,生成了名为 BLOOMZ 和 mT0 的微调变体。研究发现,在英语任务上微调大型多语言语言模型并使用英文提示可以使模型泛化到非英语语言的任务中。在多语言任务上使用英文提示进行微调进一步提高了性能,实现了各种最先进的零样本结果。
3. FLAN-T5
论文:Scaling Instruction-Finetuned Language Models
缩放指令微调语言模型
简述: 本文研究了在一系列指令性数据集中微调语言模型的效果,并发现这可以提高模型性能和对未见过的任务的泛化能力。作者特别关注三个方面:扩展任务数量、扩大模型规模、在思维链数据上进行微调。研究发现,在这些方面进行指令微调可以显著提高各种模型类别、提示设置和评估基准的性能。例如,Flan-PaLM 540B 在 1.8K 个任务上进行了指令微调,比 PaLM 540B 高出很多(平均 +9.4%)。作者还公开发布了 Flan-T5 检查点,它在少样本性能方面表现强劲,甚至与更大的模型相比也毫不逊色。
4. Alpaca
论文:Alpaca: A Strong, Replicable Instruction-Following Model
一种强大、可复制的指令跟随模型
简述: 指令跟随模型越来越强大,但仍然存在许多缺陷。为了解决这些问题,研究人员发布了一种名为 Alpaca 的指令跟随语言模型,它是基于 Meta 的 LLaMA 7B 模型微调而来的。该模型在 52K 个以 text-davinci-003 的自我指导风格生成的指令跟随演示上进行了训练。
5. Vicuna
项目:Vicuna: An Open-Source Chatbot Impressing GPT-4 with 90%* ChatGPT Qualities
一个开源聊天机器人,以 90% 的 ChatGPT 质量给 GPT-4 留下深刻印象
简述: LMSYS 介绍了开源聊天机器人 Vicuna-13B,它是通过在 ShareGPT 上收集的用户共享对话中微调 LLaMA 进行训练的。初步评估使用 GPT-4 作为评判标准显示,Vicuna-13B 实现了超过 90% 的 OpenAI ChatGPT 和 Google Bard 的质量,并在超过 90% 的情况下优于其他模型,如 LLaMA 和斯坦福 Alpaca。


