深度学习最大的诟病就是靠海量的数据就行驱动,与人的认知过程不一样,人可以只通过少量的训练样本就可以快速泛化到目标任务上。受人认知过程的影响。小样本学习被提出并成为当前一个比较热门的研究领域,但问题来了,做cv任务的话深度学习强大的特征表示能力还是很牛掰的。人们希望既能用上DCNN的特征表示能力又能做小样本,吐槽一下学术界对小样本的设置N-way K-shot,虽然每一个任务下样本很少,但是采样的方式就是一堆排列组合的方式。样本是少了,但任务多了。
小样本图像分类现阶段主要的解决方法有三种:首先就是样本少了怎么办,最直接的方法就是数据增强,这个地方数据增强又可划分为两类,基于内部数据的数据增强与基于外部数据的数据增强。其次就是元学习的方法,为了学习而学习。元学习强调的的是元知识的表征,与迁移学习目的一样。但各自强调的点又不一样。最后就是迁移学习了。
说了一堆废话。原型网络属于元学习中的一个方法,基于度量的元学习方法。针对小样本分类问题提出了原型网络。在训练集中,对于每一种出现的类别,只给出少量样本,但分类器能够很好的泛化到其他没有出现于训练集中的新类别。原型网络会学习一个度量空间,在该空间中,可以通过计算与每个类的对应原型表示的距离来进行分类,距离哪个类的原型表示最近,则被判断为哪个类。与其他小样本学习方法相比,该方法反映了一种更简单的归纳偏差,有利于在这种有限的数据范围内使用,并取得优异的效果。论文表明一些简单的设计决策比最近涉及复杂体系结构选择和元学习的方法可以产生较好的改进效果。
接下来对该论文进行复现。
给个代码链接code
论文链接paper
代码复现
ubuntu或windows下复现都一样,默认有计算资源。
ubuntu下或windows需要搭建环境
conda create -n prototypi

探讨了深度学习在小样本图像分类中的挑战,重点介绍了原型网络作为元学习方法如何利用DCNN特征并解决N-wayK-shot问题。文章复现了基于miniImageNet的原型网络实现,展示了其在数据稀缺情况下的高效泛化能力。
最低0.47元/天 解锁文章
5974





