论文解读:Pushing the Limits of Simple Pipelines for Few-Shot Learning External Data and Fine-Tuning Make

文章汇总

image.png
作者打破常规FSL的规定,使用了**外部数据来进行预训练,**提出了: Pre-training → Meta-training → Finetuning (P>M>F) 的小样本学习的新范式,即先在大的数据集上进行与训练,然后再小样本数据集的训练集上进行元训练,最后再在小样本数据集的测试集上利用少量样本进行微调。

问题与讨论

1.文章的效果极好,比如说在miniimagenet,1-shot:95.3; 5-shot: 98.4;但是他用imagenet来进行预训练了,miniimagenet作为imagenet的子集,使得最终测试的时候存在"透题"的风险,所以这应该是他指标为什么这么高的一个原因。
2.最终测试的时候作者使用了微调,上图中的Task-specifically fine-tuned backbone,最终测试阶段是可以进行微调的吗

摘要

少样本学习(Few-shot learning, FSL)是计算机视觉领域的一个重要热点问题,它激发了从复杂的元学习方法到简单的迁移学习基线等多种方法的广泛研究。我们试图在实践中推动简单但有效的流水线对真实世界的少样本图像分类的限制。为此,我们从神经结构的角度探讨了少样本学习,以及外部数据的预训练,标记少样本任务的元训练,以及对未见任务的任务特定微调的三个阶段管道。我们调查了以下问题:1外部数据的预训练如何使FSL受益?如何利用最先进的transformer架构?3如何最好地利用微调?最后,我们展示了一个简单的基于变压器的管道在Mini-ImageNet、CIFAR-FS、CDFSL和Meta-Dataset等标准基准上产生惊人的良好性能。我们的代码可在https://hushell.github.io/pmf上获得。

1. 介绍

主流的监督深度学习在有大量带注释的数据集的应用中取得了很好的效果。然而,在许多应用程序中,这种假设并不满足,其中数据(例如,稀有类别)或人工注释的成本是令人望而却步的瓶颈。这激发了一大批越来越多的关于“少样本学习”(few-shot learning, FSL)的研究,其目的是模仿人类从少量训练样本中学习新概念的能力。FSL挑战已被证明是开发和测试大量复杂研究思想的肥沃土壤,这些研究思想包括度量学习[55,57]、基于梯度的元学习[29]、程序归纳[40]、可微优化层[41]、超网络[9]、神经优化器[50]、转导标签传播[51]、神经损失学习[4]、贝叶斯神经先验[66]等[64]。但是有多少实际的进步在所有这些技术进步的基础上取得了进展吗?
一些研究[19,20,23,47,59,63]调查了简单的基线是否可以提供与先进的少样本学习者相当的性能。虽然没有确凿的答案,但由于复杂学习器[66]和简单基线的不断发展,有一种趋势是,与复杂的方法相比,简单的方法往往表现得出乎意料地好。这些简单的方法的简单性和有效性使得这些简单的方法在许多实际应用医学数据分析[11]到电子工程[39]中被采用。
我们遵循这条调查路线,但进一步调查了以前研究不足的影响简单的少量管道性能的因素。特别地,我们从简单的ProtoNet[55]类管道开始,并研究三个实际重要的设计选择:预训练数据,神经结构和元测试中的微调。
源数据 虽然FSL解决的是小数据机制,但实际上,FSL研究几乎总是关于将知识从大规模源任务(又名元训练)转移到小规模目标任务(又名元测试)的算法。现有文献几乎总是控制源数据,以便仔细比较从超网络[9]到基于梯度的元学习者[29]的不同感兴趣的知识转移机制的影响。虽然这有助于推动复杂算法的研究,但它并没有回答源数据的选择如何影响性能的问题。这个问题已经在其他视觉和模式识别领域进行了研究[10,31,56],但没有针对FSL。这对计算机视觉FSL研究的消费者是没有帮助的,谁会有兴趣知道源数据的简单改变能在多大程度上改善他们的应用程序?特别是由于已经存在免费的大型数据集[21,58],并且在实践中利用更多的外部源数据比实现复杂的最先进的元学习器更容易。
image.png
图1所示。预训练和架构如何影响少样本学习?从几个样本中学习可以通过
a)元学习[62,66]和b)从大规模外部数据预训练的自监督基础模型迁移学习[18,49]来实现。虽然FSL社区的大多数人都专注于前者,但我们表明后者可以更有效
,因为它可以使用更强大的架构,如视觉转换器(ViT)[25],并且可以与简单的元学习器(如ProtoNet)结合使用。图中显示的是近5年FSL研究的数十项研究的汇总结果,以及ProtoNet + ViT主干+对比语言图像预训练(CLIP)[49]的结果(黄色星号)。为了强调预训练的重要性,我们还比较了ProtoNet +随机初始化的ViT(蓝色方块)。
为此,我们研究了对外部数据的无监督预训练对FSL任务的影响-一种最近被称为利用基础模型[10]的工作流。与5年的FSL研究相比,这一微小的变化产生了实质性的影响(图1)。尽管这可能违反了严格规定源集的FSL问题定义,但该方法的有效性可能会促使人们反思,这是否是值得关注的最佳问题定义。
神经结构 与源数据的情况类似,FSL研究通常将神经结构控制在少数小型网络上,如CNN-4-64和ResNet-12。这在一定程度上是为了实现FSL算法的公平比较,但这种特殊的网络套件也是用于在miniImageNet等通用基准中进行训练的源数据集较小的结果。因此,就最先进的计算机视觉而言,FSL中通常研究的体系结构有些过时。因此,我们要问的是,Vision Transformer[25]等最先进的架构在多大程度上可以使少样本性能受益,特别是与更大的预训练数据集结合使用时?
微调 FSL文献中的许多研究在一定程度上存在分歧,他们是否主张在单个任务的模型部署期间进行某种微调(即元测试),或者固定的特征表示是否足够[41,55,63]。我们也调查了这个问题,并建议微调对于将基础模型部署到超出分布的任务是必要的。我们还介绍了一种算法改进的微调通过验证实现学习率选择的自动化,从而为跨域FSL提供了一个更高效的管道。
image.png
图2。概述-我们考虑的简单预训练、元训练和微调管道的示意图。沿着红色箭头,管道将预训练的特性主干转换为特定于任务的主干。
综上所述,我们通过研究简单管道的设计选择来推进少样本学习55,而不是开发新的算法。我们回答的问题包括:预训练如何影响FSL?最近的transformer架构能适应FSL吗?以及如何最好地利用微调?基于这一分析,我们展示了一个新的FSL基准,它超越了最先进的性能,同时简单易用。

