1 介绍
年份:2018
期刊: arXiv preprint
Aljundi R, Rohrbach M, Tuytelaars T. Selfless sequential learning[J]. arXiv preprint arXiv:1806.05421, 2018.
本文提出了一种名为SLNID(Sparse coding through Local Neural Inhibition and Discounting)的正则化算法,其核心原理是通过模拟大脑中的侧抑制机制,在神经网络中鼓励表示稀疏性,即在网络层级上抑制同时激活的神经元,从而实现对新任务学习时保留网络容量以减少对先前任务的遗忘,并提高序列学习的性能。本文算法属于基于正则化的算法,因为它通过引入一个新的正则化项来鼓励神经网络在表示层面上保持稀疏性,同时考虑了神经元的重要性,以减少对先前任务的干扰。
2 创新点
- 自less序列学习(Selfless Sequential Learning)概念:
- 提出了自less序列学习的概念,强调在学习过程中不仅要考虑当前任务,还要为未来任务预留模型容量。
- 基于侧抑制的正则化策略:
- 受到大脑中侧抑制机制的启发,提出了一种新的正则化方法,通过惩罚同时激活的神经元来鼓励表示稀疏性。
- 局部神经抑制(Local Neural Inhibition):
- 为了适应复杂任务,提出了局部神经抑制的概念,即只在局部邻域内抑制其他神经元的活动,而不是在整个层级上。
- 神经元重要性权重(Neuron Importance for Discounting Inhibition):
- 引入了神经元重要性的概念,用于调整正则化项,以避免对先前任务中重要的神经元施加抑制,从而减少对旧任务的干扰。
- 稀疏编码通过局部神经抑制和折扣(SLNID):
- 结合了上述概念,提出了SLNID正则化方法,该方法在保持表示稀疏性的同时,允许对先前任务重要的神经元进行折扣处理。
- 实验验证:
- 在多个数据集(包括Permuted MNIST、CIFAR和Tiny Imagenet)上验证了所提方法的有效性,并与现有的终身学习(Lifelong Learning, LLL)方法进行了比较,显示出一致的性能提升。
- 与现有LLL方法的兼容性:
- 展示了SLNID正则化方法可以与现有的基于重要参数保持的LLL方法(如EWC和MAS)结合使用,并且能够提升这些方法的性能。
3 算法
3.1 算法原理
- 表示稀疏性(Representation Sparsity):
- 算法强调在神经网络的激活(即神经元的输出)层面上实现稀疏性,而不是在参数层面上。这样做的目的是减少新任务学习时对旧任务的干扰,因为稀疏的表示意味着大部分神经元在任何给定时间都是不活跃的,从而为新任务留出更多的网络容量。
- 局部神经抑制(Local Neural Inhibition):
- 算法通过局部神经抑制来实现表示稀疏性。这意味着算法会抑制在同一局部区域内同时激活的神经元,模仿大脑中的侧抑制过程。这种局部抑制通过一个高斯权重函数实现,该函数根据神经元之间的距离来调整它们之间的相互抑制强度。
- 神经元重要性(Neuron Importance):
- 算法引入了神经元重要性的概念,用于衡量神经元在先前任务中的重要性。这是通过计算神经元输出对损失函数梯度的绝对值累积来实现的。重要的神经元在新任务中不会被抑制,以避免对旧任务的性能造成影响。
- 正则化项(Regularization Term):
- 算法在训练目标函数中加入了一个正则化项,用于惩罚那些同时激活的神经元。这个正则化项考虑了神经元的重要性,并使用高斯函数来实现局部抑制。
- 折扣抑制(Discounting Inhibition):
- 对于那些对先前任务重要的神经元,算法会减少或“折扣”对它们的抑制,以保护旧任务的性能不受学习新任务的影响。
- 结合现有方法(Combination with Existing Methods):
- SLNID正则化项可以与现有的终身学习(Lifelong Learning, LLL)方法结合使用,如EWC(Elastic Weight Consolidation)和MAS(Memory Aware Synapses)。这些方法通过惩罚对先前任务重要参数的改变来减少灾难性遗忘。
- 训练过程(Training Process):
- 在训练过程中,算法会优化一个包含数据损失、参数重要性惩罚项和表示稀疏性正则化项的组合目标函数。这有助于在保持对新任务的学习的同时,保留对旧任务的记忆。
3.2 算法步骤
- 初始化网络参数 θ \theta θ和网络容量。
- 对于序列中的每个新任务 T n T_n Tn,执行以下步骤:
a. 使用当前任务的数据集训练网络,同时最小化以下目标函数:
min θ 1 M ∑ m = 1 M L ( y m , f ( x m , θ n ) ) + λ Ω ∑ k Ω k ( θ n k − θ n − 1 k ) 2 + λ S S L R S S L ( H l ) \min_{\theta} \frac{1}{M} \sum_{m=1}^{M} L(y_m, f(x_m, \theta_n)) + \lambda_{\Omega} \sum_{k} \Omega_k (\theta_{n_k} - \theta_{n-1_k})^2 + \lambda_{SSL} R_{SSL}(H_l) θminM1m=1∑ML(ym,f(xm,θn