【论文阅读】Semantic Prompt for Few-Shot Image Recognition(已复现)

在这里插入图片描述
论文地址:https://arxiv.org/pdf/2303.14123.pdf
论文代码:https://github.com/WentaoChen0813/SemanticPrompt

Abstract

  小样本学习是一个具有挑战性的问题,因为只提供了少量样本来识别新的类别。最近的一些研究利用了额外的语义信息,例如类别名称的文本嵌入,通过将语义原型与视觉原型相结合来解决稀缺样本的问题。然而,这些方法仍然受到从稀缺支持样本中学习到的虚假视觉特征的影响,导致收益有限。在本文中,我们提出了一种用于小样本学习的新颖语义提示(Semantic Prompt,SP)方法。我们并非简单地利用语义信息来修正分类器,而是探索将语义信息作为提示来自适应地调整视觉特征提取网络。具体来说,我们设计了两种互补的机制,将语义提示插入到特征提取器中:一种是通过自注意力机制在空间维度上实现语义提示与补丁嵌入的交互,另一种是在通道维度上用转换后的语义提示来补充视觉特征。通过结合这两种机制,特征提取器能够更好地关注类别特定的特征,并且仅使用少量支持样本就可以获得更具泛化性的图像表示。通过在四个数据集上的大量实验,所提出的方法取得了令人鼓舞的结果,平均将1-shot学习的准确率提高了3.67%。

1 Introduction

  小样本学习(Few-shot learning, FSL)1 是一个基础且具有挑战性的任务,因为它旨在通过稀少的样本预测新的类别,并且仍然是一个尚未完全解决的问题。为了解决这一问题,大多数有效的FSL方法利用从一个大规模标注的基础数据集中学到的先验知识,并将这些先验知识编码为一组初始网络参数2 3 4,或者作为所有类别共享的固定嵌入函数5 6 7 8

  由于新类别的标注图像稀缺,一种直接的替代方案是使用来自其他模态的辅助信息,例如自然语言,以帮助学习新的概念,这已经在零样本学习(Zero-shot learning)中得到了广泛研究9 10 11 12。这些方法通常直接使用文本嵌入作为新类别的图像分类器。受此启发,一项最新的FSL研究13提出从类别名称中推断出文本原型,并将其与从稀少的支持图像中提取的视觉原型(即分类器)相结合。其他一些研究14 15通过引入更复杂的文本原型预测器(例如图卷积网络)或利用大规模预训练的语言模型来生成更准确的文本原型,从而改进了这些方法。

  尽管这些方法取得了一定的成功,但大多数直接从文本特征推断类别原型的方法忽略了文本特征与视觉特征之间的信息鸿沟。具体来说,文本特征可能包含了新类别与已知类别之间的语义关系。然而,由于缺乏与潜在视觉表示的交互,文本特征无法提供新类别的精确区分性视觉特征。因此,当直接将丰富的语义信息注入分类器时,对于识别新类别所带来的收益非常有限。此外,由于支持图像数量有限,学习到的视觉特征仍然会受到虚假特征的影响,例如背景杂波,难以产生准确的类别原型。例如,如图1所示,给定新类别“独轮车”的一张支持图像,特征提取器可能会捕捉到包含独轮车和其他干扰物(如骑车人和瓦屋顶)的图像特征,无法在其他环境中识别独轮车。实际上,人类感知系统有一种独特的视觉感知机制,称为认知可渗透性(Cognitive penetrability)16,它利用语言的先验知识来调整正在进行的视觉感知处理,以突出与类别相关的刺激特征,从而促进对新物体的学习。因此,有必要开发一种新的架构,以有效地利用文本信息来弥补稀少样本导致的缺陷表示。
