论文阅读笔记《Image Deformation Meta-Networks for One-Shot Learning》

核心思想

  本文是通过数据增强的形式实现小样本学习任务,采取的方式比较直接,通过对图片进行变形来实现数据集的扩充。作者首先为我们展示了一组图片,如下图所示
论文阅读笔记《Image Deformation Meta-Networks for One-Shot Learning》
可以看到上述图片虽然经过了多种变形(如虚化,拼接,遮挡),但由于依旧保留了重要的语义信息,我们还是非常容易地识别图片中物体的类别。受此观察的启发,作者希望对数据集中的图片进行变形,在不破坏主体语义信息的前提下,增加图片的数量,实现数据集扩充的效果。那么如何对图像变形,才能既不损失语义信息(变化太大容易导致语义信息的损失),又能起到数据增强的作用呢(变化太小对数据增强无意义)?作者干脆设计了一个网络Image Deformation Meta-Network (IDeMe-Net),通过学习的形式来生成变形图片,然后再用一个嵌入式子网络提取特征信息,最后用分类器进行图像分类。
  这里的生成过程与GAN不同,而是将两幅图片按照线性的方式进行拼接。首先两幅图片,一张叫做探针图片(probe image),一张叫做图库图片(gallery image),我们把两张图片都分成3 * 3的9张图块,然后对于每一个图块都按照一定的比例将两张图片叠加起来,如下式
论文阅读笔记《Image Deformation Meta-Networks for One-Shot Learning》
就得到了合成的图片,合成效果如图所示
论文阅读笔记《Image Deformation Meta-Networks for One-Shot Learning》
图中第一行表示探针图片,第二行表示图库图片,第三行表示合成图片。整个网络分成两大部分:变形子网络和嵌入式子网络,网络结构如下图所示
论文阅读笔记《Image Deformation Meta-Networks for One-Shot Learning》
  如上图所示,探针图片和图库图片分别经过ANET和BNET两个特征提取器,得到特征向量,并把特征向量级联起来通过全连接层压缩为长度为9的权重向量,这9个数字就表示上述9个图块的权重值wqw_q,然后将两幅图像按照权重叠加,就得到了变形后的图像。将变形后的图像作为训练数据集的一部分,和原始的探针图像一起输入到嵌入式子网络中进行特征提取,最后采用Prototypical Network设计的分类器对图片进行分类。

实现过程

网络结构

  变形子网络中的ANET和BNET均采用不带有全连接层的残差神经网络结构,嵌入式子网络的特征提取部分仍是采用残差神经网络结构。

损失函数

  损失函数包含两个部分:原型损失和分类损失,原型损失采用与Prototypical Network相同的方式,对变形子网络进行监督,目的是提高单样本分类的准确性;分类损失采用交叉熵损失函数,对嵌入式子网络进行监督,目的是提高特征提取网络能够有效处理多种合成图像的能力。

训练策略

  数据集分成基础数据集DbaseD_{base}和新任务数据集DnovelD_{novel},两者的类别不存在交叉的部分。训练时,先从基础数据集DbaseD_{base}进行采样构成支持集SS和查询集QQ,并且从基础数据集DbaseD_{base}预先选定一部分图片构成图库集GG。然后,在支持集SS中选择探针图片,并且从图库集GG选择与探针图片最相似的图片作为图库图片,经过图像变形网络,对支持集进行扩充得到S~\tilde{S},最后用S~\tilde{S}对网络进行训练。在测试时,支持集SS和查询集QQ从新任务数据集DnovelD_{novel}采样获得,但图库集GG保持不变。

创新点

  • 提出了一种通过数据增强方式实现小样本学习任务的算法
  • 设计了一种图像变形网络,通过线性叠加拼接的方式实现图像变形,并采用端到端的方式对变形网络和分类网络进行训练

算法评价

  本文提出的算法并不复杂,思想也非常简单,就是通过图片变形来扩充数据集。但在本文的设计中两种损失函数的运用是至关重要的,他很好的平衡了变形程度和分类能力之间的关系,如果只采用分类损失的话,网络会趋向于减少变形的程度,以保证分类的准确性,这样就失去了数据增强的意义;如果只采用原型损失,网络会趋向于增大变形程度,以扩充数据集,提高小样本学习的能力,但这样有可能导致语义信息的破坏,使得网络无法正确分类。这两个问题的之间的平衡是本文设计的精髓所在。

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