2017-2019年计算机视觉顶会文章收录 AAAI2017-2019 CVPR2017-2019 ECCV2018 ICCV2017-2019 ICLR2017-2019 NIPS2017-2019
原文https://www.jianshu.com/p/d7cde7eb93c4
MetaGAN: An Adversarial Approach to Few-Shot Learning
归纳下本文的核心思想:采用 meta-learning + GAN 解决少样本学习问题,其中 meta-learning 部分本文没有提出新方法,只是将已有方法结合到提出的框架中,具体包括以下两种 meta-learning 方法:
- MAML
- Relation Network
训练时,对于每个小样本任务,本文采用了 (Salimans et al., 2016) 中将 GAN 应用到半监督学习问题上的建模方式。具体来说,判别器的损失函数定义如下:
生成器的损失函数定义如下:
总的来说,MetaGAN的损失函数如下:
上述所有损失函数中的 代表使用任意一种 meta-learning 算法训练出的模型。
为什么 MetaGAN 可以 work 呢?这里有一个直观的解释:考虑这样一种情况,训练集的任务只要求对猫和卡车进行准确分类,那么对于这个任务分类器提取出的特征就会比较粗糙,因为猫和卡车的差异很大。但是在现实任务中,我们要用这个分类器去区分猫和狗,这样提取出的粗糙特征就肯定不能很好的对这个任务进行很好的分类。MetaGAN不仅要求分类器能够正确区分猫和卡车,还要其能区分真正的猫的图片以及生成的假的猫的图片,这样就可以使得分类器提取出更加细致的特征。更正式来说,可以使得分类器的决策边界更加的紧凑:
boundary
Model-Agnostic Meta-Learning for Fast Adaptation of Deep Networks
MAML 这篇文章之前已经读过很多遍了,这次做一次回顾性的总结。MAML算法希望找到一个初始化参数,使得其不管在任何任务(服从与训练任务一样的分布)上只进行一步梯度下降,使得所有任务的损失函数下降的尽可能多,即最小化如下元损失函数:
对于如上损失函数,我们直接采用梯度下降求解:
算法框架如下:
MAML
其结合少样本学习以及强化学习两个任务的具体算法框架如下:
MAML for few-shot learning and reinforcement learning
Siamese Neural Networks for One-shot Image Recognition
本文属于元学习中的度量学习方法,度量学习网络如下:
siamese network
损失函数如下:
经过度量学习之后,在进行单样本分类时,给定支撑集,通过如下方式确定测试图片的样本:
Matching Networks for One Shot Learning
本文同样属于元学习中的度量学习方法,度量学习网络结构如下:
match network
经过度量学习之后,在进行单样本分类时,给定支撑集,通过如下方式确定测试图片的样本:
其中
本文采用的嵌套方法称为 Full Contextual Embeddings (FCE),两个嵌套函数的具体形式为:
-
是一个双向LSTM网络
-
是一个CNN特征抽取器加上如下形式的LSTM:
最后 即为测试图片最后的嵌套向量。
Learning to Compare: Relation Network for Few-Shot Learning
本文和 siamese network 采用的方法类似,只不过度量学习时图片之间的距离不再是嵌套向量之间的 L1 距离,而是通过一个神经网络来输出,最后也不是把问题当成一个分类问题,而是一个回归问题,相同的图片回归值为 1,不同的图片回归值为 0。具体的网络框架如下:
relation network
Prototypical Networks for Few-shot Learning
本文同样属于元学习中的度量学习方法。其定义了一个原型特征向量:
即一个类别里所有图片特征向量的平均。最后通过如下方式进行类别预测:
prototypical network
Meta-Learning with Memory-Augmented Neural Networks
本文属于元学习中基于模型的方法。具体来说,其采用神经图灵机 NTM 作为其主要模型,由于 NTM 具有独立的内存机构,使得其可以保存训练中学习到的信息,从而完成元学习。NTM 的核心架构主要是读写操作,图例如下:
NTM
本文为了显式地约束训练过程使得算法在训练的过程中能够去保存中间结果,在训练中对训练数据采用一步偏移的方式处理:
mann
其读策略与 NTM 类似:
写策略采用最近最少访问 Least Recently Used Access (LRUA) :
Optimization as a Model for Few-Shot Learning
本文属于元学习中的基于优化的方法。具体来说,本文采用 LSTM 作为 meta-learner 的原因是因为梯度下降的形式
可以用 LSTM 来表示(固定某些参数):
但是随机梯度下降的形式可能不是最优的,我们可以把固定的参数变为可学的,即:
具体的网络结构如下:
LSTM
On First-Order Meta-Learning Algorithms
本文提出的 Reptile 算法是一个与 MAML 类似的十分有效但简单的元学习方法:
Reptile
本文假定所有任务的最优参数都分布在一个最优流形上,Reptile 的目标就是找到一个初始化参数能够与所有任务的最优流形距离最小:
Optim
其中:
该距离的梯度为:
采用梯度下降找到最优初始化参数:
可以看到上述形式和算法框架中的一致。
Reptile 与 MAML 算法以及 MAML 算法的一阶估计算法 FOMAML 具有极其紧密的联系:
relationship