一、结论写在前面
参数高效微调(parameter-efficient fine-tuning,PEFT)方法旨在通过对少量权重进行更新来调整大型模型。然而,许多先前的可解释性研究表明,表示编码了丰富的语义信息,这表明编辑表示可能是一个更强大的替代方案。论文提出了一个强大的替代方案,即LoReFT(Low-rank Linear Subspace ReFT),以取代PEFT。LoReFT在四个领域的基准测试中表现出强劲的性能,同时比先前最先进的PEFT方法高效10倍至50倍。值得注意的是,LoReFT在常识推理、遵循指令和自然语言理解等方面建立了新的最先进性能,超过了最强大的PEFT方法。论文还展示了如何将论文的方法描述在一个通用框架下——ReFT。ReFT是一种新的微调方法,比任何现有的PEFT方法都更强大、更参数高效且更可解释。
二、论文的简单介绍
2.1论文的背景
预训练语言模型经常被微调以适应新的领域或任务。通过微调,仅凭少量领域内数据,单个基础模型就可以适应各种任务。然而,对整个模型进行微调成本高昂,尤其是对于非常大的语言模型而言。
参数高效微调(parameter-efficient fine-tuning,PEFT)方法提出通过仅更新少量权重来解决完全微调的高成本问题。这降低了内存使用量和训练时间,PEFT已被证明在许多实际情境中达到与完全微调类似的性能。适配器是一种常见的PEFT家族,它们学习了一个可以添加到模型权重子集的编辑,或者在冻结的基础模型旁边操作的额外权重集。最近的适配器如LoRA(以及变种如DoRA)通过在适配器训练期间使用低秩逼近代替完整权重矩阵,降低了学习权重更新中可训练参数的数量。QLoRA进一步表明,可以在降低精度模型上训练全精度适配器而不损失性能。适配器通常比引入新模型组件的方法更有效率和有效,比如前缀微调。当前SOTA的PEFT的标志性特征是它们修改权重而不是表示。然而,许多先前的可解释性研究表明,表示编码了丰富的语义信息,这表明编辑表示可能是对权重更新更强大的替代方案。在本文中,论文通过开发和推动表示微调(ReFT)来追求这一假设。与调整模型权重不同,ReFT方法训练干预,以在推断时操纵模型表示的一小部分,从而引导模型行为以解决下游任务。ReFT方法是基于基于权重的PEFT的即插即用替代方案。这种方法受到了最近在LM可解释性方面的工作的启发,该工作介入表示以找到忠实的因果机制,并在推断时引导模型行为,可以看作是Wu等人的表示编辑工作的一般化[2024a]、Turner等人[2023]和Zou等人[2023]( 论文专注于ReFT家族的一个强大且高效的实例,论文称之为低秩线性子空间ReFT(LoReFT)。这是一种参数化的ReFT,它在由低秩投影矩阵跨越的线性子空间上进行干预,直接建立在分布式对齐搜索(DAS)方法之上。2.2论文方案
2.2.1 动机
线性表示假设声称概念在神经网络表示的线性子空间中被编码。早期的连接主义工作关于分布式神经表示是第一个提出这一假设的,而最近的实证工作在训练自然语言以及其他输入分布的神经模型时发现了这一假设的证据。
在可解释性研究中,因果抽象的框架 使用交换干预来因果地确定神经网络组件在实现特定行为方面的作用。交换干预的逻辑如下:如果一个表示被固定到对应于反事实输入的表示,并且这种干预一致地影响模型输出,符合论文关于产生该表示的组件的假设的预测,那么该组件在所研究的行为中起着因果作用。为了测试一个概念是否像线性表示假设所声称的那样被编码在表示的线性子空间中,可以使用分布式交换干预。DAS已被用于在实体属性、语言特征、情感和数学推理的语言模型中找到线性表示。然而,实验表明,即使一个Transformer LM已被随机初始化并且尚未学习任何特定任务的表示,DAS也具有很高的表现力,能够找到因果有效的子空间。尽管这引发了关于DAS是否足够忠实用于解释性目的的争论 ,但DAS的表现力表明它可以作为控制LM行为的强大工具,与表示编辑和可控生成的工作一致。因此,论文希望利用分布式交换干预操作来开发一种新的适用于下游任务的参数高效方法来调整语言模型。 2.2.2 低秩线性子空间ReFT(LoReFT)
指导直觉是论文可以学习如何进行干预,以使模型准确预测论文的任务标签。论文考虑使用仅解码器或编码器-解码器LM进行的生成任务以及使用仅编码器模型进行的分类任务。预训练语言模型是标记序列的分布。
2.3 论文效果
为了评估LoReFT与现有PEFT方法的差异,论文在涵盖20多个数据集的四个多样化的NLP基准测试上进行了实验。论文的目标是提供LoReFT在不同场景下的表现的丰富画面。以下是论文基准测试的简要概述:•常识推理包括八个常识推理数据集,包括BoolQ,PIQA ,SIQA,HellaSwag,WinoGrande ,ARC-e,ARC-c和OBQA 。该任务被制定为多项选择问题。 •算术推理包括四个数学世界问题数据集,包括AQuA ,GSM8K,MAWPS 和SVAMP 。模型需要在给出最终答案之前生成思维链条 。•指令跟随评估模型是否能够遵循人类指令。论文使用Ultrafeedback作为论文的训练数据,Alpaca-Eval v1.0作为论文的评估数据集。•自然语言理解包括GLUE基准测试 [的八个数据集,如情感分析和自然语言推理。论文在不同规模的LM上进行实验,从具有125M参数的RoBERTa-base 到具有13B参数的LLaMA-1 ,并且使用遮蔽和自回归Transformer语言模型。论文将基准定为诸如前缀调整、串行适配器和并行适配器的现有PEFT,以及LoRA 和DoRA等。论文的比较重点在于性能和参数效率。在比较中,尽可能使用之前研究中的超参数调优得分。论文将基本LM加载到torch.bfloat16中以节省内存。所有实验都在单个GPU上运行:NVIDIA A100 40G/80G或RTX 6000。原始模型生成的示例见附录I。2.3.1 超参数配置
在实践中使用LoReFT时,论文必须决定学习多少个干预以及在哪些层和输入位置应用每个干预。论文建议在提示中的固定数量的p个前缀位置和s个后缀位置上学习干预。具体来说,论文调整四个超参数:
4.是否将干预参数在同一层的不同位置之间进行绑定。2.3.2 常识推理
论文复制了Hu等人[2023]中的实验设置,并在一个包含八个常识推理任务的联合数据集(COMMONSENSE170K)上对LLaMA-1 7B和13B进行微调。论文分别在每个任务的测试集上报告得分。数据集:这些数据集中的示例被构造为多项选择问题,模型需要直接生成正确的选择而无需解释。论文使用与Hu等人[2023]相同的提示模板,并进行了额外的字符串规范化(去除前导和尾随空格)。超参数调整:论文不希望根据测试集结果进行超参数选择。为了避免这种情况,论文使用在从GSM8K训练集创建的开发集上表现最佳的模型的超参数设置,但论文使用更低的纪元数量(6个而不是12个),因为COMMONSENSE170K训练集比GSM8K大100多倍。这样可以让论文调整相关的超参数,并测试这些设置在不同领域之间的稳健性。 结果:论文在表1中报告结果。LoReFT在常识推理任务中取得了最先进的性能,明显优于所有其他方法。2.3.3 算术推理
在包含七个算术推理任务的联合数据集(MATH10K)上对LLaMA-1 7B和13B进行微调,并在其中四个任务的测试集上报告得分。论文仅评估最终的数值或多项选择答案的正确性。超参数调整:论文使用与常识推理基准测试相同的超参数设置,训练时使用12个纪元。 数据集:有关数据集的更多详细信息,请参见附录B.2。论文使用与上一个实验相同的提示模板和超参数设置。结果:论文在表2中报告结果。论文发现,与LoRA和适配器相比,LoReFT在算术推理任务上表现不佳,但优于前缀调整。论文的结果表明,相比于单步常识推理任务,LoReFT在思维链推理上可能更难,这是由于生成的长度(长度越大,干预效果就越小)和任务的整体难度更大。论文的结果显示,LoReFT在13B模型上的性能优于7B模型,这表明LoReFT随着模型规模的增加而扩展。总体而言,论文注意到算术推理结果存在很大的变化,没有单一的方法在所有任务中都脱颖而出。2.3.4 指令遵循
基本语言模型需要进行指令微调以遵循人类提示。论文遵循了Wu等人[2024a]的实验设置,在Llama-2 7B上进行超级反馈微调。论文与全参数微调、LoRA和RED进行比较。论文使用Alpaca-Eval v1.0 [Li等人,2023]进行评估,该评估计算了与使用GPT-4作为注释者的text-davinci-003的胜率。论文使用了与Taori等人[2023]相同的提示模板。 数据集:论文使用Ultrafeedback对Llama-2 7B进行微调。Ultrafeedback是一个高质量的指令数据集,其中的响应是通过对候选人列表中的各种模型响应进行评分生成的(例如ChatGPT和Bard)。得分是通过对遵循指令、真实性、诚实度和实用性进行加权计算的。一些最好的7B和13B聊天模型(例如UltraLM13B [Yang等人,2024])都是使用Ultrafeedback进行微调的。超参数调整:论文在未见的指令遵循数据集Alpaca-52K [Taori等人,2023]上对LLaMA-7B进行超参数调整,以防止测试集的爬坡现象。然后,论文使用论文表现最佳模型的超参数设置对Ultrafeedback进行微调。对于超参数调整,论文使用Alpaca-Eval v1.0与GPT-4 turbo作为注释者,以实现快速反馈,同时也通过GPT-4作为评判者来防止过拟合。结果:论文在表3中报告结果。当与先前最参数高效的PEFT(RED)匹配参数数量并在Llama-2 7B上训练时,LoReFT优于所有已报告的微调方法(包括完全微调),并实现了与GPT-3.5 Turbo 1106相差不到1%的胜率。此外,在减半参数数量或仅使用数据的1/64时,LoReFT仍然优于其他微调方法。这个结果表明,尽管在算术推理评估中可能存在一些潜在问题,但LoReFT在长文本生成方面能够成功。论文的结果还表明,LoReFT可能是评估指令调优数据集质量的一种可行方法,并能够在较短时间内得出结果。 2.3.5 自然语言理解
论文在GLUE基准测试上评估LoReFT,与现有的PEFT进行对比。论文使用这组实验来展示即使在规模较小的语言模型上,LoReFT也能够良好地工作,并且不仅可以改进用于分类任务的表示,还可以改进文本生成。论文在GLUE上微调RoBERTa-base(125M)和RoBERTa-large(350M),GLUE是一个自然语言理解(NLU)的序列分类基准测试,涵盖了情感分类和自然语言推理等领域。关于GLUE基准测试的详细信息可以在其原始论文中找到。超参数调整:论文为每个任务单独调整超参数,这是PEFT的标准做法。为了避免过度拟合随机种子,论文使用恒定种子对模型进行超参数调整,并报告在该种子和其他四个未见种子上的平均结果。论文在附录C中描述了超参数调整实验。 结果:论文在表4中报告结果。当参数与前一最参数高效的PEFT(RED)匹配时,LoReFT在两个模型大小上获得了与PEFT方法相当的性能。具有标准偏差的完整结果在表10中。2.4 pyreft:一个原生于ReFT的Python库
为了降低从PEFT到ReFT的切换成本,论文发布了pyreft,这是一个专为训练和共享ReFT而设计的Python库。论文的库是建立在pyvene之上的,这是一个用于在任意PyTorch模型上执行和训练激活干预的库。论文将论文的库发布在PyPI上。通过pyreft,可以支持HuggingFace上任何预训练的语言模型进行ReFT方法的微调,并且微调后的模型可以轻松上传到HuggingFace。以下示例展示了如何使用单个干预步骤来包装一个Llama-2 7B模型的第19层的残差流输出:
包装后的模型可以用于下游任务的训练。论文还提供了数据加载辅助工具,用于构建与HuggingFace训练器兼容的训练数据: