无监督增量学习 Unsupervised Class-Incremental Learning Through Confusion. ICLR 2021 被拒文章

乔治亚州研究所提出的。针对无监督的类别增量提出了本文的方法。本文基于无监督,增量数据没有标签,因此范畴就是选用了增量学习之中最宽松的限制,即基于样本回放的增量学习方法,旧样本会被存储在模型Memory之中。因为此文的前提设定有些奇怪,比如样本是同类别成批到来的,这种假设基本很难实现。据说openreview是被ICLR拒的,但是作者arxiv上显示的是accepted by ICLR,后来去除掉了。

论文地址:[2104.04450] Unsupervised Class-Incremental Learning Through Confusion (arxiv.org)

目录

1.贡献点

1.1思路

1.2 贡献点

2.方法

2.1 settings

2.2 detection-training

2.3 算法流程

2.3 基于类别均衡的detection-training

3.实验

4.结论


 

1.贡献点

1.1思路

大多数增量任务是有监督学习。

2019年有一个无监督的方法,根据决策边界来训练。解决无监督的类别增量,需要将两个步骤进行好,判断新任务属于哪个类别。一个任务叫做novelty-detection,用于判断新增量任务的数据属于哪个类别,属于旧类别还是新类别,如果判断错了,则相当于给数据引入了噪音,造成不良影响。另一个任务就是针对网络预测的标签进行网络训练。

OOD(out-of-distribution)方法通过leverage distance-based thresholds来实现。OOD用于解决一个问题,就是神经网络经常会对没有训练过的反常样本做出overconfident的预测。(文中提到的OOD方法没有读过,但是这里单从字面理解,可能是,神经网络会对没有训练过的样本过于相信,导致网络输出的confidence过高,遇是OOD就设置了一个阈值,将样本距离大于该阈值的样本剔除掉,避免了confidence过高的问题。)本文提出了iLAP框架,Incremental learning by Accuracy Performance,字面意思理解,就是将网络对类别进行训练,然后根据网络Accuracy的变化来判断增量样本是旧类还是新类。(本文提出的是无监督的方法,既然无监督,那就没有标签,这里的准确率是如何判断的?根据后文,本文采用的是,新类训练后,用已有的旧类的准确率的改变作为衡量标准。)

所以,本文的方法就是对新类衡量标准的一个改进,旧类的衡量标准是样本空间的distance,本文的衡量标准是新类到来后,旧类accuracy的改变。所以有以下优点:

  • 阈值不取决于有标签样本,可以更加intuitive和可调节
  • 模型表现相对于新到的样本更加独立(因为衡量标准是旧类的准确率变化,如果准确率变化更大,则模型将新到样本分为新类,旧类被影响的较少。)
  • 模型更能区分similar classes,即不容易混淆

1.2 贡献点

提出了iLAP框架,Incremental learning by Accuracy Performance. 可以就解决无监督类别增量问题。

即使在类别不均+无监督的情况下,本文方法也可取得与有监督学习相近点准确率。

证实了传统OOD方法的失败。

2.方法

2.1 settings

假定模型learner是L, 将新到的增量数据集分为E1, E2, E3, E4等,每个增量数据集具有对应的图片,Ei={e1i,e2i,e3i…,enii}。模型设定每个样本的标签是yi。这里的增量数据是无标签的,这个标签只是网络的预测的标签。

网络会针对所有已有标签永久保持两个数据集,分别是训练集和验证集:

从1到K分别是类别,相当于模型针对每个类别保存一个训练集和验证集。模型就根据已有的数据集进行accuracy的分析。

2.2 detection-training

detection-training的意思,并不是目标检测中的detection,而是一种训练模式。类似于试探性训练的意思,即训练之前保留权重,试探性的训练一下,根据之前任务准确率的变化来判断是否继续训练还是回退到试探性训练之前。

假定模型权重是LLL的一份拷贝,新到的数据被分配为标签K+1, 并被划分为训练集和验证集:EtrainEval, 与之前存储的旧类别:PtrainPval共同训练拷贝出来的权重L, 然后通过Pval上的前K类的准确率的下降获得向量,此向量用于衡量已有类别的准确率的下降。

如果Pval数据集上性能下降大于某个阈值Θ,则代表此类别曾经可能被网络训练过,新到数据集被归为类别

如果Pval数据集上的性能下降均未到达阈值,代表新增数据可能确实属于新类别,K+1就是合适的标签。

这里逻辑可以理顺一下,就是新到数据被划为新标签,试探性的训练一下模型,如果旧类性能变化不大,表明这个标签划分正确;如果旧类变化很大,那么这个标签可能与旧类冲突,找到旧类变化最大的就是冲突最剧烈的,新标签不正确,划分为旧类别变化最大的标签。

这里作者有一个假设并不合理,即新到的任务中如果有新增类别的话,新增类别是一类,但是实际的问题之中,新到的增量任务之中,新增类别可能是多类。

我们可以跳出论文之外,分析一下此阈值对实验的影响:

如果此阈值过大,模型总是认为新增量数据对旧数据影响不够大(没有达到阈值),所以更多的增量任务被归为新类。

如果此阈值过小,模型认为新增数据对旧数据影响过大,增量数据就更容易被归为旧类。

2.3 算法流程

增量任务到来之前,模型输入有四个,新增量任务划分的EtrainEval, 与之前存储的旧类别:PtrainPval,将标签K+1给新到数据,试探性的训练,然后根据试探性训练的结果给新增量数据分配标签并更新memory.

2.3 基于类别均衡的detection-training

这个环节主要解决Memory之中的图片比例的问题。

这段没太看懂。

大概是旧类和新类之间比例找一个阈值。

3.实验

均取得了SOTA的效果。

ICLR论文的实验是非常详尽充分的,分析也很充足。博主没精力一个一个实验解析了,有感兴趣的可以直接读一下原论文。

4.结论

作者的设定很奇怪,即同一个增量任务到来的一整批数据之中都是同一个类别,这种假设事实上很难达到,应用场景非常有限,所以被ICLR拒。

评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

祥瑞Coding

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值