小样本学习&元学习经典论文整理||持续更新
核心思想
本文主要是针对度量学习算法中的特征提取阶段进行了改进,之前的特征提取网络或者说嵌入式表征的(Embedding Representation)过程是与任务无关的(Task-agnostic),这就要求在训练集上得到的特征提取网络,要有足够强的泛化能力,使其提取的特征信息同时满足测试集中未见过的新样本。这一要求无疑是很难实现的,作者就想到让特征提取网络有针对性地提取与任务有关的(Task-specific)特征信息,这样就能更好的适应测试集中未见过的新样本了。为了实现这一目标,作者设计了一个自适应的Transformer,用于将任务无关的特征信息转换成任务相关的,这一结构本质上采用了自注意力机制(Self-attention Mechanism)。整个网络的处理过程如下图所示
首先,使用普通的特征提取网络
E
\textbf{E}
E提取各个样本的特征信息
ϕ
x
\phi_x
ϕx,然后利用变形器
T
\textbf{T}
T将其转化为任务相关的特征信息
ψ
x
\psi_x
ψx,最后通过任意的距离度量方式寻找到与测试样本最接近的训练样例,实现分类。这里的变形器
T
\textbf{T}
T所采用的自注意力机制,我们在之前的文章中也有提及论文阅读笔记《Attentive Weights Generation for Few Shot Learning via Information Maximization》,它储存了一种三元信息——
Q
Q
Q(query),
K
K
K(key),
V
V
V(value),其计算过程如下
其中
W
Q
T
,
W
K
T
,
W
V
T
W_Q^T,W_K^T,W_V^T
WQT,WKT,WVT分别表示三个线性映射的权重,也可以理解为是三个全连接层的权重值,
ϕ
x
\phi_x
ϕx就是普通特征提取网络得到的特征信息了,而
Q
,
K
,
V
\mathcal{Q},\mathcal{K},\mathcal{V}
Q,K,V表示样例集合,有两种构建方式,第一种就是
Q
=
K
=
V
=
X
t
r
a
i
n
∪
x
t
e
s
t
\mathcal{Q}=\mathcal{K}=\mathcal{V}=\mathcal{X}_{train}\cup x_{test}
Q=K=V=Xtrain∪xtest此时
Q
,
K
,
V
\mathcal{Q},\mathcal{K},\mathcal{V}
Q,K,V三者相同,只包含未见过的新样本的支持集和对应的查询集,而第二种方式则保持
Q
\mathcal{Q}
Q不变,
K
,
V
\mathcal{K},\mathcal{V}
K,V构建方式如下
K
=
V
=
X
t
r
a
i
n
∪
x
t
e
s
t
∪
X
t
r
a
i
n
S
\mathcal{K}=\mathcal{V}=\mathcal{X}_{train}\cup x_{test}\cup \mathcal{X}^S_{train}
K=V=Xtrain∪xtest∪XtrainS其不仅包含未见过的新样本,而且还包含了部分训练过程中见过的样本
X
t
r
a
i
n
S
\mathcal{X}^S_{train}
XtrainS,为了方便实现,
X
t
r
a
i
n
S
\mathcal{X}^S_{train}
XtrainS中每种类别只保留了两个样本。
在经过线性映射得到
Q
,
K
,
V
Q,K,V
Q,K,V后,分别计算
Q
Q
Q中每个样本与
K
K
K中每个样本相似性
α
q
k
\alpha_{qk}
αqk,计算过程如下
并将其作为权重,用于计算任务相关的特征信息
ψ
x
q
\psi_{x_q}
ψxq,计算过程如下
其中
V
:
,
k
V_{:,k}
V:,k表示
V
V
V中的第
k
k
k列。
实现过程
网络结构
普通的特征提取网络可采用Conv或ResNet网络,分类器可采用Matching Net或Prototypical Net网络结构。
损失函数
为了训练变形器中的线性映射层
W
Q
T
,
W
K
T
,
W
V
T
W_Q^T,W_K^T,W_V^T
WQT,WKT,WVT,在普通的分类损失基础上,增加了对比损失(contrastive loss),计算过程如下
训练策略
整个网络的训练过程如下
算法推广
本文提出的方法还可以应用于直推小样本学习(Transductive FSL)和广义小样本学习(Generalized FSL)。
创新点
- 提出了一种基于自注意力机制的变形器,将任务无关的特征信息转换为任务相关的特征信息
算法评价
之前对于特征提取网络的研究,通常是对任务无关的通用型的网络开展的,通过提高其对于各类样本,尤其是新样本的泛化能力,来改善小样本分类的效果。而本文则是提出了任务相关的特征提取网络,针对每种类别的样本,提取特定的信息用于改善分类效果。而且作者的改进相当于在原有的特征提取网络+分类器的结构中增加了一个变形器,变成特征提取网络+变形器+分类器的结构,这使得其能够很容易的嵌入到其他的算法中,起到一个即插即用的效果。
如果大家对于深度学习与计算机视觉领域感兴趣,希望获得更多的知识分享与最新的论文解读,欢迎关注我的个人公众号“深视”。