2. 相关工作

Few-shot learning

目前,少样本学习是一个深入而广泛的研究领域,由于范围太大,无法在此详细回顾,我们参考相关调查进行概述[34,64]。关键的一点是,尽管名称如此,但几乎所有FSL方法都提供了将知识从大型源数据集转移到一组稀疏注释的目标类别的算法。该领域的许多活动都属于元学习的范畴[34],其目的是通过模拟少量学习问题,从源数据集(即元训练)构建一个数据高效的学习器,然后将定制的学习器部署在目标(即元测试)集上。生成的学习器可以采用初始化[29]、学习度量[55]、贝叶斯先验[66]或优化器[50]的形式。

简单而有效的基线

在与上文提到的大量复杂的少样本学习器[34,64]的竞争中,最近的一些研究提倡使用更简单且性能相对较好的强基线。这些通常基于迁移学习[65]管道。他们在源数据上应用传统的深度学习器,然后通过在固定表示上训练简单的线性[19,47,59]或质心[63]分类器来适应少量的目标数据,或者对特征主干进行微调[23]。这些方法大多使用标准化的FSL源数据集(如miniImageNet)和架构(如ResNet-12和WRN-10-28)来实现提倡的简单基线和复杂学习者的简单比较。相比之下,我们的目标是探索通过利用其他可用的预训练数据集和架构,可以将实际的FSL性能提高到什么程度。
一些研究使用ImageNet1K[20]或ImageNet21K[23]等数据集在更大范围内评估了FSL。然而,通过改变源数据集和目标数据集,这并不能明确源数据的选择/规模如何影响给定的目标问题——我们在这里回答这个问题。其他人已经探索了传统预训练在元学习之前的影响[20]或作为元学习期间的正则化器[30]-但没有利用额外的数据

更大的数据和架构

