【博士每天一篇文献-算法】改进的PNN架构Lifelong learning with dynamically expandable networks

简介: 本文介绍了一种名为Dynamically Expandable Network(DEN)的深度神经网络架构,它能够在学习新任务的同时保持对旧任务的记忆,并通过动态扩展网络容量和选择性重训练机制,有效防止语义漂移,实现终身学习。

阅读时间:2023-12-25

1 介绍

年份:2017
作者:尹在弘,北卡罗来纳大学教堂山分校博士后;杨恩浩,韩国科学技术院
期刊: 未发表
引用量:1232
代码:https://github.com/jaehong31/DEN
Yoon J, Yang E, Lee J, et al. Lifelong learning with dynamically expandable networks[J]. arXiv preprint arXiv:1708.01547, 2017.
image.png
image.png
提出了一种动态可扩展网络网络(Dynamically Expandable Network,DEN)DEN是一种有效的终身学习深度神经网络,能够在学习新任务的同时保持对旧任务的记忆,并且能够动态地调整自身的网络容量以适应新知识。DEN可以根据新任务的需求,通过增加或分裂/复制单元并进行时间戳标记来动态扩展网络容量。当现有网络不足以解释新任务时,DEN能够动态地增加网络容量,仅添加必要的单元数量。通过单元分裂/复制和时间戳标记,DEN有效防止了语义漂移(semantic drift),即网络在训练过程中逐渐偏离初始配置,导致对早期任务的性能下降。

2 创新点

  1. 动态可扩展网络架构(DEN):一种新型的深度学习架构,能够根据任务序列动态调整网络容量,以适应不同任务的需求。
  2. 选择性重训练机制:DEN通过选择性地重训练网络中与新任务相关的部分,而不是整个网络,从而提高了学习效率并减少了计算开销。
  3. 动态网络容量调整:根据新任务与旧任务的相关性,DEN能够决定是否需要扩展网络容量,以及需要添加多少神经元,这通过群组稀疏正则化来实现。
  4. 防止语义漂移的策略:通过单元分裂/复制和时间戳标记,DEN有效避免了在连续学习过程中对旧任务性能的负面影响,即所谓的“灾难性遗忘”。
  5. 在线学习与批量学习的比较:论文中的实验表明,DEN在终身学习场景下,即使使用较少的参数,也能与批量训练模型达到相似的性能水平,并且在所有任务上进一步微调后,性能甚至超过了批量模型。
  6. 跨数据集验证:作者在多个公共数据集上验证了DEN的有效性,包括MNIST-Variation、CIFAR-100和AWA数据集,证明了模型的泛化能力和适应性。
  7. 结构化稀疏性的应用:在初始训练阶段,通过应用L1正则化来促进权重的稀疏性,使得每个神经元只与下一层的少数神经元连接,这有助于在后续任务中更有效地选择性重训练。
  8. 时间戳推理机制:在推理过程中,DEN使用时间戳来确定每个任务应该使用的网络参数,这进一步确保了旧任务不会因为新加入的单元而受到语义漂移的影响。

3 相关研究

  1. 终身学习 (Lifelong learning):
    • Thrun, S. (1995). A lifelong learning perspective for mobile robot control.
  2. 在线终身学习框架 (Online lifelong learning framework):
    • Eaton, E., & Ruvolo, P. (2013). ELLA: An efficient lifelong learning algorithm.
  3. 深度学习中的终身学习 (Lifelong learning in deep learning frameworks):
    • Rusu, A. A., et al. (2016). Progressive neural networks.
    • Kirkpatrick, J., et al. (2017). Overcoming catastrophic forgetting in neural networks.
    • Zenke, F., et al. (2017). Continual learning through synaptic intelligence.
    • Lee, S.-W., et al. (2017). Overcoming catastrophic forgetting by incremental moment matching.
  4. 防止灾难性遗忘 (Preventing catastrophic forgetting):
    • Kirkpatrick, J., et al. (2017). Overcoming catastrophic forgetting in neural networks.
    • Zenke, F., et al. (2017). Continual learning through synaptic intelligence.
    • Rusu, A. A., et al. (2016). Progressive neural networks.
  5. 动态网络扩展 (Dynamic network expansion):
    • Zhou, G., et al. (2012). Online incremental feature learning with denoising autoencoders.
    • Philipp, G., & Carbonell, J. G. (2017). Nonparametric neural networks.
    • Cortes, C., et al. (2016). Adanet: Adaptive structural learning of artificial neural networks.
    • Xiao, T., et al. (2014). Error-driven incremental learning in deep convolutional neural network for large-scale image classification.

