Trans-PEFT: Transferable Parameter-Efficient Fine-Tuning on Evolving Base Models¶
会议: ACL 2025
arXiv: 2506.06844
代码: https://github.com/gccnlp/Trans-PEFT
领域: 模型压缩
关键词: PEFT, LoRA可迁移性, 基座模型更新, FFN知识掩码, Adapter
一句话总结¶
Trans-PEFT 发现基座模型更新(如 Qwen2→Qwen2.5)主要改变 FFN 层的任务知识存储而较少影响 Attention 层的任务模式,据此提出层内知识掩码和跨层知识丢弃两种策略,使在旧版本上训练的 PEFT 模块可直接迁移到新版本而不需重新微调,性能提升可达 30%。
研究背景与动机¶
- 领域现状:PEFT(如 LoRA、Adapter)已成为大模型微调的主流方法,允许一个基座模型通过动态切换 PEFT 模块服务多个用户。基座模型需要周期性更新(如 Qwen2→Qwen2.5、InternLM2→InternLM2.5)以更新知识和提升能力。
- 现有痛点:基座模型更新后,基于旧版本微调的 PEFT 模块会出现严重性能下降(直接迁移失败)。对于大规模部署中的大量 PEFT 模块,重新微调不仅计算开销巨大,还涉及用户数据的长期存储和隐私问题。
- 核心矛盾:PEFT 模块与基座模型的 FFN 层形成了紧密耦合——PEFT 学会了利用特定的知识存储模式,而模型更新恰恰改变了这些模式。
- 本文要解决什么? 让 PEFT 模块在旧版本上训练后能直接迁移到新版本,无需重新微调。
- 切入角度:分析模型更新前后的内部激活分布变化,发现 Attention 层的任务模式跨版本稳定,而 FFN 层的知识存储发生了显著变化。因此让 PEFT 减少对 FFN 知识的依赖,转而捕获 Attention 中不变的任务模式。
- 核心idea一句话:通过训练时随机掩码 FFN 层输出,强迫 PEFT 捕获跨版本不变的 Attention 任务模式而非版本相关的 FFN 知识。
方法详解¶
整体框架¶
在旧版本基座模型上微调 PEFT 时,对 FFN 层施加两种随机干预:(1) 层内知识掩码——随机置零 FFN 中间维度;(2) 跨层知识丢弃——随机丢弃整个 FFN 层的输出。推理时在新版本上直接使用 PEFT 模块,无需任何额外操作。
关键设计¶
- 层内知识掩码 (Intra-layer Knowledge Masking):
- 做什么:在 FFN 激活函数输出后随机掩码中间维度
- 核心思路:对每个 FFN 层引入 Bernoulli 掩码 \(m \sim \text{Bernoulli}(1-p_i)\),逐元素与激活值相乘:\(\text{FFN}(\mathbf{X}) = \sigma(\mathbf{X}(\mathbf{W}_{fc1}+\Delta\mathbf{W}_{fc1})) \odot m \cdot (\mathbf{W}_{fc2}+\Delta\mathbf{W}_{fc2})\)
-
设计动机:由于更新后 FFN 内部的知识存储分布会变化(实验观察),掩码引入的随机性使 PEFT 不再依赖特定维度的知识
-
跨层知识丢弃 (Cross-layer Knowledge Dropping):
- 做什么:以概率 \(p_c\) 随机丢弃整个 FFN 层的输出
- 核心思路:\(\widetilde{\text{FFN}}(\mathbf{X}) = z \cdot \text{FFN}(\mathbf{X})\),其中 \(z \sim \text{Bernoulli}(1-p_c)\)
-
设计动机:实验发现更新后不同 FFN 层对激活值大小的影响也会改变(甚至呈现相反效果),因此需要从跨层视角减少依赖
-
理论保证:
- 提供了损失差异上界:\(|\mathcal{L}(\theta; \mathcal{M}_1) - \mathcal{L}(\theta; \mathcal{M}_0)|\) 受 FFN 扰动幅度 \(\rho\) 和 PEFT 对 FFN 的梯度范数约束
- Trans-PEFT 通过减小 \(\|\nabla_{\theta_{ffn}} \mathcal{L}\|\) 来降低迁移损失上界
损失函数 / 训练策略¶
标准任务损失(如交叉熵),仅在训练时施加掩码和丢弃,推理时不需要。掩码率 \(p_i\) 和丢弃率 \(p_c\) 是超参数。方法与 LoRA 和 Adapter 都兼容,不需要修改模型架构。
实验关键数据¶
主实验¶
7 个基座模型(Qwen2/2.5-7B, InternLM2/2.5-7B, Llama3/3.1/3.2 等),12 个数据集(数学推理、代码生成、常识推理)。
| 迁移设置 | 直接迁移 Acc | Trans-PEFT Acc | 提升 |
|---|---|---|---|
| Qwen2→Qwen2.5 (GSM8K) | 54.2 | 71.3 | +17.1 |
| InternLM2→InternLM2.5 (GSM8K) | 48.7 | 63.5 | +14.8 |
| Qwen2→Qwen2.5 (HumanEval) | 42.1 | 55.8 | +13.7 |
| 平均提升 | - | - | ~30% (最高) |
与在新版本上直接微调的对比:
| 方法 | GSM8K Acc | 说明 |
|---|---|---|
| 在 Qwen2.5 上重新微调 | 73.8 | 上界(需要重新训练) |
| Trans-PEFT 迁移 | 71.3 | 不需要重新训练 |
| 直接迁移 | 54.2 | 性能大幅下降 |
消融实验¶
| 配置 | GSM8K Acc | 说明 |
|---|---|---|
| Trans-PEFT (完整) | 71.3 | 层内掩码 + 跨层丢弃 |
| 仅层内掩码 | 67.5 | 去掉跨层丢弃 |
| 仅跨层丢弃 | 65.8 | 去掉层内掩码 |
| 直接迁移 | 54.2 | 无任何策略 |
关键发现¶
- 两种策略互补:单独使用任一策略都有大幅提升,组合使用效果最好
- Trans-PEFT 不仅保持性能还能利用新版本的改进:在某些设置下,迁移后的性能甚至优于在旧版本上的原始性能
- 方法对 LoRA 和 Adapter 都有效:不依赖于具体的 PEFT 方法
- 掩码率和丢弃率敏感性适中:\(p_i\) 在 0.1-0.3 范围、\(p_c\) 在 0.05-0.15 范围效果较好
亮点与洞察¶
- "Attention 不变而 FFN 变"的观察非常有洞察力:这个观察将不可处理的"模型更新"问题简化为"FFN 变化"问题,为解决方案指明了方向
- 类 Dropout 的思路但有精确的目标:表面上是 Dropout,但深层逻辑是通过减少 PEFT 对 FFN 知识的梯度来降低迁移损失上界,有理论支撑
- 迁移价值极高:在 LLM 频繁迭代的当下(Llama3→3.1→3.2→3.3),避免每次升级都重新微调所有 PEFT 模块具有极大的工程价值
局限性 / 可改进方向¶
- 仅测试了架构不变的版本更新(如同系列的迭代),跨架构迁移未涉及
- 理论分析依赖 Attention 权重近似不变的假设,当更新幅度大时可能不成立
- 未探索自适应掩码率(根据层的变化幅度动态调整)
- 仅测试了 7B 规模,更大模型(70B+)的效果有待验证
相关工作与启发¶
- vs Qin et al. (2023): 他们指出 PEFT 直接迁移会失败,但未提出解决方案。Trans-PEFT 是首个系统性的解决方法
- vs Dropout: Trans-PEFT 类似 Dropout 但有明确的目标——减少对 FFN 知识的依赖。普通 Dropout 应用于所有位置,而 Trans-PEFT 仅针对 FFN 层
- vs LoRAHub/Model Merging: 这些方法关注 PEFT 模块间的组合,Trans-PEFT 关注跨版本迁移,解决的是不同的问题
评分¶
- 新颖性: ⭐⭐⭐⭐ "FFN变Attention不变"的观察新颖,解决方案设计合理
- 实验充分度: ⭐⭐⭐⭐⭐ 7个模型 × 12个数据集 × 2种PEFT方法,覆盖非常全面
- 写作质量: ⭐⭐⭐⭐ 分析清晰,从观察到方法到理论到实验的逻辑链完整
- 价值: ⭐⭐⭐⭐⭐ 解决了一个实际且紧迫的工程问题,对LLM生态有重要贡献