完全开源的语言模型学习记录--KeepLora
文章目录KeepLoRA 论文总结一、一段话总结二、思维导图三、详细总结1. 研究背景与问题2. 核心发现3. KeepLoRA方法核心设计1稳定性保障2可塑性保障3执行流程4. 理论证明5. 实验结果1实验设置2关键性能数据3消融实验6. 方法优势7. 结论四、关键问题与答案问题1KeepLoRA与传统LoRA及O-LoRA、InfLoRA的核心区别是什么问题2KeepLoRA如何同时实现可塑性与稳定性理论依据是什么问题3KeepLoRA的实验验证覆盖哪些场景关键指标提升幅度如何一句话总览逐一定义超级通俗版1. Last最终性能2. Average平均性能3. Transfer前向稳定性 / 零射保持度三者对比最清晰版结论https://github.com/MaolinLuo/KeepLoRA.githttps://openreview.net/forum?idT3Vc5fkTzVKeepLoRA: Continual Learning with Residual Gradient AdaptationKeepLoRA 论文总结一、一段话总结本文提出KeepLoRA方法针对预训练视觉-语言模型的持续学习问题通过残差梯度自适应与子空间约束平衡可塑性、前向稳定性与后向稳定性三大核心目标经SVD分析发现模型主子空间存储通用知识、残差子空间存储任务专属知识将LoRA更新限制在残差子空间以避免知识干扰在CLIP、LLaVA模型及MTIL、MLLM-DCL、UCIT基准上取得SOTA效果代码已开源。二、思维导图## **核心定位** - 面向预训练视觉-语言模型持续学习 - 目标平衡可塑性、前向/后向稳定性 - 基础基于LoRA的参数高效微调 ## **核心发现** - 主子空间存储模型通用预训练知识 - 残差子空间存储任务专属领域知识 ## **方法设计** - 稳定性构建统一主子空间预训练历史任务 - 可塑性梯度引导的LoRA初始化 - 执行冻结LoRA的A矩阵仅优化B矩阵 ## **实验验证** - 模型CLIP、LLaVA-1.5-7B - 基准MTIL、MLLM-DCL、UCIT - 指标Transfer、Average、Last - 效果全指标SOTA遗忘显著降低 ## **核心贡献** - 揭示参数子空间知识分布规律 - 提出残差子空间约束的KeepLoRA - 理论证明最优性多模型多基准验证三、详细总结1. 研究背景与问题预训练视觉-语言模型VLM持续学习需平衡三大冲突目标可塑性学习新任务的能力前向稳定性保留预训练通用知识后向稳定性不遗忘已学任务现有方法存在参考数据依赖、推理开销大、未保护预训练知识等缺陷。2. 核心发现通过对模型注意力权重SVD分解分析主子空间大奇异值编码通用知识通用数据集性能对其修改鲁棒残差子空间小奇异值编码领域专属知识专用数据集性能对其修改敏感3. KeepLoRA方法核心设计1稳定性保障构建统一主子空间融合预训练参数主子空间Wp与历史任务主导特征方向Mt-1新任务更新限制在正交残差子空间避免干扰已有知识2可塑性保障用第一步任务梯度初始化LoRA对齐全参数微调方向梯度投影公式ĜtGt−WpWp⊤Gt−Mt-1Mt-1⊤Gt3执行流程梯度投影与SVD初始化LoRA的A、B矩阵冻结A矩阵仅优化B矩阵合并LoRA参数存储当前任务主导方向4. 理论证明命题3.1冻结A矩阵的LoRA等价于子空间内梯度投影更新命题3.2KeepLoRA的A初始化满足正交约束与任务自适应最优性5. 实验结果1实验设置模型CLIPViT-B/16、LLaVA-1.5-7B基准MTIL11个分类任务、MLLM-DCL5类VQA、UCIT6类VQA硬件单卡4090、4×H1002关键性能数据基准方法TransferAverageLastMTILKeepLoRA69.0%77.5%86.1%MLLM-DCLKeepLoRA33.71%54.19%64.41%UCITKeepLoRA28.40%55.37%67.84%3消融实验相比基础LoRAKeepLoRA在Transfer10.7%、Average16.0%、Last26.7%。6. 方法优势无参考数据依赖、无推理额外开销同时保护预训练知识与历史任务知识适配双编码器CLIP与编解码器LLaVA架构简单易实现代码开源7. 结论KeepLoRA通过残差子空间约束实现持续学习三大目标的平衡在视觉-语言模型持续学习任务中达到SOTA可扩展至更大模型与更多任务。四、关键问题与答案问题1KeepLoRA与传统LoRA及O-LoRA、InfLoRA的核心区别是什么答案核心区别在于子空间约束范围与初始化方式。KeepLoRA将更新约束在正交于预训练主子空间历史任务方向的残差子空间并用任务梯度初始化O-LoRA仅约束历史任务LoRA正交InfLoRA仅约束任务特征正交二者均未保护预训练主空间知识KeepLoRA同时兼顾前向与后向稳定性。问题2KeepLoRA如何同时实现可塑性与稳定性理论依据是什么答案可塑性通过梯度引导初始化使更新方向贴合全参数微调梯度稳定性通过正交投影避免干扰预训练与历史任务知识。理论依据为命题3.1冻结A矩阵等价子空间梯度投影与命题3.2初始化满足正交约束与最优自适应形成完整理论闭环。问题3KeepLoRA的实验验证覆盖哪些场景关键指标提升幅度如何答案覆盖图像分类MTIL、多模态VQAMLLM-DCL/UCIT适配CLIP、LLaVA两类主流视觉-语言模型。关键提升MTIL基准Transfer10.7%、Average16.0%、Last26.7%在MLLM-DCL与UCIT均取得全指标SOTA任务间干扰显著降低。Transfer / Average / Last这三个指标到底在测什么、为什么这么测。验证KeepLoRA在平衡持续学习三大核心目标前向稳定性、后向稳定性与可塑性方面的有效性。i为量化前向遗忘我们计算在训练完任务 (t) 后模型在任务 (t1,\dots,n) 上的平均准确率该指标定义为Transfer迁移度iiLast最终性能指标用于评估持续训练完成后的模型表现同时反映可塑性与后向稳定性。iii为进一步分析可塑性图2将本文方法与无约束LoRA进行对比结果表明KeepLoRA在以极小代价牺牲自适应能力的前提下有效保持了稳定性。Average平均准确率指标表示模型在所有已学习任务上的平均精度可全面衡量稳定性与可塑性之间的平衡。一句话总览Last最终学得好不好 plasticity 后向稳定性Average全程学得稳不稳整体平衡Transfer零射能力丢没丢前向稳定性逐一定义超级通俗版1. Last最终性能测的是所有任务都学完后每个任务最终能考多少分。模型按顺序学任务 1→2→3→…→n全部学完后回头测一遍所有任务每个任务的得分就是它的Last平均所有任务的 Last → 整体Last 分数作用看模型有没有学会新知识同时有没有忘掉旧知识。→ 衡量可塑性 后向稳定性2. Average平均性能测的是从开始到结束每一步的平均表现。每学完一个任务 i就测一遍所有任务 1~n把每一步的得分都记录下来最后对所有时间步、所有任务取平均 →Average作用看模型全程稳不稳定不是只看最后一步。→ 衡量稳定性 可塑性的整体平衡3. Transfer前向稳定性 / 零射保持度这是 KeepLoRA 最核心、最独特的指标测的是学完当前任务后对“还没学过的未来任务”的零射性能掉了多少。学完任务 i 后不去测已经学过的 1~i专门测还没学的任务 i1 ~ n计算这些未学任务的平均准确率 →Transfer作用看模型有没有破坏预训练模型本来的通用零射能力。→ 专门衡量前向稳定性 forward stability三者对比最清晰版指标测什么什么时候测核心意义Last所有任务最终得分全部学完后学会不忘旧Average全程所有步骤的平均每一步都算全程稳定平衡Transfer未学任务的零射表现每学完一步测未来任务不毁预训练能力结论这篇论文之所以强就是因为Last 最高学得快、记得住Average 最高全程不掉线Transfer 最高不破坏预训练模型的零射能力其他方法都做不到可以直接用纯文本KeepLoRA完全可以用于 Qwen 文本/多模态模型原因Qwen 原生支持 LoRA 微调所有版本Qwen、Qwen2、Qwen2.5、Qwen3、Qwen-VL 都支持KeepLoRA 是基于 LoRA 改进的持续学习方法不改动模型架构只需要在 LoRA 训练代码里加子空间投影 梯度初始化就能跑