【论文阅读】Learning dynamic alignment via meta-filter for few-shot learning

在这里插入图片描述

通过元滤波器学习动态对齐以实现小样本学习
引用:Xu C, Fu Y, Liu C, et al. Learning dynamic alignment via meta-filter for few-shot learning[C]//Proceedings of the IEEE/CVF conference on computer vision and pattern recognition. 2021: 5182-5191.
论文地址:下载地址
论文代码:https://github.com/chmxu/Dynamic-Meta-filter

Abstract

  小样本学习(Few-shot Learning, FSL)旨在通过极其有限的小样本(支持集)示例,适应已学到的知识来识别新类别,仍然是计算机视觉中的一个重要开放问题。现有的大多数小样本学习中的特征对齐方法仅考虑图像级别或空间级别的对齐,而忽略了通道差异。我们的观点是,这些方法会导致冗余匹配,从而导致适应性差,而利用通道级别的调整是将学到的知识有效适应到新类别的关键。因此,本文提出了一种动态对齐学习方法,可以根据不同的局部支持信息有效地突出查询区域和通道。具体而言,这是通过首先基于输入的小样本动态采样特征位置的邻域来实现的,基于此,我们进一步预测一个既依赖位置又依赖通道的动态元滤波器。该滤波器用于将查询特征与特定位置和特定通道的知识进行对齐。此外,我们采用神经常微分方程(Neural Ordinary Differential Equation, ODE)来实现对齐的更精确控制。从这个意义上讲,我们的模型能够更好地捕捉小样本示例的细粒度语义上下文,从而促进小样本学习的动态知识适应。最终,该框架在主要的小样本视觉识别基准测试(包括miniImageNet和tieredImageNet)上建立了新的最先进成果。

1. Introduction

  深度学习模型在许多计算机视觉任务中表现出色,例如图像识别 1 2 3 和目标检测 4 5。然而,它们高度依赖大量标注的训练数据,并且难以将学到的知识转移到未见过的类别。例如,一个在MSCOCO 6 上训练了80个类别的目标检测器,可能无法检测到新的“鼠标”类别。这严重限制了它们在现实世界中对长尾类别开放式学习的扩展性。相比之下,学习来自极为有限(例如,只有一个或少量)示例的能力是人类的重要特征。例如,孩子们仅通过看一眼图片或听到“像鹿但有长脖子”的描述,就能够毫不费力地形成“长颈鹿”这一概念。

  基于以上观察,近年来,关于小样本学习(Few-shot Learning, FSL)的研究兴趣重新兴起 7 8 9 10 11。FSL旨在通过极其有限的小样本(支持集)示例,适应学到的知识来识别新类别。最简单的基线方法是通过深度卷积神经网络学习一个判别性的特征表示,然后将查询特征与最近的支持特征进行比对,并赋予其类别标签。作为替代方案,提出了可学习度量的方法,如RelationNet 11,其中一个由多个神经网络层组成的二分类器用于计算两张图像之间的相似度。在这样的框架中,分类时并没有针对特定查询图像和不同支持图像进行更有价值的信息探索,这导致了较差的泛化能力。尽管近期有一些研究致力于FSL中的特征对齐,例如CAN 12 和FEAT 13,这些方法通过聚合支持知识来规范查询样本的对齐函数,但我们认为这些方法主要存在以下几个缺点:

  (1) 粗糙性。由于小样本学习中的知识有限,每个通道在将支持特征与查询特征进行比较时都会对预测产生贡献。此外,由于提取的特征空间分辨率较低,空间位置之间的信息差异远小于每个查询特征中通道之间的信息差异。然而,像CAN和FEAT这样的算法并未关注通道级别的信息。例如,如图 1 所示,当空间特定对齐能为目标物体中的红色框设置较大的权重时,这个较大的权重会同时分配给学习良好的通道和学习不充分的通道。这会导致在对齐后的整体特征中,该区域的信号较弱。相反,通道特定对齐依赖于每个通道的质量,从而能够对通道 2 设置较低的权重,进而得到更好的整体特征。

在这里插入图片描述
图 1.虽然基于位置的对齐无法消除学习不好的通道的负面影响,但基于通道的对齐可以。CAN 指的是跨注意力网络 12,它是少样本学习(FSL)中的一种基于位置的对齐模型。

  (2) 冗余匹配。在支持知识中存在大量冗余。例如,当分类一个包含目标物体的位置时,如果有几个区域也包含该物体,那么仅与其中一个区域进行比较就足够了。然而,现有方法在对齐每个查询位置时会利用整个支持特征,这效率较低。

  (3) 不灵活的对齐。这些方法中的对齐策略只针对所有任务运行一次。因此,对于那些较为困难的任务,现有的对齐可能不足以将支持知识适当地嵌入到查询特征中。

  因此,为了解决这些问题,本文提出了一种新颖的动态特征对齐策略。具体来说,我们采用动态滤波器 14 15 来解决这个问题。我们首先基于每个位置的小邻域预测一个动态元滤波器,该滤波器具有位置特定和通道特定的滤波器权重。这个滤波器可以包含足够的信息,告知模型需要突出显示的重要区域和通道。因此,应用该滤波器对查询特征进行对齐,将产生更有效的表示,进而有利于识别。同时,使用邻域而不是直接使用整个支持特征,减少了知识源的数量和冗余。

  为了解决固定邻域带来的问题,我们采用了一种动态采样策略,使得所有特征位置可以通过学习一个偏移量(该偏移量由输入的小样本对来决定)来进行选择。直观地说,这种学习到的采样方式使网络能够更好地捕捉小样本示例的基于位置的语义上下文。

  为了进一步使对齐更加适应更困难的任务,一种直接的方式是通过重复对齐的过程,递归地将支持知识应用到查询特征中。然而,通过固定超参数来控制对齐的程度对于不同的任务来说是困难的。因此,我们将递归对齐的直觉方法修改为自适应的方式,使用神经常微分方程(Neural ODE),使残差对齐过程连续进行,并采取自适应的步长来获得对应常微分方程的最终解。

  在获得对齐后的查询特征后,我们利用一个元分类器来获得最终预测,其中支持知识通过不可学习的操作进行聚合,形成一个分类器,这可以避免学习型分类器完全依赖于元训练集并且不能很好地适应新类别数据的问题。

  本文的贡献如下:

  1. 我们提出了学习一种新颖的动态元滤波器,以实现小样本学习中更有效和高效的特征对齐。
  2. 我们引入了动态采样和分组策略,进一步提升了基本动态元滤波器的灵活性和效率。
  3. 神经常微分方程(Neural ODE)首次被应用于帮助模型获得更好的小样本学习表示。

2. Related work

  少样本识别。少样本学习(FSL)是一个日益热门的研究课题,旨在通过一组数据(基础类)学习模式,并通过有限的训练数据适应一个不重叠的类别集(新类别)。少样本图像分类是其中最受关注和研究的方向。解决这个问题主要有两种方法。一种是基于优化的方法 16 17 18 19 20,该方法首先使用基础类数据训练网络,然后使用来自未见类别的支持数据对分类器或整个网络进行微调。

  另一方面,基于度量的方法旨在通过对图像提取特征应用现有的或学习到的度量来解决少样本学习问题。MatchingNet 9 采用内存模块来合并每个任务中的信息,并使用余弦距离作为度量来分类未见数据。ProtoNet 10 提出了原型作为每个类别的简单表示,并采用欧几里得距离作为度量。RelationNet 11 使用网络学习输入少样本对之间的关系,该关系被视为相似度。基于RelationNet的CAN 12 学习了一个注意力模块,以突出正确的兴趣区域,从而帮助更好的分类。我们模型与现有基于度量的方法的主要区别在于,我们提出了动态采样局部上下文,并基于此学习位置和通道依赖的关系,这是之前从未探索过的。

  动态采样。以恰当的方式采样局部上下文已经在文献中研究了很长时间。在深度学习崛起之前,SIFT 21 和 DPM 22 尝试构造良好的自适应核。在深度学习时代,卷积核以统一的方式采样对应位置的邻域。例如,对于3 × 3的卷积核,采样了统一的9邻域。尽管这一策略为卷积神经网络(CNNs)的成功铺平了道路,但在捕捉基于位置的语义上下文时仍然存在局限。我们的方法与可变形卷积 23 相关,其中,采用的是为每个位置学习特定区域,而不是统一的采样。我们模型与现有模型的一个根本区别在于,它们仅学习依赖于输入特征的偏移量,而滤波器权重对所有输入都是固定的。相比之下,我们的模型学习偏移量来采样特征位置的邻域。然后,根据采样的邻域预测位置和通道依赖的滤波器。直观地讲,这种学习的采样方法使得网络能够更好地捕捉少样本示例的基于位置的语义上下文。

  输入依赖权重。输入依赖权重的基本思想是通过另一个可学习模块来控制模型权重,而不是直接优化权重。 14 提出了“动态卷积”的思想,即为每个特征位置预测一个动态卷积滤波器。HyperNet 24 构建了一个附加模块,为RNN生成输入依赖的权重。25 首先将这一思想引入到FSL中。8 提出了在测试阶段基于预训练的分类器权重和输入信息生成最终分类器权重。26 在测试阶段将几个新滤波器插入到顶部层,同时冻结模型的其他部分。新增的权重使用支持数据进行微调。27 旨在通过附加的子网络将激活和分类器权重联系起来。与上述生成输入依赖或类别依赖权重的工作不同,我们关注的是查询图像中不同位置和通道之间的局部信息和差异。我们的模型能够生成位置和通道特定的滤波器权重,特别有利于我们建模每个特征位置的目标类别上下文,从而带来更有效的少样本分类。

  神经常微分方程。神经常微分方程(Neural ODE)由Chen等人于28中提出,它将残差网络的前向传播视为常微分方程(ODE)的离散形式。在这种情况下,神经网络可以被修改为神经常微分方程,其中引入了一个时间变量来控制输出。有一系列的研究致力于更高效和更鲁棒的神经常微分方程 29 30 31,另外还有一系列研究将神经常微分方程应用于其他任务。例如,ODE2VAE 32 使用神经常微分方程建模高维数据的轨迹,Vid-ODE 33 在视频生成中应用了神经常微分方程。本文首次将神经常微分方程引入到少样本学习中,以帮助学习支持特征和查询特征之间的动态对齐。

3. Problem formulation

  FSL中的数据划分假设不同于常规的监督学习。假设我们有两组数据,元训练集 D s = { ( I i , y i ) , y i ∈ C s } D_s = \{(I_i, y_i) , y_i \in C_s\} Ds={(Ii,yi),yiCs} 和元测试集 D t = { ( I i , y i ) , y i ∈ C t } D_t = \{(I_i, y_i) , y_i \in C_t\} Dt={(Ii,yi),yiCt},分别表示基础类别数据集和新类别数据集。 C s C_s Cs C t C_t Ct 分别表示基础类别集和新类别集( C s ∩ C t = ∅ C_s \cap C_t = \emptyset CsCt=)。FSL的目标是在 D s D_s Ds 上训练一个模型,使其能够很好地泛化到 D t D_t Dt。根据常用的设置,我们可以访问来自 C t C_t Ct 每个类别的少量(例如一个或五个)标记数据。这些标签提供了我们可以用来将从基础类别学到的知识迁移到新类别的监督信息。

  我们遵循之前的方法 10 11 采用 N N N-way K K K-shot 元学习策略。在这里, N N N 表示一个任务中类别的数量, K K K 表示每个类别在支持集中的样本数量。具体来说,我们从 C s C_s Cs 中抽取 N N N 个类别进行训练,从 C t C_t Ct 中抽取 N N N 个类别进行测试,为这些选择的类别各自构造 K K K 个样本,形成支持集 S = { ( I supp i , y supp i ) } S = \{(I_{\text{supp}i}, y_{\text{supp}i})\} S={(Isuppi,ysuppi)}。同样,我们从这 N N N 个类别中抽取 Q Q Q 个数据作为查询集 Q = { ( I q i , y q i ) } Q = \{(I_{q}i, y_{q}i)\} Q={(Iqi,yqi)},且 S ∩ Q = ∅ S \cap Q = \emptyset SQ=

4. Dynamic Alignment Network

  我们的模型如图 2 所示,使用了四个子模块:特征提取器 f emb f_{\text{emb}} femb、动态对齐模块 f d f_{\text{d}} fd、元分类器 f mc f_{\text{mc}} fmc 和全局分类器 f gc f_{\text{gc}} fgc。给定每一对支持图像和查询图像( I supp , I q I_{\text{supp}}, I_q Isupp,Iq),我们首先使用 f emb f_{\text{emb}} femb 提取特征图 X supp = f emb ( I supp ) , X q = f emb ( I q ) X_{\text{supp}} = f_{\text{emb}}(I_{\text{supp}}), X_q = f_{\text{emb}}(I_q) Xsupp=femb(Isupp),Xq=femb(Iq)。每个特征图的大小为 c × h × w c \times h \times w c×h×w,其中 c , h , w c, h, w c,h,w 分别表示通道数、高度和宽度。每个类别的特征可以表示为该类别所有支持特征图的平均值。为简化起见,我们仍然使用 X supp X_{\text{supp}} Xsupp 来表示每个类别的特征图。接下来,动态对齐模块 f d f_{\text{d}} fd,由动态元滤波器和自适应对齐组成,用来将查询特征与位置和通道特定的支持知识进行对齐。最后,元分类器 f mc f_{\text{mc}} fmc 提供调整后的查询特征与相应支持特征之间相似度的置信度分数。同时,全局分类器 f gc f_{\text{gc}} fgc 也被应用于查询特征,以获得真实类别的预测。这些模块都通过少样本分类损失和全局分类损失进行训练。在接下来的章节中,我们首先通过在第 4.1 节中解释简单的对齐模型来描述我们的动态元滤波器,然后在第 4.2 节中从多个角度提出并改进我们的动态元滤波器。接着,我们通过介绍元分类器(第 4.3 节)和一些实现细节(第 4.4 节)来完善整个框架。

在这里插入图片描述图 2. 我们提出的 1-shot 任务模型的示意图。支持特征和查询特征通过骨干网络 f emb f_{\text{emb}} femb 提取。然后,利用这两个特征预测一个偏移图,使用局部知识,该偏移图用于动态采样支持特征,从而为每个查询位置收集有用的信息,以生成动态元滤波器。该滤波器用于对齐查询特征,最终通过元分类器进行分类。GAP 表示全局平均池化(global average pooling)。

4.1. 简单特征对齐

  在提取支持特征和查询特征后,之前的研究表明,基于支持知识对查询特征进行对齐或变换有助于模型过滤出对分类最有帮助的特征部分,从而提高性能。一个简单的对齐可以写成以下形式:

X ^ q = g ( X q , A ( X q , X ) ) \hat{X}_q = g(X_q, A(X_q, X)) X^q=g(Xq,A(Xq,X))