源数据集的影响在视觉领域的标准监督学习[56]和自监督学习[10,31]以及视觉之外的模式识别应用[3,10,13,22]中得到了广泛的研究。然而,它并没有在FSL中得到广泛的评估,这是一个令人惊讶的遗漏,因为正如我们将看到的,它可能是提高实际FSL性能的最简单的方法。同样,现有的FSL方法几乎完全基于一些不太常见的架构(例如,conv4 -64和ResNet-12),这可能是由于在Omniglot等小数据集上的第一次实验设置[29,62]。transformer在FSL中的应用有限,主要用于度量学习[24],而不是用于特征提取。我们探索了如何训练最新的transformer特征提取器并将其应用于FSL,特别是当与基础模型[10]结合在更大的源数据集上进行预训练时。

自我监督和少样本

我们的管道扩展了自监督研究社区的典型无监督预训练→监督微调工作流[28,38],该工作流最近在少样本监督学习方面表现出色[15,18,27]。然而,由于典型的评估实践和基准不同,对自监督(SSL)和FSL社区方法进行数据高效学习的直接比较有限。例如,许多SSL评估在ImageNet上执行无监督表示学习,然后在ImageNet内执行少量监督学习[15,18],这违反了通常的FSL社区对源数据和目标数据不相交的要求。本文的一个贡献是提供SSL和FSL方法之间的比较和组合的程度。例如,我们的元数据集,CDFSL和Teaser图1结果,使用不相交的源数据和目标数据,但受益于外部自监督预训练。

跨域少样本

一个特别实用的FSL变体是cross-domain few-shot[32],其中源/元训练数据集与目标/元测试数据集显著不同。这比标准的域内设置更具挑战性,但更具有实际意义。这是因为在许多需要FSL的场景中,如医学或地球观测成像[32],FSL的目标数据与可用的源数据(如(mini)ImageNet[21])有很大不同。该类型的主要基准是CDFSL[32]和元数据集[61]。

3. 一个简单的FSL管道

问题公式化

few -shot学习(FSL)的目的是学习一个只有几个带注释的例子的模型。Vinyals等人[62]从元学习的角度提出了一种被广泛采用的FSL公式,该公式的假设是,人们应该根据之前看到的许多类似的少量任务的经验来学习解决新的少量任务。因此,FSL问题通常分为两个阶段:在训练任务的分布上对少量学习者进行元训练,并通过在新的少量任务上对生成的学习者进行评估来对其进行元测试。在每个阶段中,数据以情景方式到达,其中每个任务的“训练集”和“测试集”分别称为支持集和查询集,以避免术语混淆。在分类的情况下,一个事件的难度级别被描述为K-way-N-shot,这对应于在支持集中为每个类给定N个样本来学习K个类的分类器。通常为每个难度级别学习一个模型,但更现实的设置[61]是学习各种K和N的全局模型。这有时被称为K’s 和 N’s,我们在这里解决这个更实际的设置。这也是为什么我们更喜欢简单的管道而不是复杂的元学习器,因为后者不容易扩展到各种方式、各种-shot的设置中。
另一种不同的小数据学习方法出现在迁移学习[12,65]和自我监督[10,17]文献中。在这种情况下,使用一些大型源数据预训练模型,然后将其重新用于感兴趣的稀疏数据目标任务。预训练步骤的目的是减少适应步骤中学习目标问题的样本复杂度。
image.png
虽然通常是单独研究,但这两种方法都提供了从源数据到感兴趣的目标小样本问题的知识转移机制。为了实现高性能少样本学习的目标,我们将预训练(通常是在辅助无标签数据上,这是免费和无处不在的)和元学习(带标签的情景训练)结合在一起,在一个简单的顺序管道中使用单个特征提取器骨干。我们的管道包括三个阶段:1)使用自监督损失在未标记的外部数据上预训练特征骨干;2)使用ProtoNet[55]损失在标记的模拟少样本任务上对特征骨干进行元训练;3)在新的少样本任务上部署特征骨干,并对每个任务的增强支持集进行可选的微调。我们的管道示意图如图2所示,我们称之为P>M>F(即管道Pre-train→Meta-Learn→Fine-Tune)。接下来我们将概述该特性backbone在不同的阶段更新。

