ICLR2020|迄今为止最大规模,Google 推出针对少样本学习的 Meta 数据集

ICLR2020|迄今为止最大规模,Google 推出针对少样本学习的 Meta 数据集


标注数据受限,Google发布少样本学习数据集


大量样本标签是大部分有监督学习为了达到良好的训练结果所需的必要条件,然而,这一特性,往往使得其在现实世界中的应用中有较大的局限性。


因此,越来越多的人选择研究人员选择进行少样本(Few-Shot)学习的研究。而在此领域中,一个很成熟的例子就是少样本图片分类问题:从一少部分有代表性的图片中学习新的类别。


将人类学习与机器学习进行对比,人可以从少量样本中快速学习到新的信息和知识,而这对于机器来说却很难,我们可以使用理论的角度来分析这一明显的差距。除此之外,从应用角度出发,少样本学习也是一件非常重要的事情。


因为在现实世界中,我们并不能总是得到拥有大量标注样本的数据集,因此,如果我们可以解决这一问题,就可以让我们以更快的速度来根据的需求,进行模型的自定义和实现。事实上,目前针对少样本学习的研究已经成爆炸速度增长,但是前人的基准测试并不能可靠地评估不同模型的相对优点,因此阻碍了研究的进展。


而 Google 在 ICLR2020 就发布了他们在少样本学习的新成果:「元数据集:学会从少样本中学习的数据集」,下面是论文链接:


https://openreview.net/forum?id=rkgAGAVKPr


ICLR2020|迄今为止最大规模,Google 推出针对少样本学习的 Meta 数据集


在这篇论文中,Google 研究人员提出了一种大规模且多样化的基准,用于衡量现实中具有挑战性的少数几个图像分类模型的能力,从而提供了一个可以研究少样本分类不同方面的框架。


这个框架由 10 个开源的自然图像(包括 ImageNet,CUB-200-2011,Fungi 等),手写字符以及涂鸦数据集组成。


http://www.image-net.org/


ICLR2020|迄今为止最大规模,Google 推出针对少样本学习的 Meta 数据集


http://www.vision.caltech.edu/visipedia/CUB-200-2011.html


ICLR2020|迄今为止最大规模,Google 推出针对少样本学习的 Meta 数据集


https://github.com/visipedia/fgvcx_fungi_comp


ICLR2020|迄今为止最大规模,Google 推出针对少样本学习的 Meta 数据集


Google 也将本篇论文的代码开源出来:


https://github.com/google-research/meta-dataset


ICLR2020|迄今为止最大规模,Google 推出针对少样本学习的 Meta 数据集


与此同时,研究人员还专门制作了一个使用文档,用来证明 Meta-Dataset 在 Tensorflow 和 Pytorch 上通用:


https://github.com/google-research/meta-dataset/blob/master/Intro_to_Metadataset.ipynb


ICLR2020|迄今为止最大规模,Google 推出针对少样本学习的 Meta 数据集


在接下来的文章中,我们会介绍初步研究的结果,并强调一些重要的研究方向。


背景:少样本情况下图像分类困难


在标准图像分类任务中,我们使用一组属于特定类别的一组图像进行模型的训练,然后使用相同类别的图像进行测试,然而,针对测试过程中遇到的全新类别问题,我们却无法很好的应对和处理少样本情况下的图像分类问题。


具体来说,在少样本分类任务中,训练集中包含的类与测试时出现的类完全不相交。因此,此任务的目的就是学习一种灵活的模型,并在仅有几个样本的情况下,就可以轻松的将模型应用在新类别的分类中。


最终目标则是在各种测试任务中都有良好的表现,其中的每项任务中,都会在测试类别集合中出现之前未出现的类。


每个测试任务中,都会包含一个支持的标签图像集,模型可以从这个集合中,获取新类的信息,以及不相交的样本查询集合,然后使用模型进行分类。


在本文提出的元数据集中,研究人员还研究了对全新数据集的归纳,在训练过程中将看不到任何类别的图像。


与前人基准对比:比 Mini—ImageNet 能更好地获取多样化信息,快速解决不同任务


用于研究少样本分类的流行数据集是 mini-ImageNet,它是用 ImageNet 数据集的类别进行下采样后获得的。这个数据集包括 100 个类别,并被划分为训练集,验证集和测试集。


针对 Mini-ImageNet,尽管在测试过程中并没有涉及到训练过程中的类别信息,但是它依旧在视觉上与训练过程相似。