其中 g g g 是对齐操作, A A A 是对齐基础, X X X 是生成 A A A 的知识源。对于 CAN 12 g g g 是乘法, X X X 是单一支持特征,而 A A A 是两个特征图之间的交叉注意力。对于 FEAT 13 g g g 是加法, X X X 是整个支持集,而 A A A 是通过自注意力模块对 X X X 的加权平均。

  这两种方法的共同点有两个方面:

  1. 都忽略了通道级别的对齐。CAN 聚焦于空间级注意力,而 FEAT 使用实例级注意力。
  2. 使用了所有可用的支持知识。

  这两个特点导致了包括粗糙性、冗余匹配和不灵活对齐等问题,正如第 1 节所讨论的。为此,我们提出了一种新的对齐框架,形式为动态元滤波器(DMF)。

4.2. 自适应对齐的动态元滤波器

  具体来说,给定支持和查询特征对 { X supp , X q } \{X_{\text{supp}}, X_q\} {Xsupp,Xq},我们不是直接从支持特征生成滤波器,而是首先应用一个卷积层 f ψ f_{\psi} fψ,该层由参数 ψ \psi ψ 控制,卷积核大小为 3,作用于支持特征 X supp X_{\text{supp}} Xsupp,输出一个张量 ψ ( X supp ) ∈ R ( c × k × k ) × h × w \psi(X_{\text{supp}}) \in \mathbb{R}^{(c \times k \times k) \times h \times w} ψ(Xsupp)R(c×k×k)×h×w,其中 (k) 表示 DMF 的卷积核大小。然后,对于每个位置 ( i , j ) (i, j) (i,j),我们可以得到一个大小为 c × k × k c \times k \times k c×k×k 的张量:

f d ( i , j ) = σ ( ψ ∗ B 3 ( X supp [ : , i , j ] ) ) f_d(i, j) = \sigma(\psi \ast B_3(X_{\text{supp}}[:, i, j])) fd(i,j)=σ(ψB3(Xsupp[:,i,j]))

其中 B 3 B_3 B3 表示宽度为 3 的邻域, ∗ \ast 表示卷积, σ \sigma σ是用于控制尺度的 Sigmoid 函数。这个 f d ( i , j ) f_d(i, j) fd(i,j) 可以看作是具有卷积核大小 k k k c c c 个卷积滤波器。将 f d ( i , j ) f_d(i, j) fd(i,j) 卷积到 X q X_q Xq 的对应位置,并使用 c c c 组特征,可以得到一个精细化的查询特征 X ^ q ∈ R c × h × w \hat{X}_q \in \mathbb{R}^{c \times h \times w} X^qRc×h×w,其中:

X ^ q [ : , i , j ] = X q [ : , i , j ] + f d ( i , j ) ∗ c B k ( X q [ : , i , j ] ) \hat{X}_q[:, i, j] = X_q[:, i, j] + f_d(i, j) \ast_c B_k(X_q[:, i, j]) X^q[:,i,j]=Xq[:,i,j]+fd(i,j)cBk(Xq[:,i,j])

其中 ∗ c \ast_c c 表示使用 c c c 组进行卷积。通过这种方式,每个通道都被 DMF 计算出的权重进行重新缩放,查询特征因此根据从支持特征中收集的信息,以位置变化和通道变化的方式对齐。同时,每个查询位置的支持信息来源被直接从整个特征图减少到一个小网格。

  上述描述的动态元滤波器既高效又能够处理细粒度的支持知识,但也存在明显的缺点:

  1. 用于生成 DMF 的卷积核只能具有固定的核大小,这限制了感受野,增加了未能收集有用支持信息的概率。
  2. 如果特征图的维度较大,DMF 会非常大且耗时。
  3. 尽管存在动态滤波器,但对齐是固定的,因此缺乏灵活性。

  因此,我们进一步提出了三项改进措施来解决这些问题。

4.2.1. 动态采样

  为了让模型能够更加灵活地提取任何需要的特征,我们采用了一种动态采样策略。具体来说,卷积区域 f ψ f_{\psi} fψ 中的固定区域被替换为可学习的区域。基于输入的支持和查询特征对,使用卷积层 f η f_{\eta} fη(卷积核大小为 5)预测每个特征位置的邻域图 M ∈ R 9 × h × w M \in \mathbb{R}^{9 \times h \times w} MR9×h×w

M = f η ( X supp ∥ X q ) M = f_{\eta}(X_{\text{supp}} \parallel X_q) M=fη(XsuppXq)

其中, ∥ \parallel 表示连接操作。邻域图 M : , i , j ∈ R 9 M_{:,i,j} \in \mathbb{R}^9 M:,i,jR9 的每一行表示包含生成位置 ( i , j ) (i, j) (i,j) 滤波器所需信息的区域。接下来,使用这个图动态采样 X supp X_{\text{supp}} Xsupp 中的知识,为每个位置生成 DMF:

B ~ 3 ( X supp [ : , i , j ] ) = Sample ( X supp [ : , i , j ] , M : , i , j ) \tilde{B}_3(X_{\text{supp}}[:, i, j]) = \text{Sample}(X_{\text{supp}}[:, i, j], M_{:, i, j}) B~3(Xsupp[:,i,j])=Sample(Xsupp[:,i,j],M:,i,j)

f d ( i , j ) = σ ( ψ ∗ B ~ 3 ( X supp [ : , i , j ] ) ) f_d(i, j) = \sigma(\psi \ast \tilde{B}_3(X_{\text{supp}}[:, i, j])) fd(i,j)=σ(ψB~3(Xsupp[:,i,j]))

  通过动态采样,我们可以增加探索有用位置的概率,同时保持源知识的低容量。在实现动态采样的多种方式中,我们模仿了可变形卷积(DeformConv)23,其中邻域图以水平和垂直偏移的形式实现 M ∈ R 18 × h × w M \in \mathbb{R}^{18 \times h \times w} MR18×h×w,并基于每个位置的偏移进行采样。需要注意的是,34 也在少样本学习中采用了 DeformConv。然而,他们直接对支持和查询特征应用 DeformConv,并将它们映射到另一个潜在空间,然后用于测量相关性。在他们的方法中,支持和查询数据之间没有信息交互。相比之下,我们模型中的动态采样是基于支持和查询知识共同预测的,并用于生成一个动态的位置和通道依赖的元滤波器,之后用来将来自支持图像的知识嵌入查询特征中。

4.2.2. 分组策略

  为了减少由于滤波器数量过多带来的计算成本,我们做了一个简单的假设:在特征图中,一些通道组之间共享相似的信息。基于这一点,我们借鉴了现有的分组卷积方法 35,将这些通道聚集在一起,共享一个滤波器。具体来说,我们将查询特征图均匀分割为 g g g 组。然后,元滤波器生成器 f ψ f_{\psi} fψ 的输出通道由 c × k × k c \times k \times k c×k×k 修改为 g × k × k g \times k \times k g×k×k。由于进行分组,模型每个位置只需要生成一个 g g g-通道滤波器,从而更加轻量化。值得注意的是,当 g = 1 g = 1 g=1 时,我们的 DMF 与 CAN 和 FEAT 方法相同,其中每个位置的所有通道都用相同的权重处理。我们的实验表明,较大的 g g g 比较小的 g g g 更强大,这证明了我们方法的优势。

4.2.3. 自适应对齐

  解决更困难任务的最直接方法是通过递归对齐过程来获得更精细的特征,正如在36中所提到的,通过对图像特征反复使用学习到的空间变换。通过这种方式,查询特征可以表示为:

