Geeks_Z の Blog Geeks_Z の Blog
首页
  • 学习笔记

    • 《HTML》
    • 《CSS》
    • 《JavaWeb》
    • 《Vue》
  • 后端文章

    • Linux
    • Maven
    • 汇编语言
    • 软件工程
    • 计算机网络概述
    • Conda
    • Pip
    • Shell
    • SSH
    • Mac快捷键
    • Zotero
  • 学习笔记

    • 《数据结构与算法》
    • 《算法设计与分析》
    • 《Spring》
    • 《SpringMVC》
    • 《SpringBoot》
    • 《SpringCloud》
    • 《Nginx》
  • 深度学习文章
  • 学习笔记

    • 《PyTorch》
    • 《ReinforementLearning》
    • 《MetaLearning》
  • 学习笔记

    • 《高等数学》
    • 《线性代数》
    • 《概率论与数理统计》
  • 增量学习
  • 哈希学习
GitHub (opens new window)

Geeks_Z

AI小学生
首页
  • 学习笔记

    • 《HTML》
    • 《CSS》
    • 《JavaWeb》
    • 《Vue》
  • 后端文章

    • Linux
    • Maven
    • 汇编语言
    • 软件工程
    • 计算机网络概述
    • Conda
    • Pip
    • Shell
    • SSH
    • Mac快捷键
    • Zotero
  • 学习笔记

    • 《数据结构与算法》
    • 《算法设计与分析》
    • 《Spring》
    • 《SpringMVC》
    • 《SpringBoot》
    • 《SpringCloud》
    • 《Nginx》
  • 深度学习文章
  • 学习笔记

    • 《PyTorch》
    • 《ReinforementLearning》
    • 《MetaLearning》
  • 学习笔记

    • 《高等数学》
    • 《线性代数》
    • 《概率论与数理统计》
  • 增量学习
  • 哈希学习
GitHub (opens new window)
  • Python

  • MLTutorials

  • 卷积神经网络

  • 循环神经网络

  • Transformer

  • VisionTransformer

  • 扩散模型

  • 计算机视觉

  • PTM

  • MoE

  • LoRAMoE

  • LongTailed

  • 多模态

  • 知识蒸馏

  • PEFT

  • 对比学习

  • 小样本学习

  • 迁移学习

  • 零样本学习

  • 集成学习

  • Mamba

  • PyTorch

  • CL

  • CIL

    • Survey

    • Direct Replay

    • Generative Replay

    • Data Regularization

    • Neuron Expansion

    • Backbone Expansion

    • PEFT Expansion

      • L2P
      • DualPrompt
      • CODA-Prompt
      • PromptFusion
      • CPP
      • EASE
      • APER
      • InfLoRA
      • MOS
      • LAE
        • 0. 摘要
        • 1. 引言
        • 2. 相关工作
        • 3. 预备知识
          • 3.1 持续学习公式
          • 3.2 参数高效调优回顾
        • 4. 方法论
          • 4.1 朴素基线
          • 4.2 提出的框架
        • 5. 实验
          • 5.1 数据集和评估协议
          • 5.2 实现和训练细节
          • 5.3 基准结果
          • 5.4 消融研究
          • 5.5 PET 模块的附加位置
          • 5.6 Transformer 变体和 ConvNet 的结果
        • 6. 结论
      • HiDe-Prompt
      • CPrompt
      • PILoRA
    • Parameter Regularization

    • Logit Distillation

    • Feature Distillation

    • Relational Distillation

    • Feature Rectify

    • Logit Rectify

    • Weight Rectify

    • Template-Based Classification

    • Energy

  • 小样本类增量学习FSCIL

  • UCIL

  • 多模态增量学习MMCL

  • LTCIL

  • DIL

  • 论文阅读与写作

  • 分布外检测

  • GPU

  • 深度学习调参指南

  • AINotes
  • CIL
  • PEFT Expansion
Geeks_Z
2025-02-06
目录

LAE

0. 摘要

