俱乐部网站 模板,深圳宝安通网站建设,海纳企业网站建设,wordpress 首页访问量小样本学习介绍
本文首先介绍了什么是小样本学习#xff0c;其次介绍了为什么小样本学习的很多文章都采用元学习的方法。目的是通过通俗的解释更加清楚的介绍小样本学习是什么#xff0c;适合初学者的入门。当然#xff0c;以下更多的是自己的思考#xff0c;欢迎交流。
…小样本学习介绍
本文首先介绍了什么是小样本学习其次介绍了为什么小样本学习的很多文章都采用元学习的方法。目的是通过通俗的解释更加清楚的介绍小样本学习是什么适合初学者的入门。当然以下更多的是自己的思考欢迎交流。
什么是小样本学习
当我开始接触“小样本”这个术语的时候给我的第一感觉就是他的数据集很小这也是我入坑小样本学习最开始的原因以为炼丹不需要太久相信很多人有个同样的感觉但是事实上并不是这样的在我将小样本学习这一方向介绍给自己的同门或者其他同学的过程中我发现很多人也都对小样本有着同样的误解。实际上小样本的“小”并不是体现在数据集上。相反小样本的数据集是很大的比如常用的mini-imagenet有6万张图片更大的tiered-ImageNet有779165张图片所以说数据集并不小。
那么小样本的这个“小”体现在哪里呢
这个小其实是针对小样本学习的特定任务而言的比如我在下图例举的five-way one-shot的任务way代表类别的数量shot代表每个类别有几张图片five-way one-shot指的就是有五个类别每个类别有一张图片five-way one-shot任务中定义了两个集合分别是支持集和查询集小样本学习的任务的目标就是判断查询集的图片是属于支持集中哪一个类别的。讲到这里大家可能就明白了小样本学习的“小”并不是体现在数据量小。而是体现在小样本学习这一特殊任务设定即每个类别n-way只有少量的标记图片k-shot也就是我们的支持集要求我们的模型能根据这几张少量的图片判断查询集图片的类别。 为什么元学习能应用到小样本学习
首先简单的介绍一下什么是元学习元学习 (Meta-Learning) 是一种机器学习方法其目标是使计算机系统能够学习如何学习。简单来说它是关于如何构建和设计机器学习系统的更高层次的学习方法。元学习的一个重要目标是提高机器学习系统的泛化能力泛化能力是指一个机器学习系统能够从已知的数据中推广到未知的数据。通过元学习我们可以训练模型具有更好的泛化能力从而可以更准确地预测未来的数据。 单从元学习的定义来说我们很难将元学习和小样本学习联系到一起。所以很快就能提出疑问
为什么大多数的小样本学习的方法大多数都采用元学习的训练策略呢
在上一节我们提到小样本学习的任务的目标就是判断查询集的图片是属于支持集中哪一个类别。也就是说我们的目标是判断查询集的图片是属于支持集中哪一个类别如下图所示小样本学习的测试方式与传统的训练模型的方式是不同的其本质上是一种匹配任务将查询集中的图片匹配到对应的支持集。既然小样本学习的任务目标是如此那么我们在小样本学习任务的训练过程中为什么不模拟这一测试的过程n-way k-shot呢于是我们在小样本学习训练的过程中采用元学习的训练策略即将训练集划分为支持集和查询集模拟测试时的小样本场景相当于划分成一个又一个的小样本学习任务也叫episode每一个任务都是一个测试场景下的few-shot task通过这种方式就能更好的训练小样本模型论文实验证明效果确实好。 讲到这里相信大家都清楚了为什呢我们要在训练的时候将小样本学习的训练集划分成支持集和查询集进行训练如上图所示。同时也从根本上了解了为什么小样本学习的训练策略元学习的训练策略与一般的深度学习模型的训练策略的不同。更进一步来说拿mini-imagenet数据集来举例。mini-imagenet本身有100个类我们通常将前64个类划分为训练集16个类划分为验证集20个类划分为测试集。同时我们对训练集、验证集和测试集进行进一步的划分拿5-way 1-shot任务而言我们首先会随机选取5个类并在每个类中选取一张图片也就是5way-1shot然后再分别从选取的5个类中每个类别选取15张图片得到了75张图片作为查询集15*575。在训练的过程中通过不断判断查询集图片的类别进行有监督的loss的方向传播更新我们的模型当然这里并不一定每个类别抽取15张图片也可以是其他的数量的图片不过大多数论文都使用15这个数量目的是更多的query能带来更多的loss的更新但是query图片太多也不好会导致support图片的数量变少总体的episode的数量变少。所以说二者之间需要有一个权衡。我本人也做过一些尝试性的实验query图片数量在15上下得到的结果是最优的。
以上就是对小样本学习的一个总体介绍后续我会不断的更新小样本学习相关的系列工作其中也会穿插自己的拙见就此落笔。