X q t + 1 = X q t + F ( X q t , f d ) , t = 0 , ⋯ , T − 1 X_q^{t+1} = X_q^t + F(X_q^t, f_d), \quad t = 0, \cdots, T - 1 Xqt+1=Xqt+F(Xqt,fd),t=0,,T1

X ^ q = X q T \hat{X}_q = X_q^T X^q=XqT

其中, F F F 是动态卷积。这样的方法提出了另一个问题——调整递归深度 T T T的超参数。在36中,作者尝试了该超参数在一个数据集上的几个选择。然而,对于不同的任务,深度变量应该根据任务的复杂度来变化。因此,对于少样本学习(FSL),在包含各种类别的任务中使用固定的递归深度是不合适的。

  作为一种替代方案,我们参考了神经常微分方程(Neural ODE)28。通过逐渐减少时间步长 t t t,递归残差方程式(公式8)可以从欧拉离散化形式转化为常微分方程(ODE):

d X q ( t ) d t = F ( X q ( t ) , t ) \frac{dX_q(t)}{dt} = F(X_q(t), t) dtdXq(t)=F(Xq(t),t)

  然后, X ^ q \hat{X}_q X^q 被设定为公式9的解,给定初始条件 X q X_q Xq。这种形式有两个优点。首先,使用现代ODE求解器,如Dormand-Prince方法,比欧拉方法能获得更准确的解。其次,通过采用自适应步长,递归深度变得数据依赖,因此摆脱了超参数 T T T

4.3. Meta classifier

  在我们获得动态对齐的查询特征 X ^ q \hat{X}_q X^q后,我们遵循CAN12的方法,通过一种简单的方式来构建分类器,该分类器不需要任何可学习的参数。具体来说,我们通过全局平均池化将 X supp X_{\text{supp}} Xsupp聚合为 X ˉ supp ∈ R c × 1 × 1 \bar{X}_{\text{supp}} \in \mathbb{R}^{c \times 1 \times 1} XˉsuppRc×1×1,它包含了 I supp I_{\text{supp}} Isupp的全局信息。然后,我们将其作为卷积滤波器的权重,命名为元分类器(MC) f mc f_{\text{mc}} fmc,其中 c c c是通道数, 1 × 1 1 \times 1 1×1为卷积核大小。将这个滤波器应用到查询特征上,得到一个张量 X ~ q ∈ R 1 × h × w \tilde{X}_q \in \mathbb{R}^{1 \times h \times w} X~qR1×h×w。通过这个计算,我们直接在每个相应通道上比较全局支持特征与局部查询特征。因此,如果 I q I_q Iq I supp I_{\text{supp}} Isupp属于同一类别,那么 X ~ q \tilde{X}_q X~q在大多数位置的值应该较高。

4.4. Implementation details

4.4.1. Objective function

  我们的损失函数与CAN中的定义相同。对于每一对输入少样本配对,包含所有输入和输出 { X supp , y supp , X q , y q , X ^ q , X ~ q } \{X_{\text{supp}}, y_{\text{supp}}, X_q, y_q, \hat{X}_q, \tilde{X}_q \} {Xsupp,ysupp,Xq,yq,X^q,X~q},令 X X X f mc f_{\text{mc}} fmc I q I_q Iq和所有支持特征之间的结果集合,则目标函数可以写作:

L = ℓ f + 1 2 ℓ g (10) L = \ell_f + \frac{1}{2} \ell_g \tag{10} L=f+21g(10)

其中,

ℓ g = − ( log ⁡ softmax ( f g c ( X ^ q ) ) ) T y q (11) \ell_g = -\left(\log \, \text{softmax}(f_{gc}(\hat{X}_q))\right)^T y_q \tag{11} g=(logsoftmax(fgc(X^q)))Tyq(11)

ℓ f = 1 h w ∑ s , t log ⁡ e − X ~ q s , t ∑ X ~ ∈ X e − X ~ s , t ⋅ I y q = y supp (12) \ell_f = \frac{1}{hw} \sum_{s,t} \log \frac{e^{-\tilde{X}_{q_{s,t}}}}{\sum_{\tilde{X} \in X} e^{-\tilde{X}_{s,t}}} \cdot \mathbb{I}_{y_q = y_{\text{supp}}} \tag{12} f=hw1s,tlogX~XeX~s,teX~qs,tIyq=ysupp(12)

其中, ℓ f \ell_f f用于少样本N类分类,而 ℓ g \ell_g g用于全局多样本 ∣ C s ∣ |C_s| Cs类分类(例如,miniImageNet中为64类)。

4.4.2. Network Structure

  我们使用与13中相同的ResNet12来提取图像特征。为了扩大我们DMF方法对位置特定特征的利用,我们去除了主干网络的最后一个池化层,从而使得输出特征图的空间大小增加到 11 × 11 11 \times 11 11×11。注意,这里没有引入额外的参数或计算能力。我们的DMF与查询特征之间的卷积操作是通过首先沿空间维度展开查询特征,并计算展开后的特征与DMF之间的点积来实现的。整个操作具有很高的效率,具体内容将在补充材料中展示。

5. Experiments

5.1. Datasets and setting

数据集

  我们的实验是在两个数据集上进行的。miniImageNet数据集9包含100个类别,每个类别有600张图像,是ImageNet的一个小子集。我们遵循16中的划分,其中64个类别用于训练,16个类别用于验证,20个类别用于测试。tieredImageNet数据集37是ILSVRC-12数据集的一个更大的子集。它包含34个类别,总共有779,165张图像。这些类别进一步被划分为608个类,其中351个类用于训练,97个类用于验证,160个类用于测试。miniImageNet中的图像大小为84 × 84,tieredImageNet中的图像大小为224 × 224。在训练和测试之前,tieredImageNet中的图像被调整为84 × 84。

实验设置

  我们在实验中将组数 g g g设置为64用于1-shot任务,分别为miniImageNet上的5-shot任务设置160,以及tieredImageNet上的5-shot任务设置为320。对于所有任务,卷积核大小 k k k都设置为1。我们使用带有 5 e − 4 5e^{-4} 5e4权重衰减的随机梯度下降(SGD)38来优化我们的模型。对于miniImageNet,初始学习率设置为0.35,而tieredImageNet的初始学习率为0.05。采用了余弦学习率衰减39与SGD结合使用。在训练过程中,我们采用了随机裁剪、水平翻转、颜色抖动和随机擦除40等数据增强方法,这些与CAN 12中使用的一致。我们对所有实验从元测试集抽取2000个小批次进行测试。

评估基准

  我们报告了5-way 1-shot和5-way 5-shot设置下的准确度和95%的置信区间(CI),以与现有方法进行比较。对于消融实验,仅报告准确度。

竞争方法

  为了展示我们模型的有效性,我们与几个之前的方法进行了比较,例如原型网络(Prototypical Network)10、关系网络(RelationNet)11、MetaOptNet41、交叉注意力网络(Cross Attention Network, CAN)12等。这些模型是我们选择的比较对象,因为它们是最好的少样本学习模型之一,并且原始论文中也报道了在相同设置下的结果。

5.2. Comparison with state-of-the-art

结果与对比

  我们在表1中与竞争方法进行了对比,展示了两个数据集上5-way 1-shot和5-way 5-shot任务的准确率及其95%置信区间(CI)。请注意,这些模型使用了不同的骨干网络结构。