“预训练 → 下游适应”为持续学习(Continual Learning, CL)带来了新的机遇和挑战。尽管最近的最先进 CL 方法通过参数高效调优(Parameter-Efficient-Tuning, PET)适应范式取得了成功,但仅探索了提示(prompt)方法,限制了其仅适用于 Transformer 模型。本文将提示视为 PET 的一种实例,并提出了一种通用的 PET 持续学习框架,称为学习 - 积累 - 集成(Learning-Accumulation-Ensemble, LAE)。PET(例如使用 Adapter、LoRA 或 Prefix)可以用更少的参数和资源将预训练模型适应到下游任务。给定一个 PET 方法,我们的 LAE 框架通过三个新颖的设计将其应用于 CL:1)学习:预训练模型通过调优在线 PET 模块来适应新任务,并通过适应速度校准来对齐不同的 PET 模块;2)积累:在线 PET 模块学习到的任务特定知识通过动量更新积累到离线 PET 模块中;3)集成:在推理过程中,我们分别构建两个专家模型(在线/离线 PET 模块,分别擅长处理新任务和历史任务)进行预测集成。我们展示了 LAE 与多种 PET 方法的兼容性,并获得了强大的 CL 能力。例如,使用 Adapter PET 的 LAE 在 CIFAR100 和 ImageNet-R 数据集上的最后增量准确率分别比之前的最先进方法高出 1.3% 和 3.6%。代码可在 https://github.com/gqk/LAE 获取。

1. 引言

在不断变化的世界中,持续学习(Continual Learning, CL)新知识是 AI 模型的一项基本能力。然而,神经网络常常遭受灾难性遗忘 [9, 39] 的困扰,即当模型吸收新信息时,先前学到的知识会被遗忘。尽管许多工作致力于减少遗忘,例如动态网络 [41, 50, 26, 18]、正则化 [28, 20, 52, 1] 和记忆回放 [38, 15, 6, 30, 2],但它们的性能仍然无法满足实际需求。

最近,预训练和下游适应技术为 CL 开辟了新的机遇和挑战。基本上,这些技术 [4, 36, 12, 11, 48] 在大规模数据上预训练一个深度模型,然后将预训练模型适应到新任务。我们观察到,下游适应和 CL 是相互重要的。一方面,在实际的 AI 系统中,预训练模型有时需要依次适应多个下游任务,从而产生了对 CL 的需求。另一方面,最近的研究 [47, 46, 45] 表明,“预训练 → 下游适应”技术可以提升 CL 性能。

具体来说,L2P[47]、DualPrompt[46] 和 ESN[45] 都使用了一种流行的适应技术,称为参数高效调优(Parameter-Efficient-Tuning, PET)。通常,PET 以更少的可学习参数和资源将预训练模型适应到下游任务。尽管这些方法在 CL 中取得了最先进的成果,但它们仍然存在一些局限性。1)它们都局限于特定的 PET 方法,即提示调优,限制了其灵活性,考虑到提示只能与 Transformer 配合使用,无法适应其他网络架构。2)大多数方法依赖于为每个任务选择任务特定的参数(特别是提示标记)。根据我们的补充材料中的调查,随着任务数量的增加,选择往往会变得嘈杂,任务特定的提示显得同质化。

为了解决这些问题,本文提出了学习 - 积累 - 集成(Learning-Accumulation-Ensemble, LAE),一个通用的参数高效调优(PET)持续学习框架。LAE 不仅限于提示,还可以利用各种其他 PET 模块,如图 2(b) 所示。给定一个 PET 方法,我们的 LAE 通过三个步骤直接将其重塑为 CL 方法,即学习、积累和集成。

  • 1) 学习与校准速度:预训练模型通过调优在线 PET 模块来适应新任务。为了适应各种 PET 方法,一个关键挑战是不同的 PET 模块具有不同的适应速度(对于新任务)以及不同的遗忘速度(对于历史任务)。为此,我们设计了一种基于梯度分析的适应校准策略。我们通过实验证明,这种校准策略能够对齐不同的 PET 模块,并使 LAE 成为一个统一的框架。

  • 2) 多任务知识的积累:在将预训练模型适应到新任务后,在线 PET 模块中的参数倾向于当前的新任务,可能不适合历史任务。与 L2P 和 DualPrompt 中记忆多个 PET 模块集合并选择一些子集(用于单个任务)不同,LAE 通过动量更新将所有已见任务的知识积累到单个离线 PET 模块中。这种简单的积累避免了嘈杂的选择,并且能够有效缓解灾难性遗忘,尤其是在学习的任务数量较大时(见第 5 节的图 3 和图 4)。

  • 3) 两个专家模型的集成:在线和离线 PET 模块分别包含更多的新知识和历史知识,因此,用它们构建的两个专家模型分别更擅长处理新任务和旧任务。与仅使用在线或离线专家模型进行推理不同,我们通过能量指标(详见第 4.2 节)集成两个专家模型的输出,以获得来自任何已学习任务的推理样本的预测。这种专家集成策略帮助我们的框架实现了比单独使用一个专家模型更鲁棒的性能。