在这里插入图片描述
图1。给定一个关于新类“独轮车”的图像,特征提取器很容易被虚假特征混淆,如独轮车上的骑手,无法获得关于新类的广义图像表示。在本文中,我们提出了语义提示,这是一种在丰富的语义先验知识上调节特征提取的新方法,使得特征提取器捕获了关于新类的内在类特定特征。

  在本文中,我们提出了语义提示(Semantic Prompt),这是一种利用类别名称的文本信息显著提高小样本学习中视觉特征表示能力的新方法。与直接从文本特征推断原型的方法不同,我们探索了将文本特征作为语义提示来自适应地调整稀少支持样本的特征提取网络。如图1所示,在语义提示的指导下,特征提取器能够捕捉新类别的内在类别特定特征,而不是其他背景杂波。此外,随着大规模训练的出现,涌现出了一系列强大的自然语言处理(NLP)模型,例如BERT 17和GPT 18,它们可以从类别名称中提取丰富的文本信息。通过语义提示与视觉特征之间的交互,这种语义丰富的表示有很大的潜力为特征提取器提供有关新类别的额外区分性视觉特征,从而生成更具泛化性的类别原型。

  为了将视觉特征提取与语义提示相结合,我们提出了两种互补的机制,将语义信息注入特征提取器中,从而在空间维度和通道维度上分别实现语义提示与视觉特征的交互。具体来说,为了在空间维度上促进交互,我们将语义提示扩展为图像补丁序列,并将其输入到Transformer编码器中。通过自注意力层,语义提示可以引导特征提取器关注类别特定特征,同时抑制其他干扰因素。对于通道维度上的交互,我们首先将语义提示与从所有补丁中提取的视觉上下文进行连接,然后将其输入MLP模块。提取的特征向量被添加到每个补丁标记上,以通道为单位对视觉特征进行调整和增强。通过结合这两种交互机制,所提出的**语义提示方法(Semantic Prompt, SP)**能够有效地利用类别名称中的文本信息来提升FSL。在四个基准数据集上进行的综合实验表明,所提出的SP在不同类型的文本编码器和架构设计中表现出一致的性能提升,展示了其在FSL问题上的强泛化性。

  总之,我们的贡献有三方面:

  1. 我们提出了一种新颖的语义提示方法,通过利用类别名称中的文本信息来进行小样本图像识别,这一方法受到了人类认知渗透效应的启发,旨在根据语义提示自适应地调整特征提取以获得类别特定特征。
  2. 为了将视觉特征提取与语义提示结合,我们提出了两种互补的机制,将语义提示注入视觉特征提取器中,从而在空间和通道维度上分别实现交互。
  3. 所提出的方法在四个FSL基准数据集上取得了显著的性能,在具有挑战性的1-shot设置下平均提高了3.67%的准确率。

2 Related work

小样本学习
  FSL旨在仅给定每个类别少量样本的情况下识别新类别。之前的研究通常采用元学习(meta-learning)范式,在该范式中,学习者在从大型基础数据集中抽取的一系列小样本训练任务(称为“episode”)上进行训练,以便能够快速适应未见过的测试任务。特别是,基于优化的方法2 3 4的目标是学习一组可快速适应所有任务的最优初始参数。基于度量学习的方法5 6 7 8则学习一个固定的嵌入函数,将输入图像映射到一个低维嵌入空间中,并根据与支持样本之间的特定距离来对未标注的查询样本进行分类,例如欧氏距离6、余弦相似度距离19和地球移动距离20

基于语言的小样本学习
  为了利用来自其他模态(特别是语言)的附加信息来帮助识别新类别,近期的一系列研究21 22 14 13提出将视觉特征和辅助文本特征结合起来以表示新类别。例如,Xing等人13提出了一种自适应融合机制,将视觉原型与由类别标签词嵌入生成的语义原型结合。Peng等人14采用图卷积网络(Graph Convolutional Network)23作为预测器,以整合知识图谱中的附加知识。Yan等人24提出了一种词向量引导的注意力机制,以获取多标签小样本学习问题的标签原型。与以往在分类器或类别原型级别利用语义信息的工作不同,我们将辅助信息作为一种语义提示(semantic prompt),以增强对有限支持样本的特征提取。

Transformer与基于提示的学习
  Transformer是一种用于NLP任务25 17 18 26的通用网络架构,并在计算机视觉任务27 28 29 30中也展现出巨大潜力。尤其是,Dosovitskiy等人27提出了一种简单的视觉Transformer(Vision Transformer, ViT)架构,将图像补丁视为一个序列并将其输入Transformer编码器以提取视觉特征。由于其架构设计中具有有限的归纳偏置(inductive bias),Transformer通常需要大量数据来学习新任务。为了解决这一问题,基于提示的方法25 31被提出,用以在数据高效的方式中调整预训练语言模型以适应下游任务。例如,Brown等人25通过在输入句子中添加一些手工设计的提示词来向模型提供任务的先验知识,并将模型行为调整为所需的模式。其他研究32 33 34提出用连续的提示向量替换离散的提示词,因为它们比离散提示更易于优化。最近,Tsimpoukelli等人35提出了一种跨模态提示方法,将图像特征视为语言输入的提示,以执行多模态小样本学习。在本文中,我们提出将文本特征视为图像输入的语义提示(semantic prompts),以调整正在进行的视觉特征提取,使其适应类别特定特征,从而有助于使用少量样本学习新类别。据我们所知,这是首次采用语义特征作为提示来调整视觉特征提取器以用于小样本学习。