miniImageNet 结果

  如表1所示,在miniImageNet上,所有使用Conv4骨干网络的模型均逊色于我们的模型,这部分是由于骨干网络容量较低所导致的。在与使用相同骨干网络的模型对比时,我们模型的1-shot准确率仍然比最好的模型(FEAT,66.78%)高出0.98%。当与使用具有比ResNet12更大容量的WRN-28-10的模型进行比较时,我们的模型仍然表现出色。在5-shot任务上,我们的模型比使用ResNet12骨干的最强竞争对手DeepEMD高出0.30%,并且比使用WRN骨干的最佳5-shot模型Robust dist++高出1.54%。这反映出我们模型在处理极其有限数据时优于大多数竞争对手,同时我们的模型设计得很好,能够从有限的图像中提取出正确的共性特征。

  此外,值得注意的是,我们的模型相对于骨干网络增加的额外参数仅为两层卷积层,由于采用了组策略,这些额外的参数非常轻量化。相比之下,大多数竞争对手,如TADAM和E3BM,参数量要多得多。同时,一些最先进的方法,如FEAT和DeepEMD,采用了预训练来获得骨干网络在元训练阶段的良好初始化,从而确保它们提出的用于少样本识别的模块能够得到良好的训练。与这些方法相比,我们提出的动态元滤波器(Dynamic Meta-filter)不依赖于初始化,因此是免预训练的。通过这种方式,我们的模型可以通过全局分类损失和少样本分类损失的组合进行训练,从而比这些竞争对手更快。

tieredImageNet 结果

  表1中的结果表明,在tieredImageNet数据集上,我们在1-shot分类上比最强竞争对手高出0.69%的准确率,这也验证了上述结论。在5-shot任务上,我们的模型比DeepEMD低0.07%。一个可能的原因是,tieredImageNet是一个更大的数据集,包含更多的基本类别,因此骨干网络本身可以在每个新类别提供5个支持样本的情况下学习到良好的表示。此外,DeepEMD在分类器的复杂性上使用了二次规划(Quadratic Programming),因此虽然它获得了稍微更好的结果,但其训练和推理时间却是非常庞大的。相比之下,我们的框架更加简洁。

ModelBackboneminiImageNet
1-shot
miniImageNet
5-shot
tieredImageNet
1-shot
tieredImageNet
5-shot
ProtoNet 10
MatchingNet 9
RelationNet 11
MAML 17
Dynamic Few-shot 8
Conv449.42±0.78
43.56±0.84
50.44±0.82
48.70±1.75
56.20±0.86
68.20±0.72
55.31±0.73
65.32±0.70
63.11±0.92
72.81±0.62
53.31±0.89

54.48±0.93

72.69±0.74

71.32±0.78

LEO 42
PPA 27
Robust dist++ 43
wDAE 44
CC+rot 45
FEAT 13
WRN-2861.76±0.08
59.60±0.41
63.28±0.62
61.07±0.15
62.93±0.45
65.10±0.20
77.59±0.12
73.74±0.19
81.17±0.43
76.75±0.11
79.87±0.33
81.11±0.14
66.33±0.05


68.18±0.16
70.53±0.51
70.41±0.23
81.44±0.09


83.09±0.12
84.98±0.36
84.38±0.16
TapNet 46
SNAIL 47
MetaOptNet 41
TADAM 48
DC 26
VFSL 49
CAN 12
FEAT 13
DeepEMD 50
E³BM 51
DSN-MR 52
Net-Cosine 53
Res-1261.65±0.15
55.71±0.99
62.64±0.61
58.50±0.30
62.53±0.19
62.53±0.26
63.85±0.45
66.78±0.20
65.91±0.82
63.80±0.46
64.60±0.72
63.85±0.56
76.36±0.10
68.88±0.92
78.63±0.46
76.70±0.30
78.95±0.13
77.69±0.17
82.05±0.14
81.11±0.14
82.41±0.56
80.55±0.89
79.51±0.56
81.57±0.56


65.99±0.72



69.89±0.51
70.41±0.23
71.16±0.87
67.39±0.82



81.56±0.53



84.23±0.37
84.38±0.16
86.03±0.53
82.85±0.56

OursRes-1267.76±0.4682.71±0.3171.89±0.5285.96±0.35

表1。miniimagenet和tieredimagenet上95%置信区间的5路少镜头精度。

5.3. Model analysis

  为了进一步验证我们方法的有效性,我们在miniImageNet数据集上进行了系列消融实验。我们首先展示了我们方法推导的一些实验结果,然后展示了一些关于超参数的其他结果。实验结果如表2所示。

在这里插入图片描述
表 2. 在miniImageNet 5-way任务上的消融实验。我们展示了1-shot (K=1)和5-shot (K=5)的结果。
(a) 动态采样:完整模型与不使用动态采样的模型进行比较。
(b) 池化层:我们比较了在Res-12骨干网络中使用和不使用最后池化层训练的模型。
© 分组:我们比较了动态卷积中不同的组数。
(d) 模型实例化:我们尝试了基于我们方法的不同结构,包括不使用对齐的模型、固定对齐次数的模型和使用ODE对齐的模型。

5.3.1. 动态采样的有效性

  我们测试了带有动态采样和不带动态采样的模型。根据表2中的定量结果,使用动态采样的模型在1-shot任务上比不使用动态采样的模型提高了1.03%,在5-shot任务上提高了1.50%。这表明,当直接使用每个位置的邻域来生成DMF时,模型只能获得不足的有用知识,导致性能较差,这验证了该模块的有效性。

  此外,我们展示了在一些支持和查询图像对区域上学到的采样策略(如图3所示)。这反映了在给定特定查询图像的情况下,动态采样能够成功地学习如何收集知识,从而为每个区域生成更有用的滤波器。
在这里插入图片描述
图 3. 学习到的动态采样策略的可视化。红点表示支持图像中用于预测相应查询特征位置(绿点)滤波器权重的采样位置。通过动态采样,我们的模型能够利用真正有用的位置来生成动态元滤波器(DMF)。

5.3.2. 我们是否需要删除池化层?

  我们的方法与常用的ResNet12的唯一区别在于删除了最后的池化层,如前所述。表2(b)展示了保留该层时的结果。删除池化层带来了1-shot任务上0.64%的提升,5-shot任务上1.16%的提升。原因之一是,当得分图(score map)更大时,我们可以为损失函数ℓf分配更密集的真实标签。此外,去除池化层可以避免信息丢失,从而有助于学习更好的元滤波器。

5.3.3. 分组卷积的有效性

  我们的模型通过不同数量的组进行变化,如表2©所示。结果表明,随着组数的减少,DMF与查询图像上相应区域的计算变得更简单。当组数为1时,该计算从两个向量之间的点积退化为标量与向量之间的逐元素乘法,这与FEAT和CAN中的计算相同。这严重影响了信息的表达能力,导致最差的性能。另一方面,增加组数带来的收益在不同任务中会饱和,在1-shot任务中为64,在5-shot任务中为160,更多的组会导致更多的计算消耗,但性能下降。这表明我们在第4.2节中的假设,即通道之间共享信息,是成立的。由于在1-shot任务中,支持信息仅来自一张图像,信息量较少,因此64个滤波器足以处理1-shot任务,而在5-shot任务中,需要增加滤波器的数量至160,以应对更多的信息。