本文的贡献总结如下:

  • 我们深入研究了通过通用参数高效调优(PET)方法不断将预训练模型适应到新任务的持续学习范式,并提出了统一的学习 - 积累 - 集成(LAE)框架。
  • 我们的 LAE 框架通过三个新颖的设计将给定的 PET 方法重塑为一种具有竞争力的无记忆持续学习方法:校准速度的学习、多任务知识的积累以及由在线和离线 PET 模块构建的两个专家模型的集成。
  • 我们在 CIFAR100 和 ImageNet-R 基准上进行了广泛的实验,在所有实验中,我们的 LAE 始终优于之前的最先进方法。

2. 相关工作

参数高效调优。作为全微调的高效替代方案,Adapter-Tuning[16] 首次提出将大型预训练语言模型迁移到下游任务。受文本提示的启发,Prompt-Tuning[25] 和 Prefix-Tuning[27] 插入可学习的标记以适应新任务。更先进的方法 [51, 7, 17, 33] 实现了与全微调相当或更优的性能,并通过将额外的可学习参数合并到原始预训练模型中来保持相同的推理成本。随着成功的 Vision Transformers[5, 31] 的出现,VPT[19] 和 AdapterFormer[3] 被提出用于解决视觉迁移学习问题。提示调优和前缀调优依赖于 Transformer 架构,因为它们修改了输入或隐藏标记。Adapter 及其变体是网络架构通用的,因为它们是可以以与预训练模型兼容的形式实现的新模块。所有类型的参数高效调优模块都可以集成到我们的 LAE 框架中,只要它们适用于预训练模型,但我们在本文中重点关注代表性的 Adapter[16]、LoRA[17] 和 Prefix[27]。

持续学习。持续学习(CL)的核心问题是应对灾难性遗忘 [9]。基于记忆的方法 [38, 15, 6, 30, 2] 将学习样本的子集保存到记忆缓冲区中,并在学习新任务时回放它们。无记忆方法不依赖于可能引发隐私问题的旧样本,它们动态扩展网络或为不同任务隔离参数 [41, 50, 26, 18],正则化对已学习任务重要的网络参数 [28, 20, 52, 1],并回放生成或合成的数据 [42, 49, 43, 8]。传统的 CL 方法使用随机初始化的模型从头开始学习任务,而预训练模型直到最近才受到 CL 研究者的关注。两项开创性工作 [47, 46] 将提示调优引入 CL,并取得了比之前方法高得多的增量性能,展示了在 CL 中使用预训练模型的优势。Side-Tuning[53] 采用了一种类似于 Adapter-Tuning 的技术,但需要推理样本的任务身份。在本文中,我们提出了一种统一的无记忆 CL 框架,可以整合各种类型的 PET 模块。特别是,我们专注于具有潜力的类增量学习(Class-Incremental Learning, CIL),未来工作可以将我们的 LAE 扩展到其他 CL 场景。

3. 预备知识

3.1 持续学习公式

我们专注于增量类的持续学习,即类增量学习(Class-Incremental Learning, CIL),其中模型依次学习任务 T:={T1,T2,⋯,Tn},第 ith 个任务 Ti 有 |Ti| 个类别,Ti 的训练集记为 Di,且任务之间的类别不重叠。模型 f(⋅;θ,ϕ) 为已学习任务的给定样本 x∈X 预测类别标签 y∈Y,其中 Y 是所有已见类别,θ 和 ϕ 分别是特征提取器和分类头的参数。在本文中,特征提取器是由 θpre 参数化的预训练模型,附加了由 θpet 参数化的参数高效调优模块,且 ϕ=concatenate(ϕold,ϕnew),其中 ϕold 和 ϕnew 分别是所有已学习任务 Ti.i 和当前学习任务 Ti 的分类器。由于在学习新任务时 θpre 和 ϕold 保持不变,我们在本文的其余部分可能会省略它们以简洁。

