欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  科技

论文阅读笔记《Few-Shot Learning Through an Information Retrieval Lens》

程序员文章站 2022-05-12 13:29:37
小样本学习&元学习经典论文整理||持续更新核心思想  本文提出一种完全不同的小样本学习方法(mAP-SSVM,mAP-DLM),从信息检索(information retrieval)的角度来解决小样本学习问题,与之前episode中分成支持集和查询集的方式不同,本文将batch内的每个样本都看作一个查询样本,并且从其他所有样本中检索出与当前查询样本同一类别的样本。网络输出的是其他样本与当前查询样本相似度的排序结果,为评价输出结果的优劣,本文采用mAP作为优化的目标函数,为方便后文描述,这里简单...

小样本学习&元学习经典论文整理||持续更新

核心思想

  本文提出一种完全不同的小样本学习方法(mAP-SSVM,mAP-DLM),从信息检索(information retrieval)的角度来解决小样本学习问题,与之前episode中分成支持集和查询集的方式不同,本文将batch内的每个样本都看作一个查询样本,并且从其他所有样本中检索出与当前查询样本同一类别的样本。网络输出的是其他样本与当前查询样本相似度的排序结果,为评价输出结果的优劣,本文采用mAP作为优化的目标函数,为方便后文描述,这里简单介绍一下mAP。
  对于数据集 B B B中的样本 x 1 x_1 x1 R e l x 1 Rel^{x_1} Relx1表示数据集 B B B中与 x 1 x_1 x1类别相同的样本集合, O x 1 O^{x_1} Ox1表示与样本 x 1 x_1 x1相似度的排序集合, O x 1 [ 1 ] O^{x_1}[1] Ox1[1]表示与 x 1 x_1 x1最相似的样本, O x 1 [ j ] O^{x_1}[j] Ox1[j]表示与 x 1 x_1 x1 j j j相似的样本,准确率 P r e c @ j x 1 Prec@j^{x_1} Prec@jx1表示 O x 1 O^{x_1} Ox1中前 j j j个样本与 x 1 x_1 x1属于同一类别的比率,计算过程如下
论文阅读笔记《Few-Shot Learning Through an Information Retrieval Lens》
平均准确率 A P AP AP则表示对 O x 1 [ j ] O^{x_1}[j] Ox1[j]中所有的 j j j值对应准确率求平均值,计算过程如下

