双系统 LoRA 框架 LoRA-PAR:基于认知理论的参数高效微调方法 !

大模型向量数据库数据中台

备注好友:方向-学校/公司-姓名/昵称

【AIGC 先锋科技】交流群

picture.image

picture.image

大规模生成模型如 DeepSeekR1和 OpenAI-O1能显著受益于思维链(CoT)推理,但提升其性能通常需要海量数据、庞大的模型规模以及全参数微调。

尽管参数高效微调(PEFT)有助于降低成本,但现有大多数方法主要针对领域适应或逐层分配,而非明确地根据不同响应需求定制数据和参数。受《快思考与慢思考》启发,该书将思维分为两种不同模式——系统1(快速、直觉、通常自动)和系统2(较慢、更具深思熟虑和分析性)——作者类比认为,大语言模型(LLM)参数的不同"子区域"可能同样专门用于需要快速直觉响应的任务,而非需要多步逻辑推理的任务。

因此,作者提出了LoRA-PAR,一个双系统LoRA框架,该框架根据系统1或系统2的需求划分数据和参数,为每个任务使用更少但更专注的参数。

具体而言,作者通过多模型角色扮演和投票对任务数据进行分类,并根据重要性评分划分参数,然后采用两阶段微调策略:使用监督微调(SFT)训练系统1任务以增强知识和直觉,并使用强化学习(RL)微调系统2任务以强化更深层次的逻辑推理。

大量实验表明,该两阶段微调策略、SFT和RL,在降低活跃参数使用量的同时,性能与或超越了SOTA PEFT Baseline 。

1 引言

深度寻求R1 和OpenAI-O1 等大语言模型(LLM)在配备思维链(CoT) Prompt 后,在复杂推理方面取得了显著进展。然而,将它们的性能提升到新水平通常依赖于大规模数据集和全参数微调,这需要大量的计算资源和庞大的模型规模。为了减轻这一负担,参数高效微调(PEFT)方法已成为一种有前景的替代方案。

然而,大多数现有的PEFT方法主要插入均匀的 Adapter 模块,并且没有针对不同任务或推理 Level 的独特需求进行特定的参数配置。尽管最近有一些尝试设计更注重任务或数据感知的PEFT解决方案(Zhang等,2023a,b),但这些工作主要集中于领域适应或逐层参数分配,而不是明确针对更High-Level的多步推理能力。

与此同时,受《思考,快与慢》(Kahneman,2011)启发,作者将双系统概念融入LLM的参数高效微调中。具体而言,如图2所示,作者借鉴了人类大脑在系统1和系统2之间运用部分不同神经过程的观点。

近期研究表明,大语言模型可以表现出或受益于不同的"快速"与"慢速"模式:(Hagendorff等人,2022)展现出类似人类的直觉偏差,(Pan等人,2024)提出了受Kahneman框架启发的动态决策机制,更广泛的讨论则支持将认知双过程理论与AI相结合(Booch等人,2020)。类比而言,作者提出LLM的参数可以被划分为针对不同响应需求的"子区域"。作者通过以下三步实现这一方案:

(1)采用多专家角色扮演和投票将每个训练实例分类为系统1或系统2任务,确保快速直接的"快速思考"问题与更审慎的多步任务分离;(2)然后通过基于重要性的参数划分,为系统1和系统2分配LoRA模块的不同参数子集,类似于激活不同的认知模式;

(3)使用端到端SFT训练系统1参数以实现直接的问答映射,并使用强化学习(GRPO(Shao等人,2024))优化系统2参数,类似于DeepSeek-R1(DeepSeekAI等人,2025)实现更深层次的思维链推理。通过这种方式,llm-LoRA-PAR_2507仍保持在参数高效微调(PEFT)的轻量级范畴内,同时捕捉了人类认知的双过程优势——快速直觉响应和系统化逻辑推理。

picture.image

2 相关工作

2.1 参数重要性计算与剪枝

SparseGPT(Frantar和Alistarh,2023)在不重新训练的情况下有效剪枝大规模LLM参数,显著减小模型尺寸且性能损失极小。Wanda(Sun等人,2023)采用激活感知幅度剪枝且无需重新训练,显著优于传统基于幅度的方法。

LLM-Pruner(Ma等人,2023)通过基于梯度的评分识别并移除结构冗余组件,保留通用多任务能力。Tyr-the-Pruner(Li等人,2025)应用二阶泰勒近似进行全局结构化剪枝,在极小精度损失下实现高Sparse度。

2.2 选择性冻结和双阶段训练