3.2 参数高效调优回顾

参数高效调优(Parameter-Efficient Tuning, PET)保持预训练模型冻结,并调优少量额外的可学习参数,称为 PET 模块。下面我们回顾几个代表性的 PET 模块,其中 g 是 PET 附加到的模块,e 和 h 是原始 g 的输入和输出,h′ 是附加 PET 后的 g 的输出。

Adapter[16] 是一个可以插入预训练模型任何层(即 g)的小模块。如图 2(b) 所示,Adapter 通常是一个由下投影(参数为 Wdown)、非线性激活函数 σ(⋅) 和上投影(参数为 Wup)组成的残差块。这两个投影可以是卷积 [37](用于 CNN)或线性 [16] 层(用于 Transformer 架构)。我们将 Adapter 公式化为:

(1)h′=h+σ(h∗Wdown)∗Wup,

其中 ∗ 是矩阵乘法或卷积操作,σ 是激活函数。或者,Adapter 也可以与 g 并行,类似于残差分支 [53, 10]:

(2)h′=h+σ(e∗Wdown)∗Wup.

LoRA[17] 假设在将预训练模型调优到下游任务时,参数的变化处于低秩空间。对于权重为 W∈Rd×d′ 的线性层,权重更新 ΔW 可以分解为两个小矩阵的乘积:

(3)ΔW=WdownWup,

其中 Wdown∈Rd×r 和 Wup∈Rr×d′。对于卷积层,更新可以重塑为核形状。最后,LoRA 将适应层的前向传递修改为以下形式:

(4)h′=h+e∗(WdownWup),

其中 ∗ 是矩阵乘法或卷积操作,偏置和重塑操作为了简洁而省略。由于 LoRA 适应 g 的权重,权重更新可以合并到 g 中以减少推理延迟。

Prefix[27] 和Prompt[25] 是可学习的标记,预加到 Transformer 块的输入或注意力模块的键和值。给定两组前缀标记 Pk,Pv∈Rl×d,注意力模块修改为:

(5)h′=Attn(xWq,[Pk,eWk],[Pv,eWv]),

其中 [⋅,⋅] 是连接操作,Attn 定义为:

Attn(Q,K,V):=softmax(QKTd)V,

并且为了简洁省略了多头机制。

在本文中,我们遵循 [10] 为并行 Adapter(公式 2)和 LoRA(公式 4)分别添加一个可学习的缩放参数 s,得到:

(6)h′=h+s⋅σ(e∗Wdown)∗Wup,(7)h′=h+s⋅e∗(WdownWup).

公式 (6) 和 (7) 是公式 (2) 和 (4) 的一般形式,当 s 为常数 1 时,它们退化为公式 (2) 和 (4)。我们在实验中使用公式 (6) 和 (7) 中的 PET,而不是公式 (1) 和 (4) 中的 PET(见第 5 节)。

除了上述三种 PET 模块外,还有许多其他模块,如 AdaptBias[7]、Compacter[33] 和 AdapterFormer[3],未来还会有新的、更优秀的 PET 方法。只要它们与预训练模型兼容,所有这些方法都可以应用于我们的 CL 框架(见第 4.2 节)。

4. 方法论

4.1 朴素基线

我们通过利用预训练模型和 PET 技术构建了一个基线,遵循通常被认为是 CIL 下界的朴素顺序微调(Seq-FT)。直观上,我们的基线创建一个 PET 模块并将其附加到预训练模型上,然后以与 Seq-FT 相同的方式顺序学习任务,但保持预训练模型冻结。我们选择局部交叉熵损失(CE)而不是全局 CE 损失作为 Seq-FT 和基线的学习目标,因为在使用大型预训练模型时,局部 CE 在经验上表现优于全局 CE[47, 46, 45]。局部 CE 是在当前任务的类别上计算的标准 CE:

(8)L=1|Di|∑(x,y)∈DiLce(mask(f(x;θ,ϕ)),y),