之前的工作表明,这一点使得模型只需要简单的在测试过程中重复利用训练时期所学到的特征,就可以达到很好的效果,而无需证明从支持集中提供的少量样本中重新学习的能力。


与此相反的是,Meta-Dataset 则可以在训练过程中获取到多样化的信息,并且快速的将其用来在测试过程中解决完全不同的任务,这些任务可能来自于完全看不到的数据集。


ICLR2020|迄今为止最大规模,Google 推出针对少样本学习的 Meta 数据集


前人的论文主要研究了在 mini—ImageNet 的训练过程以及在不同数据集上的测试,而 Meta-Dataset 则代表了迄今为止最大规模的,针对少样本图像分类的跨数据集基准。


同时,它还引入了一种采样算法,通过改变每个任务中的类别数量以及每个类的可用样本数,引入类不平衡以及对于以及在某些数据集中改变类之间的相似度,来生成具有特征和难度的任务。其中,元数据集的一些示范测试任务如下所示:


ICLR2020|迄今为止最大规模,Google 推出针对少样本学习的 Meta 数据集


Meta-Dataset 初探:异构数据训练难,数据量影响模型性能排序,自适应算法作用突出


我们在元数据集上,在两个主要的少样本学习模型——预训练和元学习上进行了基准测试,通过评估在元数据集上的预训练和元学习模型,我们总结了一些得到的发现:


(1)现有方法难以利用异构训练数据


我们比较了仅使用 ImageNet 的训练类的训练模型(来自预训练和元学习方法)与使用 Meta-Dataset 中数据集中的所有训练类的训练模型,以便通过使用更广泛的训练数据集而获得泛化收益。我们之所以选择 ImageNet,是因为 ImageNet 上学习的功能可以轻松转移到其他数据集。


人们可能希望对更多数据进行训练(尽管是异构的),可以更高的推广到训练集。然而,事实并非总是如此。


具体而言,下图显示了不同模型在元数据集的十个数据集的测试任务上的准确性:


ICLR2020|迄今为止最大规模,Google 推出针对少样本学习的 Meta 数据集


我们观察到,在对所有数据集(而不是仅对 ImageNet)进行训练后,来自手写字符/涂鸦(Omniglot 和 Quickdraw)的测试任务得到了显著提高。这很合理,因为这些数据集在视觉上与 ImageNet 明显不同。


但是,对于自然图像数据集的测试任务,仅通过在 ImageNet 上进行训练,就可以获得类似的准确性,这表明当前的模型无法有效利用异构数据来改善这一方面。


(2)某些模型在测试中对数据的利用更充分


研究者根据每个测试任务中可用样本的数量来分析不同模型的性能,发现了一个有趣的现象:不同模型在特定数量的训练样本下效果最佳。


研究者观察到,当可用的样本很少时,某些模型会胜出其他模型,但是如果给出更多的样本,则没有太大的改进,而其他模型虽然并没有非常适合仅需要很少样本的任务,但是随着样本量增加,它会以更快的速度提高(例如 Finetune 基准)。


但是,由于在实践中,我们很可能事先不知道在测试时可以使用的样本数量,因此,研究者希望设计一种可以最好地利用任意数量样本的模型,并避免上述情况所存在的问题。


ICLR2020|迄今为止最大规模,Google 推出针对少样本学习的 Meta 数据集


(3)元学习器的自适应算法与其端到端训练(即元学习训练)相比,对性能影响更大


研究者开发了一套新的基准,来衡量元学习的好处。具体来说,对于几个元学习模型,研究者考虑在预训练过程中进行特征提取的非元学习模型,之后,在评估中,将同样自适应算法应用在元学习模型的特征中。


ICLR2020|迄今为止最大规模,Google 推出针对少样本学习的 Meta 数据集


当只在 ImageNet 中,元学习通常会有所帮助,或者至少不会造成太大的不利影响,但是在所有数据集上进行训练时,结果则是好坏混合。这说明,未来的方向需要在理解和提高元学习的性能上作出努力,尤其是在跨数据集的情形下。


结论


元数据集(Meta-Dataset)为少样本分类带来了新的挑战。研究人员的初步探索,解释了现有方法的局限性,并表明需要进行进一步的研究。


在非元学习领域,最近的工作已经有了一些很不错的成果,例如使用针对任务的巧妙设计,以及更复杂的超参数调整,结合预训练和元学习优势的「元基线」。研究者希望元数据集可以对机器学习这一重要子领域的研究起到更大的推动作用。 

上一篇:Selenium 利用javascript 控制滚动条


下一篇:Hyperledger Fabric C#链码开发指南