4 算法

image.png

4.1 初始化和选择性重训练

  • 目标:在新任务到来时,只重训练与新任务相关的网络部分。通过稀疏化和挑选节点,只保留最重要最简单的网络结构。
  • 过程
    • 使用L1正则化初始化网络,促进权重稀疏性,使得每个神经元只与少数下层神经元连接。
    • 当新任务到达时,首先在最顶层建立稀疏连接,训练后就可以确定稀疏连接。
    • 一旦建立了稀疏连接,使用BFS从输出单元开始,向前传播以识别所有对新任务有影响的单元。BFS会遍历网络,从选定的输出单元开始,逐步向上层扩展,直到第一层。通过BFS,可以构建一个包含所有相关单元和权重的子网络图。这个子网络S包含了对新任务有直接影响的单元。
    • 只对选定的子网络S的权重进行重训练。

4.2 动态网络扩展

  • 目标:当现有网络不足以学习新任务时,动态地增加网络容量。
  • 过程
    • 如果选择性重训练后的损失超过预设阈值,则触发网络扩展。网络扩展决定在网络的哪些层上添加新的神经元,可以是所有层,或者是特定层。
    • 在每一层添加固定数量的神经元k,并通过群组稀疏正则化,即对新添加的神经元的权重施加组稀疏正则化。包括对每个新神经元的权重向量执行L1正则化和L2正则化。
    • 训练完成后,评估每个新添加的神经元的贡献。如果一个神经元的权重在训练过程中被正则化至接近零(即组稀疏正则化中的L1项导致该组的权重和很小),则认为这个神经元对当前任务贡献不大。删除这些不必要的神经元,以保持网络的效率和防止过拟合。
    • 如果删除后网络性能仍然不满足要求,算法可能会返回到步骤2,并在更多的层上或以不同的数量尝试扩展。

4.3 网络分裂/复制

  • 目标:防止语义漂移,确保网络对早期任务的表示不会因新任务的学习而退化。
  • 过程
    • 测量每个隐藏单元训练前后的语义漂移量,即L2距离。
    • 如果漂移量超过阈值σ,则将该单元分裂为两个副本,创建新的单元以保持对早期任务的学习能力,为新任务保留原始特征的同时引入新特征。
    • 分裂后,重新训练网络权重以适应新的网络结构。

4.4 时间戳推理

  • 目标:在推理时,确保每个任务只使用到其训练阶段为止的网络参数。
  • 过程
    • 为新添加的每个单元设置时间戳,记录其被添加到网络的阶段。
    • 在推理时,根据时间戳选择参数,确保旧任务不会受到新添加单元的影响。

5 实验分析

(1)平均任务性能与任务数量的关系
image.png

(2)准确率与网络容量的关系
image.png
DEN模型在连续学习多个任务的过程中显示出良好的性能稳定性,即使面对不断增加的任务数量,也能保持较高的平均任务性能。
DEN模型能够高效地利用网络容量,在远低于传统多任务学习模型的参数量下实现相似或更好的性能,这表明DEN在网络参数使用上具有显著的优势。
DEN通过动态调整网络容量和选择性重训练,展示了良好的适应性,能够根据新任务的需求灵活调整网络结构。
(3)AUROC随实际训练时间的变化
image.png
X轴表示实际训练时间,即GPU计算所花费的时间。Y轴表示AUROC(Area Under the Receiver Operating Characteristic curve),用于衡量模型的性能。选择性重训练(DNN-Selective)相比于完整网络重训练(DNN-L2)或稀疏权重网络重训练(DNN-L1)在较短的时间内达到了更高的AUROC,表明选择性重训练在效率上有显著提升。
(4)选择性重训练选择的神经元数量
image.png
选择性重训练倾向于选择较少的神经元进行更新,这意味着只有与新任务高度相关的部分网络被激活和训练,从而减少了计算量。
(5)扩展性能
image.png

  • DEN模型在扩展网络时能够保持较高的AUROC,同时只有适度的网络容量增加。
  • DNN-Dynamic(动态扩展的网络)相比于固定数量扩展(DNN-Constant)在网络容量上更小,但性能上更好,这表明DEN的动态扩展策略在保持性能的同时有效控制了网络大小。