其中 y 是当前训练集 Di 中输入 x 的真实标签,mask(⋅) 是过滤掉旧类别 logits 的函数。当移除 mask(⋅) 时,公式 (8) 退化为全局 CE。尽管我们的基线非常朴素,但在使用相同的 Prefix 模块时,其性能与最先进的 DualPrompt 相当。

4.2 提出的框架

LAE 基于我们的网络架构通用基线,并额外引入了三个新颖的设计,从而产生了一个强大的框架,可以轻松地将任何 PET 方法重塑为具有竞争力的持续学习方法。接下来,我们将深入探讨 LAE 的三个关键方面:学习、积累和集成。

学习与校准速度。我们观察到,PET 模块在获取新知识的速度上存在差异,导致性能差异。理论上,PET 模块对新任务的适应速度过快可能导致过拟合,并导致更严重的灾难性遗忘,而较慢的适应速度可以保持模型的稳定性,但会限制其可塑性。我们认为,对齐不同 PET 模块的适应速度对于将它们转化为高效且鲁棒的 CL 方法至关重要。为此,我们提出了校准 PET 模块以适应速度的策略。

此外,由于相同的 PET 模块 θpet 被新旧任务共享,为新任务对 θpet 所做的更改可能会导致旧任务的遗忘。因此,减缓 θpet 的变化,例如通过降低学习率(见补充材料),可以帮助缓解灾难性遗忘。Kumar 等人 [22] 展示了线性探测后微调策略如何有效平衡分布外和分布内任务的性能。我们采用类似的技术来校准 θpet 相对于 ϕnew 的适应速度。具体来说,在训练开始时,我们只学习 ϕnew,同时冻结 θpet;然后在 ϕnew 充分学习且损失显著下降后,我们联合学习 ϕnew 和 θpet。

根据 He 等人 [10] 的研究,Prefix 可以等效地转换为类似于 Adapter 的形式:

(9)h′←(1−λ(e))h+λ(e)σ(eW1)W2,

其中 W1=WqPk⊤,W2=Pv,σ=softmax,且

(10)λ(e)=∑iexp⁡(eWqPk⊤)i∑iexp⁡(eWqPk⊤)i+∑jexp⁡(eWqWk⊤C⊤)j.

由于 Pk 通常包含比输入 C 少得多的标记,λ(e) 通常是一个接近 0 的小正数,这影响了 Prefix 标记 Pv 的梯度:

(11)∂L∂Pv=(∂h′∂Pv)⊤∂L∂h′=λ(e)(σ(eW1))⊤∂L∂h′.

因此,Pv 的梯度显著小于由 Wdown=W1 和 Wup=W2 参数化的相应 Adapter 参数 Wup 的梯度,并且我们可以得出关于 Pk 和 Wdown 的类似结论。然后,我们可以很容易地观察到,Prefix 对新任务的适应速度比 Adapter 慢得多。这也是为什么之前方法 [47, 46] 中不同任务的提示趋于同质化的部分原因(见补充材料)。在这里,我们通过补偿其梯度 1λ(e) 并添加两个可学习的缩放参数 sk 和 sv 来对齐 Prefix 与 Adapter,将公式 (9) 中的 Prefix 校准为以下形式:

(12)h′←(1−λ(e))h+σ(sk⋅eW1)(sv⋅W2).

校准后的 Prefix 的适应速度几乎等同于公式 (6) 中的 Adapter,并将其性能提升到与 Adapter 相当的水平。对于其他 PET 模块,我们也可以具体分析它们,然后校准它们的适应速度以与 Adapter 对齐。

通过对齐 PET 模块的适应速度并校准它们相对于分类器的适应速度,我们的框架在使用各种 PET 模块时实现了更好且更一致的稳定性 - 可塑性平衡。

多任务知识的积累。PET 模块 θpet 旨在不断适应新任务,使模型更擅长处理新任务。然而,这种适应过程可能导致模型逐渐忘记如何处理旧任务。为了解决这个问题,我们提出为旧任务创建一个额外的专家,以补充新任务的专家,灵感来自人类大脑的互补学习系统 [34, 23],其中海马体快速学习新知识,而新皮质随着时间的推移以离线方式整合已学知识。我们通过在模型学习第一个任务后复制在线 PET 模块 θpeton(即基线中的 θpet)作为离线 PET 模块 θpetoff 来实现这一点。当模型学习新任务时,θpetoff 通过积累函数缓慢积累已学知识,我们通过实验发现简单的指数移动平均(EMA)算法对我们的 LAE 效果很好:

