【类增量学习之2025ICLR】SD-LORA:用于类增量学习的可扩展解耦低秩适配
零、前置知识1.Low-Rank Adaptation (LoRA)LoRA 是非常常见的参数高效微调方法。1.1.基本意思当我们微调一个大模型时不直接改全部参数而是只学习一个低秩矩阵分解形式的增量更新。通常写作其中 AAA 和 BBB 的秩很低所以需要训练的参数量比直接训练整个 WWW 小很多。1.2.中文理解你可以把 LoRA 理解成不给原模型“大动手术”只外挂一个很小的、低秩的可学习补丁。1.3.在本文中的作用这篇论文不是重新发明 LoRA而是在持续学习场景下重新设计了LoRA 如何逐任务累积、如何避免遗忘、如何保持可扩展性。2.Class Incremental Learning(类增量学习)2.1.含义模型要按顺序学习新类别。比如任务 1 学猫、狗任务 2 学车、船任务 3 学鸟、马学习新任务时模型通常不能访问旧任务的全部数据。最后测试时模型需要在所有学过的类别上统一分类而且通常不知道当前样本属于哪个任务。2.2.为什么难因为模型很容易在学习新类别时把旧类别忘掉这就是catastrophic forgetting中文灾难性遗忘2.3.这篇论文的重点这篇论文的研究不是一般 continual learning而是更难的class incremental learning简称CIL。3.背下单词吧LoRA低秩适配Decoupled解耦的把 LoRA 更新的幅值与方向解耦Scalable可伸缩/拓展的随着任务数增加仍保持良好扩展性Class Incremental Learning类增量学习顺序学习新类别测试时在所有已学类别上统一分类4. Continual Learning (CL_持续学习)4.1.含义模型不是一次性在静态数据集上训练完而是要随着新任务不断到来持续学习。4.2.在这篇论文里是什么意思这里特指模型要一个任务一个任务地学而且学新任务时不能随意访问旧任务全部数据因此会面临遗忘问题。4.3.相关概念catastrophic forgetting灾难性遗忘class incremental learning持续学习中的一种更难设定_类增量学习5. foundation models基础模型5.1.含义指大规模预训练模型比如 ViT、LLM 这类已经在大数据上预训练过、具有较强迁移能力的模型。5.2.在这篇论文里作者主要讨论的是视觉基础模型如 ViT-B/16。意思是先利用预训练模型本身已经学到的大量通用知识再把它用于持续学习6. promising paradigm(有前景的范式)6.1.含义“paradigm” 在学术论文里常指一种研究框架、方法路线或总体思路。这里不是“某个具体算法”而是说“基础模型 持续学习” 是一个值得发展的方向。7. sequential tasks顺序/序列任务7.1.含义任务不是同时给出而是按时间顺序一个接一个出现。7.2.在本文里的重要性持续学习最核心的设定就是“任务顺序到来”。难点在于新任务训练可能破坏旧任务能力。8. prompt-based methods基于提示的方法8.1.含义通过学习 prompt提示向量、提示 token、提示模块来适配新任务而不大幅修改原始模型参数。8.2.在本文里作者提到的 L2P、DualPrompt、CODA-Prompt 都属于这条路线。问题是 prompt 池会越来越大测试时还要选 prompt推理不够高效9. Low-Rank Adaptation-based / LoRA-based基于低秩适配的方法9.1.含义LoRA 通过低秩矩阵分解来表示参数更新只学习少量附加参数而不是全量微调。9.2.在本文里作者研究的是在持续学习场景下怎么让 LoRA 不只是“省参数”还能够“少遗忘、可扩展”。10. expanding a prompt/LoRA pool可拓展的prompt/LoRA池10.1.含义每来一个新任务就增加一些新的 prompt 或新的 LoRA 模块。10.2.为什么这是问题因为任务越多池子越大参数越来越多存储越来越大测试时选择成本越来越高这就是作者所说的scalability challenge。11. retaining samples of previous tasks保留先前任务的样本11.1.含义把旧任务中的一部分数据存下来在学新任务时一起训练帮助模型不要遗忘。11.2.对应术语这类做法常叫rehearsal排练/复习replay重放/回放sample memory样本记忆库11.3.这篇论文的立场作者希望不保留旧样本也就是做rehearsal-free的持续学习12. scalability challenges可拓展的挑战12.1.具体指什么不是说“模型不能训练”而是说当任务数增加时方法会越来越不实用比如组件越来越多存储越来越大推理越来越慢管理越来越复杂13. magnitude and direction of LoRA componentsLoRA组件的幅值与方向13.1.幅值magnitude表示一次参数更新“有多大”。13.2.方向direction表示参数更新“朝哪个方向去”。13.3.在本文中的创新点作者不是把 LoRA 更新当成一个整体来学而是把它拆成更新方向更新强度并且在持续学习中把这两者分离处理。这就是标题里Decoupled的具体含义14. low-loss trajectory低损失轨迹14.1.含义训练过程中模型参数沿着一条损失始终较低的路径移动。14.2.直观理解不是“为了学新任务硬跳到另一个点”而是沿着一条比较平滑、对旧任务也不太伤害的路线前进。14.3.在本文中的作用作者认为 SD-LoRA 正是通过这种方式缓解遗忘。15. overlapping low-loss region重叠低损失区域15.1.含义对多个任务来说都能保持较低损失的一块参数空间区域。15.2.直观理解可以把它理解为不是每个任务都完全需要不同的一套参数某些参数区域对多个任务都“够好”15.3.本文主张SD-LoRA 会逐步走向这样一个共享区域因此能兼顾新旧任务16. stability-plasticity trade-off稳定性-可塑性权衡16.1.stability稳定性记住旧知识不轻易遗忘。16.2.plasticity可塑性有能力吸收新知识适应新任务。16.3.trade-off权衡两者通常是冲突的太稳定学不会新任务太可塑旧任务忘得快17.component selection组件选择17.1.含义测试时需要判断当前样本该使用哪个 prompt、哪个适配器、哪个 LoRA 模块。17.2.为什么作者不喜欢它因为这会增加推理复杂度降低扩展性随任务增多而变得更麻烦18. end-to-end optimized端到端优化18.1.含义模型中所有要学的参数可以一起围绕最终目标直接优化而不是拆成多个相互独立的阶段分别训练。18.2.在这篇论文里作者把“是否端到端优化”视为一个重要优点因为这意味着方法整体目标更统一。19.PEET参数高效微调19.1.核心不对整个大模型做全参数微调而是只增加或只训练一小部分参数就让模型适应新任务。19.2.论文中的理解论文里明确说把PEFT和基础模型上的持续学习结合起来很重要因为如果每来一个新任务都做一次full fine-tuning计算和存储开销都会非常大几乎不可接受。所以作者把 PEFT 当成一种更现实的路线在保留基础模型主体参数的前提下只通过少量附加参数去适应每个新任务。PEFT是总类别Prompt-tuning、Prefix-tuning、Adapter、LoRA都是 PEFT 的具体实现方式。20.Prompt-tuning提示微调20.1.含义通过学习一组可训练的 prompt 表示引导基础模型适应新任务而不是大规模改动模型主体参数。20.2.特点改动小参数少常用于基础模型适配在持续学习里容易发展成越来越大的 prompt pool20.3.在本文中的位置L2P、DualPrompt、CODA-Prompt、HiDe-Prompt 都属于这条路线。21. Prefix-tuning(前缀微调)21.1.含义和 prompt-tuning 类似也是学习一组额外的可训练表示只不过它更强调在 Transformer 内部加入“前缀”形式的表示来影响后续计算。21.2.和 Prompt-tuning 的关系二者都属于 PEFT只是插入位置和作用方式略有区别。22.Adapter适配器方法22.1.含义在 Transformer 层之间插入一些轻量的小模块训练这些模块来适应新任务而原始大部分参数保持冻结。22.2.特点需要显式增加网络模块比全量微调省参数属于经典 PEFT 路线之一一、摘要1. 研究背景随着基础模型的发展基于基础模型的持续学习CL成为一个很有前景的研究方向因为预训练模型已经积累了大量通用知识可以用来更好地处理顺序到来的任务。2. 问题现有方法主要有两类不足一类是prompt-based 方法往往需要不断扩展 prompt 池另一类是LoRA-based 方法往往需要扩展 LoRA 池或者保存旧任务样本进行回放。这样一来随着任务数量增加方法会面临明显的可扩展性问题包括存储开销、参数膨胀和推理复杂度上升。3. 方法针对这些问题论文提出了SD-LoRAScalable Decoupled LoRA用于类增量学习。它的核心做法是在不使用回放样本的前提下把 LoRA 组件中的幅值magnitude和方向direction分开持续学习。4. 机制论文的经验分析和理论分析表明SD-LoRA 在训练过程中倾向于沿着一条低损失轨迹low-loss trajectory前进并最终收敛到一个对所有已学任务都有效的重叠低损失区域overlapping low-loss region。正因为如此它能够较好地平衡稳定性记住旧任务和可塑性学习新任务。5. 贡献这篇论文的主要贡献可以概括为四点提出了一个无回放、可扩展的解耦式 LoRA 方法SD-LoRA从经验和理论两方面解释了它为什么有效进一步提出了两个更高参数效率的变体实验表明该方法在多个持续学习基准和多种基础模型上都表现有效同时支持端到端优化和高效推理因为测试时不需要做额外的组件选择。6.一句话总结SD-LoRA 是一种面向类增量学习的、无回放的解耦式 LoRA 方法它通过分离更新的幅值和方向在保证推理高效的同时缓解灾难性遗忘并提升可扩展性。7.代码仓库SD-LoRA一种面向类增量学习的可扩展解耦低秩适配方法。二、介绍1. 研究背景这部分首先从持续学习CL的一般定义讲起持续学习希望构建一种计算学习系统使它能够在不断变化的环境中持续适应同时保留已经学到的旧知识。与传统监督学习假设训练数据满足id独立同分布不同持续学习面对的是非平稳数据任务是按顺序逐个到来的。也正因为如此模型在学习新任务时很容易出现对旧任务性能明显下降的现象也就是灾难性遗忘。接着作者把背景推进到基础模型上的持续学习。他们指出近几年基础模型因为具有大规模预训练知识在知识迁移和抗遗忘方面表现出明显优势因此“foundation model continual learning” 成为很有潜力的研究方向。2. 问题作者接下来指出现有方法虽然有效但都存在明显的可扩展性问题。第一类是prompt-based 方法。像 L2P、DualPrompt、CODA-Prompt 这类方法会为新任务逐步学习 prompt pool并在测试时从中选择与当前样本最匹配的 prompt。问题在于虽然它们不需要人工提供任务 ID但随着任务数量增加prompt 池会越来越大测试时的 prompt 识别与选择也会越来越复杂因此会带来推理扩展性不足的问题。第二类是更依赖内存的路线。HiDe-Prompt 在 prompt 学习的同时存储大量旧样本InfLoRA 虽然采用 LoRA 保持参数高效但在增量训练中同样需要回放大量旧样本。这类方法的问题在于它们对样本存储的依赖太强在真实部署尤其是资源受限或大规模持续学习场景中很难做到真正可扩展。因此作者实际上在这里提出了一个核心判断现有方法要么推理不够高效要么训练依赖 rehearsal memory要么无法做到真正端到端优化。3. 方法针对上述问题作者提出了SD-LoRAScalable Decoupled LoRA。它面向的是类增量学习class incremental learning并试图同时满足三项理想性质Rehearsal-free不保存旧任务样本Inference Efficiency测试时保持高推理效率End-to-end Optimization所有参数围绕持续学习目标统一进行端到端优化。SD-LoRA 的核心做法是在持续学习过程中增量地加入 LoRA 组件但不是把它们作为一个整体处理而是把 LoRA 更新中的幅值magnitude和方向direction分开学习。这样一来模型既可以保留已经学到的有效方向又可以继续适应新任务。更重要的是作者强调 SD-LoRA 在测试时可以直接使用最终训练好的模型进行评估而不需要像 prompt-pool 方法那样做任务相关的组件选择因此推理更高效。4. 机制这部分 Introduction 里已经提前给出了作者对方法有效性的解释也就是后文会详细展开的“工作机制”。作者认为SD-LoRA 在训练过程中会沿着一条低损失路径low-loss path前进并最终收敛到一个对所有已学习任务都有效的重叠低损失区域overlapping low-loss region。正因为它不是简单地为每个任务单独开一套互不相干的适配器而是在已有方向上持续调整和扩展所以它能够在稳定性和可塑性之间取得较好的平衡既尽量不忘旧任务又能继续学习新任务。作者还进一步观察到随着持续学习推进后续新学到的 LoRA 方向的重要性会逐渐减弱。换句话说早期学到的一些方向更像是“主干”后期更多是在其基础上做修正。正是基于这个观察作者后面又提出了两个更省参数的版本一个通过降秩rank reduction一个通过知识蒸馏knowledge distillation来进一步提升参数效率。5. 贡献这部分 Introduction 最后把论文贡献概括成三点。作者提出了一个基础模型上的持续学习方法SD-LoRA它同时具备无回放、推理高效、端到端优化这三个优点同时还给出了两个更高参数效率的变体。作者不仅给出了方法还从经验分析和理论分析两方面解释了 SD-LoRA 为什么有效并说明了它为何可以不依赖任务特定的组件选择。作者在多个持续学习 benchmark 和多种 foundation model 上做了系统实验验证了 SD-LoRA 的有效性。三、相关工作1. 研究背景持续学习CL的目标是让模型能够按顺序学习新任务同时尽量保留已经学到的旧知识核心就是缓解灾难性遗忘。现有 CL 方法大体可以分成三类基于回放的方法、基于正则化的方法、以及基于结构的方法。其中回放法通过保留旧样本来减轻遗忘正则化法通过在损失函数中加入约束项限制重要参数被破坏结构法则通过扩展或调整模型结构为新任务分配额外模块从而避免覆盖旧知识。作者特别说明本文关注的是更难也更实用的类增量学习class-incremental learning测试时模型无法获得任务身份信息却必须在所有已学任务上统一工作。2. 问题作者认为传统类增量学习方法往往要么需要从头训练要么依赖高参数开销的调优容易带来过拟合和任务间干扰。进一步到基础模型上的持续学习时已有方法虽然已经利用了预训练模型更强的知识迁移能力但仍然存在关键缺陷像 L2P、DualPrompt、CODA-Prompt 这类方法主要依赖prompt-tuning而 HiDe-Prompt 和 InfLoRA 则进一步依赖大量旧样本存储。结果就是现有方法虽然各有优点但没有一种能同时满足“无回放、推理高效、端到端优化”这三项理想性质。3. 方法在这样的相关工作背景下作者提出SD-LoRA把它定位为一种面向基础模型持续学习的、rehearsal-free 的 LoRA-based PEFT 方法。这一段没有展开公式细节但已经明确说明SD-LoRA 想填补现有方法的空白即同时兼顾不存旧样本、推理高效、端到端优化。作者还提到SD-LoRA 也可以从另一个角度被理解为某种model-merging思想的延伸只不过它是与持续学习研究并行发展、并且相互补充的。4. 机制这一段在机制层面主要强调两点。第一为什么要把PEFT和基础模型持续学习结合起来因为如果每来一个任务都做 full fine-tuning无论计算还是存储代价都太高。第二作者回顾了 PEFT 的三种代表路线adapters是在 Transformer 层里插入轻量模块prompt-tuning / prefix-tuning是学习输入或前缀表示LoRA则是向预训练权重上叠加低秩更新分支。作者的判断是这些 PEFT 技术在单任务或离线多任务中很有效但在基础模型上的持续学习场景里其能力边界还没有被充分研究因此 SD-LoRA 选择走一条无回放、LoRA-based 的 PEFT 路线。5. 贡献如果把这段 Related Work 的作用压缩成一句话那就是作者先系统梳理了CL、基础模型 CL、PEFT三条研究线然后指出现有工作仍缺少一个能同时满足三项关键性质的方案最后把SD-LoRA放在这个缺口上说明它的研究意义和定位。换句话说这一段的贡献不是提出新实验结果而是为后文的方法设计建立一个清晰的问题坐标系为什么现有方法不够为什么 LoRA 值得继续做为什么 SD-LoRA 是必要的。四、提出方法:SD-LoRA3.1 Preliminaries定义持续学习任务和标准 LoRA3.2 SD-LoRA提出核心方法3.3 Empirical Analysis用实验现象解释方法机制3.4 Theoretical Analysis用理论解释为什么早期方向重要3.5 Two Variants提出两个更省参数的版本4.1 预备知识先把问题和 LoRA 讲清楚1问题设定作者把类增量学习写成一个标准的顺序分类问题有 N 个顺序到来的任务 T1,…,TN。训练第 t 个任务时只能看到当前任务的数据 Dt看不到之前任务的数据。训练目标是让分类器 fθ 在当前任务上优化损失而总体目标则是学完当前任务后模型不仅要在当前任务上表现好也要在之前所有任务上都尽量保持性能。2标准 LoRA接着作者回顾 LoRA。LoRA 的核心思想是不直接改原始权重 W0而是只学习一个低秩更新 ΔWAB其中 A 和 B 都是小矩阵因此参数量很少。这样某一层的输出就从 W0X 变成 (W0AB)x而原始权重 W0在微调过程中保持冻结。这一小节的核心意思4.1 的目的就是把后面的方法建立在两个基础上任务是顺序学习、不能访问旧数据参数更新采用的是LoRA 这种低秩适配形式。4.2 SD-LoRA第三节最核心的方法部分1关键出发点作者先把普通 LoRA 的更新 ΔWAB进一步分解成两部分magnitude更新的大小也就是direction更新的方向也就是归一化后的作者认为普通 LoRA 把这两者绑在一起学不够灵活而已有研究也提示在微调里direction 往往比 magnitude 更关键。2SD-LoRA 的核心做法于是SD-LoRA 的设计就是在持续学习过程中把 LoRA 的幅值和方向解耦学习。更具体地说以前任务学到的方向 AkBk 被保留下来并固定当前任务学习时旧方向对应的系数 αk 仍然可以继续更新同时为当前任务再学习一个新的方向 AtBt和它对应的系数。因此第 t 个任务时某层的更新不再是单个 AB而是其中旧方向固定新方向和所有系数可学习。3这一设计想解决什么这个设计的目的是让模型不要每学一个新任务就“推翻”以前的 LoRA 更新方向而是保留早期方向把新任务更多地写成“在旧方向上重新加权再加少量新方向修正”。这也是标题里Decoupled的真正含义。4.3 经验分析作者用三个发现解释 SD-LoRA 为什么有效Finding 1不同任务的好解其实彼此靠得更近实验结果_Figure2作者先观察到如果把基础模型分别对不同任务单独 fine-tune得到的那些任务最优权重彼此之间往往比它们和原始预训练权重 W0 更接近。也就是说不同任务的“好参数”并不是完全分散的而可能在参数空间里彼此接近。进一步实验表明即便后续任务只持续调 LoRA 的 magnitude而固定第一个任务学到的 direction效果都能超过 vanilla LoRA。作者据此得出只要方向学得好单靠调整大小就已经能兼容多个任务。Finding 2早期学到的方向特别重要支持实验Figure3作者继续分析发现以前任务保留下来的方向尤其是最早几项任务学到的方向在整个持续学习过程中非常重要。具体表现是新学到的方向一开始和旧方向很相似说明存在方向复用随着任务推进新方向才逐渐偏离旧方向加入一些细微修正。与此同时早期任务对应的 magnitude 会快速上升而后期任务对应的 magnitude 整体呈下降趋势。作者把这解释成模型越来越依赖早期方向作为主干而后期方向更多是局部修正项。Finding 3SD-LoRA 在走一条 low-loss path第三个发现是最关键的。作者做了权重插值实验比较 vanilla LoRA 和 SD-LoRA 在两个连续任务之间的参数路径。结果显示SD-LoRA 从旧任务权重走向新任务权重时新任务性能上升但旧任务准确率几乎不掉而 vanilla LoRA 则会出现“新任务好了旧任务掉了”的典型遗忘现象。于是作者认为SD-LoRA 不是简单跳到一个新解而是在沿着低损失路径low-loss path前进最终落到对多个任务都友好的重叠低损失区域overlapping low-loss region。4.3 的一句话总结这一小节实际上想说明SD-LoRA 之所以能减少遗忘是因为它会保留早期关键方向并通过调整这些方向的权重把模型引导到一个对新旧任务都兼容的共享低损失区域。4.4 理论分析为什么早期方向会这么重要这一定理背后的直观意思是早期学到的方向更接近共享更新里的“主成分”因此更基础、更稳定也更值得被后续任务反复复用而后面学到的方向更多是在这些主方向基础上的细修正。这就从理论上呼应了前面经验分析里 magnitude 递减、早期方向更重要的现象。4.5 两个变体在核心机制不变的前提下进一步省参数1SD-LoRA-RR第一个变体叫SD-LoRA-RR其中 RR 是Rank Reduction。作者的观察是后期任务新引入的方向贡献越来越小那么就没必要一直给后期任务分配和早期任务一样高的 rank。于是他们对后期任务的 LoRA 矩阵逐步降秩早期任务 rank 高后期任务 rank 低。这样可以减少参数量同时保留主要性能。2SD-LoRA-KD第二个变体叫SD-LoRA-KD其中 KD 是Knowledge Distillation。它更进一步每学完一个新方向后不是立刻保留它而是先看这个新方向能否被之前学到的方向线性表示。如果能用旧方向的线性组合近似表示那么作者就不保留这个新方向而是把拟合系数吸收到已有的 magnitude 里。这样就能在不继续扩张方向集合的情况下把新知识“蒸馏”到旧方向里。4.5 的核心意义所以4.5 的重点不是重新发明新方法而是在 4.3 的经验发现之上进一步得出既然后期方向边际贡献变小就可以要么让后期方向更低秩要么干脆把新方向吸收到旧方向里。4.6.相关图解Figure 1对比a和b(a) Vanilla LoRA(b) 论文提出的 SD-LoRA普通 LoRA 直接学习一个低秩更新 AB而 SD-LoRA 把更新拆成“方向 幅值”并且把旧任务学到的方向保留下来。左图右图这张图的意义对持续学习的帮助一句话总结左图是普通 LoRA直接学一个低秩更新 AB右图是 SD-LoRA把更新拆成多个“方向”与对应“幅值”之和在持续学习中保留旧方向、学习新方向并调整各方向权重。Figure2支持上述Find1不同任务各自微调得到的最优权重其实彼此很接近即使固定早期学到的一个方向只调幅值效果也能比普通 LoRA 更好。一句话总结不同任务单独微调得到的最优权重彼此接近因此一个早期学到的 LoRA direction 可能已经包含了多个任务共享的主要更新方向实验上固定第一个方向、后续只调整 magnitude效果甚至优于 vanilla LoRA这为 SD-LoRA 保留旧方向的设计提供了依据。Figure3一句话总结Figure 3 表明SD-LoRA 在训练初期会让新方向与旧方向保持较强对齐说明存在方向复用随着训练推进新方向逐渐分化但从 learned magnitudes 来看模型始终更依赖早期任务学到的 directions而后期 directions 更多只是细微修正。这一发现直接支持了 SD-LoRA 固定旧方向以及后续参数压缩变体的设计。五、实验设置1. 实验设置作者先说明了实验所用的数据集、任务划分、评价指标、对比方法和训练细节。在数据集上他们主要使用了三个标准持续学习基准ImageNet-RImageNet-ADomainNet其中ImageNet-R 被划分为5/10/20 个任务ImageNet-A 被划分为10 个任务DomainNet 被划分为5 个任务。此外附录里还补充了 CIFAR100 和 CUB200 的结果。在评价指标上作者用了两个经典指标AccAverage Accuracy持续学习全部完成后在所有任务上的平均准确率AAAAverage Anytime Accuracy每学完一个新任务后都统计当前已经见过任务的平均准确率再把整个过程累计起来也就是说Acc 更看最终结果AAA 更看整个学习过程中的持续表现。在对比方法上作者选了当前较强的 ViT-based 持续学习方法包括L2PDualPromptCODA-PromptHiDe-PromptInfLoRA同时还加入了full fine-tuning作为一个较低基线。在模型和实现上主干网络使用的是ViT-B/16主版本来自 ImageNet-21K 预训练后再在 ImageNet-1K 上微调的模型此外还测试了DINO 的自监督 ViT-B/16。SD-LoRA 被插入到所有 Transformer block 的 attention 层中具体修改的是query 和 value projection。基础 rank 设为 r110。SD-LoRA-RR 进一步设置了来控制降秩SD-LoRA-KD 则设定了拟合残差阈值。训练统一使用 Adam 优化器。2. 实验结果这一节的实验结果主要证明了四件事。1在不同 benchmark 和不同 backbone 上SD-LoRA 都更强作者在表 2 和表 3 中显示SD-LoRA 在多个持续学习 benchmark 上都优于现有方法。比如在ImageNet-R (N20)上SD-LoRA 比 InfLoRA 高7.68% Acc和4.62% AAA在ImageNet-A上SD-LoRA 比 HiDe-Prompt 高31.05% Acc和15.32% AAA在更复杂的DomainNet上SD-LoRA 也取得了最优性能此外把 backbone 换成DINO 的自监督 ViT-B/16后SD-LoRA 仍然保持优势说明它不是只对某一个 backbone 有效而是具有一定泛化性。2任务数越多SD-LoRA 的优势越明显作者专门比较了 ImageNet-R 在5、10、20 个任务三种划分下的表现。结果表明随着任务数增加SD-LoRA 相对其他方法的优势还在扩大。这个结果很重要因为它直接支撑了题目中的Scalable任务越长、持续学习过程越复杂SD-LoRA 越能体现优势。3消融实验说明 SD-LoRA 的提升不是单一因素带来的作者做了三类消融实验第一只固定一个学到的 LoRA direction但允许 magnitude 继续适应。即便这样性能也不差说明初始方向本身就很关键。第二只做 magnitude 和 direction 的解耦但限制模型只有一个 LoRA component。这样效果明显不如完整 SD-LoRA说明单纯解耦还不够多个解耦组件协同学习才是关键。第三固定学到的 LoRA components但不做 magnitude rescaling性能也会下降。这说明 SD-LoRA 的优势不仅来自“保留旧方向”还来自于通过重新加权旧方向来沿 low-loss path 前进。4效率分析说明它不仅准而且省作者最后从GFLOPs、可训练参数量、特征存储需求三个角度比较不同方法。结果显示InfLoRA 和 SD-LoRA 都因为不需要在推理阶段做任务特定 prompt 选择所以推理效率很高而 SD-LoRA-RR 还能在不依赖 rehearsal的前提下进一步减少参数量因此特别适合资源受限场景。3.总结实验设置论文在 ImageNet-R、ImageNet-A 和 DomainNet 上评测 SD-LoRA使用 Acc 和 AAA 两个指标对比 L2P、DualPrompt、CODA-Prompt、HiDe-Prompt、InfLoRA 等方法并采用 ViT-B/16 与 DINO-ViT 作为 backbone。实验结果SD-LoRA 在多个 benchmark、不同任务长度和不同 backbone 下都优于现有方法任务数越多优势越明显两个参数高效变体 RR 和 KD 仅带来很小的性能下降。实验结论第四节证明了 SD-LoRA 不仅性能更强而且更适合长期、资源受限的持续学习场景。六、结论1. 研究结论这篇论文提出了SD-LoRA它是一个面向基础模型上的类增量学习的计算方法目标是解决随着任务数增加而出现的可扩展性问题。它的核心做法是把 LoRA 组件中的magnitude幅值和direction方向解耦学习从而同时实现三点rehearsal-free不需要保存旧样本inference-efficient推理高效end-to-end optimized端到端优化作者认为经验分析和理论分析都表明SD-LoRA 会沿着一条low-loss trajectory低损失轨迹前进并最终收敛到一个对所有已学任务都有效的overlapping low-loss region重叠低损失区域因此能够较好地平衡stability稳定性和plasticity可塑性。此外大量实验说明它确实能减轻catastrophic forgetting灾难性遗忘同时保持对新任务的适应能力。两个变体SD-LoRA-RR和SD-LoRA-KD也进一步提升了它在资源受限场景下的实用性。2. 未来研究方向作者在 Discussion 部分提出了三条未来工作方向。第一当前实验主要基于ViT所以未来可以把 SD-LoRA 扩展到更多类型的foundation models上看看它在不同 backbone 架构中是否同样有效。第二未来可以把 SD-LoRA 和其他PEFT技术结合起来比如adapters或prefix-tuning。作者的意思是SD-LoRA 现在是基于 LoRA 的但它的“解耦思想”未必只能用在 LoRA 上也许和其他参数高效微调方法结合后性能和扩展性还能进一步提升。第三作者认为目前的rank reduction和knowledge distillation设计虽然有效但还偏经验化。未来如果能为这两部分建立更扎实的理论依据就有可能进一步提升参数效率和整体性能。3.致谢略