ICML 2020 | 小样本学习首次引入领域迁移技术,屡获新SOTA结果!

2020-06-29 15:26:20 浏览数 (1)

本文介绍的是ICML2020论文《Few-Shot Learning as Domain Adaptation: Algorithm and Analysis》,论文作者来自中国人民大学卢志武老师组。

作者 | 管界超

编辑 | 丛 末

论文地址:https://arxiv.org/pdf/2002.02050.pdf

代码地址:https://github.com/JiechaoGuan/FSL-DAPNA

1

前言

为了利用少量标注样本实现对未见类图片的识别,小样本学习希望从可见类图片中学习先验知识。小样本学习的难点是未见类别的数据分布与可见类别的不同,从而导致在可见类上训练好的模型无法较好地迁移到未见类别领域。这种由于类别不同导致的数据分布差异可以看作是一种特殊的领域迁移问题。

在这篇论文中,我们提出了一种基于注意力机制的领域迁移原型网络 (DAPNA),去解决在元学习框架下的领域迁移问题。具体来说是在训练过程中,我们将可见类的一个纪元 (episode,训练单位)分拆成两个类别完全不重合的子纪元(sub-episode),用以模拟从可见类到未见类的领域迁移。在假定所有纪元都采样于同一个分布的情况下,我们在理论上给出了该模型的期望损失上界,我们也根据该期望损失上界进行损失函数的设计与模型的优化。诸多实验表明,我们所提出的DAPNA模型能比已有小样本学习模型取得更好的效果。

2

介绍

小样本学习(Few-ShotLearning)可以看作是从可见类图片到未见类图片的迁移学习。每一个可见类包含大量训练样本,而每一未见类仅仅包含极少量的标注样本。未见类提供的训练样本稀少,以及可见类与未见类之间的数据分布不同,是小样本学习面临的主要问题。

针对未见类样本少这一特点,我们一般采用元学习方法(meta learning)来解决。即在训练过程中,在可见类上构造出多个训练任务(task/episode),用以模拟未见类上可能出现的新任务的环境。通过在可见类上多个任务当中的训练,元学习方法希望训练得到的模型能够快速迁移到未见类上新的任务去。但小样本学习中可见类与不可见类之间数据分布不同这一问题,目前还没有模型进行有效解决。

我们所提出的模型旨在元学习训练过程中,在每一个可见类任务中模拟领域迁移的过程,以增强模型跨领域的能力,解决小样本学习中的领域迁移问题。具体来说,我们将可见类的一个纪元 (episode)分拆成两个类别完全不重合的子纪元(sub-episode),一个子纪元作为源领域(source domain),另一个子纪元作为目标领域(target domain),用两个子纪元之间的领域迁移来模拟从可见类到未见类的领域迁移。我们采用领域迁移研究中的间隔差异(Margin Discrepancy Disparity, MDD)指标来度量两个子纪元之间的领域差异(domain gap),并希望通过减小两个子纪元之间的间隔差异(MDD)来增强模型的跨领域能力。

需要强调的是,为了与之前的小样本学习方法进行公平比较,我们在训练过程当中没有用到任何未见类的数据,仅仅是用可见类的数据进行领域迁移的模拟和模型的训练。

这篇论文的贡献主要有三点:

(1)首次将领域迁移技术引入到小样本学习中,用以增强小样本学习模型的跨领域能力。

(2)在假定所有任务采自同一分布时,我们推导出了小样本学习模型的泛化误差上界,为小样本学习提供了理论保证。

(3)我们所提出的DAPNA模型在小样本学习领域的诸多标准数据集上取得了新的state-of-the-art 效果。

3

模型方法

我们的模型主要由两大子模块构成:小样本学习模块和领域迁移模块。流程图中的AutoEncoder是两个简单的线性层,为了让图片特征的领域归属更模糊,在这里不做详细介绍。

1、小样本学习模块

(1)基本模型为原型网络(ProtoNet)。我们选择了最具有代表性的小样本学习模型原型网络作为我们的基础网络。在训练过程中,每一个任务包含支持集(support set)与查询集(query set)。原型网络用支持集中的给定样本计算每一个可见类的类中心(prototype),再计算出查询集中每个可见类样本到每个类中心的距离,将距离转换为分数后计算损失函数进行误差反传。

(2)引入注意力机制增强图片特征的表达能力。此外,我们还引入了注意力机制,在每个给定训练任务中,将所有图片特征输入到注意力机制网络中得到新的图片特征(用以作为原型网络的输入),从而增强图片特征在该任务中的表达能力和适应性。

(3)在两个子纪元中同样应用原型网络方法进行学习。计算损失函数并反传。

2、领域迁移模块

我们用间隔差异(MDD)来衡量两个子纪元之间的领域差,并通过减小两个子纪元之间的领域差来增强模型的跨领域能力。间隔差异定义如下:

最终的领域迁移损失函数由间隔损失函数(Margin loss)和间隔差异(MDD)构成:

领域迁移的损失函数形式是由以下领域迁移定理给出的:

我们最终的Domain Adaptation ProtoNet with Attention (DAPNA)模型的损失函数如下:

我们还给出了关于小样本学习的泛化误差和本文模型DAPNA的泛化误差。并且注意到,当我们将上式总损失函数中的超参数

都设置为1的时候,总损失函数就是我们所提算法的泛化误差上界。由此,我们为DAPNA算法建立了理论分析。

4

实验

(1)传统小样本学习实验。

我们在小样本学习的3个公开数据集上(miniImageNet,tieredImageNet, CUB)进行了传统小样本学习实验(特征提取网络是WRN,有预训练)。并在跨领域小样本学习数据集(miniImageNet->CUB)进行了跨域小样本学习实验(特征提取网络是ResNet18,无预训练)。

实验结果表明我们提出的算法能够取得新的SOTA结果,而且在跨领域小样本学习实验中这种优势更为明显,显示出我们的算法模型的确具有较强的跨领域能力。

(2)消融实验和对 DAPNA效果好的进一步解释。

我们还做了消融实验去验证我们模型每一部分的有效性。

此外,在测试过程中,我们不仅仅计算了未见类数据每个任务的小样本学习识别正确率,也把未见类中的每个任务(纪元)拆分成两个子纪元,一个当作源领域,另一个当作目标领域,用以计算这两个子纪元之间的间隔差异(MDD),以揭示小样本学习中分类正确率与领域差异之间的关系。

我们可以看到,(1)间隔差异(MDD)越小,模型识别准确率越高。(2)即使我们在训练过程当中没有使用任何未见类的数据、仅仅用了可见类的数据进行模型训练和领域迁移模拟,训练得到的模型仍然能在未见类数据上实现领域间隔(MDD)的减小,并且MDD的减小能比对照组下降地更快、更低,对应的小样本识别准确率也比对照组更高。这证明了将领域迁移技术引入到元学习框架中、用以提高小样本学习能力策略的有效性。

5

总结

本文第一次将领域迁移技术引入到小样本学习当中,用以减少小样本学习中可见类与不可见类之间真实存在的领域间隔,以此来提高模型的跨领域能力。在假定所有训练任务都采样于同一分布的情况下,我们给出了小样本学习算法模型的泛化误差上界,同时我们也根据该误差上界进行模型的优化。在传统小样本学习和跨领域小样本学习实验中,我们的模型都取得了新的好结果,从实践层面验证了我们算法的有效性。

0 人点赞