论文阅读笔记《MetAdapt: Meta-Learned Task-Adaptive Architecture for Few-Shot Classification》

核心思想

  本文提出一种基于神经网络结构搜索(NAS)的小样本学习算法(MetAdapt),整体的思路其实与直接解读过的一篇文章《Meta-Learning of Neural Architectures for Few-Shot Learning》非常相似,但在一些具体的实现方法上还是各有特色的。首先,作者也是采用了经典的可微分NAS算法DARTS对网络结构进行搜索;为了适应小样本学习任务,作者在此基础上提出了MetAdapt Controllers结构,用于调整每个操作的权重系数;最后,作者采用了两级训练的方式,依次对神经网络中的参数和神经网络的结构参数进行训练。
  DARTS进行神经网络结构搜索的过程,就是要构建一个有向无环图(DAG),图中的每个节点表示一组特征图,每个边表示一种操作(1*1卷积,3*3卷积,池化,跳跃连接等),每两个节点之间可能有不止一条边进行连接,每个边上的权重就表示这种操作的重要性,且两个节点之间每条边上的权重是经过归一化处理的,通过加权求和的形式得到一种混合操作(Mixed Operation)。节点iijj之间的混合操作计算方法如下式
论文阅读笔记《MetAdapt: Meta-Learned Task-Adaptive Architecture for Few-Shot Classification》
O\mathcal{O}表示所有操作的集合, αo(i,j)\alpha_{o}^{(i,j)}表示节点iijj之间操作oo对应的权重.为了适应小样本学习的需求,提高对于特定任务的自适应能力,作者设计了一个MetAdapt Controllers结构,用于修正每个边上的权重系数。直接搜索和自适应修正后的网络结构如下图所示
论文阅读笔记《MetAdapt: Meta-Learned Task-Adaptive Architecture for Few-Shot Classification》
  MetAdapt Controllers结构的处理方法如下图所示
论文阅读笔记《MetAdapt: Meta-Learned Task-Adaptive Architecture for Few-Shot Classification》
将每个Episode中支持集SS所包含所有样本对应的特征图xi0,...,xiSx_i^0,...,x_i^{|S|},全部拼接起来构成一个[S,D,M,M][S,D,M,M]维的张量,DD表示特征图的通道数,MM表示特征图的尺寸。经过全局平均池化后,将所有特征图压缩为一个值,得到[S,D][S, D]维张量,接着利用带有ReLU**层的线性层将特征图通道数进行压缩,得到[S,Dbottleneck][S, D_{bottleneck}]维张量。最后将张量展开为SDbottleneckS·D_{bottleneck}维的向量,经过一个线性层后输出权重调整值Δα(i,j)\Delta\alpha^{(i,j)},将其与先前搜索得到的权重值α^\hat{\alpha}相加,就得到修正后的权重系数
论文阅读笔记《MetAdapt: Meta-Learned Task-Adaptive Architecture for Few-Shot Classification》

实现过程

网络结构

  最原始结构采用ResNet-12,并且保持前3个残差块(ResNet-9)的结构不变,只对最后一个残差块的结构进行搜索。

训练策略

  本文不仅需要对神经网络中各个网络层中的参数ww进行训练,还需要对神经网络各个操作的权重参数α\alpha进行训练,如果同时对二者进行训练的话,会导致过拟合的问题。为了减轻过拟合问题,本文采用了两级迭代优化(bi-level iterative optimization)的训练方式。整个训练集分成两部分,一部分用于训练网络参数ww,另一部分用于训练权重参数α\alpha。首先利用SGD方式训练网络参数,过程如下
论文阅读笔记《MetAdapt: Meta-Learned Task-Adaptive Architecture for Few-Shot Classification》
然后在此基础上再训练权重参数
论文阅读笔记《MetAdapt: Meta-Learned Task-Adaptive Architecture for Few-Shot Classification》

创新点

  • 利用NAS的方法寻找最优的网络结构
  • 提出了MetAdapt Controllers结构用于修正不同操作的权重,提高对于小样本学习任务的适应能力
  • 采用两级迭代优化的训练方式,缓解了过拟合的问题

算法评价

  本文与Meta NAS都采用了DARTS方法对网络结构进行搜索,不同的是Meta NAS算是是将其与MAML等元学习算法相结合,并且对两种参数(权重参数和网络参数)同时进行训练和优化。而本文提出的MetAdapt的算法,引入了权重修正结构,并且采用两级迭代优化的训练方式。根据实验结果来看,本文提出的算法是很有竞争力的,是目前为止,基于参数优化的小样本学习算法中,精度最高的。

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