论文阅读笔记《Few-Shot Learning Through an Information Retrieval Lens》
平均准确率的均值 m A P mAP mAP则是对所有的查询样本对应的平均准确率再求均值
论文阅读笔记《Few-Shot Learning Through an Information Retrieval Lens》
本文的目标就是通过训练使得输出的相似度排序结果能让 m A P mAP mAP尽可能的大,很显然直接以mAP作为目标函数进行优化是很难实现的,因此本文引入了结构化预测(Structured Prediction)的思路来实现这一目标,结构化预测需要寻找一个评分函数 F ( x , y ; w ) F(x,y;w) F(x,y;w)用于评价输入 x x x与输出 y y y在参数 w w w条件下的“相合性”,然后在此基础上寻找到使 F ( x , y ; w ) F(x,y;w) F(x,y;w)最大化的输出结果 y y y。这里存在三个问题:如何定义评分函数 F ( x , y ; w ) F(x,y;w) F(x,y;w)的形式?如何寻找到使 F ( x , y ; w ) F(x,y;w) F(x,y;w)最大化的输出结果?如何通过训练的方式优化评分函数 F ( x , y ; w ) F(x,y;w) F(x,y;w)中的参数 w w w?(关于结构化推测的更多细节介绍,可以参看这篇博客https://www.cnblogs.com/wry789/p/13236881.html
  具体到本文而言,作者首先根据mAP目标函数的需求,定义了模型输出结果的形式,模型输出一个结构化向量 y k j i y_{kj}^i ykji,对于查询样本 i i i,如果样本 k k k与样本 i i i的相似度大于样本 j j j与样本 i i i的相似度,则 y k j i = 1 y_{kj}^i=1 ykji=1,否则 y k j i = − 1 y_{kj}^i=-1 ykji=1,特别地 y k k i = 0 y_{kk}^i= 0 ykki=0。然后定义了评分函数 F ( x , y ; w ) F(x,y;w) F(x,y;w)的形式
论文阅读笔记《Few-Shot Learning Through an Information Retrieval Lens》
式中 P c i \mathcal{P}^{c_i} Pci表示与样本 i i i类别相同的样本集合, N c i \mathcal{N}^{c_i} Nci表示与样本 i i i类别不同的样本集合, φ \varphi φ表示余弦相似度度量函数
论文阅读笔记《Few-Shot Learning Through an Information Retrieval Lens》
式中 f f f表示参数为 w w w的特征提取网络,对上述二式进行分析可知,当样本 x k x_k xk x i x_i xi的余弦相似度大于样本 x j x_j xj x i x_i xi的余弦相似度(即 φ ( x i , x k , w ) − φ ( x i , x j , w ) > 0 \varphi(x_i,x_k,w)-\varphi(x_i,x_j,w)>0 φ(xi,xk,w)φ(xi,xj,w)>0),且模型的输出 y k j i = 1 y_{kj}^i=1 ykji=1(即模型判断样本 x k x_k xk要比 x j x_j xj x i x_i xi更相似)时,评分函数 F F F的得分为正值,表示模型的输出结果,与当前输入样本 x i , x j , x k x_i,x_j,x_k xi,xj,xk"相合",且 φ ( x i , x k , w ) − φ ( x i , x j , w ) \varphi(x_i,x_k,w)-\varphi(x_i,x_j,w) φ(xi,xk,w)φ(xi,xj,w)的值越大,得分越高,相合程度越高。反之当模型的输出结果和输入的样本不相合时(即 ( φ ( x i , x k , w ) − φ ( x i , x j , w ) ) (\varphi(x_i,x_k,w)-\varphi(x_i,x_j,w)) (φ(xi,xk,w)φ(xi,xj,w)) y k j i y_{kj}^i ykji异号时),评分函数的得分为负值。
  如上文所述,确定了评分函数 F F F的形式后,下面要做的就是要找到能够使 F F F最大化的输出 y y y
论文阅读笔记《Few-Shot Learning Through an Information Retrieval Lens》
怎么解决这个问题呢?最直接的方法似乎是枚举法?其实该问题对于不同的任务目标,不同的评分函数都有不同的求解方式。作者指出对于本文的任务而言,输出结果计算方法如下
论文阅读笔记《Few-Shot Learning Through an Information Retrieval Lens》
并且作者还提出了一种损失增强的计算方法
论文阅读笔记《Few-Shot Learning Through an Information Retrieval Lens》
上式是通过动态规划的方式进行求解的,在另一篇文章中给出了计算方式。看到这种计算方法不仅要让评分函数最大化,而且增加了一个额外的任务损失函数 L L L,本文定义的任务损失函数如下
论文阅读笔记《Few-Shot Learning Through an Information Retrieval Lens》
式中 p i p^i pi是一个二元的向量,其中的每个元素 p g i p^i_g pgi表示样本 g g g是否与样本 i i i属于同一类别,当 p g i = 1 p^i_g=1 pgi=1时表示二者属于同一类别,否则 p g i = − 1 p^i_g=-1 pgi=1 p i p^i pi表示训练样本的真实标签结果, p ^ i \hat{p}^i p^i表示模型的预测结果。
  至此结构推断的前两个问题已经解决了,最后就是如何对评分函数中的参数 w w w进行优化呢?作者引入了两种方法:结构化支持向量机(SSVM)和直接损失最小化(DLM),其目标函数与损失梯度计算方法如下所示
SSVM:
论文阅读笔记《Few-Shot Learning Through an Information Retrieval Lens》
论文阅读笔记《Few-Shot Learning Through an Information Retrieval Lens》
DLM:
论文阅读笔记《Few-Shot Learning Through an Information Retrieval Lens》
  最后就是迭代上述的过程,得到一个最优的评分函数 F F F,并以此选择出最优的输出结果 y y y

实现过程

训练策略

论文阅读笔记《Few-Shot Learning Through an Information Retrieval Lens》

创新点

  • 本文提出了图像检索任务,并且以提高mAP作为目标,实现小样本学习
  • 引入了结构化推测的方法,并定义了评分函数的形式
  • 引入了损失增强的方法,并定义了mAP损失函数

算法评价

  本文把图像分类任务延申为了图像检索任务,从一堆图像中选择出与当前查询图像最相近的图像样本,为实现该任务的训练,采用了mAP做为优化的目标函数,而为了实现模型的训练,又引入了结构化推测的方法。具体的细节内容还包括评分函数的定义,任务损失函数的定义,参数优化算法等。本文是近期读过的文章中比较难以理解的一篇了,主要是引入的结构化推测的方法之前并未接触过,给整篇文章的理解增添了很大的难度,因此建议在认真研究本文之前,应该先了解下结构化推测,结构化学习的部分内容。

如果大家对于深度学习与计算机视觉领域感兴趣,希望获得更多的知识分享与最新的论文解读,欢迎关注我的个人公众号“深视”。论文阅读笔记《Few-Shot Learning Through an Information Retrieval Lens》

本文地址:https://blog.csdn.net/qq_36104364/article/details/109002432