5.3.4. 模型实例化

  我们比较了四种不同的模型实例化方法,具体如下:

  1. 0 align:整个模型未使用DMF,支持和查询特征直接传递给元分类器。
  2. 1/2 align:DMF使用固定数量的递归。
  3. ODE align:神经ODE代替递归对齐,这是我们的最终模型。

  表2(d)中的结果表明,使用一次对齐可以使没有对齐的模型在1-shot任务上提高1.28%,在5-shot任务上提高0.77%,这验证了使用动态元滤波器进行特征对齐的动机。此外,有趣的是,虽然使用更多的对齐次数可以略微提高1-shot任务的性能,但5-shot任务的准确性大幅下降,在1次对齐和3次对齐的模型之间存在0.95%的差距。这一现象反映了固定数量递归对齐在处理不同任务时的局限性。相比之下,使用ODE对齐可以在1-shot和5-shot任务上都提升性能。

  类似的结果在图4中也有体现,我们展示了三个支持和查询图像对以及从上述模型实例化方法中得到的对应查询特征图,与CAN模型进行对比。我们发现:

  1. 使用我们的动态对齐,结果通常比没有对齐和CAN生成的结果更好。我们的DMF能够集中注意力在目标物体上,证明了我们方法的有效性。
  2. 使用一个或两个对齐的模型只能处理不同的数据。虽然这两种模型可以正确对齐第一行的图像,但使用两个对齐的模型在第二行的表示能力更强,而在第三行则相反。相比之下,ODE对齐能够在所有情况下正确地突出显示查询特征,这证明了我们对自适应对齐的需求。
    在这里插入图片描述
    图 4. 在miniImageNet数据集上的5-way 1-shot任务中,不同方法对齐后的查询特征图对比。

5.4. Further Discussion

  我们提出的动态元滤波器在多个少样本学习数据集上与自适应对齐结合时表现良好。然而,不可忽视的是,在某些极端情况下,我们的方法可能会受到削弱。例如,当目标物体出现在支持图像和查询图像的非常不同的位置时,比如在左上角和右下角,它将使我们的模型很难学习到这种对齐。尽管这种情况过于极端,不会对性能造成显著影响,但为此找到一种解决方案将是未来的潜在研究方向。