3 Problem formulation

  小样本学习(FSL)问题通常被定义为一个 N N N-way K K K-shot 分类任务,其中模型需要根据来自支持集 S S S 的少量标注样本 ( x i s , y i s ) i = 1 N × K (x^s_i, y^s_i)_{i=1}^{N \times K} (xis,yis)i=1N×K,将查询集 Q Q Q 中的查询样本 x q x^q xq 分类到 N N N 个新类别 C n o v e l C_{novel} Cnovel 中的一个。由于在较小的支持集 S S S 上从头训练模型非常困难,通常会提供一个大型标注数据集 D b a s e D_{base} Dbase 来在执行小样本学习之前对模型进行预训练。以往的研究通常采用元训练(meta-training)策略 8,将基础数据集分成多个 N N N-way K K K-shot 任务。每个任务也包含一个支持集和一个查询集,以模拟测试期间的小样本学习问题。需要注意的是,基础类别 C b a s e C_{base} Cbase 与新类别没有重叠关系,即 C b a s e ∩ C n o v e l = ∅ C_{base} \cap C_{novel} = \varnothing CbaseCnovel=。因此,期望模型在元训练后能够获得对未见类别的泛化能力。

   变体:在大多数以往的工作中,图像标签 y y y 通常表示为一个独热向量(one-hot vector),例如 y = [ 0 , 1 , 0 , 0 , … ] y = [0, 1, 0, 0, \ldots] y=[0,1,0,0,]。然而,这种表示方式抹去了对象概念之间的语义关系,并忽略了文本标签中包含的有价值的语言信息。在本文中,我们除了使用独热标签外,还保留了文本标签(例如“猫”、“狗”),以便从文本标签中提取语义信息。我们将文本标签记为 y t e x t y_{text} ytext,以便与独热标签 y y y 进行区分。

4 Method

  按照 36 的方法,我们的方案包括两个训练阶段。在第一阶段,我们通过对基础集合 D b a s e D_{base} Dbase 中的所有图像进行分类来预训练特征提取器 f f f。在第二阶段,我们在元学习范式下利用语义提示(Semantic Prompt, SP)对 f f f 进行微调,以便 f f f 能够在数据稀缺的场景下提取通用且与类别相关的视觉特征。

4.1. Pre-training

  学习通用的特征提取器是将知识转移到下游学习任务的关键 37 38 39,其中包括小样本学习 40。给定标注的基础数据集 D b a s e D_{base} Dbase,我们采用一种简单的监督学习范式来学习特征提取器。在特征提取器的顶部添加一个线性分类头 [ W , b ] [W, b] [W,b],将输入的特征向量 f ( x ) f(x) f(x) 映射到基础类别中的一个。我们通过最小化标准交叉熵损失来联合训练特征提取器和分类头:
L p r e = 1 ∣ D b a s e ∣ ∑ ( x , y ) ∈ D b a s e − log ⁡ exp ⁡ ( W y T f ( x ) + b y ) ∑ i exp ⁡ ( W i T f ( x ) + b i ) , L_{pre} = \frac{1}{|D_{base}|} \sum_{(x,y) \in D_{base}} - \log \frac{\exp(W_y^T f(x) + b_y)}{\sum_i \exp(W_i^T f(x) + b_i)}, Lpre=Dbase1(x,y)Dbaselogiexp(WiTf(x)+bi)exp(WyTf(x)+by),
其中 W i , b i W_i, b_i Wi,bi 表示类别 i i i 的分类器权重和偏差。

  主干网络:为了促进视觉特征和语义提示之间的后续交互,我们采用了视觉Transformer(Vision Transformer)作为图像特征提取器 f f f。具体来说,输入图像 x ∈ R H × W × C x \in \mathbb{R}^{H \times W \times C} xRH×W×C 首先被划分为一系列 M M M 个图像补丁 X = { x 1 p , x 2 p , . . . , x M p } X = \{x_1^p, x_2^p, ..., x_M^p\} X={ x1p,x2

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值