没有合适的资源?快使用搜索试试~ 我知道了~
9068123突破简单流水线的极限,实现少量学习:外部数据和微调带来改变壳牌Xu Hu 1DaLi 1*Jan Stühmer 1金敏英1蒂莫西M. Hospedales1,21Samsung AI Center剑桥2爱丁堡大学{shell.hu,da.li1,jan.stuhmer,k.minyoung,t.hospedales}@ samsung.com摘要少镜头学习(FSL)是计算机视觉中的一个重要和热门问题,它激发了对从复杂的Meta学习方法到简单的迁移学习基线的许多方法的广泛我们试图推动一个简单但有效的管道的现实世界的少数镜头图像分类在实践中的限制。为此,我们从神经架构的角度探索了少量学习,以及外部数据预训练的三阶段管道,带有标记的少量任务的元训练,以及对看不见的任务进行特定任务的微调10090807060我们调查的问题,如:如何预培训外部数据对FSL有何益处?最先进的trans50以前的建筑可以利用吗? 以及如何CNN-4-64 RN12 RN18WRN-28-10 ViT-base最佳漏洞利用微调?最后,我们证明了一个简单的基于 transformer 的 管 道 在 标 准 基 准 测 试 ( 如 Mini-ImageNet,CIFAR-FS,CDFSL和Meta-Dataset)上产生了 令 人 惊 讶 的 良 好 我 们 的 代 码 可 在https://hushell.github.io/pmf上获得。1. 介绍主流监督式深度学习在大型注释数据集可用的应用中取得了出色的效果。然而,在数据(例如,稀有类别),或者人工注释的成本是禁止的瓶颈。这激发了大量的和不断增长的少量学习(FSL)研究,其目的是模仿人类从很少的训练示例中学习新概念的能力FSL挑战已被证明是开发和测试大量复杂研究思想的肥沃土壤,涵盖度量学习[55,57],基于梯度的元学习[29],程序归纳[40],可微优化层[41],超网络[9],神经优化器[50],转导标签传播[51],神经损失学习[4],贝叶斯神经先验[66]等[64]。但实际进展有多少呢*平等捐款。图1. 预训练和架构如何影响少量学习?从几个镜头中学习可以通过a)元学习[62,66]和b)从大规模外部数据预训练的自监督基础模型中进行迁移学习[18,49]。虽然大多数FSL社区都专注于前者,但我们发现后者可能更有效,因为它可以使用更强大的架构,如视觉Transformer(ViT)[25]-并且可以与简单的元学习器(如ProtoNet)该图显示了过去5年FSL研究中数十项研究的汇总结果以及ProtoNet + ViT主干的结果+对比语言图像预训练(CLIP)[49](黄星)。为了强调预训练的重要性,还比较了ProtoNet +我们在这些技术进步的基础上取得了什么进步?一些研究[19,20,23,47,59,63]调查了简单的基线是否可以提供与先进的少数镜头学习者相当的虽然没有结论性的答案,但由于复杂学习者[66]和简单基线的持续发展,有一种趋势,即简单方法通常表现得出奇地好于复杂的同行。它们的简单性和有效性使得这些简单的方法在许多实际应用中被采用,miniImageNet 5向5次精度9069医学数据分析[11]到电子工程[39]。我们遵循这条调查路线,但进一步调查以前研究不足的因素,影响简单的几杆管道的性能。特别是,我们从一个简单的ProtoNet [55]类似的管道开始,并研究了三个实际重要的设计选择:预训练数据,神经架构和元测试中的微调。源数据虽然FSL解决了小数据制度,外部数据域A域B1类第二班第三4类第五类第六支持集增广支持集在现实中,FSL研究几乎总是关于从大规模源任务(又名Meta任务)转移知识的算法预先培训的骨干经过元训练的骨干网训练)到小规模目标任务(又名元测试)。现有文献几乎总是控制源数据,以便仔细比较从超网络[9]到基于梯度的元学习者[29]的不同知识转移机制的影响虽然这有助于推动对复杂算法的研究,但它并没有回答源数据的选择如何影响性能的问题这个问题已经在视觉和模式识别的其他领域进行了研究[10,31,56],但没有针对FSL。这对于计算机视觉FSL研究的消费者来说是没有帮助的,他们有兴趣知道源数据的简单更改可以在多大程度上改善他们的应用程序?特别是因为已经存在免费可用的大型数据集[21,58],并且在实践中开发更多的外部源数据比实现复杂的最先进的元学习器更容易。为此,我们研究了无监督预训练对外部数据的影响-最近被称为利用基础模型的工作流程[ 10 ] -对FSL任务的影响与FSL 5年的研究相比,这一微小变化具有重大影响(图1)。尽管这可能违反严格规定源集合的FSL问题的定义,但该方法的有效性可能促使人们反思这是否是要关注的最佳问题定义。神经结构与源数据的情况类似,FSL研究通常将神经结构控制在一堆小网络中,如CNN-4-64和ResNet-12。这部分是为了实现FSL算法的公平比较,但这种特定的网络套件也是用于在常见基准测试(如miniImageNet)中训练的源数据集规模较小的结果。因此,FSL中通常研究的架构在最先进的计算机视觉方面有些因此,我们要问的是,视觉转换器[25]等最先进的架构在多大程度上可以使少数镜头的性能受益,特别是在与较大的预训练数据集结合使用时?微调FSL文献中的许多研究在某种程度上存在分歧,他们是否主张[29,50,61]在模型部署期间对单个任务进行某种微调(又名元测试),或者固定的特征表示是否应该足够[41,55,63]。我们还调查了这个问题,并建议微调是必要的部署基础模型的分布任务。我们还介绍了一个算法改进的微调,通过图2. 概述-我们考虑的简单预训练、元训练、微调管道的沿着红色箭头,管道将预先训练的特征主干转换为特定于任务的特征主干。通过验证自动化学习率选择,这为跨域FSL带来了更高性能的流水线。总之,我们通过研究简单管道的设计选择来推进少量学习[55](图2),而不是开发新算法。我们回答的问题包括:预培训如何影响FSL?最新的Transformer架构能否适应FSL?以及如何最好地利用微调?基于这一分析,我们展示了一个超越最新技术水平性能,同时简单且易于实现。2. 相关工作小样本学习现在是一个深入而广泛研究的领域,因为太大而无法在这里详细回顾,我们参考了相关调查的概述[34,64]。一个关键点是,尽管有这个名字,但几乎所有的FSL方法都提供了将知识从一个大的源数据集转移到一组稀疏注释的目标感兴趣类别的算法。该领域的许多活动都属于元学习的范畴[34],其目的是通过模拟少量学习问题,从源(又名元训练)数据集构建数据高效的学习者,然后将定制的学习者部署到目标(又名元测试)集。由此产生的学习器可以采取初始化[29],学习度量[55],贝叶斯先验[66]或优化器[50]的形式。简单但有效的基线在与过多的复杂的少数镜头学习者[34,64]的竞争中,如上文所述,最近的一些研究提出了强大的基线,这些基线在更简单的同时表现良好这些通常基于迁移学习[65]管道。他们在源数据上应用传统的深度学习器,然后通过在固定表示上训练简单的线性[19,47,59]或质心[63]分类器来适应少量目标数据,或者微调特征骨干[23]。这些方法主要使用标准化的FSL源数据集(如miniImageNet)和架构(如ResNet-12和WRN-10-28),以实现直接9070→将提倡的简单基线与sophisticated学习者进行比较。相比之下,我们的目标是探索通过利用其他可用的预训练数据集和架构可以在多大程度上推动实际的FSL性能一些研究使用ImageNet1K [20]或ImageNet21K [23]等数据集在更大范围内评估了FSL然而,通过改变源集和目标集,这并不能清楚地表明源数据的选择/规模如何影响给定的目标问题-我们在这里回答的问题。其他人已经探索了元学习之前的常规预训练的影响[20]或作为元学习期间的正则化器[30]更大的数据和架构源数据集的影响在视觉中的标准监督[56]和自监督[10,31]学习以及视觉之外的模式识别应用中被广泛研究[3,10,13,22]。然而,它在FSL中没有得到广泛的评价,这是一个令人惊讶的遗漏,因为正如我们将看到的,它很可能是提高实际FSL性能的最简单方法。类似地,前FSL方法几乎完全基于一些不太常见的架构(例如,Conv-4-64和ResNet-12),这可能是由于在Omniglot等小数据集上的第一个实验设置[29,62]。Transformer在FSL中的使用有限,主要用于度量学习[24],但不用于特征提取。我们探讨了如何训练最近的trans-former特征提取器并将其应用于FSL,特别是当与在较大的源数据集上预训练的基础模型[10&我们的管道扩展了自监督研究社区[28,38]的典型无监督预训练监督微调工作流程,该工作流程最近在低镜头监督学习方面表现出了强大的性能[15,18,27]。然而,由于不同的典型评估实践和基准,对于数据有效学习的自监督(SSL)和FSL社区方法的直接比较例如,许多SSL评估在ImageNet中执行少量监督学习之前,在ImageNet上执行无监督表示学习[15,18],这违反了通常的FSL社区对不相交源和目标数据的要求。本文的一个贡献是提供SSL和FSL方法之间的比较和组合的程度。例如,我们的MetaDataset,CDFSL和Teaser图1结果使用不相交的源数据和目标数据,但受益于外部自我监督的预训练。跨域少量射击一个特别实际感兴趣的FSL变体是跨域少量射击[32],其中源/元训练数据集与目标/元测试数据集显著不同。这比标准的域内设置更具挑战性,但更实用。这是因为在FSL感兴趣的许多场景中,例如医学或地球观测成像,目标FSL的数据与可用的源数据(如(mini)ImageNet[21])显著不同这种类型的主要基准是CDFSL [32]和元数据集[61]。3. 一种简单的FSL少镜头学习(FSL)的目的是学习一个模型,只有几个注释的例子。Vinyals等人[62]从元学习的角度引入了一种广泛采用的FSL公式,其中假设应该学习基于以前看到的许多类似的少数任务的经验来解决新因此,FSL问题通常分为两个阶段:在训练任务的分布上对少量学习者进行元训练,并通过在新的少量任务上对其进行评估来对结果学习者进行元测试。在每个阶段中,数据以一种偶发的方式到达,其中每个任务的在分类的情况下,剧集的难度级别被描述为K-way-N-shot,其对应于在支持集中给定每个类N个示例的情况下学习K个通常为每个难度级别学习一个模型,但更现实的设置[61]是为各种 K和N学习全局模 型。这有时被称为various-way-various-shot,我们在这里解决这个更实际的设置。这也是我们更喜欢简单管道而不是复杂元学习器的原因,复杂元学习器可能不容易扩展到various-way-various-shot设置。小数据学习的不同方法出现在迁移学习[12,65]和自我监督[10,17]文献中。在这种情况下,使用一些大的源数据预训练模型,然后将其重新用于感兴趣的稀疏预训练步骤的目的是降低在适应步骤中学习目标问题的样本复杂度。虽然通常单独研究,这两个家庭的方法提供了从源数据的知识转移到目标几杆感兴趣的问题的机制。为了实现高性能少次学习的目标,我们使用单个特征提取器主干在一个简单的顺序管道中将预训练(通常在辅助未标记数据上,这些数据是免费且普遍可用的)和Meta学习(带有标签的情景训练)结合在一起。我们的管道包括三个阶段:1)使用自监督损失在未标记的外部数据上预训练特征骨干,2)使用ProtoNet [55]损失在标记的模拟少数任务上元训练特征骨干,以及3)在新颖的少数任务上部署特征骨干,并对每个任务的增强支持集进行可选的微调我们的流水线的示意图在图2中示出,我们称之为P>M>F(即,流水线预训练→元学习→微调)。接下来,我们将概述9071X →Σf(x)和N=1。Ik××我我|Σ。-是的Σ主干在不同阶段更新。3.1. 骨干预培训我们考虑ResNet [33]或ViT [25]的功能骨干,以提供我们管道中的基础模型。然后有几种成熟的自监督学习算法用于预训练步骤:DINO [15]使用ImageNet 1 K并利用同一图像的大作物和多个局部作物之间的预测一致性,其中在ImageNet图像的情况下,大作物很可能与前景对象重叠;BEiT [6]相当于在ImageNet-21 K数据集上解决掩蔽图像重建任务,与原始BERT预训练[22]的文本数据一致; CLIP [49]利用YFCC 100 m数据集中的图像标题对齐图像和算法1用于微调的PyTorch伪代码# Inputs:a task including supp_x,supp_y,query_x# backbone_state:元训练的骨干权重# optimizer:Adam optimizer# Outputs:logitsbackbone = create_model_from_checkpoint(backbone_state)def single_step(z):supp_f =主干(supp_x)proto = compute_prototypes(supp_f,supp_y)f = backbone(z)logits = f.norm()@ proto.norm().T# cos相似性损失=cross_entropy_loss(logits,supp_y)返回logits,损失#微调循环for i in range(num_steps):aug_supp_x = rand_data_augment(supp_x)_,loss = single_step(aug_supp_x)loss.backward()# back-propoptimizer.step()# gradient descentlogits,_ = single_step(query_x)#classification在公共特征空间中的字幕表示。为更灵活的体系结构,如ViT [25],外部数据的预训练很重要,因为它们很难在公共数据上训练小型FSL基准测试(图1和表1)。3.2. 使用ProtoNet进行由于目标是构建一个简单的管道,我们考虑原型网络(ProtoNet)[55],它为每个情节动态构建具体来说,ProtoNet只需要一个特征主干f来将数据点映射到m维特征空间:f:Rm,查询图像x属于类别k的概率由下式给出:以创建从支持集导出的伪查询集;这样,我们不需要使用支持集计算原型,然后再次使用EQ将原型应用于相同的支持集(一). 从经验上讲,我们发现,更新整个骨干不是一个问题,即使只有几个例子可供微调。虽然可以冻结某些层以节省一些计算,但冻结哪些层可能是特定于域的,使调优复杂化。学习率选择微调性能是相对敏感的学习率的选择。为此,我们提出了一种自动学习率调整算法哪里p(y=k x)= exp−d(f(x),ck)k′exp−d(f(x),ck′)(一)ing.我们使用数据增强从支持集生成另一个伪查询集,用于确定{0,0}内的学习率。010 001,0。0001}。这增加了4×d在我们的工作中是通过余弦距离实现的与通常选择的欧几里德距离相反,ck是类k的原型,定义为ck=1i:y=k i:y=k请注意,可以计算原型,而不管k的值。这使得ProtoNet能够在各种方式-各种镜头设置下进行训练和3.3. 带有微调的为了与元训练保持一致,默认情况下,我们将元训练的ProtoNet直接部署在所有新任务上。然而,如果新任务是从看不见的域中提取的,则学习的特征表示可能由于数据分布中的实质性偏移而无法泛化为此,我们建议微调的功能骨干的几个梯度步骤的协助下,数据增强。详细信息在算法1中总结为PyTorch伪代码。我们的微调算法类似于[32,42]使用支持集微调模型权重,因为这是元测试时唯一可访问的标记数据我们对支持集的利用方式略有不同:我们使用数据扩充计算成本的模型部署,以执行每-情节学习率选择。如果可以使用多个情节-基本上对应于假设每个域的验证情节集-则可以更有效地为每个数据集选择学习速率。有关本研究和其他消融研究的详细信息,请参见补充材料。4. 实验元训练数据集我们使用标准基准来评估我们提出的管道。miniImageNet[62]包含ImageNet-1 k中的100个类,然后将其分为64个训练类,16个验证类和20个测试类;每个图像被下采样到84 84。CIFAR-FS[8]是通过将原始CIFAR-100分为64个训练、16个验证和20个测试类而创建的。图像大小为32 32。Meta-Dataset[61]包含不同领域的10个公共图像数据集:ImageNet-1 k,Omniglot , FGVC-Aircraft , CUB-200-2011 ,Describable Textures , QuickDraw , FGVCx Fungi ,VGG Flower,Traffic Signs和MSCOCO。每个数据集都有train/val/test拆分。我们跟着这两个Nk90721231×2×分别由[61]和[24]提出的训练协议。对于前者,前8个数据集(域内)的训练/验证分裂用于元训练和验证,所有数据集的测试分 裂用于元测试。后者只考虑ImageNet-1 k的train-split进行元训练,其他设置保持不变。有关元数据集的更多详细信息,我们请读者参阅[61]的第3节。评估为了评估少镜头分类性能,我们模拟了600集/任务,从测试分裂为每个感兴趣的数据集。评估指标是任务的平均分类准确度。对于miniImageNet和CIFAR-FS,惯例是评估5路1镜头(5 w1 s)和5路5镜头剧集,每 个 剧 集 的 查 询 集 大 小 固 定 为 15 5 。 对 于 Meta-Dataset,方法,镜头和查询图像的数量相对于数据集规范均匀随机采样,除了ImageNet-1 k和Omniglot(它们根据类的层次结构具有特定的采样策略此外,我们评估了来自miniImageNet的(5 w5 s)元训练模型进行跨域评估(CDFSL)[32],其中考虑了4个域外数据集,并在5路5/20/50拍摄设置下报告了结果。为了避免针对不同数据集和架构的过度工程化训练,我们采用了一种通用的训练策略,从预先训练的模型检查点(ResNet和ViT)对主干进行元训练。这可能导致某些情况下的次优结果,但它简化了比较。具体来说,我们为100个epoch训练骨干,其中每个epoch由2000个episodes/- tasks组成。我们使用预热加余弦退火学习率进度表:学习率从10−6开始,增加到5在5个时期内为10 − 5,然后逐渐减少到10−6用余弦退火我们使用验证集来决定何时提前停止,并关闭强大的正则化和数据增强技术以简化。4.1. 分析现在,我们使用第3节中概述的管道来回答一系列关于少量学习器管道设计的问题。值得注意的是,预训练制度如何影响FSL?ViT等当代架构能否适应FSL?如何利用元测试中的微调?元测试贯穿始终,并比较作为预训练和元测试之间的元学习步骤的偶发训练的ProtoNet或无(列MetaTr)。预训练制度如何影响FSL?从 表1中的结果,我们可以得出以下结论:(i)与不使用预训练的现有工作所使用的传统流水线相比,ImageNet1K上的预训练通常提供了全面的显著改进(将模型M9与M7和M8等进行比较)。(ii)我们主要对无监督的预训练感兴趣,有监督的预训练被认为是一个不公平的上限。然而,使用DINO进行的最先进的无监督预训练的性能接近有监督预训练(com-m3 vs M2等)。这是值得注意的,因为虽然在这里考虑的一些源(ImageNet 1 K)和目标(Meta-Dataset,miniImageNet,CI-FAR)数据集之间存在一些语义重叠,但在不使用源标签的情况下可以实现良好的性能,其中没有训练测试标签泄漏1。(iii)给定一个强大的预训练机制,如DINO,基于预训练特征的简单最近质心分类表现良好(顶部块包括M2等)。特别是,与ProtoNet-ResNet 18(M2 vs M10)的传统特定于(iv)尽管如此,特定于数据集的元学习确实进一步改进(M7 vs M2等)。冻结地基模型的简单线性读数[18,27]不具有竞争力。最先进的架构(如ViT)能否适应FSL?使用表1中的结果,我们也可以回答这个问题。特别是,虽然与较小的架构(参见M6 vs M9,M10)相比,ViT在较小的元训练基准(miniImageNet,CIFAR)上训练得不好,但在受益于大型预训练数据(M6 vs M4)时,它通常表现出色。总体而言,ViT在受益于预培训时,全面优于行业标准ResNet18以及我们的ResNet50基线。我们注意到,我们的ResNet50基线在没有预训练的情况下也表现得相当差,特别是在较小的miniImageNet和CIFAR上,这表明它也太大了,无法单独在目标数据集上进行良好的训练。总体而言,我们可以看到,4.1.1预培训和架构我们首先评估了预训练机制(包括算法和数据集)以及神经架构对FSL基准元数据集[61](在8个数据集上训练),miniImageNet [62]和CIFAR-FS [8]的影响。为了清楚地传达每个实验的配置,表1中的结果按架构、预训练算法(和数据集)和元训练算法组织。我们假设ProtoNet(最近质心)分类器作为标准方法,1在miniImageNet和Meta-Dataset的情况下,ImageNet 1 K的部分内容用于元训练和元测试分割。例如:由于Meta-Dataset如第2,这种重叠在典型的自我监督评估管道中无处不在[15,17]。它在FSL评估管道中不太常见,但对应于根据[37,44,46,51]在数据访问方面进行半监督或转换假设。然而,我们不认为这是一个重要的因素,在强大的结果,因为CLIP9073125/1 5/5 5/1 5/53×≥≤≈培训配置基准测试结果ID拱预培训MetaTrMDminiINCIFAR0ViT-smallDINO(IN1K)-67.497.079.81ViT-smallDeiT(IN1K)-67.598.884.62ResNet50DINO(IN1K)-63.891.576.13ResNet50辅助核算(IN1K)-62.496.482.34ViT-smallDINO(IN1K)PN78.498.092.55ViT-smallDEIT(IN1K)PN79.399.493.66ViT-small-PN52.849.159.87ResNet50DINO(IN1K)PN72.492.084.08ResNet50辅助核算(IN1K)PN70.297.487.69ResNet50-PN62.972.268.410ResNet18-PN63.373.770.211ViT-碱基DINO(IN1K)PN79.298.492.212ViT-碱基夹子(YFCC)PN80.098.193.213ViT-碱基Sup(IN21K)PN81.499.296.714ViT-碱基BEIT(IN21K)PN82.899.097.515ResNet50夹子(YFCC)PN75.092.282.6表1.架构和预训练算法(数据集)对Meta- Dataset(MD),miniImageNet(miniIN)和CIFAR-FS上下游少量学习性能的影响。Meta-数据集结果是所有目标数据集的平均值,而minIN和CIFAR结果是5向5激发。ProtoNet(PN)最近质心分类器在元测试期间始终用于支持集上的少量学习MetaTr指示用于相应基准上的情景学习的算法预训练数据源和最近的体系结构在标准基准上对下游FSL性能产生了巨大的影响。我们还比较了M11-15中的其他基础模型[10]。我们可以看到,(i)所有基础模型都导致了标准数据集内训练(M10,M9)的实质性改进,(ii)最大的基础模型使用,例如,ViT-base和ImageNet 21 K或YFCC数据源带来了最强的性能,但并没有大大超过更经济的基于DINO+ ImageNet 1 K的ViT-small(M4)。为了提高预训练和部署的效率,我们将其作为下一节中的+预培训和架构如何影响其他Few-Shot Learners?我们的主要实验建立在ProtoNet作为一个广泛使用的行业标准。接下来,我们将探讨我们的管道如何影响两个 更 能 代 表 最 新 技 术 水 平 的 少 量 学 习 器 , 即MetaOptNet [41]和MetaQDA [66]。从表2中的结果,我们可以看到:(i)MetaQDA和MetaOptNet确实改善了直接特征转移(M5和M3 vs M0)以及它们最初评估的更简单的ResNet特征但是(ii)由于功能更强,它们的表 现 优 于 更 简 单 的 ProtoNet 学 习 器 ( M3 和 M5 vsM1)。这表明以前关于比较元学习者表现的结论可能需要在这个更强特征的新制度中重新评估。讨论现有的文献通常不能直接比较来自少数学习社区的列车配置基准ID Arch预训练MetaTrminiIN CIFAR0ViT-smallDINO(IN1K)-88.897.059.1七十九点八1ViT-smallDINO(IN1K)PN 93.198.081.1九十二点五2 MetaQuotes Software Corp.是一家软件开发公司。81.03ViT-smallDINO(IN1K)MetaQDA 92.097.077.290.14 ResNet12-MetaOptNet64.180.072.885.05ViT-smallDINO(IN1K)MetaOptNet92.297.870.2八十四点一表2.架构和预培训对最先进的少数镜头学习者(such如ProtoNet,[55],MAML [29],MetaOptNet [41]等),以及来自自监督社区的那些(如DINO [15],Simplified [17,18]等)。这部分是因为流行的评估协议不同:例如,FSL社区流行5路1次,而SSL社区中只有1%的标签(ImageNet为1000路10次);网络架构不同(分别为ResNet 18和ResNet 50);图像分辨率不同(84和全分辨率)。我们的研究结果提供了这样一个直接比较的尝试者。总的来说,他们认为冻结的自我监督基础模型(使用额外的预训练数据)与标准的少量学习者(仅使用元训练数据)相比具有然而,更有趣的是,正如我们所做的那样,将这两种范式结合起来,很容易在典型的FSL指标上实现最先进的性能。4.1.2微调之前的实验使用固定的特征提取器与ProtoNet一起进行元测试。接下来,我们研究在元测试期间使用微调来进一步提高性能。我们专注于DINO预训练的ViT模型,基于它们在第4.1.1节中的强大性能。如何最好地利用元测试的微调?为了回答这个问题,我们将之前探索的vanilla特性转移与ProtoNet进行了 比 较 , 并 将 ProtoNet 与 支 持 集 上 的 逐 集 微 调(ProtoNet+FT)进行了比较,如第3.3节所述。我们使用元数据集,包括将ImageNet单独作为源的条件,以及对所有元数据集进行联合元训练。从图3和表3中的结果,我们可以得出以下结论:(i)在完整的元数据集上进行元训练比在单独的ImageNet训练上进行元训练有所改进(M5 vs M1)。(ii)元测试期间的微调在分布外数据集中有很大的改善,特别是在ImageNet上进行元训练,然后跨域部署到所有其他元数据集任务的情况下:参见表3中的Out-D列和M2 vs M1;图3中的蓝色vs90744个ViT-small迪诺PN(IN)PN+FT(Tuned) 77.53七十七点八五5ViT-small迪诺PN(MD)PN78.43五十五点七一6ViT-small迪诺PN(MD) P N +FT(lr=0.01)76.0973.26 7ViT-小型迪诺PN(MD)PN+FT(lr=0.001)74.64 六 十 九 点九七8个 ViT-small迪诺PN(MD) P N +FT(调谐) 83.13七十五点七二表 3. 元 数 据 集 元 测 试 期 间 的 微 调 ( FT ) 。 Meta-train(MetaTr)设置将源数据集指示为仅Ima-geNet(IN)或完整MetaDataset(MD)。结果是元数据集(Avg)内所有域的平均值,并且只是分布外子集(Out-D)。其余的OOD数据集,总体上没有帮助(平均值和Out-D的M5与M6)。通过微调进行的整体特征骨干更新对元训练期间看不见的域更有帮助,与[42,61]一致。在分析微调的不一致影响时,我们发现这是由于难以选择适当的学习率。像我们上面所做的那样,使用任何单一的学习率(lr=0.01)对于某些数据集来说都是不好的。因此,我们还探索了3.3节中提出的学习率选择启发式算法,我们看到这会带来最佳性能(M4 vsM2)。95908580757065605550图3.元测试中微调对元数据集的影响。像Signs和COCO这样的数据集可以从微调中受益;那些与ImageNet非常不同的数据集也是如此,比如omniglot和QuickDraw。4.2. 标准基准我们称我们的流水线为P>M>F,它可以用任何预训练算法和骨干架构来实例化,例如,DINO > ProtoNet(PN)>微调(FT)。接下来,我们将我们的流水线与现有技术进行比较。我们强调,我们的结果在架构和外部数据使用方面与许多现有SotA没有直接可比我们进行了这种比较,以了解简单的变化(例如利用公开的预训练数据并更新到现代架构)与5年来对FSL算法的单域miniImageNet和CIFAR-FS的结果总结在表4中,表4. miniImageNet CIFAR-与代表性SotA FSL算法的比较。指出了使用外部数据和/或标签的方法而跨域数据集Meta-Dataset和更广泛研究CDFSL的结果显示在表5和6中。从结果中我们可以看到,我们的框架在域内和跨域条件下都优于最先进的技术,尽管比一些复杂的竞争对手要简单得多我们注意到,对于表4中的单源基准测试,一些竞争对手也使用了外部数据或ImageNet预训练。同时,我们的混合管道在Tab6中的CDFSL中优于SotA纯外部自我监督[14,27]。4.3. 讨论综上所述,结果表明,我们利用可用预训练数据的简单管道和现代体系结构在少量学习中往往优于先进的技术水平在元测试阶段使用我们提出的自适应微调机制基于这些观察,我们提出建议,为从业者和少数拍摄学习研究人员。从业者:增加预训练数据大小或简单地使用基础模型[10,15]并升级到现代架构可能比跟上和实现最先进的几次学习算法更有效率(并且更容易实现)如果感兴趣的目标少量任务与预训练和元训练数据不太相似,则微调FSL研究人员:我们的研究结果表明,使用外部数据和现代架构是实现强大FSL性能的一种简单有效的方法,而且一些SotA元学习器未能在此机制中提供预期的改进虽然外部数据违反了FSL问题的定义,即坚持特定的有限元训练集,但我们M1:DINO + PN(IN)M2:DINO + PN(IN)+FT M5:DINO + PN(MD)INet奥姆格洛阿克拉夫幼崽DTDQDraw真菌花签署CocoAvg方法(主干)分机日期分机实验室CIFAR-FSMiniImageNet5w1s5w5s5w1s5w5s感应✓✓ ✓✓✓✓✓ProtoNet(CNN-4-64)[55]49.468.255.572.0基线++(CNN-4-64)[19]48.266.4MetaOpt-SVM(ResNet12)[41]72.084.361.477.9[20]第二十话68.683.7RS-FSL(ResNet12)[2]65.3直推微调(WRN-28-10)[23]76.685.865.778.4(WRN-28-10)[35]80.085.370.079.2PT-MAP(WRN-28-10)[36]87.790.782.988.8CNAPS + FETI(ResNet18)[7]79.991.5自监督ProtoNet(WRN-28-10)[30]73.686.162.979.9ProtoNet(AMDIM ResNet)[16]76.891.0EPNet + SSL(WRN-28-10)[53]79.288.1半监督LST(ResNet12)[44]70.178.7[37]第77.686.170.183.7P> M> F(IN1K,RN50)P> M> F(IN1K,ViT-Small)✓✓✓73.781.184.384.092.592.279.293.195.392.098.098.4MArchPreTrMetaTr金属碲化物平均Out-D1个 ViT-small迪诺PN(IN)PN68.3867.682个 ViT-small迪诺PN(IN)PN+FT(lr=0.01)76.05七十六点五四3个 ViT-small迪诺PN(IN)PN+FT(lr=0.001)74.47七十四点五一90758个域内数据集域外INet奥姆格洛阿克拉夫特CUB DTDQDraw真菌花签署CocoAvg[61]第六十一话67.0144.579.5671.1467.0165.1864.8840.2686.8546.4863.29CNAPs [52](RN18+适配器)50.891.783.773.659.574.750.288.956.539.466.90SUR [26](RN18+适配器)57.293.290.182.373.581.967.988.467.451.375.32T-SCNAP [7](RN 18+适配器)58.893.984.176.869.078.648.891.676.148.772.64URT [45](RN18+适配器)55.794.485.876.371.882.563.588.269.452.273.98[60]第六十话51.893.287.279.268.879.558.191.658.450.071.78URL [43](RN18+适配器)57.5194.5188.5980.5476.1781.9468.7592.1163.3454.0375.75ITA [42](RN18+适配器)57.3594.9689.3381.4276.7482.0167.492.1883.5555.7578.07P> M> F(DINO/IN1K,RN50)67.5185.9180.381.6787.0872.8460.0394.6987.1758.9277.61P> M> F(DINO/IN1K,ViT-small)74.5991.7988.3391.0286.6179.2374.294.1288.8562.5983.13P> M> F(DINO/IN1K,ViT-基)77.0291.7689.7392.9486.9480.278.2895.7989.8664.9784.75In-domain = ImageNet域内域外INet奥姆格洛阿克拉夫特幼崽DTDQDraw真菌花签署CocoAvg[61]第六十一话50.559.9853.168.7966.5648.9639.7185.2747.124156.10ALFA+FP-MAML [5](RN12)52.861.8763.4369.7570.7859.1741.4985.9660.7848.1161.41[54]第五十四话:51.9267.5754.1270.6968.3450.3341.3887.3451.848.0359.15[24]第二十四话62.7682.2179.4980.6375.5772.6851.5895.3482.6559.974.28P> M> F(DINO/IN1K,RN50)67.0875.3375.3972.0886.4266.7950.5394.1486.54
下载后可阅读完整内容,剩余1页未读,立即下载
cpongm
- 粉丝: 5
- 资源: 2万+
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- StarModAPI: StarMade 模组开发的Java API工具包
- PHP疫情上报管理系统开发与数据库实现详解
- 中秋节特献:明月祝福Flash动画素材
- Java GUI界面RPi-kee_Pilot:RPi-kee专用控制工具
- 电脑端APK信息提取工具APK Messenger功能介绍
- 探索矩阵连乘算法在C++中的应用
- Airflow教程:入门到工作流程创建
- MIP在Matlab中实现黑白图像处理的开源解决方案
- 图像切割感知分组框架:Matlab中的PG-framework实现
- 计算机科学中的经典算法与应用场景解析
- MiniZinc 编译器:高效解决离散优化问题
- MATLAB工具用于测量静态接触角的开源代码解析
- Python网络服务器项目合作指南
- 使用Matlab实现基础水族馆鱼类跟踪的代码解析
- vagga:基于Rust的用户空间容器化开发工具
- PPAP: 多语言支持的PHP邮政地址解析器项目
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功