【平价数据】One Shot Learning

Vinyals, Oriol, et al. “Matching Networks for One Shot Learning.” arXiv preprint arXiv:1606.04080 (2016).

简介

问题

DeepMind团队的这篇文章解决小样本学习问题:对于训练过程中从未见过的新类,只借助每类少数几个标定样本,不改变已经训练好的模型,能够对测试样本进行分类。

举例:使用大规模人脸数据库训练好的人脸模型,应用于小规模人脸识别。每个使用者只提供较少几张注册图像。

亮点

Li Feifei老师的高徒,在ImageNet中为#科学献身#的人肉参照者,现供职于OpenAI的Andrej Karpathy对该论文给出了“可不咋地!”的崇高评价,并撰写了读文笔记。本文较大程度参考了该笔记。

本文创新之处有二:

  • 模型设计中,借鉴了当下流行的注意力LSTM,考虑了整个参考集合的贡献;
  • 训练过程中,尽量模拟测试流程,使用小样本构造minibatch。

模型

问题建模

给出的参考集中有 k k k个样本: ( x i , y i ) i = 1 : k (x_i, y_i)_{i=1:k} (xi,yi)i=1:k。注意 k k k往往很小,类别的数量也不多。
对于测试样本 x ^ \hat x x^,预测其标定 y ^ \hat y y^

注意力模型

本文使用参考集标定的加权和作为预测:
y ^ = ∑ i = 1 k a ( x ^ , x i ) y i \hat y = \sum_{i=1}^ka(\hat x, x_i)y_i y^=i=1ka(x^,xi)yi

充当权重的注意力函数 a a a是softmax形式,用其他所有参考集样本归一化:
a ( x ^ , x i ) = exp ⁡ [ C ( f ( x ^ ) , g ( x i ) ) ] ∑ j = 1 k exp ⁡ [ C ( f ( x ^ ) , g ( x j ) ) ] a(\hat x, x_i)=\frac{\exp [C(f(\hat x),g(x_i))]}{\sum_{j=1}^k \exp [C(f(\hat x),g(x_j))]} a(x^,xi)=j=1kexp[C(f(x^),g(xj))]exp[C(f(x^),g(xi))]

C C C是余弦距离,用于比较测试样本 x ^ \hat x x^和参考样本 x i x_i xi的相似度。

f , g f,g f,g分别是测试样本和参考样本的特征提取函数(论文里称为embedding),使用深度网络实现,以下逐一说明。

参考样本特征g

首先使用一个简单的网络(例如VGG或者Inception)提取单个样本的原始特征 g ′ ( x i ) g'(x_i) g(xi)

每个样本

  • 11
    点赞
  • 47
    收藏
    觉得还不错? 一键收藏
  • 11
    评论
评论 11
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值