LIMA(Zhou等人,2023)表明微调可以有效地对预训练模型进行对齐,这意味着模型的大部分部分可以在不损失知识的情况下保持冻结。ILA(Shi等人,2024)开发了一种分析技术,用于选择性地冻结非关键层,从而提高微调的效率和性能。

安全层冻结(Li等人,2024)建议在进一步的微调过程中冻结已识别的“安全关键”层,以保持原始对齐和安全行为。

2.3 LoRA和PEFT变体

LoRA(Hu等人,2021)引入了低秩适配技术,通过冻结大部分参数同时更新小适配矩阵,大幅降低了微调开销。PiSSA(Meng等人,2024)使用预训练的奇异向量初始化 LoRA Adapter ,加速收敛并提升任务精度。OLoRA(Buyukakyuz,2024)通过正交矩阵增强LoRA初始化,显著加速微调收敛。

QLoRA(Dettmers等人,2023)实现了大型模型的4位量化高效微调,大幅降低计算需求而不损失性能。

(Hayou等人,2024)通过学习率缩放调整优化LoRA微调,实现更快收敛和更高精度。

3 方法

3.1 总体工作流程

作者 Proposal 的整体工作流程如下。首先,多个教师大语言模型(LLM)投票对每个 Query 进行 Token ,将其分类为快速单步推理(系统1)或多步推理(系统2)。接下来,作者计算LoRA中的参数重要性,并仅保留每个系统最具累积重要性分数的参数,从而识别出对两个系统都重要的共享子集。

最后,作者采用两阶段微调策略,使用SFT(监督微调)处理系统1任务,使用RL(强化学习)处理系统2任务。共享参数在两个阶段中可以部分激活,由

控制。这种设计通过冻结无关参数并将更新集中于最关键的子区域,有效地解决了单个LLM内部的“快速与慢速思考”问题。

3.2 多模型角色扮演和数据分类投票

如图1上方的面板所示(参见"样本分割器"),每个教师独立提供分类结果,然后作者应用投票程序来汇总这些判断。这确保了分歧——源于教师们不同的架构或训练历史——以稳健的方式得到解决。由此产生的 Token 子集

(系统1)和

(系统2)将输入到后续模块中,在那里它们指导参数划分和两阶段训练。

picture.image

3.3 子区域划分的参数重要性计算

在问题分类后,下一步是确定每个类别中哪些LoRA参数应该被"激活"。作者采用LoRA而不是fullPrompt进行分类

参数微调用于保留基础模型的全局知识,并实现针对系统1和系统2任务的模块化激活或冻结策略。分区过程类似于人类大脑不同区域在应对不同认知需求时的激活方式(Kahneman,2011)。在大语言模型中,参数梯度相当于神经激活。如果某个参数的梯度较大,则意味着该参数在纠正特定任务的输出错误中至关重要。为了提高模型回答不同类型问题(系统1或系统2)的能力,作者在损失计算中应用 Mask 以忽略 Prompt 和上下文 Token ——即作者仅关注输出位置。这确保了作者的重要性分数强调每个参数对生成正确最终答案的贡献,而非仅仅对 Prompt 文本进行建模。

计算重要性分数。在实践中,作者将LoRA模块附加在目标模型层中的Q/K/V/Gate/Up/Down位置。设

表示单个LoRA参数。作者通过二阶泰勒展开来测量其重要性,展开目标为 Mask 交叉熵损失

此处

是 Mask 损失相对于

的梯度,而

是从每个样本梯度

近似得到的Fisher矩阵的对角线元素。关注输出 Token 将参数重要性与模型生成正确答案的能力相一致。

参数选择与冻结。作者根据

进行排序,并选择其中的前一部分(由

控制)作为每个系统的“激活”子区域。在训练过程中,激活参数保持可学习,而其余参数被冻结,从而降低开销。某些参数可能对系统1和系统2都至关重要;这些“重叠”参数在两个微调阶段之间共享。通过这种方式划分参数,llm-LoRA-PAR_2507更接近神经类比的观点,即对于需要快速或慢速思考的任务,不同的“子区域”被投入其中。

3.4 基于重要性参数选择的两阶段微调策略

基于在

中计算的重要性分数,作者现正式化如何 (i) 确定每个系统应激活多少参数,(ii) 处理系统 1 和系统 2 参数之间的重叠,以及 (iii) 在两个不同阶段安排微调过程。如算法 1 所示,llm-LoRA-PAR_2507依赖于三个超参数——

——这些参数控制哪些参数以及多少参数需要更新,分别用于系统 1(SFT)和系统 2(RL)。

阈值0:选择最重要的参数。从参数重要性可视化(见图4)中,作者观察到系统1和系统2各自依赖于部分不重叠的LoRA参数集,但存在显著重叠。此外,每个数据集都包含许多“低影响”参数,其重要性对于两个系统都接近于零。作者引入累积重要性阈值