3.1. 骨干预训练

我们考虑ResNet[33]或ViT[25]的特征主干,为我们的管道提供基础模型。然后有几个完善的自监督学习算法用于预训练步骤:DINO[15]使用ImageNet1K并利用同一图像的大作物和多个局部作物之间预测的一致性,其中在ImageNet图像的情况下,大作物极有可能与前景物体重叠;BEiT[6]相当于在ImageNet-21K数据集上按照原始的BERT预训练[22]对文本数据进行掩膜图像重建任务;CLIP[49]利用YFCC100m数据集中的图像标题在公共特征空间中对齐图像和标题表示。对于像ViT这样更灵活的架构[25],外部数据的预训练是很重要的,因为它们很难在常见的小型FSL基准上进行训练(图1和表1)。

3.2. 使用ProtoNet进行元训练

由于目标是建立一个简单的管道,我们考虑原型网络(ProtoNet)[55],它为每一episode动态构建类质心,然后进行最近质心分类。具体来说,ProtoNet只需要一个特征主干 f f f将数据点映射到一个多维特征空间 f : X → R m f:X\rightarrow R^m f:XRm,查询图像 x x x属于 k k k类的概率为
image.png
其中 d d d在我们的工作中由余弦距离实现,而不是通常选择的欧几里得距离, c k c_k ck k k k类的原型,定义为 c k = 1 N k ∑ i : y i = k f ( x i ) c_k = \frac{1}{N_k}\sum_{i:y_i=k}{f(x_i)} ck=Nk1i:yi=kf(xi)在支持集上。请注意,无论 k k k值如何,原型都可以计算。这使得ProtoNet可以在各种方式,各种shot设置下进行训练和部署。

3.3. 带有微调的元测试

为了与元训练一致,默认情况下,我们将元训练后的ProtoNet直接部署在所有新任务上。然而,如果一个新任务是从一个未知的领域中提取的,那么由于数据分布的重大变化,学习到的特征表示可能无法泛化。为此,我们建议在数据增强的辅助下,通过几个梯度步骤对特征主干进行微调。详细信息总结为算法1中的PyTorch伪代码。
我们的微调算法类似于[32,42],他们使用支持集微调模型权重,因为这是元测试时唯一可访问的标记数据。我们对支持集的利用略有不同:**我们使用数据增强创建从支持集派生的伪查询集;因此,我们不需要使用支持集计算原型,然后再次使用eq.(1)将原型应用于相同的支持集。**根据经验,我们发现即使只有少数示例可用于微调,更新整个主干也不是问题。虽然可以冻结某些层以节省一些计算,但冻结哪些层可能是特定于领域的,这会使调优变得复杂。
学习率选择微调性能对学习率的选择比较敏感。为此,我们提出了一种自动学习率调整算法。我们使用数据增强从支持集生成另一个伪查询集,该查询集用于确定{0,0.01,0.001,0.0001}范围内的学习率。这为模型部署增加了4倍的计算成本,以执行每集学习率的选择。如果可以使用多个集(本质上相当于假设每个域的验证集),则可以为每个数据集选择学习率,以提高效率。关于这个和其他消融研究的细节可以在补充材料中找到。
image.png

4. 实验

