CL Info

       CL进展主要集中在改进 BP 算法以减少灾难性遗忘(Catastrophic Forgetting)、提高模型的适应性和效率等方面。

持续学习简介

一、Comprehensive Survey of Continual Learning

        2023.02清华大学发布了一份32页的持续学习综述,详细总结了持续学习的最新进展https://arxiv.org/abs/2302.00487

        持续学习的一般目标:在资源效率的背景下,确保适当的稳定性-可塑性权衡,以及充分的任务内/任务间泛化能力。

解决上述挑战的方法可以在概念上分为五组(图1,c):

  • 基于正则化的方法:参考旧模型在损失函数中添加显式正则项来平衡新旧任务
    • EWC:旧任务中每个参数的重要性(Fisher 信息矩阵),并对这些重要参数施加更大的惩罚,防止它们在学习新任务时发生较大变化。
    • L2正则化:损失函数中添加 L2 范数项来惩罚参数的变化
    • Knowledge Distillation:通过让当前模型的输出尽量接近旧模型的输出,实现知识的传递
    • Path Integral Regularization:通过计算模型在学习路径上的积分,限制模型在学习新任务时对旧任务的预测变化。
  • 基于优化的方法:显式操作优化程序
  • 基于表示的方法:学习鲁棒和良好泛化的表示,最近的工作试图结合自监督学习(SSL)和大规模预训练的优势,以改进初始化和持续学习中的表示。
  • 基于体系结构的方法:使用正确设计的体系结构构建任务自适应参数。上述策略单个模型和一个参数空间,这是导致任务间干扰的主要原因。相反,构造特定于任务的参数可以显式地解决这个问题
  • 基于回放的方法:逼近和恢复旧数据分布,
  • 五种方法详细见:1.【持续学习】清华最新持续学习综述_人工智能领域的持续学习-优快云博客

持续学习的主要目的是确保模型更新的资源效率,最好接近只学习新的训练样本

  • 增量学习:持续学习的核心思想是模型能够在不重新训练全部数据的情况下,通过新的训练样本逐步更新和改进。这意味着模型只需要处理新增的数据,而不是重新处理所有历史数据。
  • 减少冗余:通过只学习新的训练样本,模型可以避免重复处理已经学过的数据,从而减少计算和存储的冗余。
  • 实时适应:在实际应用中,数据往往是实时产生的。例如,自动驾驶汽车需要不断适应新的道路环境,医疗诊断系统需要不断学习新的病例。在这种情况下,模型需要能够快速适应新数据,而不需要等待所有数据收集完毕后再进行批量训练。

持续学习最新成果

多学习者策略,协作学习

1.多学习者CVPR Poster Improving Plasticity in Online Continual Learning via Collaborative Learning

2.辅助网络CVPR Poster Achieving a Better Stability-Plasticity Trade-Off via Auxiliary Networks in Continual Learning

Rethinking Gradient Projection Continual Learning: Stability / Plasticity Feature Space Decoupling

CVPR Poster Rethinking Gradient Projection Continual Learning: Stability / Plasticity Feature Space Decoupling

以往的研究发现,如果更新梯度与特征空间正交,学习就不会遗忘。但是,之前的方法要求梯度完全正交于整个特征空间,这导致了可塑性较差,因为随着任务的不断增加,特征空间会无限扩展,可行的梯度方向会变得狭窄。

空间解耦(Space Decoupling,SD)算法:该算法将特征空间解耦为一对互补的子空间,即稳定性空间(Stability Space,)和可塑性空间(Plasticity Space,)。

约束条件:对稳定性空间和可塑性空间分别施加不同的约束条件,以实现稳定性和可塑性的平衡。例如,在可塑性空间中鼓励模型探索新的特征表示,而在稳定性空间中则限制模型对旧知识的遗忘。

Adaptive Plasticity Improvement for Continual Learning

CVPR Poster Adaptive Plasticity Improvement for Continual Learning

设计了一个用于评估模型可塑性的模块。

根据可塑性评估模块的结果,制定自适应的调整策略。