(13)θpetoff←α⋅θpetoff+(1−α)⋅θpeton,

其中 α∈(0,1) 是一个较大的(即接近 1)权重衰减。

这样,类似于新皮质的离线 PET 模块逐渐以缓慢的离线方式整合已学知识,而类似于海马体的在线 PET 模块继续快速学习新知识。然后,我们可以分别获得用于新任务和旧任务的两个专家模型,分别使用 θpeton 和 θpetoff。然而,在推理过程中,样本所属的任务是未知的,我们需要设计一种方法来有效利用两个专家模型进行推理。

两个专家模型的集成。由 θpeton 和 θpetoff 构建的两个专家模型分别擅长处理新任务和旧任务。与仅使用在线或离线专家模型进行推理不同,我们通过能量指标(详见第 4.2 节)集成它们的输出,以获得来自任何已学习任务的推理样本的预测。

分类器可以被视为能量模型,当我们定义未归一化的负对数概率为能量函数时 [24]。能量模型的优化目标是最小化其学习任务数据分布上的能量。先前的研究 [29] 表明,在一个数据域上训练的能量模型在其他数据域上的能量通常非常高。因此,公式 (8) 实际上是在新任务上不断最小化 ϕnew 的能量。即使训练期间不使用旧数据,旧数据在 ϕnew 上的能量也会非常高,正如最近的工作 ESN[45] 所展示的那样。

同样,由于 θpeton 和 θpetoff 分别包含相对更多的新知识和历史知识,理论上,θpeton 对新任务样本产生的能量应该小于 θpetoff 产生的能量,反之亦然。因此,选择能量最低的预测结果作为推理样本的最终预测似乎是一个简单但有效的解决方案。然而,在实践中,我们发现在对 θpeton 和 θpetoff 产生的能量进行归一化后再进行集成会产生更鲁棒的结果。因此,我们采用以下集成算法:

(14)fens(oon,ooff):=max(σ(oon),σ(ooff)),

其中 σ 是 softmax 函数,oon 和 ooff 分别是在线和离线专家模型(即 f(⋅;θpeton,ϕ) 和 f(⋅;θpetoff,ϕ))对推理样本的输出。

如图 2 所示,在我们的 LAE 框架中,模型使用 θpeton 学习新任务,并将已学知识积累到 θpetoff 中,两个分别擅长新任务和旧任务的专家模型被集成以获得推理样本的最终预测。只要 PET 模块与模型兼容,我们的 LAE 就可以应用于任何网络架构的预训练模型。

5. 实验

5.1 数据集和评估协议

我们的实验使用在 ImageNet21k[40] 数据集上预训练的模型,除非另有说明,我们遵循先前的工作在 CIFAR100[21] 和 ImageNet-R[14] 基准上训练和评估模型。

CIFAR100是先前持续学习(CL)工作中广泛使用的数据集,包含 100 个类别,每个类别有 500 张训练图像和 100 张测试图像,图像大小为 32×32×3。

ImageNet-R由 Wang 等人 [46] 首次引入 CL,包括 ImageNet[40] 的 200 个子类别,但其样本风格多样,如卡通、涂鸦和折纸。原始数据集分为 24000 个样本的训练集和 6000 个样本的测试集,训练和测试样本数量在类别之间有所不同。

我们遵循先前的工作将数据集分为 10 个任务,所有任务具有相同数量的类别,即 CIFAR100 为 10 个,ImageNet-R 为 20 个。我们使用广泛使用的增量指标评估模型:最后增量准确率 AN 和平均增量准确率 A¯N=1N∑i=1NAi,其中 N 是任务总数(即 10),A¯i 正式定义为:

(15)Ai=1|D1:itest|∑(x,y)∈D1:itest\mathds1(y^=y),

其中 \mathds1(⋅) 是将布尔值映射到 {0,1} 的指示函数,D1:itest 是所有已见任务到目前的测试集,y^ 和 y 是输入 x 的预测标签和真实标签。我们对所有实验进行了 3 次不同类别顺序的运行,并报告了这 3 次运行的平均值和标准差。

5.2 实现和训练细节

