论文阅读:Task-Free Continual Learning
本文提出了一种新的持续学习方法——Task-Free Continual Learning(TFCN),旨在解决传统持续学习中对固定任务边界的依赖问题。该方法通过Memory Aware Synapses(MAS)协议结合难样本缓冲区,在流数据环境中动态更新模型以避免遗忘。实验表明,在自监督人脸识别和避障机器人等场景下,该方法显著提高了模型性能和泛化能力。
Task-Free Continual Learning
来自CVPR2019,比利时鲁汶大学 。
该方法通常基于一次一个任务的假设,在现有数据可被访问的前提下而排除历史数据无法获取的情况。这种‘刚性任务界限’的条件在现实中很少得到满足。
该系统用于处理 streaming data ,其显著特征在于能够有效处理呈现动态变化特征的数据,并在各任务之间缺乏明确的区分标志。
该方法基于 memory-aware synaptic机制,并据此构建了相应的协议框架以实现将其转化为 online 学习的过程。
- 何时 更新重要权重
- 更新时 用哪个数据
- 如何在更新时 累积权重重要性
该模型通过实验验证了其在以下两个关键任务中的有效性能:自监督学习方法应用于人脸识别任务,并实现了智能避障机器人的高效操作。
1.Introduction
在机器学习的学习过程中,默认划定了明确的训练与测试阶段]。该过程基于这一划分,在一个假设的静态环境中运行时的数据分布保持恒定。尽管这种明确的分界线对于开发有效的学习算法至关重要,但同时也带来了一定的限制。
借鉴生物系统的原理,“IL(也可称为CL或LL)则致力于打破训练与测试之间的屏障。”这个系统通过积累知识,在准确率和适用范围上随着时间推移而不断提升。现实中,“数据无法长期存储……仅依赖后续数据会导致信息丢失。”
像那些逐步利用任务数据进行学习的过程,在本文中被命名为task-based sequential learning方法。我们的目标是突破这种硬任务边界的需求。我们研究如何将task-based方法普遍应用于在线学习体系——即一个决定何时固有知识的机制;此外,在强化学习的经验回放中汲取灵感,设计了一个体积更小但功能相近的经验回放缓冲区。
基于任务的方法通常用于分类任务,在输出层增加一个分类器来识别新类别。相比之下,我们的方法采用固定输出策略:在人脸识别中我们通过嵌入进行识别;而在机器人领域中,则是环境变化而非标签变化驱动系统行为。这两种任务均采用流数据处理方式(即非独立同分布的数据特征),同时面临样本分布不均衡的问题。
本文贡献包括:1)将任务基学习拓展至在线持续学习领域;2)开发了一种方法以整合重要性权重正则化器MAS;3)针对数据分布变化的情况验证了我们方法的有效性。
2.Related work
Online Learning
传统的离线学习方法必须依赖完整的数据集作为基础输入,在这种情况下,采用data samples的flow进行在线学习。
首先涉及的是线性模型,在核方法(kernel learning)的帮助下实现了对非线性的拓展。此外,该段还包括了深度学习技术(neural networks)以及度量学习的相关内容。
在应用领域上,Pernici所采用的方法与我们的第一个目标应用场景高度相似:具体包括时空一致性(temporal consistency)、检测器与描述器(Detector and descriptor)以及检测到的人脸记忆(memory of detected faces)。然而,在方法论上有所不同的是:我们采用了较弱的预训练模型,并随着时间的推移不断更新模型。
Continual Learning
Hsu将持续学习的场景归类为:基于任务的学习、基于领域的逐步学习和基于类别的逐步学习。
他强调了后者两项具有重要意义。
目前为止,大多数方法主要采用了任务导向式的逐步学习模式。
常见的正则化技术: EWC(经验权重复制)、**Synaptic Intelligence(突触智能)**以及 Memory-Aware Synapses(MAS)(由同一作者提出)。尽管Synaptic Intelligence在线计算了权重重要性的度量指标,在其更新操作仅在任务结束时完成;相比之下,在线学习场景下仍需持续关注模型更新的效果。Incremental Moment Matching采用了类似策略,在线更新模型以适应不同的任务需求,并在最终阶段整合这些模型;然而,在现有研究中仍不清楚如何将其扩展至完全在线的学习场景中。
- 动态可扩展网络: 基于动态可扩展架构实现持续学习,在处理新任务时通过分析旧旧任务的相似性识别可用神经元并补充新的神经元以获取新知识(类似于生物体节律调控机制的思想)。
- 数据驱动: lwf以及基于编码器的 lifelong learning策略在蒸馏过程中面临如何将现有损失应用于未知领域的问题。
- episodic memory: 采用iCaR框架结合GEM算法构建回放缓冲区,在实验中发现现有回放缓冲区容量高达百万级别而仅需一百个样本即可达到预期效果。
其名称为Prioritized Sweeping(PS)。该技术通过过滤掉缓冲区内的非重点样本来实现对最新数据的优先处理,并保留那些较新采集的数据样本。
3.Method
基于任务的训练可划分为若干个阶段,在training phases之间进行时,在training has stabilized时,则持续学习方法通过更新其元知识来避免遗忘先前的任务。
MAS研究具有以下显著特性:1. 仅存储各参数的重要性程度;2. task-agnostic性质使其能够广泛应用于各类任务;3. 高效性:通过将惩罚梯度设定为各参数变化量与其重要性乘积的形式实现;4. 卓越性能表现:相较于其他正则化方法,在保持模型泛化能力的同时展现出更为优异的效果。
为了将MAS应用于在线CL系统,在设计过程中需要解决的关键问题是:
(1)在什么阶段进行重要权重的更新;
(2)在进行更新操作时选择的数据类型是哪一个;
(3)在更新步骤中采用什么方法或步骤来累积权重的重要性。
- setup
假设一个无限的数据流,和一个由少量连续样本生成的监督或自监督的信号。在每个时间步s,系统接收一部分来自分布