(6)语义漂移实验
image.png
DEN-No-Stamp模型是DEN模型的一个变体,没有使用时间戳推理机制。尽管在后期任务上表现良好,但随着时间推移,对早期任务的性能有所下降。DEN模型通过选择性重训练、动态网络扩展和网络分裂/复制等机制,有效防止了语义漂移。在所有训练阶段,DEN显示出对早期任务的稳定性能,并且在后期任务上也有良好表现。DEN算法在处理连续学习任务时,如何有效地平衡新旧任务的学习,防止因学习新任务而导致对旧任务性能的负面影响,即灾难性遗忘。

(7)Permuted MNIST数据集上进行的连续学习实验
image.png
Permuted MNIST数据集的实验结果进一步证实了DEN在控制语义漂移方面的有效性,即使在面对连续变化的任务时,DEN也能够保持对早期任务的高性能。如果对DEN模型在所有任务上进行微调(DEN-Finetune),它能够进一步改善性能,甚至超过了单独针对每个任务训练的模型(DNN-STL)和MTL模型,这表明DEN在结构估计方面的优势。

6 思考

(1)DEN相比较于DNN-Progressive(传统的PNN)做了哪些改进?

  1. 动态容量调整:DNN-Progressive通过为每个新任务添加固定容量的子网络来扩展模型,而DEN能够根据新任务的需求动态地调整网络容量。这意味着DEN可以更精确地为每个任务分配所需的资源,而不是预先设定一个固定的扩展量。
  2. 选择性重训练:DEN执行选择性重训练,只更新与新任务相关的网络部分,而DNN-Progressive通常不对旧网络进行更新,只是简单地添加新的部分。这使得DEN在保持旧任务性能的同时,更有效地适应新任务。
  3. 防止语义漂移:为了解决语义漂移或灾难性遗忘的问题,DEN采用了单元分裂/复制机制和时间戳推理,而DNN-Progressive通常依赖于网络的固定部分来保持旧任务的知识。DEN的这种方法可以更有效地保持对早期任务的记忆。

(2)DEN相比较于DNN-Progressive(传统的PNN)有哪些优点?

  1. 计算效率高:由于DEN只重训练与新任务相关的网络部分,因此它在计算上更为高效,减少了不必要的计算开销。相比之下,DNN-Progressive可能需要更多的计算资源来处理不断增长的网络。
  2. 优化了网络结构:DEN通过群组稀疏正则化来优化网络结构,自动删除不必要的单元,而DNN-Progressive通常不会对已添加的网络部分进行优化。
  3. 灵活性和适应性:DEN的设计允许它在面对不同难度和复杂性的任务时,具有更好的适应性和灵活性。DNN-Progressive虽然通过分阶段扩展网络来适应多任务,但可能不如DEN那样灵活地处理任务间的差异。
  4. 性能得到了提升:在多个数据集上的实验结果表明,DEN在终身学习场景中通常能够显著优于DNN-Progressive,尤其是在参数数量较少的情况下,这表明DEN在网络结构和参数使用上更为高效。
  5. 结构估计:DEN不仅可以用于终身学习,还可以用于在所有任务都已知的情况下进行网络结构估计,以获得最优的性能,这是DNN-Progressive不具备的能力。
