论文地址:

https://arxiv.org/abs/2103.17230

代码地址:

https://github.com/clovaai/rainbow-memory

目录

1.贡献点

2.方法

2.1问题定义

2.2 uncertainty衡量标准

2.3算法流程

2.4 数据增强

3.实验

4.结论


本文基于样本回放的方法,本文某种意义上借鉴了主动学习中找难样本的方法,将找到的难样本作为Memory中用于回放的样本。

本文的意义在于如何寻找难样本。

1.贡献点

因为本文涉及memory,因此可以看作基于样本回放的增量学习方法。本文解决的问题是,如何选取更好的样本来放置在Memory之中。

基于增量学习的任务,旧任务和新任务之间界限分明。但是实际上很多时候旧任务和新任务的边界并不清晰,因此本文基于‘blurry’的task boundary来优化问题。(这里的blurry在后面又详细的定义,意思是不同的增量task之间是否有共有类,其实相当于广义的类别增量问题。)

为了让memory中的样本保持多样性,本文提出了Rainbow Memory(RM),

随时根据新样本更新Episodic Memory,然后根据Mmory进行DA(Data augmentation)来进行多样化。

2.方法

2.1问题定义

  • C表示所有的类别,
  • Tt表示task t之中的类别,相当于C的子集
  • D上标C下标c表示所有类别C中子类c的样本
  • D上标T下标t表示task t中类别c的样本

  • 对于disjoint 类别增量问题,不同task之间没有共有类,这是狭义的类别增量。
  • 对于Blurry的类别增量问题,不同的task之间有共有类,这是广义的类别增量。

2.2 uncertainty衡量标准

在feature space中越接近decision boundary的样本越好,即diverse的样本。如果想要知道样本是否diverse, 需要计算与其他样本之间的相对位置,因此复杂度是O(N*N), 计算开销巨大。因此,本文考虑的是相对位置,通过uncertainty来确定,即模型对于样本的确定性越强,则样本的divese越弱。

即样本经过变换之后,比如遮挡、平移、旋转等等,如果在模型中的输出的结果方差越大,样本越难,则说明此样本越diverse. (这里作者的解释并不清晰,逻辑关系有点模糊,因为模型经过变换之后在网络中的输出结果不确定,并不能说明这个样本就靠近decision boundary)

假定样本为x,经过perturbed(这里意思是变换和扰动)的样本为x^hat, 则x^hat在模型预测出的不确定性越高,说明这样本越diverse.(这里借鉴了主动学习的思想,相当于保留难样本)

derivation可以被表示为下面这样:

  1. x表示原始样本
  2. x^hat表示经过perturbed的样本
  3. A表示样本标签
  4. D^hat表示所有x^hat的分布

perturbed样本被定义为如下格式:

fr()表示随机函数,用于对原始样本x进行随机变换

最终的样本的uncerterainty定义为如下:

u(x)表示样本x的uncertainty, Sc表示第c类的被预测为top1的次数。

总体而言,标签为c的样本,经过perturbed后,被网络预测为c类的次数越多,则不确定性越弱。

2.3算法流程

核心算法就是Memory如何更新,算法流程如下:

Memory size被限定在M,Nt表示总类别

因此每个任务到达之后,分配给每个类别的Memory大小为 kc=floor(K/Nt)

相当于每次任务到来之后,模型将新的增量任务数据与Memory中数据,按照上面的diverse的计算方法进行排序,最终只取最具diversity的样本。

2.4 数据增强

作者借鉴了CutMix的方法(相当于MixUp的一个改进),对Memory之中的样本进行增强:

m表示randomly selected pixel region

根据后面的实验,这个数据增强时而有效时而无效,比较鸡肋,是作者凑贡献点用的。

3.实验

A5: Last Accuracy

F5: Last Forgetting

I5: Instransigence

实验结果:

RM w/o DA表示没有数据增强,A5,F5,I5表示几个数据集的划分方法。

可以看出本文方法RM(Rainbow Memory)可以达到SOTA的效果。

4.结论

本文其中一个贡献点,就是如何选取用于回放的样本,但是选取的时候有一个逻辑缺陷:

难样本=靠近决策边界的样本≠样本经过变换后在模型中结果方差大,三者并不能完全划等号,论文绕过后一个等号直接进行了运用,逻辑有缺陷。但是论文通过实验验证了这个假设具有一定的有效性,说明了这种样本选取方法有一定的可取性。

另一个贡献点,数据增强,参考了MixCut的方法对回放样本进行数据增强,其实相当于A+B,但是实验效果差强人意。

不过论文的回放样本选取方式确实取得了不错的效果,与已有方法相比达到SOTA,方法值得参考。