6. Conclusion

  我们提出了一种新的类别识别网络,用于少样本学习,并通过从少样本输入中生成的动态元滤波器来实现该目标。我们动态地为每个特征位置从少样本输入中采样一个相关邻域,并基于采样的邻域进一步预测特定位置和通道的滤波器权重,以促进新类别的识别。这种方法能够更好地捕捉少样本示例的基于位置的语义上下文,从而实现更好的动态知识适应性。通过在miniImageNet和tieredImageNet等主要基准测试中创下新的最先进记录,证明了这一点。


  1. Kaiming He, Xiangyu Zhang, Shaoqing Ren, and Jian Sun. Deep residual learning for image recognition. In IEEE Conference on Computer Vision and Pattern Recognition (CVPR), 2016. ↩︎

  2. Karen Simonyan and Andrew Zisserman. Very deep convolutional networks for large-scale image recognition. arXiv preprint arXiv:1409.1556, 2014. ↩︎

  3. Alex Krizhevsky, Ilya Sutskever, and Geoffrey E. Hinton. ImageNet classification with deep convolutional neural networks. In Advances in Neural Information Processing Systems, 2012. ↩︎

  4. Kaiming He, Georgia Gkioxari, Piotr Dollár, and Ross Girshick. Mask R-CNN. In International Conference on Computer Vision (ICCV), 2017. ↩︎

  5. Enze Xie, Peize Sun, Xiaoge Song, Wenhai Wang, Xuebo Liu, Ding Liang, Chunhua Shen, and Ping Luo. PolarMask: Single shot instance segmentation with polar representation. arXiv preprint arXiv:1909.13226, 2019. ↩︎

  6. Tsung-Yi Lin, Michael Maire, Serge Belongie, James Hays, Pietro Perona, Deva Ramanan, Piotr Dollár, and C. Lawrence Zitnick. Microsoft COCO: Common objects in context. In European Conference on Computer Vision (ECCV), 2014. ↩︎

  7. Gregory Koch, Richard Zemel, and Ruslan Salakhutdinov. Siamese neural networks for one-shot image recognition, 2015. ↩︎

  8. Spyros Gidaris and Nikos Komodakis. Dynamic few-shot visual learning without forgetting. In IEEE Conference on Computer Vision and Pattern Recognition (CVPR), 2018. ↩︎ ↩︎ ↩︎

  9. Oriol Vinyals, Charles Blundell, Timothy Lillicrap, Daan Wierstra, et al. Matching networks for one shot learning. In Advances in Neural Information Processing Systems, 2016. ↩︎ ↩︎ ↩︎ ↩︎

  10. Jake Snell, Kevin Swersky, and Richard Zemel. Prototypical networks for few-shot learning. In Advances in Neural Information Processing Systems, 2017. ↩︎ ↩︎ ↩︎ ↩︎ ↩︎

  11. Flood Sung, Yongxin Yang, Li Zhang, Tao Xiang, Philip H. S. Torr, and Timothy M. Hospedales. Learning to compare: Relation network for few-shot learning. In IEEE Conference on Computer Vision and Pattern Recognition (CVPR), 2018. ↩︎ ↩︎ ↩︎ ↩︎ ↩︎ ↩︎

  12. Ruibing Hou, Hong Chang, Bingpeng Ma, Shiguang Shan, and Xilin Chen. Cross attention network for few-shot classification. In Advances in Neural Information Processing Systems, 2019. ↩︎ ↩︎ ↩︎ ↩︎ ↩︎ ↩︎ ↩︎ ↩︎

  13. Han-Jia Ye, Hexiang Hu, De-Chuan Zhan, and Fei Sha. Few-shot learning via embedding adaptation with set-to-set functions. In IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR), pages 8808–8817, 2020. ↩︎ ↩︎ ↩︎ ↩︎ ↩︎

  14. Xu Jia, Bert De Brabandere, Tinne Tuytelaars, and Luc V. Gool. Dynamic filter networks. In Advances in Neural Information Processing Systems, 2016. ↩︎ ↩︎

  15. Li Zhang, Dan Xu, Anurag Arnab, and Philip H. S. Torr. Dynamic graph message passing networks. In Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR), pages 3726–3735, 2020. ↩︎

  16. Sachin Ravi and Hugo Larochelle. Optimization as a model for few-shot learning. In International Conference on Learning Representations (ICLR), 2017. ↩︎ ↩︎

  17. Chelsea Finn, Pieter Abbeel, and Sergey Levine. Model-agnostic meta-learning for fast adaptation of deep networks. In International Conference on Machine Learning (ICML), 2017. ↩︎ ↩︎

  18. Alex Nichol, Joshua Achiam, and John Schulman. On first-order meta-learning algorithms. arXiv preprint arXiv:1803.02999, 2018. ↩︎

  19. Zhenguo Li, Fengwei Zhou, Fei Chen, and Hang Li. Meta-SGD: Learning to learn quickly for few-shot learning. arXiv preprint arXiv:1707.09835, 2017. ↩︎

  20. Qianru Sun, Yaoyao Liu, Tat-Seng Chua, and Bernt Schiele. Meta-transfer learning for few-shot learning. In IEEE Conference on Computer Vision and Pattern Recognition (CVPR), 2019. ↩︎

  21. David G. Lowe. Object recognition from local scale-invariant features. In International Conference on Computer Vision (ICCV), 1999. ↩︎

  22. Pedro F. Felzenszwalb, Ross B. Girshick, David McAllester, and Deva Ramanan. Object detection with discriminatively trained part-based models. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2009. ↩︎

  23. Jifeng Dai, Haozhi Qi, Yuwen Xiong, Yi Li, Guodong Zhang, Han Hu, and Yichen Wei. Deformable convolutional networks. In International Conference on Computer Vision (ICCV), 2017. ↩︎ ↩︎

  24. David Ha, Andrew Dai, and Quoc V. Le. Hypernetworks. arXiv preprint arXiv:1609.09106, 2016. ↩︎

  25. Luca Bertinetto, João F. Henriques, Jack Valmadre, Philip Torr, and Andrea Vedaldi. Learning feed-forward one-shot learners. In Advances in Neural Information Processing Systems, 2016. ↩︎

  26. Yann Lifchitz, Yannis Avrithis, Sylvaine Picard, and Andrei Bursuc. Dense classification and implanting for few-shot learning. In IEEE Conference on Computer Vision and Pattern Recognition (CVPR), 2019. ↩︎ ↩︎

  27. Siyuan Qiao, Chenxi Liu, Wei Shen, and Alan L. Yuille. Few-shot image recognition by predicting parameters from activations. In IEEE Conference on Computer Vision and Pattern Recognition (CVPR), 2018. ↩︎ ↩︎

  28. Ricky T. Q. Chen, Yulia Rubanova, Jesse Bettencourt, and David K. Duvenaud. Neural ordinary differential equations. In Advances in Neural Information Processing Systems, pages 6571–6583, 2018. ↩︎ ↩︎

  29. Stefano Massaroli, Michael Poli, Jinkyoo Park, Atsushi Yamashita, and Hajime Asama. Dissecting neural ODEs. arXiv preprint arXiv:2002.08071, 2020. ↩︎

  30. Yulia Rubanova, Ricky T. Q. Chen, and David Duvenaud. Latent ODEs for irregularly-sampled time series. arXiv preprint arXiv:1907.03907, 2019. ↩︎

  31. Emilien Dupont, Arnaud Doucet, and Yee Whye Teh. Augmented neural ODEs. In Advances in Neural Information Processing Systems, pages 3140–3150, 2019. ↩︎

  32. Cagatay Yildiz, Markus Heinonen, and Harri Lahdesmaki. ODE2VAE: Deep generative second order ODEs with Bayesian neural networks. In Advances in Neural Information Processing Systems, pages 13412–13421, 2019. ↩︎

  33. Sunghyun Park, Kangyeol Kim, Junsoo Lee, Jaegul Choo, Joonseok Lee, Sookyung Kim, and Edward Choi. Vid-ODE: Continuous-time video generation with neural ordinary differential equation. arXiv preprint arXiv:2010.08188, 2020. ↩︎

  34. Ziyang Wu, Yuwei Li, Lihua Guo, and Kui Jia. PARN: Position-aware relation networks for few-shot learning. In International Conference on Computer Vision (ICCV), 2019. ↩︎

  35. Saining Xie, Ross Girshick, Piotr Dollár, Zhuowen Tu, and Kaiming He. Aggregated residual transformations for deep neural networks. In Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition (CVPR), pages 1492–1500, 2017. ↩︎

  36. Wanglong Wu, Meina Kan, Xin Liu, Yi Yang, Shiguang Shan, and Xilin Chen. Recursive spatial transformer (ReST) for alignment-free face recognition. In Proceedings of the IEEE International Conference on Computer Vision (ICCV), pages 3772–3780, 2017. ↩︎ ↩︎

  37. Mengye Ren, Eleni Triantafillou, Sachin Ravi, Jake Snell, Kevin Swersky, Joshua B. Tenenbaum, Hugo Larochelle, and Richard S. Zemel. Meta-learning for semi-supervised few-shot classification, 2018. ↩︎

  38. Léon Bottou. Large-scale machine learning with stochastic gradient descent. In Proceedings of COMPSTAT’2010, 2010. ↩︎

  39. Ilya Loshchilov and Frank Hutter. SGDR: Stochastic gradient descent with warm restarts. arXiv preprint arXiv:1608.03983, 2016. ↩︎

  40. Zhun Zhong, Liang Zheng, Guoliang Kang, Shaozi Li, and Yi Yang. Random erasing data augmentation. arXiv preprint arXiv:1708.04896, 2017. ↩︎

  41. Kwonjoon Lee, Subhransu Maji, Avinash Ravichandran, and Stefano Soatto. Meta-learning with differentiable convex optimization. In IEEE Conference on Computer Vision and Pattern Recognition (CVPR), 2019. ↩︎ ↩︎

  42. Andrei A. Rusu, Dushyant Rao, Jakub Sygnowski, Oriol Vinyals, Razvan Pascanu, Simon Osindero, and Raia Hadsell. Meta-learning with latent embedding optimization. arXiv preprint arXiv:1807.05960, 2018. ↩︎

  43. Nikita Dvornik, Cordelia Schmid, and Julien Mairal. Diversity with cooperation: Ensemble methods for few-shot classification. In International Conference on Computer Vision (ICCV), 2019. ↩︎

  44. Spyros Gidaris and Nikos Komodakis. Generating classification weights with GNN denoising autoencoders for few-shot learning. In IEEE Conference on Computer Vision and Pattern Recognition (CVPR), 2019. ↩︎

  45. Spyros Gidaris, Andrei Bursuc, Nikos Komodakis, Patrick Pérez, and Matthieu Cord. Boosting few-shot visual learning with self-supervision. In International Conference on Computer Vision (ICCV), 2019. ↩︎

  46. Sung Whan Yoon, Jun Seo, and Jaekyun Moon. TapNet: Neural network augmented with task-adaptive projection for few-shot learning, 2019. ↩︎

  47. Nikhil Mishra, Mostafa Rohaninejad, Xi Chen, and Pieter Abbeel. A simple neural attentive meta-learner. arXiv preprint arXiv:1707.03141, 2017. ↩︎

  48. Boris Oreshkin, Pau Rodríguez López, and Alexandre Lacoste. TADAM: Task dependent adaptive metric for improved few-shot learning. In Advances in Neural Information Processing Systems, 2018. ↩︎

  49. Nanyi Fei, Zhiwu Lu, Yizhao Gao, Jia Tian, Tao Xiang, and Ji-Rong Wen. Meta-learning across meta-tasks for few-shot learning, 2019. ↩︎

  50. Chi Zhang, Yujun Cai, Guosheng Lin, and Chunhua Shen. DeepEMD: Few-shot image classification with differentiable earth mover’s distance and structured classifiers. In Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR), pages 12203–12213, 2020. ↩︎

  51. Yaoyao Liu, Bernt Schiele, and Qianru Sun. An ensemble of epoch-wise empirical Bayes for few-shot learning. In European Conference on Computer Vision (ECCV), pages 404–421, Springer, 2020. ↩︎

  52. Christian Simon, Piotr Koniusz, Richard Nock, and Mehrtash Harandi. Adaptive subspaces for few-shot learning. In Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR), pages 4136–4145, 2020. ↩︎

  53. Bin Liu, Yue Cao, Yutong Lin, Qi Li, Zheng Zhang, Mingsheng Long, and Han Hu. Negative margin matters: Understanding margin in few-shot classification. arXiv preprint arXiv:2003.12060, 2020. ↩︎

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/59937.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

软件崩溃?提示“由于找不到d3dx9_43.dll”是什么情况?如何有效解决d3dx9_43.dll丢失的方法分享

d3dx9_43.dll错误是电脑经常出现的情况?那么出现“由于找不到d3dx9_43.dll”错误的问题是什么原因导致的呢?同时又有什么办法可以将错误提示“由于找不到d3dx9_43.dll”的问题进行解决呢? d3dx9_43.dll文件缺失是什么情况? d3dx9…