的连续样本及其标签。分布

会随时间变化为

,系统不知道变化何时发生。目标在于连续地学习并且更新函数

通过减少不同批次数据的预测误差来实现持续积累知识。
该系统输入为带有参数θ的模型,并根据困难样本缓冲区B和最新收到的数据进行更新。
学习目标是...

由于强non-i.i.d条件,和非常少的样本。这个系统很容易遗忘。
- MAS( Memory Aware Synapses**)**
传统MAS中,每个学习阶段过后,计算参数对以前学习任务的重要性。重要性


由学习好的函数对参数变化的敏感性计算。

然后每次更新重要参数的惩罚:

每个任务后新算的

累积。
- 在什么情况下需要更新重要性权重?
在损失下降的情况下表明模型获得了新的知识。当损失保持平稳时的学习状态稳定,并且恰逢更新重要性权重的最佳时机。
当模型接触到新的不同类别的样本时,则会促使它倾向于保留这些新获得的知识。

- Identifying flat regions on the loss surface
We employ a sliding window to monitor flat regions, triggering importance weight updates when both the mean and variance fall below a certain threshold.
The method identifies peaks when the window's mean loss exceeds 85% of the previous plateau's window losses' normal distribution.
为了提升在线学习的稳定性,在线系统中设置了少量具有代表性的难样本缓冲区(...)。该缓冲区的作用在于筛选出每次新接收的样本与当前缓冲区中最易出现较大损失的新样本进行对比分析后,在损失函数最大的情况下选择作为代表性样本。此外,在训练过程中通过将新批次的样例与难分类样例进行加权平均处理后生成新的梯度估计值(...)。
累积重要权重
最终学习目标:

4.Experiment
5.思考
依据loss波动来确定模型状态确实是很有意思的想法。