1.Computationally Budgeted Continual Learning: What Does Matter?(CVPR2023)

CVPR Poster Computationally Budgeted Continual Learning: What Does Matter?

  1. 重要性采样:为了在有限的计算资源下选择最有价值的样本进行学习,采用重要性采样方法。根据样本对模型更新的贡献程度,为每个样本分配一个重要性权重,然后根据这些权重进行采样,选择一部分样本进行学习。
  2. 知识蒸馏:利用知识蒸馏技术,将旧任务的知识传递给新任务的学习过程。通过将旧任务的模型输出作为软目标,与新任务的真实标签一起用于训练新模型,从而保留旧任务的知识。
  3. 计算预算分配:在有限的计算预算下,合理分配计算资源给不同的任务和样本。根据任务的重要性和样本的重要性,动态地调整计算资源的分配,以实现最优的持续学习性能。

2.Improving Plasticity in Online Continual Learning via Collaborative Learning(CVPR2024)

CVPR Poster Improving Plasticity in Online Continual Learning via Collaborative Learning

  1. 协作学习框架:设计了一个协作学习框架,其中包含多个学习者。每个学习者负责学习一个特定的任务或一组相关任务。学习者之间通过信息共享和协作来提高整体的学习性能。
  2. 信息共享机制:建立了一种信息共享机制,使得学习者可以相互交流和分享学习到的知识。例如,可以通过传递特征表示、参数更新或预测结果等方式进行信息共享。
  3. 协作策略:制定了协作策略,以确定学习者之间如何进行协作。这包括确定何时进行信息共享、如何选择共享的信息以及如何整合共享的信息到自己的学习过程中。
  4. 在线学习过程:在在线持续学习过程中,学习者不断接收新的任务数据,并根据协作策略与其他学习者进行协作学习。通过不断地调整和优化自己的参数,学习者逐渐提高对新任务的适应能力,同时保持对旧任务的记忆。

3.NICE: Neurogenesis Inspired Contextual Encoding for Replay-free Class Incremental Learning(CVPR2024)

CVPR Poster NICE: Neurogenesis Inspired Contextual Encoding for Replay-free Class Incremental Learning

受神经发生启发的上下文编码方法(NICE),用于无重放的类增量学习。 通过引入新的神经元来表示新类别,并利用上下文编码机制来整合新类别和旧类别的信息,从而在不重放旧类别数据的情况下实现有效的学习。

  1. 神经发生启发的神经元生成:受到神经发生的启发,NICE 在学习新类别时生成新的神经元来表示新类别。这些新神经元与旧神经元一起构成了扩展的网络结构。
  2. 上下文编码机制:为了整合新类别和旧类别的信息,NICE 采用了上下文编码机制。该机制通过计算每个神经元的上下文表示,将新类别和旧类别的特征进行融合,从而实现信息的传递和共享。
  3. 学习过程:在类增量学习过程中,NICE 首先在旧类别数据上进行预训练,然后在新类别数据上进行微调。在微调过程中,新生成的神经元会逐渐适应新类别的特征,同时通过上下文编码机制与旧神经元进行交互,保持对旧类别的记忆。

二、续对比学习框架CILA(ICML 2024)

论文地址:https://proceedings.mlr.press/v235/wen24f.html

该框架利用memory buffer进行知识蒸馏,并结合对比损失和蒸馏损失作为目标损失函数。

启发性的想法是,最终模型的表现受限于之前模型的训练情况,即L_{total }和 L_{t} 之间存在某种联系。

理论结果:研究了最终模型的表现如何受先前模型表现的影响,建立了训练损失与最终模型表现之间的联系,证明了在学习每个任务时,最小化训练损失有助于改善最终模型的表现.