CVPR2021论文详解Rainbow Memory: Continual Learning with a Memory of Diverse Samples相关推荐

  1. Unsupervised Monocular Depth and Ego-motion Learning with Structure and Semantics 之论文详解

    Unsupervised Monocular Depth and Ego-motion Learning with Structure and Semantics 1.论文详解 2.问题 1.如何理解 ...

  2. 智能城市dqn算法交通信号灯调度_博客 | 滴滴 KDD 2018 论文详解:基于强化学习技术的智能派单模型...

    原标题:博客 | 滴滴 KDD 2018 论文详解:基于强化学习技术的智能派单模型 国际数据挖掘领域的顶级会议 KDD 2018 在伦敦举行,今年 KDD 吸引了全球范围内共 1480 篇论文投递,共 ...

  3. KernelGAN论文详解分享

    KernelGAN- Blind Super-Resolution Kernel Estimation using an Internal-GAN论文详解 论文地址:https://arxiv.org ...

  4. ShuffleNetv2论文详解

    ShuffleNet v2 论文详解 近期在研究轻量级 backbone 网络,我们所熟悉和工业界能部署的网络有 MobileNet V2.ShuffleNet V2.RepVGG 等,本篇博客是对 ...

  5. 【论文精读3】MVSNet系列论文详解-P-MVSNet

    P-MVSNet全名为"P-MVSNet: Learning Patch-wise Matching Confidence Aggregation for Multi-View Stereo ...

  6. GeniePath:Graph Neural Networks with Adaptive Receptive Paths 论文详解 AAAI2019

    文章目录 1 相关介绍 1.1 感受野的定义 贡献 2 图卷积网络GCN GCN.GraphSAGE.GAT Discussions 3 GeniePath 3.1 Permutation Invar ...

  7. Spark RDD 论文详解(一)摘要和介绍

    前言 本文隶属于专栏<1000个问题搞定大数据技术体系>,该专栏为笔者原创,引用请注明来源,不足和错误之处请在评论区帮忙指出,谢谢! 本专栏目录结构和参考文献请见1000个问题搞定大数据技 ...

  8. Spark RDD 论文详解(二)RDDs

    前言 本文隶属于专栏<1000个问题搞定大数据技术体系>,该专栏为笔者原创,引用请注明来源,不足和错误之处请在评论区帮忙指出,谢谢! 本专栏目录结构和参考文献请见1000个问题搞定大数据技 ...

  9. YOLO v1论文详解

    YOLO v1:一体化的,实时物体检测 声明:笔者翻译论文仅为学习研究,如有侵权请联系作者删除博文,谢谢! 源论文地址:https://arxiv.org/pdf/1506.02640.pdf 注:文 ...

最新文章

  1. 二级域名session 共享方案
  2. matlab计算方程fsolve,matlab中关于fsolve解非线性方程组的问题
  3. 分类模型与排序模型在推荐系统中的异同分析
  4. 安装nrm,报错request@2.88.2: request has been deprecated, see https://github.com/request/request/issu
  5. VB更改任何标题程序源代码
  6. 「00后缩写黑话翻译器」登上GitHub热榜,中年网民终于能看懂年轻人的awsl
  7. java fillrect_Java编写一个Applent程序,使用fillRect方法输出不同的颜色
  8. 2021-07-06 游戏日报
  9. 大数据是什么?初学者怎样理解大数据技术
  10. GOlang中对flag.Prase()的疑问
  11. Gradually Vanishing Bridge for Adversarial Domain Adaptation
  12. 中国人离婚率高达76.4%?这些指标背后真实的状况到底是什么样的?
  13. 基于XCVU9P+ C6678的100G光纤的加速卡
  14. 【Activity学习五】--基于SSM整合Activiti之请假流程实现(二)
  15. 萨尔大学计算机受限,【德国留学】留学受限专业是怎么回事?如何被受限专业录取?...
  16. Ubuntu20.04部署ntp服务
  17. 红旗linux如何硬盘安装教程,红旗Linux硬盘安装攻略
  18. 详细记录丨公众号如何通过迁移开通留言功能?
  19. 数字图像处理 --- 图像的傅里叶变换的频谱特征 二(方向性)
  20. 【Unity】游戏对象池ObjectPool

热门文章

  1. 一些句子【未完待续】
  2. 无人驾驶—激光雷达与相机
  3. Hibernate_day01
  4. Synopsys全系列工具简介
  5. 上海大学计算机学院2021,2020-2021学年秋季学期新生选课通知
  6. wpf展开树节点_WPF中展开一个TreeView控件的所有树节点
  7. EXCEL仪表盘,可视化大屏,数据看板制作
  8. matlab怎么产生帕斯卡矩阵,MATLAB(一):矩阵基本操作
  9. video标签 设置背景图片
  10. 通过ssh-keygen命令生成SSH密钥