Press "Enter" to skip to content

CVPR 2022 | 基于特征混合的主动学习 Active Learning by Feature Mixing 论文解读

本站内容均来自兴趣收集,如不慎侵害的您的相关权益,请留言告知,我们将尽快删除.谢谢.

文献链接:arXiv链接

 

CVPR 2022放榜有一段时间了,我搜寻了一下arXiv上今年CVPR的主动学习相关的新工作,目前能找到的似乎只有两篇:

Active Learning by Feature MixingarXiv链接
BoostMIS: Boosting Medical Image Semi-supervised Learning with Adaptive Pseudo Labeling and InformativeActiveAnnotationarXiv链接

昨天我读了Feature Mixing这篇工作,在知乎做一下笔记吧:

 

流程简介

 

文章提出了一种主动学习的未标记样本选择策略:

 

 

    1. 通过已训练模型的特征提取模块,将所有labeled data的特征提取出来,并按照分类结果,对每个类别的特征取average;

 

    1. 通过已训练模型的特征提取模块,将每个unlabeled data和每个average特征用某种形式进行混合,从而得到新特征;

 

    1. 使用已训练模型的classifier,将新特征与unlabeled data特征进行分类,并比对两者的分类结果——若两者的分类结果不相同,则选择该unlabeled data送往oracle处标记。

 

 

其流程如图所示:

 

简单看流程可能不太直观,这里我画了几张图帮助理解:

 

 

    1. 如上图所示,图中四个圈圈表示特征提取后映射到高维空间的聚类。首先,使用已训练模型将所有labeled data的特征提取出来并求average。

 

 

2. 将unlabel data的特征(小蓝点)与各个average特征(小红星)进行mixing,得到新特征(小绿叉)

 

3. 使用classifier进行分类,如果在与所有的小红星进行mixing的过程中,小蓝点和小绿叉都处在同一类,那幺就跳过这个unlabeled data。如果与小红星进行mixing的过程中,出现了小蓝点和小绿叉不在同一类的情况,那幺就选择这个data进行标记。

 

思考后发现,这种选择策略更趋向于选择决策边界上的unlabeled data(边界上的小蓝点更容易使得小绿叉被分到不同的类之中)。文章在MNIST数据集上做了实验,并可视化了实验结果:

 

特征混合方法

 

那幺问题在于,该如何mix特征才更好呢?按照比较naive的想法,对unlabeled data feature和average data feature做一个加权求和,如下式。如果按照这种方法,需要我们手动设置α的值,这可能有些困难。

 

作者选择了另一种方式,通过计算为不同的input,定制不同的α——作者设想:如果将混合后的特征,与该特征的分类结果作为伪标签参与训练,会对模型造成多大的影响?是否模型改变越大,α的取值就越为合理?

 

作者提出如下的计算过程,首先通过将混合特征与伪标签带入loss函数,通过泰勒展开得到下式:

 

移项后,左式为loss的变化。因为需要最大化loss的变化,因此可以对表达式取argmax,取最大值时的α。

 

随后,使用柯西不等式对限制条件进行放缩:

 

最后使用Dual norm进行优化,得到最终α与模型关于input的loss梯度的表达式。注意到,这个表达式前面还乘上了作者手动设置的超参 ε。

 

算法一览

 

当α确定下来后,整个主动学习策略基本上可以确定下来了,下面为文章给出的具体算法:

 

实验与结果

这篇工作做了大量的实验,与Entropy、Coreset、BALD、CDAL等经典/SOTA主动学习算法进行对比;
使用了不同的Task Learner:从MLP、ResNet到ViT(目前见到的第一个在Transformer上试验主动学习的方法);
使用了各类数据集:图像类(MNIST、CIFAR、Mini-ImageNet)、非图像类(OpenML)、视频数据集(HMDB)。
任务仅局限在分类任务,并没有拓展到检测、分割等任务中。

讨论

这篇工作对我的启发在于:这篇工作的视角简洁而形象。把选择具有不确定性的样本这一任务,转化为选择决策边界上的样本这一任务,并使用了一种简洁的方法来完成了这个任务。
但这篇工作尚且存在一些问题:

算法流程问题:缺少对于选中的unlabeled data的优先级排序方法。在很多时候,尤其是训练初期,可能存在大量mixed feature与unlabeled data feature分类结果不一致的情况,从而使得大量的unlabeled data被选中。在这个时候就需要进一步的挑选机制(可能是排序或其他?),对这些data进行进一步的筛选,优中选优。
α取值问题:个人认为整篇文章中,对α的取值进行推导的流程逻辑不是很通畅。并且推导α表达式这一初衷就是解决α超参难以确定的问题,但是最后的表达式中却出现了新的超参 ε需要去设置。同样地,文章花了大量篇幅去介绍α取值策略的计算,却并未在实验中给出α相关的对比实验/消融实验等等。因此这一部分,我较难信服。

以上是我对这篇文章的理解,欢迎讨论。

Be First to Comment

发表评论

您的电子邮箱地址不会被公开。