三、DIKI(ECCV'24)

用于DICIL(类别增量学习)

论文地址:https://arxiv.org/abs/2407.05342

代码地址:https://github.com/lloongx/DIKI

  1. 方法核心:DIKI 框架
    • 无干扰知识集成(IKI)机制
      • 问题分析:指出传统的提示调整方法存在信息干扰问题,导致预训练知识的丢失和零射击能力的下降,并且存在令牌长度增加、可扩展性有限等问题。
      • 新机制设计:提出一种无干扰知识集成方案,通过修改自注意力机制,分别计算输入令牌内的自注意力输出和提示与输入令牌之间的交叉注意力输出,仅训练一个残差注意力分支,避免对原始注意力过程产生影响。
      • 零初始化策略:通过零初始化残差注意力分支的参数,确保在未学习新知识时不向预训练的 VLM 注入随机噪声,以最小化引入的噪声来注入新知识。
    • 分布感知集成校准(Distribution - aware Integration Calibration)
      • 观察与问题提出:在推理时,传统的查询 - 键匹配机制在面对未见过的领域数据时可能会导致模型性能下降。虽然 IKI 机制可以减少噪声,但仍需要一种方法来控制知识植入模型的程度。
      • 校准方法设计:为每个任务维护一个特征分布(如多元高斯分布),计算测试样本来自每个任务分布的概率,并利用该概率来加权残差注意力输出,从而更好地保留 VLM 的预训练零射击能力,进一步解决前向遗忘问题。

四、Regularization-based methods

1.Semi-supervised Semantic Segmentation with Directional Context-aware Consistency

论文地址:https://arxiv.org/abs/2106.14133

设计了一种方向上下文感知一致性损失函数,该函数能够在不同的方向上约束模型的预测一致性,从而更好地利用图像中的上下文信息

2.Class - incremental learning via deep model consolidation

论文地址:论文地址

类增量学习就是要解决模型在不断增加新类别数据的情况下,如何有效地学习新类别知识,同时避免忘记之前学习过的旧类别知识,即灾难性遗忘(catastrophic forgetting)问题

深度模型巩固(Deep Model Consolidation):在每次有新类别数据加入时,对模型进行更新。这个更新过程不是简单地在新数据上重新训练,而是通过巧妙地整合旧模型的参数和新数据的信息来更新模型。

知识巩固机制:具体的巩固机制可能涉及到对旧类别数据的重新利用,例如通过生成旧类别数据的特征表示,然后与新类别数据的特征表示进行融合,使得模型在学习新类别知识的同时,能够回顾和巩固旧类别知识。

参数更新策略:在更新模型参数时,采用了特殊的策略来平衡新类别和旧类别信息的权重。这可能包括对不同类别数据对应的损失函数进行调整,或者对模型的不同层的参数更新进行约束等。

3.Uncertainty-based continual learning with adaptive regularization

论文地址:https://proceedings.neurips.cc/paper_files/paper/2019/file/2c3ddf4bf13852db711dd1901fb517fa-Paper.pdf

代码地址:GitHub - csm9493/UCL: The implementation code for Uncertainty-based Continual Learning with Adaptive Regularization (Neurips 2019)

对于有标注数据,使用交叉熵损失进行监督学习;对于无标注数据,使用基于不确定性的自适应正则化损失进行无监督学习。通过最小化总损失函数,优化网络参数,提高模型的持续学习能力。

  1. 不确定性估计:使用贝叶斯神经网络来估计模型的不确定性。具体来说,通过对模型的权重进行随机采样,得到多个模型的预测结果,然后计算这些预测结果的方差作为不确定性的估计。
  2. 自适应正则化:根据不确定性的估计结果,自适应地调整正则化强度。对于不确定性较高的数据,增加正则化强度,以防止模型过度拟合新任务而忘记旧知识;对于不确定性较低的数据,降低正则化强度,以允许模型更好地学习新任务。

4.Memory Aware Synapses: Learning What (Not) to Forget(ECCV‘2018)

论文地址:https://openaccess.thecvf.com/content_ECCV_2018/papers/Rahaf_Aljundi_Memory_Aware_Synapses_ECCV_2018_paper.pdf

“记忆感知突触”(Memory Aware Synapses):让模型自动学习哪些连接(突触)应该被保留,哪些应该被调整,以实现更好的持续学习性能。

 重要性损失函数:设计了一个损失函数来衡量突触的重要性。这个损失函数考虑了突触在旧任务和新任务中的表现,以及突触的大小和变化程度等因素。通过最小化这个损失函数,可以自动确定每个突触的重要性。

学习率调整策略:根据突触的重要性,调整其学习率。对于重要的突触,使用较小的学习率,以防止其被过度调整;对于不重要的突触,使用较大的学习率,以促进其更新

5.Learning without Forgetting(LwF: IEEE'2017)

论文地址:https://arxiv.org/abs/1606.09282

  1. 知识蒸馏:LwF 方法使用知识蒸馏来传递旧任务的知识。在学习新任务时,将旧任务的模型输出作为软目标,与新任务的真实标签一起用于训练新模型。通过最小化新模型输出与旧模型输出之间的差异,新模型可以学习到旧任务的知识。
  2. 联合训练:除了知识蒸馏,LwF 还采用联合训练的方式。在新任务的训练数据上,同时使用新任务的真实标签和旧任务的软目标进行训练。这样可以让新模型在学习新任务的同时,不断回顾旧任务的知识。
  3. 模型更新:在训练过程中,新模型的参数不断更新,以适应新任务的学习。同时,通过知识蒸馏和联合训练,旧任务的知识也被保留在新模型中。

6.Overcoming catastrophic forgetting in neural networks(20117)

论文地址:https://arxiv.org/abs/1612.00796

(Elastic Weight Consolidation,EWC):克服神经网络中的灾难性遗忘问题。

  1. 重要性估计:首先,在学习旧任务后,通过计算每个权重对旧任务损失函数的 Fisher 信息矩阵来估计其重要性。Fisher 信息矩阵反映了权重的变化对损失函数的影响程度,重要性高的权重在学习新任务时应该受到较小的更新。
  2. 约束优化:在学习新任务时,将对重要权重的更新约束加入到优化目标中。通过最小化新任务的损失函数同时约束重要权重的变化,可以在学习新任务的同时保护旧任务的知识。
  3. 学习过程:使用随机梯度下降等优化算法来更新神经网络的权重。在每次更新时,根据重要性估计和约束优化来调整权重的更新幅度,使得模型能够在学习新任务的同时不忘记旧任务。

五、architecture-based methods

1.Dytox: Transformers for continual learning with dynamic token expansion( IEEE/CVF’2022)

论文地址:https://openaccess.thecvf.com/content/CVPR2022/papers/Douillard_DyTox_Transformers_for_Continual_Learning_With_DYnamic_TOken_eXpansion_CVPR_2022_paper.pdf

 Dytox :基于 Transformer 架构,通过动态令牌扩展(dynamic token expansion)来实现持续学习。能够在学习新任务时动态地增加模型的容量,从而更好地适应新的数据和任务,同时避免对旧任务的灾难性遗忘

2.Learn to Grow: A Continual Structure Learning Framework for Overcoming Catastrophic Forgetting(2019)

论文地址:https://arxiv.org/abs/1904.00310

  1. Learn to Grow 框架采用了一种结构增长策略,即在学习新任务时,根据任务的需求动态地增加模型的结构。具体来说,该框架通过在现有模型的基础上添加新的神经元或层,来扩展模型的容量,以适应新任务的学习。
  2. 知识蒸馏:为了避免忘记旧任务的知识,Learn to Grow 框架采用了知识蒸馏技术。在学习新任务时,将旧任务的知识蒸馏到新任务的学习过程中,从而保留旧任务的知识。具体来说,该框架通过将旧任务的模型输出作为软目标,与新任务的真实标签一起用于训练新模型,从而使新模型能够学习到旧任务的知识。
  3. 训练过程:在训练过程中,Learn to Grow 框架首先在旧任务上进行预训练,然后在新任务上进行微调。在微调过程中,采用结构增长策略和知识蒸馏技术,不断调整模型结构和参数,以适应新任务的学习。同时,为了避免过拟合,该框架还采用了正则化技术和早停法等方法。

六、replayl-based methods 

处理跨任务类别区分问题

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值