。具体而言,对于每个系统的参数重要性排序,作者仅保留累积重要性得分超过

的最重要参数子集,丢弃重要性可忽略的参数尾部,以减少开销并避免不必要的更新。例如,设置

意味着作者仅保留累积重要性得分超过90%的参数,这些参数分别对系统1和系统2任务至关重要。1激活分数

:处理重叠。将

分别应用于系统1和系统2,得到两个顶级排序的LoRA参数集,它们部分重叠。具体来说,某些参数在两个系统中都位列顶级排序;作者称这些参数为“共享”参数(见图4中的紫色区域)。因此,作者引入两个激活分数

,用于控制这些共享参数在两个训练阶段中被更新的数量。

picture.image

阶段1(在系统1任务上进行SFT):作者激活(a)系统1子集中的所有参数和(b)

分数的共享参数。如果

,在本阶段作者仅部分训练共享区域。

阶段2(在System2任务上的强化学习):随后作者激活(a)System2单独子集中的所有参数以及(b)

比例的共享参数。其余参数保持冻结状态,使作者能够根据

灵活分配更多(或更少)的共享参数给System 2。

通过调整

,作者微调了“快速直接”适应系统1和“多步深思熟虑”适应系统2之间的平衡,确保在各个阶段根据需要,对对两者都有用的参数进行部分或完全训练。

为何采用两个不同阶段(SFT然后RL)?作者遵循OpenAI GPT、DeepSeek-R1及相关多阶段语言模型训练文献中的实践,采用SFT

。系统1任务——快速、直接的问答——天然适合端到端SFT,它在不深入复杂推理的情况下建立了“快速思考”能力。这种“知识基础”有助于启动第二阶段,其中RL鼓励逐步逻辑推理,用于系统2任务(类似于“慢速思考”过程)。本质上,RL精炼并扩展了通过SFT获得的能

整合所有内容。算法1更正式地概述了这些步骤。在阶段1(SFT)中,仅训练系统1仅有的子集和共享参数的

部分;在阶段2(RL)中,仅更新系统2仅有的子集和共享参数的

部分。这种设计确保每个系统的专用子区域针对其各自的任务进行优化,同时共享参数可以灵活地为快速和慢速思考模式做出贡献。

picture.image

4 实验

4.1 实验设置

作者首先通过多模型角色扮演和投票对每个数据集进行划分

,然后计算LoRA参数重要性并保留每个系统的排名靠前的参数

。训练分为两个阶段

:(1) 系统1的SFT训练,以及(2) 系统2的RL训练,共享参数由

进行管理。作者在GSM8K (Cobbe et al., 2021)、MMLU (Hendrycks et al., 2021)(使用Dolly15K (Conover et al., 2023) 或 OpenPlatypus (Lee et al., 2023) 进行训练)以及HumanEval (Chen et al., 2021)(代码任务)上评估准确率,并将llm-LoRA-PAR_2507与LoRA (Hu et al., 2021)、OLoRA (Buyukakyuz, 2024)、PiSSA (Meng et al., 2024) 和

进行比较,所有方法均基于LLaMA2 7B。关键超参数包括

(排名靠前参数的比例)、

(重叠参数的激活分数),以及每个 Baseline 的1-2个训练周期。

4.2 角色扮演和数据分类投票

作者首先通过在GSM8K数据集上比较各种数据分类策略来验证第3.2节中介绍的角色扮演和投票方法。具体而言,作者对比了以下四种方法:(a) 无角色扮演的单模型,(b) 被 Prompt "扮演"LLaMA2 7B的单模型,(c) 随机划分,以及(d) 具有角色扮演和投票的多模型。如表1所示,多模型角色扮演+投票的设置实现了最佳性能。 Prompt 外部LLM模仿目标模型的决策边界(角色扮演)相较于其默认推理方式减少了误分类,而投票集成则缓解了个体偏差并产生了更稳健的划分。这一结果与作者的直觉相符,即结合多个"教师"视角能更好地逼近LLaMA2 7B区分系统1与系统2问题的方式,最终提升下游微调效果。

picture.image

4.3 通过

进行自适应参数使用

接下来,作者研究了如何通过改变累积重要性阈值

(从

)来影响LoRA参数的激活数量以及在SFT下的性能表现。本质上,

决定了哪些参数以及多少参数将被更新,如

中所述。对于每种设置,作者将三种LoRA模块配置(QKV、GUD和QKVGUD)与随机选择 Baseline 进行比较,后者选择相同比例的参数但不受重要性影响。

