深入探讨指令调优的局限性
摘要
指令调优(Instruction Tuning, IT)是通过使用指令-响应对训练大型语言模型(LLMs)的过程,已成为将基础预训练LLMs转化为开放领域对话代理的主要方法。尽管IT取得了显著的成功和广泛的应用,但其局限性和不足之处仍未得到充分探索。本文通过严格的实验和对LLMs在IT过程中经历的变化进行深入分析,揭示了IT的多种局限性。特别是,我们展示了以下几点:(1)IT未能增强LLMs的知识或技能。LoRA微调仅限于学习响应的启动和风格标记,而全参数微调则导致知识退化。(2)从知识渊博的来源中复制响应模式会导致响应质量下降。(3)全参数微调通过不准确地从IT数据集中概念上相似的实例中借用标记来生成响应,从而增加了幻觉现象。(4)文献中提出的改进IT的流行方法并未在简单LoRA微调模型上带来性能提升。我们的研究结果表明,仅基于预训练知识的生成响应始终优于从IT中学习任何形式新知识的模型在开源数据集上的响应。我们希望本文揭示的见解和挑战能够激发未来相关方向的研究。
1. 引言
通过下一个标记预测目标在巨大规模上预训练的大型语言模型(LLMs)在其参数中隐式压缩了世界知识(Zhao et al., 2023)。这些模型学习了通用表示,可以与所需的响应特征对齐(Zhang et al., 2023a)。近年来,提出了多种对齐LLMs的方法,其中指令调优(IT)(Wei et al., 2022)和基于人类反馈的强化学习(RLHF)(Bai et al., 2022)最为流行。IT是通过指令-响应对微调LLM的过程,使其能够遵循或完成人类指令的任务。另一方面,RLHF持续调整IT后的LLM,以进一步与人类偏好对齐。尽管RLHF由于需要大量人类偏好数据而成本高昂(Bai et al., 2022),但使用标准监督损失的IT已被证明是一种更普遍的对齐技术(Zhou et al., 2023)。基于IT的对齐显著提升了LLMs的性能,解锁了令人印象深刻的能力(Bubeck et al., 2023),表明微调是构建和改进基于LLM的对话代理的关键。在本文的其余部分,我们将IT后的模型称为微调模型,并将IT过程称为微调。
早期的IT工作集中在使用流行的自然语言处理(NLP)任务数据集微调和评估LLMs,其中数据集实例被表述为自然语言指令。然而,仅使用传统NLP任务和指标来评估IT对LLM的影响,无法全面评估其多样化的能力,如推理和知识共享,这些能力通常是开放领域对话代理所面临的多样化任务所要求的(Wang et al., 2023)。自ChatGPT(OpenAI, 2023)取得巨大成功以来,最近的工作旨在使用开放领域指令遵循数据评估和改进IT(Zheng et al., 2023)。尽管IT在性能和泛化到未见过的NLP任务方面取得了显著改进,但其局限性和不足之处很少被探索。我们认为这主要归因于三个原因:(1)缺乏全面评估开放领域指令遵循能力的评估指标。(2)缺乏对基础预训练LLM在IT过程中经历的精确变化的清晰理解。(3)强大的半开源聊天模型(不公开其IT数据的微调LLMs)的迅速崛起鼓励人们仅将这些模型作为工具使用,导致其开发中的几个关键要素未得到充分探索。
主要贡献。本文中,我们调查并揭示了IT的几个局限性。为此,我们通过实验研究了基础预训练模型在IT后的变化,使用了各种开源IT数据集、LLMs和训练范式。此外,为了评估,我们结合了专家人工评估、基于GPT-4的多方面评估和标记分布分析(Lin et al., 2023)。我们的研究明确关注评估IT在开发开放领域对话代理(也常称为聊天模型)中的有效性,并限于单轮交互。我们的广泛结果揭示了以下几点:
- IT不是知识增强器。与同期工作(Gudibande et al., 2023)类似,我们首先发现IT在当前开源规模下并不充当知识增强器。为了深入挖掘,我们比较了基础LLMs及其IT版本之间的标记分布(详见第3节),发现LoRA(Hu et al., 2021)仅教授响应启动并从预训练知识中提取大部分响应,导致最符合事实的响应。另一方面,全参数微调导致知识退化和整体响应质量下降。
- 模式复制通常会损害性能。我们首先展示了使用LoRA和全参数微调的模型在模式复制方面学习方式的不同。前者仅学习风格标记,而后者使模型更深入地适应新训练数据的具体细节。接下来,我们展示了尽管模式复制有时具有一些优势,如详细和全面的回答,但大多数情况下,它会损害响应的事实正确性。最后,我们提出了一个简单的解决方案来克服这一点。
- 全微调通过增加幻觉的可能性导致知识退化。这些幻觉是从IT数据集中借用的标记。我们展示了当模型在响应中产生幻觉或输出错误标记时,这些标记很可能来自IT数据集中概念上相似的实例。我们进一步从因果分析的角度研究了这一点。与LoRA微调相比,这种效应在全参数微调训练的模型中更为普遍。
- 文献中提出的各种改进IT的方法并未提升模型性能。我们比较了几种方法,如NEFTune(Jain et al., 2023)和数据集过滤(Chen et al., 2023),并展示了尽管这些方法在全微调模型上有所改进,但LoRA微调模型在所有方法中表现最佳。因此,这些方法并未促进知识进步,利用预训练知识的模型仍然更优。
2. 实验设置
LLMs。在我们的分析范围内,我们实验了5种不同类型的LLMs,分别是LLaMa-2 7B(Touvron et al., 2023)、LLaMa-2 13B、LLaMa-2 70B、Mistral-v0.1 7B(Jiang et al., 2023)和Phi-1.5 1.3B(Li et al., 2023b)。我们仅使用这些模型的基础预训练版本(而非聊天变体),并自行对其进行IT微调。由于计算限制,我们仅在部分实验中使用LLaMa-2 70B。
微调数据集。为了进行IT微调,我们实验了各种合成和人工编写的IT数据集。对于合成数据集,我们使用Alpaca 52k,其中包含开放领域的指令-响应对,通过使用少量样本的初始种子数据集提示Chat-GPT构建(Taori et al., 2023),以及来自医疗领域的MedInstruct 52k,以类似方式构建(Zhang et al., 2023b)。对于人工编写的数据集,我们使用LIMA 1K(Zhou et al., 2023)和databricks-dolly 15k(Conover et al., 2023)。最后,我们还使用了Tulu-V2-Mix 326k(Ivison et al., 2023),这是一个由各种开源数据集组合而成的数据集。
评估数据集。我们的实验局限于评估LLMs在指令遵循能力上的开放式和*形式生成,因为LLMs在多项选择题(MCQ)上表现不佳(Zheng et al., 2024a)。为了评估,我们主要使用just-eval-instruct 1k(Lin et al., 2023),这是一个由各种开源IT评估集组合而成的数据集,并标记了各种任务类型和主题(统计数据见附录C)。这一选择是基于其多样化和简洁的特性,便于我们进行深入的专家人工评估。我们仅使用前800个实例,并移除最后200个实例,因为安全对齐超出了本文的范围。对于在MedInstruct 52k上微调的模型,除非另有说明,否则我们在MedInstruct-test 216上评估模型。我们不评估Open LLM Leaderboard(Beeching et al., 2023),因为它不符合我们的标准。
微调范式。为了进行IT微调,我们采用LoRA微调(LFT)或(标准)全参数微调(SFT)。LFT通过使用低秩矩阵近似模型的权重矩阵来减少需要微调的参数数量,从而使微调过程更快、更高效。另一方面,SFT类似于通用经验风险最小化(ERM),通过调整模型的大部分或全部权重来工作。
图1. IT后的标记分布变化。我们使用第3节中定义的3个指标比较了基础预训练模型及其IT版本之间的标记分布。我们展示了(1)总体而言,LFT的标记分布变化较小,表明与预训练知识高度一致。(2)SFT的变化比LFT大得多。(3)LFT不受IT数据集规模的影响。
评估。为了评估我们的微调模型,我们进行了专家人工评估和基于GPT-4 Turbo(gpt-4-1106-preview)的自动评估。最近的研究表明,使用ChatGPT和GPT-4对LLMs的输出进行评分和评估与人工评估高度一致,并具有降低成本的额外优势(Liu et al., 2023; Li et al., 2023a; Chan et al., 2023; Xu et al., 2023b; Zhou et al., 2023)。我们借鉴了Lin et al.(2023)的可解释和多方面评估框架,该框架提示GPT-4根据五个方面(有用性、清晰度、事实性、深度和吸引力)为LLM对指令的响应分配1到5的分数,并提供每个分数的解释。提示可在附录A中找到。
命名约定。我们主要遵循“模型_数据集_训练范式”的命名约定。例如,在Alpaca 52k上使用SFT训练的LLaMa-2 7B将被命名为LLaMa-2 7B-SFT_Alpaca 52k。
训练和评估超参数。所有模型均在分布式环境中训练3个周期,学习率为5e-5,有效批量大小为32(Taori et al., 2023)。对于LFT,我们使用标准秩8(Hu et al., 2021),因为我们没有发现通过减少(2,4)或增加(16,32)秩对性能有显著变化。Zhang et al.(2024)也表明,扩展秩对LFT无效。在所有实验中,我们采用贪婪解码(即零温度)进行生成。
注意:本文仅呈现LLaMa-2系列的结果,其他LLMs的微调结果和已开源的微调LLMs的结果见第D.3节。我们的所有发现也适用于其他LLMs。此外,不应将IT(及其在本文中的发现)与一般微调混淆。虽然IT旨在使模型对特定响应特征对齐,但LLMs可能会针对提升其各种能力或知识进行微调。然而,这可能需要具有与本文所用IT数据集不同特征的微调数据集。
3. IT(目前)不是知识增强器
概述。本节探讨IT在当前开源规模下是否能作为知识增强器。首先,我们展示了基础预训练LLM在LFT和SFT微调下的不同变化性质,并表明尽管LFT生成的响应与预训练知识高度一致,但SFT的响应显著偏离,表明新知识的获取。随后,我们展示了这种新知识往往导致响应质量下降,而主要依赖预训练知识通常会产生更符合事实和有用的响应。
发现1. LFT响应与原始预训练知识高度一致。SFT则不然。为了研究微调模型与其基础预训练模型之间的差异,我们采用了Lin et al.(2023)提出的标记分布分析方法。具体来说,对于给定的指令-响应对,指令首先输入对齐(或微调)模型,通过贪婪解码获得其响应 , 。接下来,对于响应中的每个位置,定义该位置的“上下文”为 。然后将此“上下文”输入基础模型,以获得其在位置预测下一个标记的概率分布。对齐模型在位置获得的标记概率分布记为。我们随后计算三个指标:(1)和之间的KL散度,(2)基础概率:中具有最大值的标记在处的概率,(3)基础秩:中具有最大