为了进行公平比较,我们考虑了基于预训练模型的最先进方法 [47, 46],如我们的 LAE,并使用 Jaeho Lee 发布的 PyTorch 代码进行实验。联合微调(Joint-FT)和朴素顺序微调(Seq-FT)通常被认为是 CIL 的上限和下限,我们在代码库中实现了它们,参考了 Jaeho Lee 的代码。我们还与最近的工作 ESN[45] 进行了比较,使用了其官方的 PyTorch 代码。我们为基线和 LAE 框架选择了三种类型的代表性 PET 模块,每种类型有两个大小,其中大小表示 Adapter 的下投影维度、LoRA 的秩或 Prefix 的长度,如第 3 节所述。为了方便起见,我们假设在前面的讨论中只有一个 PET 模块附加到预训练模型上,实际上,多个 PET 模块被插入到 Transformer 的注意力块或 ConvNet 的卷积块的浅层中,遵循 DualPrompt[46]。

我们的基线和 LAE 框架的训练策略与 DualPrompt 相同,即使用 Adam 优化器训练模型 5 和 50 个 epoch,基于批量大小 256 的恒定学习率 0.03 和 0.005,分别用于 CIFAR100 和 ImageNet-R。EMA 算法的权重衰减 α 在公式 (13) 中定义为 0.9999,在所有实验中经验性地设置为 0.9999。PET 模块的冻结 epoch 数设置为 CIFAR100 的 3 和 ImageNet-R 的 30。数据增强与模型预训练中使用的一致。我们使用 ViT[5] 推荐的微调策略训练 Joint-FT 和 Seq-FT,但训练 epoch 数与我们的相同。更多细节可以在补充材料中找到。

5.3 基准结果

CIFAR100基准结果如表 1 所示。所有方法都使用相同的 ViT-B/16[5] 模型,该模型在 ImageNet21k[40] 数据集上进行了预训练。PET 模块的数字后缀表示其大小(即下投影维度或长度)。L2P 和 DualPrompt 是最先进的方法,采用池来存储 Prompt 或 Prefix。然而,随着学习任务数量的增加,它们的提示选择准确性逐渐下降,并且不同任务的提示趋于同质化(见补充材料)。因此,我们的基线虽然非常朴素,但实现了与 L2P 和 DualPrompt 相当的性能,而我们的 LAE 框架在所有 6 个 PET 模块上都始终优于 DualPrompt 和 ESN,最后增量准确率提高了约 1.5%。

ImageNet-R基准比 CIFAR100 更具挑战性,但它能更好地展示我们 LAE 框架的优势。从表 2 中的结果可以看出,我们的基线在使用 Prefix 时只能实现与 DualPrompt 相当的性能。这是因为 Adapter 和 LoRA 对新任务的适应速度比 Prefix 快,这在 ImageNet-R 数据集中被放大,但通过我们 LAE 框架的适应速度校准成功解决了这个问题。因此,我们可以看到,我们的 LAE 在最后增量准确率 A10 上比 DualPrompt 提高了超过 3.5%,与较简单的 CIFAR100 数据集相比,这一提升更为显著。我们还可以观察到,PET 模块的大小对我们的 LAE 框架的性能影响不大,并且我们的 LAE 对类别顺序更具鲁棒性,而我们的基线在不同类别顺序之间的差异较大。

现实世界中的 CL 是一个无止境的过程,每个学习阶段的性能对 AI 系统同样重要。因此,我们还在图 (a)a 和 (b)b 中绘制了逐任务增量准确率。我们可以观察到,我们的 LAE 在所有三个 PET 模块上几乎在所有学习阶段都优于 L2P 和 DualPrompt。我们的 LAE 在补充材料中展示的 20 任务实验中以更大的优势优于其他方法,突显了其处理长期 CL 场景的能力。在补充材料中,我们将我们的 LAE 与当代的 CODA-Prompt[44] 方法在 ImageNet-R 和 DomainNet[35] 数据集上进行了比较。参数和计算比较也可以在补充材料中找到。

5.4 消融研究