目录
相关文章
|
4月前
|
机器学习/深度学习 人工智能 资源调度
【博士每天一篇文献-算法】连续学习算法之HAT: Overcoming catastrophic forgetting with hard attention to the task
本文介绍了一种名为Hard Attention to the Task (HAT)的连续学习算法,通过学习几乎二值的注意力向量来克服灾难性遗忘问题,同时不影响当前任务的学习,并通过实验验证了其在减少遗忘方面的有效性。
87 12
|
4月前
|
机器学习/深度学习 算法 计算机视觉
【博士每天一篇文献-算法】持续学习经典算法之LwF: Learning without forgetting
LwF(Learning without Forgetting)是一种机器学习方法,通过知识蒸馏损失来在训练新任务时保留旧任务的知识,无需旧任务数据,有效解决了神经网络学习新任务时可能发生的灾难性遗忘问题。
292 9
|
4月前
|
存储 机器学习/深度学习 算法
【博士每天一篇文献-算法】连续学习算法之HNet:Continual learning with hypernetworks
本文提出了一种基于任务条件超网络(Hypernetworks)的持续学习模型,通过超网络生成目标网络权重并结合正则化技术减少灾难性遗忘,实现有效的任务顺序学习与长期记忆保持。
55 4
|
4月前
|
存储 机器学习/深度学习 算法
【博士每天一篇文献-算法】连续学习算法之RWalk:Riemannian Walk for Incremental Learning Understanding
RWalk算法是一种增量学习框架,通过结合EWC++和修改版的Path Integral算法,并采用不同的采样策略存储先前任务的代表性子集,以量化和平衡遗忘和固执,实现在学习新任务的同时保留旧任务的知识。
103 3
|
1天前
|
机器学习/深度学习 算法
基于改进遗传优化的BP神经网络金融序列预测算法matlab仿真
本项目基于改进遗传优化的BP神经网络进行金融序列预测,使用MATLAB2022A实现。通过对比BP神经网络、遗传优化BP神经网络及改进遗传优化BP神经网络,展示了三者的误差和预测曲线差异。核心程序结合遗传算法(GA)与BP神经网络,利用GA优化BP网络的初始权重和阈值,提高预测精度。GA通过选择、交叉、变异操作迭代优化,防止局部收敛,增强模型对金融市场复杂性和不确定性的适应能力。
102 80
|
20天前
|
算法
基于WOA算法的SVDD参数寻优matlab仿真
该程序利用鲸鱼优化算法(WOA)对支持向量数据描述(SVDD)模型的参数进行优化,以提高数据分类的准确性。通过MATLAB2022A实现,展示了不同信噪比(SNR)下模型的分类误差。WOA通过模拟鲸鱼捕食行为,动态调整SVDD参数,如惩罚因子C和核函数参数γ,以寻找最优参数组合,增强模型的鲁棒性和泛化能力。
|
26天前
|
机器学习/深度学习 算法 Serverless
基于WOA-SVM的乳腺癌数据分类识别算法matlab仿真,对比BP神经网络和SVM
本项目利用鲸鱼优化算法(WOA)优化支持向量机(SVM)参数,针对乳腺癌早期诊断问题,通过MATLAB 2022a实现。核心代码包括参数初始化、目标函数计算、位置更新等步骤,并附有详细中文注释及操作视频。实验结果显示,WOA-SVM在提高分类精度和泛化能力方面表现出色,为乳腺癌的早期诊断提供了有效的技术支持。
|
6天前
|
供应链 算法 调度
排队算法的matlab仿真,带GUI界面
该程序使用MATLAB 2022A版本实现排队算法的仿真,并带有GUI界面。程序支持单队列单服务台、单队列多服务台和多队列多服务台三种排队方式。核心函数`func_mms2`通过模拟到达时间和服务时间,计算阻塞率和利用率。排队论研究系统中顾客和服务台的交互行为,广泛应用于通信网络、生产调度和服务行业等领域,旨在优化系统性能,减少等待时间,提高资源利用率。
|
14天前
|
存储 算法
基于HMM隐马尔可夫模型的金融数据预测算法matlab仿真
本项目基于HMM模型实现金融数据预测,包括模型训练与预测两部分。在MATLAB2022A上运行,通过计算状态转移和观测概率预测未来值,并绘制了预测值、真实值及预测误差的对比图。HMM模型适用于金融市场的时间序列分析,能够有效捕捉隐藏状态及其转换规律,为金融预测提供有力工具。
|
22天前
|
算法
基于GA遗传算法的PID控制器参数优化matlab建模与仿真
本项目基于遗传算法(GA)优化PID控制器参数,通过空间状态方程构建控制对象,自定义GA的选择、交叉、变异过程,以提高PID控制性能。与使用通用GA工具箱相比,此方法更灵活、针对性强。MATLAB2022A环境下测试,展示了GA优化前后PID控制效果的显著差异。核心代码实现了遗传算法的迭代优化过程,最终通过适应度函数评估并选择了最优PID参数,显著提升了系统响应速度和稳定性。