我们使用标准基准来评估我们提出的管道。miniImageNet[62]包含来自ImageNet-1k的100个类,然后将其分为64个训练类,16个验证类和20个测试类;每个图像都被降采样到84×84。CIFAR-FS[8]是将原来的CIFAR-100划分为64个训练类、16个验证类和20个测试类而创建的。图片大小为32×32。
元数据集[61]包含了10个不同领域的公共图像数据集:ImageNet-1k、Omniglot、fgvc - aircraft、ub -200-2011、descriable Textures、QuickDraw、FGVCx Fungi、VGG Flower、Traffic Signs和MSCOCO。
每个数据集都有训练/val/测试分割。我们跟着这两个训练方案分别由[61]和[24]提出。
对于前者,前8个数据集(indomain)的train/val分割用于元训练和验证,所有数据集的test分割用于元测试。后者只考虑ImageNet-1k的训练分割用于元训练,其他设置保持不变。有关Meta-Dataset的更多细节,请参阅[61]的附录3。
为了评估少镜头分类性能,我们为每个感兴趣的数据集模拟了来自test-split的600集/任务。评估指标是对任务的平均分类精度。对于miniImageNet和CIFAR-FS,惯例是评估5-way-1-shot (5w1s)和5-way-5-shot集,每个集的查询集大小固定为15 × 5。对于元数据集,除了ImageNet-1k和Omniglot(它们根据类的层次结构有特定的采样策略)之外,其他方式、拍摄和查询图像的数量都是相对于数据集规范均匀随机采样的。此外,我们对来自miniImageNet的(5w5s)元训练模型进行了跨域评估(CDFSL)[32],其中考虑了4个域外数据集,并在5-way-5/20/50-shot设置下报告了结果。
为了避免对不同数据集和架构的过度工程训练,我们采用了一种通用的训练策略,从预训练的模型检查点(ResNet和ViT)对主干进行元训练。在某些情况下,这可能会导致次优结果,但它简化了比较。具体来说,我们训练100个时代的主干,每个时代由2000个情节/任务组成。我们使用预热+余弦退火学习率计划:学习率从10−6开始,在5个epoch中增加到5 × 10−5,然后通过余弦退火逐渐降低到10−6。我们使用验证集来决定何时提前停止,并为了简单起见关闭强正则化和数据增强技术。

4.1. 分析

现在,我们使用第3节中概述的管道来回答一系列关于少样本学习器管道设计的问题。值得注意的是,1训练前制度是如何影响FSL的?像ViT这样的当代建筑是否可以适应FSL?3如何利用元测试中的微调?

4.1.1预训练和架构

我们首先评估预训练机制(包括算法和数据集)以及神经架构对FSL基准Meta-Dataset61、miniImageNet[62]和CIFAR-FS[8]的影响。为了清晰地传达每个实验的配置,表1将结果按体系结构、预训练算法(和数据集)和元训练算法进行组织。我们假设ProtoNet(最近质心)分类器作为元测试的标准方法,并比较偶然训练的ProtoNet或没有作为预训练和元测试之间的元学习步骤(列MetaTr)。

1训练前制度如何影响FSL?

image.png
表1。体系结构和预训练算法(数据集)对元数据集(MD)、miniImageNet (miniIN)和CIFAR-FS上下游少镜头学习性能的影响。元数据集结果是所有目标数据集的平均值,而minIN和CIFAR结果是5-way-5-shot。在元测试过程中,我们一直使用ProtoNet (PN)最近质心分类器对支持集进行少量学习。MetaTr表示在相应基准上进行情景学习的算法。
从表1的结果中我们可以得出以下结论:(i)与之前工作使用的不使用预训练的常规管道相比,在ImageNet1K上进行预训练总体上提供了显着的全面改进(将M9模型与M7和M8模型进行比较等)。(ii)我们主要对无监督预训练感兴趣,有监督预训练作为不公平上界。然而,最先进的无监督预训练与DINO的性能接近于有监督预训练(比较M3和M2等)。这是值得注意的,因为虽然这里考虑的一些源(ImageNet1K)和目标(Meta-Dataset, miniImageNet, CIFAR)数据集之间存在一些语义重叠,但不使用源标签也可以实现良好的性能,其中没有训练测试标签泄漏1。(iii)给定一个强大的预训练机制,如DINO,基于预训练特征的简单最接近质心分类表现良好(包括M2等的顶部块)。特别是,与ProtoNet-ResNet18 (M2 vs M10)的传统数据集特定训练相比,没有数据集特定元学习的基础模型的现成功能表现更好,这可以说是最接近FSL行业标准的。(iv)然而,数据集特定的元学习确实进一步改善(M7 vs M2等)。冻结地基模型的简单线性读数[18,27]是没有竞争力的。

2 像ViT这样的最先进的架构是否可以适用于FSL?

使用表1中的结果,我们也可以回答这个问题。特别是**,与较小的体系结构相比,ViT在较小的元训练基准(miniImageNet, CIFAR)上训练得不好(参见M6与M9, M10),但在受益于大型预训练数据(M6与M4)时,它通常表现出色。整体ViT优于行业标准ResNet18,以及我们的ResNet50基线,全面受益于预培训**。我们注意到,我们的ResNet50基线在没有预训练的情况下也表现得比较差,特别是在较小的miniImageNet和CIFAR上,这表明它也太大了,无法单独在目标数据集上进行很好的训练。