4.4 通过 α 和 β 利用共享参数

回想

(在

中引入)分别控制多少共享参数在SFT(系统1)和RL(系统2)阶段保持活跃。作者为每个系统固定

,然后变化

来测量它们对训练动态的影响。表2展示了使用QKVGUD LoRA在GSM8K上的结果。"Performance (SFT)"列反映了第一阶段后的准确率,而"Performance (RL)"是第二阶段后的最终准确率。当

时,共享参数在两个阶段都保持完全活跃——最大化SFT预训练权重并产生最佳最终分数(34.37)。

的较低值会减少重叠,限制SFT的早期收益或阻碍RL阶段的多步推理能力。实际上,一个强大的SFT基础为RL(系统2)提供了"热启动",让模型在其快速思考技能之上构建更深层的逻辑。

picture.image

4.5 最终性能与 Baseline 比较

作者通过将llm-LoRA-PAR_2507与几种基于LoRA的 Baseline 方法进行比较来得出结论,这些 Baseline 方法包括LoRA(Hu等人,2021年)、OLoRA(Buyukakyuz,2024年)、PiSSA(Meng等人,2024年)以及PiSSA+RL。作者在四个任务上进行了评估:GSM8K、MMLU(使用Dolly15K或Platypus进行训练)和HumanEval。表4中的每一列对应于这些任务中的一个,分别训练了一个或两个epoch。例如,GSM8K使用其自己的数据进行训练,而MMLU(Dolly)和MMLU(Platypus)分别使用Dolly15K和OpenPlatypus。HumanEval依赖于代码聚焦数据(CodeAlpaca(Chaudhary,2023年)、CodeFeedback)。为了参考,展示了基础模型(LLaMA2 7B),该模型未进行微调。 Baseline 方法通常执行两轮SFT,除了PiSSA+RL,它执行一个SFT epoch然后是一个RL epoch。作者的 Proposal (用* Token )在两阶段训练中应用基于θ的参数选择(Δθ=0.9或θ=0.95),并结合角色扮演+投票数据分割和完全激活的重叠α=β=1)。值得注意的是,PiSSA(θ=0.9或θ=0.95)使用了大约40%的完整LoRA参数,但性能优于vanilla PiSSA,表明专注于高重要性子区域可以获得更好的结果。总体而言,llm-LoRA-PAR_2507在GSM8K上实现了最佳准确率(41.85%),比PiSSA提高了约12%,同时使用的参数显著更少。在MMLU上,作者也观察到相对于标准LoRA和PiSSA的增益,这证实了仅选择性地激活最相关的参数既高效又有效。超越PiSSA,作者的QKVGUD配置对每个系统仅激活大约40%的LoRA参数(基于θ=0.9或0.95),但仍优于完整的LoRA和同等大小的随机子集。如图4中的散点图所示,这些“排名靠前”的参数形成了一个高度专业化的子区域,用于快速直观(系统1)与多步骤(系统2)任务。换句话说,通过将更新集中在对每种推理风格重要的参数上,作者实现了双系统类比——不同的参数子集擅长快速直观的SFT或逐步RL——同时降低了激活参数的使用。

picture.image

5 局限性

作者的实验证实,对系统1和系统2选择性地激活LoRA参数,在性能和参数效率方面均能带来显著优势。通过结合基于角色扮演的数据划分与重要性驱动的参数划分,作者有效地在大语言模型中近似了双过程范式。然而,也存在一些局限性:

(1) 多模型标注。尽管使用多个教师大语言模型可以提高标注质量,但它增加了计算开销,并假设能够访问多样化和高容量的模型。

(2) 任务划分的粒度。llm-LoRA-PAR_2507将任务在粗粒度层面处理。

更细致的区分(例如中间步骤或部分多跳推理)可能需要更细粒度的分析。(3) 对其他架构的适用性。作者在LLaMA2 7B上展示了结果;推广到其他模型家族(例如解码器-编码器混合模型)可能需要对LoRA参数的附加方式和评分方法进行调整。

参考

[1]. LoRA-PAR: A Flexible Dual-System LoRA Partitioning Approach to Efficient LLM Fine-Tuning

0
0
0
0
关于作者
关于作者

文章

0

获赞

0

收藏

0

相关资源
VikingDB:大规模云原生向量数据库的前沿实践与应用
本次演讲将重点介绍 VikingDB 解决各类应用中极限性能、规模、精度问题上的探索实践,并通过落地的案例向听众介绍如何在多模态信息检索、RAG 与知识库等领域进行合理的技术选型和规划。
相关产品
评论
未登录
看完啦,登录分享一下感受吧~
暂无评论