我们的 LAE 由三个主要新颖设计组成,即学习、积累和集成,因此我们对它们进行了消融研究,并在表 3 中报告了结果。第一行和最后一行分别是我们的基线和 LAE 框架。当移除我们的校准速度学习时,性能下降最多,表明它对我们的 LAE 贡献最大。积累和集成对我们的 LAE 也很重要,没有它们,最后增量准确率下降了 2.15%。第六行表示我们的 LAE 仅使用离线 PET 模块进行推理,其 A10 甚至优于我们的专家集成推理。如图 4 所示,在早期学习阶段,专家集成推理比单独使用在线或离线 PET 模块进行推理表现更好。然而,随着学习任务数量的增加,专家集成相对于离线 PET 模块的优势逐渐减小,部分原因是旧任务的性能主导了整体性能。尽管如此,在大多数情况下,专家集成推理产生了更鲁棒的性能。

我们还对 Prefix 的校准进行了消融实验。从表 4 中可以看出,梯度补偿和可学习缩放参数各自都显著提高了性能。此外,当它们一起使用时,性能提升大约等于单独使用它们时的提升之和,表明它们对性能的贡献是独立的。

5.5 PET 模块的附加位置

我们的 LAE 将 PET 模块直接插入前 5 个 Transformer 块中,遵循 DualPrompt。如图 5(左)所示,将 PET 模块插入最浅的位置比插入更深的位置产生更好的结果,这与 DualPrompt 中的观察一致。此外,图 5(右)显示,将 PET 模块插入前 6 个 Transformer 块中实现了最佳性能,而插入前 5 个 Transformer 块中(即我们 LAE 的默认设置)也产生了几乎相同的性能。

5.6 Transformer 变体和 ConvNet 的结果

Prefix 和 Prompt 不够灵活,无法应用于 ConvNet 和 Transformer 变体,而我们的 LAE 由于能够利用各种 PET 模块,因此具有模型架构通用性。我们选择 Swin Transformer[31] 和 ConvNeXt[32] 来验证我们的 LAE。

Swin Transformer是一个代表性的基于窗口的 Vision Transformer,但 L2P 和 DualPrompt 不能直接应用于它,因为插入的标记可能会破坏窗口的正确划分。因此,我们仅在使用 Swin Transformer 时将我们的 LAE 与基线进行比较,并在表 5 中报告结果。我们可以看到,我们的 LAE 在使用 Swin-B 时比使用 ViT-B/16 时表现更好,这主要是由于 Swin-B 的优越性能。此外,我们的 LAE 显著提高了基线在所有两个数据集上的性能。

ConvNeXt是 2020 年代的现代 ConvNet,通过将几种新颖设计纳入标准 ResNet[13] 中,超越了 Swin Transformer。同样,我们在表 6 中将我们的 LAE 与基线进行了比较。Adapter 的下投影和上投影使用 1x1 卷积层实现。我们的基线和 LAE 在使用 ConvNeXt-B 时都显著优于使用 ViT-B/16 和 Swin-B,突显了 LAE 的优势不仅限于 Transformer。我们的 LAE 在两个数据集上始终提高了基线的性能。

6. 结论

本文深入研究了从预训练模型开始并利用通用参数高效调优(PET)方法不断将模型适应到新任务的持续学习(CL)范式。我们构建了一个朴素的基线,其性能与之前的最先进方法相当。我们通过向基线引入三个新颖的设计,提出了学习 - 积累 - 集成(LAE)框架。我们的 LAE 可以将任何 PET 方法转化为高效的 CL 方法,而无需访问任何旧数据。我们进行了广泛的实验来验证 LAE 的有效性,结果表明我们的 LAE 显著优于之前的最先进方法。

局限性。未来仍有一些需要改进的局限性,例如如何更有效地积累知识和更好地集成专家模型。此外,由于缺乏与预训练数据集不重叠的大规模数据集,我们的 LAE 尚未在任务数量更多的 CL 场景中得到验证。

总的来说,本文为无记忆 CL 提供了一种新的解决方案,并为未来研究这一新颖的 CL 范式提供了一些理论和实验参考。

上次更新: 2025/06/25, 11:25:50
MOS
HiDe-Prompt

← MOS HiDe-Prompt→

最近更新
01
帮助信息查看
06-08
02
常用命令
06-08
03
学习资源
06-07
更多文章>
Theme by Vdoing | Copyright © 2022-2025 Geeks_Z | MIT License
京公网安备 11010802040735号 | 京ICP备2022029989号-1
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式