Latex中给公式加边框

1、这里使用的不是 amsmath 的 \boxed 命令, 而是 empheq 的 empheq 环境以及 xcolor 的 \fcolorbox 命令, 下面是代码, 可以分别阅读这两个手册来获取更多的信息 \documentclass{article} \usepackage{xcolor} \usepackage{empheq} \usepackage{amsmath} \begin{document}\be…

设计模式之原型模式(上机考试多套试,每人题目和答案乱序排列场景)

前言: 平常你也付出了很多的时间,但就是没有得到多少收益。就像有时候很多小伙伴问我,我是该怎么学一个我没接触过的内容。我的个人经验非常建议,先不要学太多理论性的内容,而是尝试实际操作下,把要学的内容…

如何提高谷歌收录速度?

相信很多做外贸推广的朋友都遇到过这种情况:网站上线了,但新页面迟迟不被谷歌收录。即使你的内容很优秀,设计也很精美,如果谷歌爬虫抓不到页面,一切努力就白费了。这时候,GSI谷歌快速收录服务就成了“救命稻…

C++builder中的人工智能(15):C++高斯误差线性单元(GELU)

在这篇文章中,我们将探索高斯误差线性单元(GELU:Gaussian Error Linear Unit)是什么,它是如何在人工神经网络(ANN)中工作的,以及GELU可以应用于哪些AI技术。通过学习C中的高斯误差线…

Python | Leetcode Python题解之第552题学生出勤记录II

题目: 题解: class Solution:def checkRecord(self, n: int) -> int:MOD 10**9 7mat [[1, 1, 0, 1, 0, 0],[1, 0, 1, 1, 0, 0],[1, 0, 0, 1, 0, 0],[0, 0, 0, 1, 1, 0],[0, 0, 0, 1, 0, 1],[0, 0, 0, 1, 0, 0],]def multiply(a: List[List[int]],…

网页版五子棋——匹配模块(客户端开发)

前一篇文章:网页版五子棋——用户模块(客户端开发)-CSDN博客 目录 前言 一、前后端交互接口设计 二、游戏大厅页面 1.页面代码编写 2.前后端交互代码编写 3.测试获取用户信息功能 结尾 前言 前面文章介绍完了五子棋项目用户模块的代码…

【微服务】不同微服务之间用户信息的获取和传递方案

如何才能在每个微服务中都拿到用户信息?如何在微服务之间传递用户信息? 文章目录 概述利用微服务网关做登录校验网关转微服务获取用户信息openFeign传递微服务之间的用户信息 概述 要在每个微服务中获取用户信息,可以采用以下几种方法&#…

OpenEuler 下 Docker 安装、配置与测试实例

文章目录 前言1. 环境准备2. 下载 Docker3.配置服务文件4.配置加速器加速下载docker镜像5. 验证 Docker 安装 前言 Docker 安装大致分为包管理器安装、脚本安装、离线手动安装、容器编排工具安装、桌面版安装等,每种安装各有特点,但涉及知识面不少&…

GK7205V500 GK7250V510 国科微 SOC芯片

GK7205V500 芯片是国科推出的新一代高集成度、高画质、低码率、低功耗的 AI IP Camera SoC 芯 片。 芯片集成 ARM Cortex A7 处理器,支持专业的 ISP 图像处理单元,H.265/H.264 视频编码与神经网络 处理单元(NPU)&#xff0c…

_浅谈单片机的gcc优化级别__以双音频信号发生器为例

一、简介 gcc有多种优化级别,一般不选择的情况下,IDE默认是按照-Og或这-O2优化的。 以gcc编译器为例,浅谈一下优化级别,我们常见的优化一般是指gcc的-O2、-Og。除此之外,gcc还有-Os等一系列优化,链接器也有…

qt QTreeWidgetItem详解

1、概述 QTreeWidgetItem 是 Qt 框架中的一个类,专门用于在 QTreeWidget(一个基于项的树形视图)中表示单个节点(或称为项)。QTreeWidget 继承自 QAbstractItemView,而 QTreeWidgetItem 则作为树中的一个节…

[每周一更]-(第122期):模拟面试|数据库面试思路解析

10|数据库索引:为什么 MySQL 用 B+ 树而不用 B 树? 为什么 MySQL 用 B+ 树而不用 B 树? 什么是覆盖索引? 什么是聚簇索引/非聚簇索引? 什么是哈希索引?MySQL InnoDB 引擎怎么创建一个哈希索引? 什么回表?如何避免回表? 树的高度和查询性能是什么关系? 什么是索引最左…

java-智能识别车牌号_基于spring ai和开源国产大模型_qwen vl

用大模型做车牌号识别,最简单高效 在Java场景中,java识别车牌号的需求非常普遍。过去,我们主要依赖OCR等传统方法来实现java识别车牌号,但这些方法的效果往往不稳定。随着技术的发展,现在有了更先进的解决方案——大模…

FreeRTOS学习日志--中断测试实验,以及遇到的问题

目录 实验项目:FreeRTOS 中断测试实验 1、实验目的 2、实验设计 遇到的问题 stm32F103战舰在运行程序后,USB232串口不能接收到信号问题。 从跑马灯FreeRTOS文件基础上移植的FreeRTOS中断无效,而例程中断有效问题。 问题来源与解决方法…

shodan[3](泷羽sec)

声明 学习视频来自B站UP主 泷羽sec,如涉及侵泷羽sec权马上删除文章。 笔记只是方便各位师傅学习知识,以下网站只涉及学习内容,其他的都与本人无关,切莫逾越法律红线,否则后果自负 这节课旨在扩大自己在网络安全方面的知识面,了解网络安全领域的见闻,了…

Element UI组件Dialog显示闪动问题【解决方案】

在ElementUI中,el-dialog弹窗确实有时会导致页面出现抖动或闪动的问题。这通常是由于弹窗出现时对页面布局的影响,特别是滚动条的出现或消失,导致了页面的重新布局和渲染。以下是一些解决或缓解这一问题的方法: 解决方案 1. 关闭…

计算机毕业设计Python流量检测可视化 DDos攻击流量检测与可视化分析 SDN web渗透测试系统 网络安全 信息安全 大数据毕业设计

温馨提示:文末有 CSDN 平台官方提供的学长联系方式的名片! 温馨提示:文末有 CSDN 平台官方提供的学长联系方式的名片! 温馨提示:文末有 CSDN 平台官方提供的学长联系方式的名片! 作者简介:Java领…

BO-CNN-LSTM回归预测 | MATLAB实现BO-CNN-LSTM贝叶斯优化卷积神经网络-长短期记忆网络多输入单输出回归预测

BO-CNN-LSTM回归预测 | MATLAB实现BO-CNN-LSTM贝叶斯优化卷积神经网络-长短期记忆网络多输入单输出回归预测 目录 BO-CNN-LSTM回归预测 | MATLAB实现BO-CNN-LSTM贝叶斯优化卷积神经网络-长短期记忆网络多输入单输出回归预测效果一览基本介绍模型搭建程序设计参考资料 效果一览 …

【node模块】深入解读node:assert模块

🧑‍💼 一名茫茫大海中沉浮的小小程序员🍬 👉 你的一键四连 (关注 点赞收藏评论)是我更新的最大动力❤️! 📑 目录 🔽 前言1️⃣ 什么是node:assert模块?2️⃣ node:assert模块的核心…