其他基础模型

我们可以看到更大预训练数据源和最新架构对下游FSL在标准基准测试中的性能产生了巨大的影响。我们还比较了M11-15中选择的其他基础模型[10]。我们可以看到(i)所有的基础模型都在标准的数据集内训练(M10,M9)上有了很大的改进,(ii)使用最大的基础模型,例如,使用viti -base和ImageNet21K或YFCC数据源,导致了最强的性能,但并没有大大超过更经济的DINO+ imagenet1 -based viti -small (M4)。为了提高预训练和部署的效率,我们在下一节中将其作为默认模型。

1 + 2 预训练和架构如何影响其他Few-Shot学习者?

我们的主要实验建立在ProtoNet这个广泛使用的行业标准之上。接下来,我们将探讨我们的管道如何影响两个更能代表最新技术的少量学习器,即MetaOptNet[41]和MetaQDA[66]。从表2的结果中,我们可以看到:(i) MetaQDA和MetaOptNet确实改善了直接特征转移(M5和M3 vs M0)以及他们最初评估的更简单的ResNet特征(M5 vs M4, M3 vs M2)。但是(ii)由于具有更强的特征,它们被更简单的ProtoNet学习器(M3和M5 vs M1)优于。这表明先前关于比较元学习者表现的结论可能需要在这种更强特征的新制度下重新评估

讨论

现有的文献一般不能直接比较来自少样本学习社区的算法(如ProtoNet, [55], MAML [29], MetaOptNet[41]等),以及来自自监督社区的(如DINO [15], SimCLR[17,18]等)。这部分是因为流行的评估协议是不同的:例如,FSL社区流行5-way-1-shot制度,而SSL社区流行1%标签(在ImageNet的情况下≈1000-way-10-shot);网络架构不同(分别≤ResNet18和≥ResNet50);图像分辨率也不同(84x vs full)。我们的结果提供了这种直接比较的品尝者。总的来说,他们认为固定的自我监督基础模型(使用额外的预训练数据)与标准的少样本学习器(仅使用元训练数据)相比更具竞争力。然而,更有趣的是,正如我们所做的那样,结合这两种范式,很容易产生典型FSL指标的最先进性能。

4.1.2 微调

之前的实验使用固定特征提取器和ProtoNet进行元测试。接下来,我们将研究在元测试期间使用微调来进一步提高性能。基于4.1.1节中DINO预训练的ViT模型的强大性能,我们重点关注DINO预训练的ViT模型。

3 如何最好地利用元测试的微调?

image.png
图3。元测试期间对元数据集进行微调的影响。持有的数据集(如Signs和COCO)受益于微调;还有那些与ImageNet非常不同的东西,比如omniglot和QuickDraw。
image.png
表3。元数据集元测试期间的微调(FT)。meta-train (MetaTr)设置表示源数据集为仅ImageNet (IN)或完整元数据集(MD)。结果是元数据集中所有域的平均值(Avg),只是分布外子集(Out-D)。
为了回答这个问题,我们比较了之前探索的普通特征转移与ProtoNet,以及在支持集(ProtoNet+FT)上进行情节微调的ProtoNet,如第3.3节所述。我们使用的元数据集包括两个条件:单独将ImageNet作为源,以及在所有元数据集上进行联合元训练。从图3和表3的结果中,我们可以得出以下结论:(i)在完整元数据集上的元训练比单独在imagenet训练上的元训练改进(M5 vs M1)。(ii)元测试期间的微调在分布外的数据集上有了很大的改善,特别是在ImageNet上进行元训练,然后跨域部署到所有其他元数据集任务的情况下:参见表3中的Out-D列和M2 vs M1;图3中OmniGlot、QuickDraw、交通标志等的蓝色和橙色条。然而,对于使用更多元数据集域进行训练和测试的情况,微调对各个域的影响不一致对于剩余的OOD数据集,它总体上没有帮助(Avg和Out-D的M5 vs M6)。通过微调进行的整体特征主干更新对元训练期间未见的领域更有帮助,这与[42,61]一致。在分析微调的不一致影响时,我们发现这是由于难以选择适当的学习率。在整个过程中使用任何单一的学习率,就像我们上面所做的(lr=0.01),对于某些数据集来说是很糟糕的。因此,我们也探索了3.3节中提出的学习率选择启发式,我们看到这导致了最佳性能(M4 vs M2)。

