Few-Shot 学习

综述

人类非常擅长通过极少量的样本识别一个新物体,比如小孩子只需要书中的一些图片就可以认识什么是“斑马”,什么是“犀牛”。在人类的快速学习能力的启发下,研究人员希望机器学习模型在学习了一定类别的大量数据后,对于新的类别,只需要少量的样本就能快速学习,这就是 Few-shot Learning 要解决的问题。

Few-shot Learning 是 Meta Learning 在监督学习领域的应用。Meta Learning,又称为 learning to learn,在 meta training 阶段将数据集分解为不同的 meta task,去学习类别变化的情况下模型的泛化能力,在 meta testing 阶段,面对全新的类别,不需要变动已有的模型,就可以完成分类。

简而言之:Few-shot Learning并不是使模型学会直接对输入的样本进行分类的能力,而是学会判断事物异同的能力

例如:
在下面的训练集训练模型,从而使得模型具有了判断事物异同的能力。
在这里插入图片描述
用下面的输入样本测试:
模型在训练集并没有见过松鼠,它也不能识别出下面的两个输入样本都是松鼠这一类别,但是模型可以知道这两个样本是同一类别。

在这里插入图片描述现在我们将这种判断事物异同的能力进行推广,从而达到识别样本类别的能力。
几个概念:
支持集(support set):包含着少量标注的样本。
查询集(query set):包含着未标注的样本,和支持集的类别空间一致。
我们的目的是要知道查询集中样本的类别,那么我们需要给模型相应的支持集(含有类别信息),然后将查询集的中的每一个样本与支持集中的每一个样本送进模型,得到它们的相似程度,并根据相似程度来判断查询集的每一个样本所属的类别。

例如下面的query只1个样本:水獭
support set也只有6个样本,将query的样本和support set中的6个样本呢依次比较,从而得出query的样本属于水獭这一类别。
在这里插入图片描述

K-way&n-shot:

K-way:表示支持集包含着K个类别
n-shot:每个类别有n个标注样本

在这里插入图片描述

网络训练:

网络是孪生网络,两个f是同一个网络(参数共享),用来提取特征。
在这里插入图片描述

测试:

1.首先输入support set,提取特征并送入网络层进行均值化(有点平均人脸的意思),得到各类别的μ。
在这里插入图片描述
2.将query送进网络
在这里插入图片描述3.M是上面图片得到的结果,就是三个样本的μ堆在一起的矩阵。
p就是将q与三个μ进行相似度比较(在这里就是做余弦相似度计算),最后选择相似度最大的样本类别作为q的类别。
在这里插入图片描述

few-shot ——Shusen Wang 学习视频1
few-shot ——Shusen Wang 学习视频2
few-shot ——Shusen Wang 学习视频3

其他的,随后慢慢补充。

  • 4
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值