今天是元宵节。祝大家汤圆节快乐,牛年健健康康,努力工作学习生活,毫无蹉跎!
接着系列文章上一篇Meta Learning 1: 基于度量的方法介绍的孪生网络Siamese Network模型,本篇继续介绍更多基于度量的Meta Learning元学习方法。
在介绍新的模型之前,我们回忆一下基于度量的Meta Learning的三步走解决方案:
基于度量的方法:编码Encode,归纳Induction,相似度Relation
Matching Networks[1]严格遵守Meta Learning一个任务作为一个样本的训练思路,构造了和推断时一致的训练任务。 如下图所示,已知k张没有见过的图片类别(Support Set),预测Query Set中的图片属于哪个类别。
Matching Networks的模型结构
在Matching Networks的基础上,Prototypical Networks[2]研究了若Support Set中同一类别提供了多个数据的情况下(即Few-shot),如何归纳得到较好的类向量。
One-shot
以图像分类为例,在One-shot的情况下,每个新类别只提供一张图片,我们只能通过这唯一的一张小狗图片来获取小狗应具有的特点。 在模型中就反映为由唯一图片编码直接得到类向量。
Few-shot
然而在Few-shot的情况下,每个新类别会提供k张图片(如上图,k=4),我们可以通过四张小狗的图片,归纳得到小狗们共有的特色,避免单张图片中与小狗无关的因素(如背景,光线等)影响分类判断。 在模型中就反映为如何由多个图片的向量得到类向量。
Few-shot和Zero-shot计算类向量的示意图
如上图所示,在Few-shot的情况下,论文取Support Set中同类样本向量的平均值(Average)作为类向量。
Prototypical Networks还提出了Zero-shot的分类问题解决方案。 在Zero-shot的情况下,新类别不提供任何样例数据,只提供一些类的元信息,比如文字描述等。 通过对类的元信息训练专门的编码网络,也可以得到类向量。
关于Query向量和类向量的相似度的计算,Prototypical Networks强调距离公式要满足Bregman散度,即满足平均值点是距离所有点的平均距离的最小点。论文采用的是欧式距离(Euclidean Distance)。
Relation Network[3]在之前模型的基础上,对Query向量和类向量的相似度计算进行了研究。
Relation Network的模型结构
Model | Encoder | Induction | Relation |
---|---|---|---|
Siamese Network (Koch, 2015) | CNN/RNN | None | Absolute Difference |
Match Networks (Vinyals, 2016) | CNN/RNN+FCE | None | Cosine Distance |
Prototypical Networks (Snell, 2017) | CNN/RNN | Average | Euclidean Distance |
Relation Network (Sung, 2018) | CNN/RNN | Sum | Nerual Network |
总结目前为止介绍的基于度量的方法可以发现,归纳Induction这一步的研究相对比较少。下一篇将重点介绍相关的论文,敬请期待。
[1]
Matching Networks for One Shot Learning: https://arxiv.org/pdf/1606.04080.pdf%20http://arxiv.org/abs/1606.04080.pdf
[2]
Prototypical Networks for Few-shot Learning: https://arxiv.org/pdf/1703.05175.pdf
[3]
Learning to Compare: Relation Network for Few-Shot Learning: https://openaccess.thecvf.com/content_cvpr_2018/papers/Sung_Learning_to_Compare_CVPR_2018_paper.pdf