4.2. 标准基准测试结果

我们称我们的管道为P>M>F,它可以用任何预训练算法和骨干架构实例化,例如DINO > ProtoNet (PN) > Fine-tuning (FT)。接下来,我们将我们的管道与先前的艺术状态进行比较。我们强调,在架构和外部数据的使用方面,我们的结果不能直接与之前的SotA进行比较。我们做这个比较是为了看看简单的改变(比如利用公开可用的预训练数据和更新到现代架构)与FSL算法5年的深入研究相比有何不同。单域miniImageNet和CIFAR-FS的结果总结如表4所示。跨域数据集Meta-Dataset和broad Study CDFSL的结果分别如表5和表6所示。从结果中我们可以看到,尽管我们的框架比一些复杂的竞争对手简单得多,但在领域内和跨领域的条件下,我们的框架都优于许多先进的技术。我们注意到,对于表4中的单源基准测试,一些竞争对手也使用外部数据或ImageNet预训练。同时,我们的混合管道在CDFSL方面优于SotA纯外部自我监督[14,27],见表6。
image.png
image.png

4.3. 讨论

综上所述,结果表明,我们利用可用的预训练数据和现代架构的简单管道通常在少数镜头学习中优于复杂的艺术状态。在元测试阶段,使用我们提出的自适应微调机制可以增加这个差额。
基于这些观察,我们为实践者和少量的学习研究者提出了建议。
实践者:增加预训练数据大小或简单地使用基础模型[10,15]并升级到现代架构可能比跟上并实现最先进的少量学习算法更有生产力(并且更容易实现)。如果感兴趣的目标任务与预训练和元训练数据不太相似,那么微调可能很重要。
FSL研究人员:我们的研究结果表明,使用外部数据和现代架构是实现强大的FSL性能的一种简单有效的方法,而且一些SotA元学习器未能在该机制中提供预期的改进。虽然外部数据违反了FSL问题的定义,即坚持使用特定的有限元训练集,我们面对不断推进的自我监督,应该认真对待这一设置,以保持实际的相关性[15,28,38,49]。
特别是,我们建议为所有标准的FSL基准设置一个新的评估设置,其中自由选择和清晰报告预训练数据和架构。然后评估少量元学习方法在线性读数、微调或给定外部数据集和架构的PMF基线方面的改进能力。

5. 结论

在数据集、架构和微调策略方面,我们从推动简单的预训练+ ProtoNet管道的极限的角度推进了少样本学习。
结果表明,源数据集和神经结构是影响FSL性能的主要因素。当训练和测试之间存在域转移时,我们表明通过数据增强对特征主干进行微调也很重要。我们验证了我们的简单管道在四个FSL基准测试中具有非常有竞争力的性能。
我们的实证研究有几个局限性。我们只触及了外部数据和相应的更大架构对FSL的影响的表面。我们重新关注外部数据,强调需要将来自FSL社区的算法[29,41,55]与来自自监督社区的算法[10,17]进行直接比较,或者可能协同结合,正如我们在这里所尝试的那样。我们提出的混合管道显然仅限于已经存在大型外部数据集的模式,并且需要在预先训练的基础模型不存在的情况下在计算和能源成本方面进行大量的前期投资。基础模型中可能存在的偏差也是一个潜在的风险[10]。最后,虽然有效,但我们的自适应微调策略在元测试时的计算成本相当高,并且可能不支持没有反向传播的嵌入式平台。前馈表示自适应方法[52]可能对未来的工作很重要。

参考资料

论文下载(2022 CVPR)

https://openaccess.thecvf.com/content/CVPR2022/papers/Hu_Pushing_the_Limits_of_Simple_Pipelines_for_Few-Shot_Learning_External_CVPR_2022_paper.pdf

代码地址

https://github.com/hushell/pmf_cvpr22

参考文章

https://blog.csdn.net/s_m_c/article/details/135729974?spm=1001.2014.3001.5502

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

十有久诚

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

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

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

打赏作者

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

抵扣说明:

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

余额充值