跨域小样本系列2:常用数据集与任务设定详解

news2025/1/10 3:16:55

来源:投稿 作者:橡皮
编辑:学姐

带你学习跨域小样本系列1-简介篇

跨域小样本系列2-常用数据集与任务设定详解(本篇)

跨域小样本系列3:元学习方法解决CDFSL以及两篇SOTA论文讲解

跨域小样本系列4:finetune方法解决CDFSL以及两篇SOTA论文讲解

跨域小样本系列5:除此之外一些奇门异路的论文讲解

引言

在上一期主要介绍了关于小样本学习的基本概念以及在不同领域其不可忽视的实际作用。当我们对一个机器学习任务的定义有了初步了解之后,下一步需要去做的就是接触任务所使用的数据集,一般分为两类:真实自定义数据集和公开数据集。

前者主要面向业界的具体落地应用,而后者主要面向学术界的state-of-the-art迭代,通常来讲在公开数据集上的算法更新速度快,自定义数据集的设定其实是根据具体任务并最大程度上追求接近公开数据集的结构。因此,在此总结了较常用的5个公开数据集,方便从学术探究角度的入门理解以及代码复现。

说明

对于小样本学习的公开数据集是否被学术界认可/是否为常用的选择依据均来自paper with code的分类任务排行榜[https://paperswithcode.com/task/few-shot-image-classification]

关于FSL数据集设置

小样本学习的目标是使用数量较少的训练集来构建准确的机器学习模型,可用数据的设定上与其他数据集也不尽相同。

1.Imagenet

Imagenet作为对深度学习领域推动力最大的图像分类数据集,同样也在小样本学习的分类任务中有着不小的贡献。基于Imagenet进行修改设定适用于小样本学习任务的数据集有:Imagenet-1K, mini-Imagenet, tiered-Imagenet。

ImageNet-1K Challenge数据集采样于ImageNet数据集,共包含1000类别。使用中通常划分为基础数据集(389个类别)和新样本数据集(611种)。

[paper]Hariharan B, Girshick R. Low-shot visual recognition by shrinking and hallucinating features[C]//Proceedings of the IEEE International Conference on Computer Vision. 2017: 3018-3027.

[Download] http://www.image-net.org/

Mini-ImageNet数据集是从ImageNet数据集中采样了60000张图像构成,共包含100类别,每个类别600张图像,图像的尺寸为84*84。在实际的使用中,通常选择其中80类的图像作为训练集,剩余20类的图像作为验证集。也有的文章将其分为基础集(Base Class,64种),验证集(Validation Class,16种)和新类别集(Novel Class,20种)。

[paper]Vinyals O, Blundell C, Lillicrap T, et al. Matching networks for one shot learning[C]//Advances in neural information processing systems. 2016: 3630-3638.是由 Matching Networks for One Shot Learning [NeurIPS 2016]

[Download]https://pan.baidu.com/share/init?surl=bQTtrkEgWfs_iaVRwxPF3Q(33e7)

Tiered Imagenet数据集也是从ImageNet数据集中选取的,包含34个大类(Categories),每个大类有包含10-30个小类(Classes),每个类别有数量不等的多个图像样本,共计608个类别,779165张图像(平均每个类别包含1281张图片)。34个大类可划分为训练集(20大类),验证集(6大类)和测试集(8大类)。

[paper] Ren M, Triantafillou E, Ravi S, et al. Meta-learning for semi-supervised few-shot classification[J]. arXiv preprint arXiv:1803.00676, 2018.

[Download]https://link.zhihu.com/?target=https%3A//drive.google.com/uc%3Fexport%3Ddownload%26confirm%3D_SLS%26id%3D1g1aIDy2Ar_MViF2gDXFYDBTR-HYecV07

2.CIFAR

CIFAR数据集同样能够通过使用生成mini-ImageNet的相同标准从CIFAR-100(Krizhevsky & Hinton, 2009)中随机抽取的。 平均类间相似度很高,对目前的技术水平是个挑战。此外,32×32的有限原始分辨率使任务更加困难,同时也允许快速的原型设计。由此衍生出两种用于小样本异常检测的CIFAR数据集。

CIFAR-FS

CIFAR-FS数据集全称为CIFAR100 Few-Shots数据集,是来自于CIFAR 100数据集,共包含100类别,每个类别600张图像,合计60,000张图像。使用中通常划分为训练集(64种),验证集(16种)和测试集(20种),图像尺寸统一为32*32。

[paper]Bertinetto L, Henriques J F, Torr P H S, et al. Meta-learning with differentiable closed-form solvers[J]. arXiv preprint arXiv:1805.08136, 2018.

[Download] https://pan.baidu.com/share/init?surl=HqRUw3dmsMBInt_Fh3J_Uw (ub38)

CIFAR100

FC100数据集全称是Few-shot CIFAR100数据集,与上文的CIFAR-FS数据集类似,同样来自CIFAR100数据集,共包含100类别,每个类别600张图像,合计60,000张图像。

但不同之处在于 FC100不是按照类别(Class)进行划分的,而是按照超类(Superclass)进行划分的。共包含20个超类(60个类别),其中训练集12个超类,验证集4个超类(20个类别),测试集4个超类(20个类别)。

[paper] Oreshkin B, López P R, Lacoste A. Tadam: Task dependent adaptive metric for improved few-shot learning[C]//Advances in Neural Information Processing Systems. 2018: 721-731.

[Download] https://pan.baidu.com/share/init?surl=Wnlp1-obKsMLcHITYQ1CLg (kcd6)

3.CUB 200

Caltech-UCSD Birds-200-2011(CUB-200-2011)数据集是最广泛使用的细粒度视觉分类任务的数据集。它包含了属于鸟类的200个子类别的11,788幅图像,其中5,994幅用于训练,5,794幅用于测试。每张图片都有详细的注释。

1个子类别标签,15个部位位置,312个二元属性和1个边界框。文字信息来自于Reed等人。他们通过收集细粒度的自然语言描述来扩展CUB-200-2011数据集。每张图片都收集了10个单句描述。

自然语言描述是通过Amazon Mechanical Turk(AMT)平台收集的,要求至少有10个单词,没有任何子类别和动作的信息。

4.Meta-Dataset

Meta-Dataset基准是一个大型的小样本学习基准,由不同数据分布的多个数据集组成。它并不限制小样本任务有固定的种类和数量,因此代表了一个更真实的场景。它由来自不同领域的10个数据集组成。

  • ILSVRC-2012(ImageNet数据集,由1000个类别的自然图像组成)。

  • Omniglot(手写的字符,1623个类别)

  • Aircraft(飞机图像的数据集,100个类别)

  • CUB-200-2011(鸟类的数据集,200个类别)

  • Describable Textures(不同种类的纹理图像,有43个类别)

  • Quick Draw(345个不同类别的黑白草图)

  • Fungi (一个大型的蘑菇数据集,有1500个类别)

  • VGG Flower(有102个类别的花图像数据集)。

  • Traffic Signs(德国交通标志图像,有43个类别)

  • MSCOCO(从Flickr收集的图像,80个类别)。

除了Aircraft和MSCOCO,所有的数据集都有训练、验证和测试部分(比例大致为70%、15%、15%)。Aircraft和MSCOCO数据集只保留用于测试。

[paper]Triantafillou E, Zhu T, Dumoulin V, et al. Meta-dataset: A dataset of datasets for learning to learn from few examples[J]. arXiv preprint arXiv:1903.03096, 2019.

[Download]https://github.com/google-research/meta-dataset

5.Omniglot

Omniglot数据集是为开发更像人类的学习算法而设计的。它包含来自50个不同语言的1623个不同的手写字符。这1623个字符中的每一个都是由20个不同的人通过亚马逊的Mechanical Turk在线绘制的。每张图片都与笔画数据配对,这是一个[x,y,t]坐标序列,时间(t)为毫秒。使用中通常选择1200种字符作为训练集,剩余的423种字符作为验证集,并通过旋转90°,180°和270°进行数据集扩张,每张图片通过裁剪将尺寸统一为28*28。

[paper]Lake B, Salakhutdinov R, Gross J, et al. One shot learning of simple visual concepts[C]//Proceedings of the annual meeting of the cognitive science society. 2011, 33(33).

[Download]https://github.com/brendenlake/omniglot

以上即为五大类数据集中的8小类专门用于小样本学习算法和模型评估的公开数据集的基本介绍和下载地址。

在进入下一节学习具体的小样本算法之前,建议先阅读提出数据集的论文,先将作者对于不同数据集在小样本学习中所注重的侧重点搞清楚。

下期介绍元学习方法解决CDFSL以及两篇SOTA论文讲解

点击下方卡片关注《学姐带你玩AI》别错过!🚀🚀🚀

码字不易,欢迎大家点赞评论收藏!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/333159.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Unity 如何实现游戏Avatar角色头部跟随视角转动

文章目录功能简介实现步骤获取看向的位置获取头部的位置修改头部的朝向限制旋转角度超出限制范围时自动回正如何让指定动画不受影响功能简介 如图所示,当相机的视角转动时,Avatar角色的头部会同步转动,看向视角的方向。 实现步骤 获取看向的…

企业数字化转型的产品设计思路

数字化转型的核心是全面重塑企业的管理模式和经营模式,是迈向数字经济时代的方式。一、到底什么是数字化转型?数字化转型并不神秘。数字化转型是一种经营方式、一种经营理念,是将企业相关的人、物料、设备、资金等要素进行系统运转&#xff0…

命令模式包含哪些主要角色?怎样实现命令?

命令模式包含以下主要角色:抽象命令类(Command)角色: 定义命令的接口,声明执行的方法。具体命令(Concrete Command)角色:具体的命令,实现命令接口;通常会持有…

flex 布局相关属性的使用

简单概述 为元素添加 display:flex; 的属性后&#xff0c;当前元素被视为弹性布局的盒子容器(box)&#xff0c;其子元素被视为弹性布局项目(item)。item 会在 box 内灵活布局&#xff0c;解决了对齐、分布、尺寸等响应式问题。 演示 demo <template><div class&quo…

软中断在bottom-half中调用

https://www.bilibili.com/read/cv20785285/简介软中断可以在两个位置得到机会执行&#xff1a;硬中断返回前 irq_exit中断下半部 Bottom-half Enable后情景分析情景1spin_unlock_bh__raw_spin_unlock_bh__local_bh_enable_ip 打开Bottom-half&#xff0c;并让softirq有机会…

【NGINX入门指北】 进阶篇

nginx 进阶篇 文章目录nginx 进阶篇一、Nginx Proxy 服务器1、代理原理2、proxy代理3、proxy缓存一、Nginx Proxy 服务器 1、代理原理 正向代理 内网客户机通过代理访问互联网&#xff0c;通常要设置代理服务器地址和端口。 反向代理 外网用户通过代理访问内网服务器&…

xpath注入[NPUCTF2020]ezlogin

[NPUCTF2020]ezlogin 打开界面 如果发现自己输入的信息由这样构成&#xff0c;可以往xpath注入上靠一下。 不管输入什么&#xff0c;很容易发现登陆就超时了&#xff0c;说明这里token是不断刷新的。 这样构造也是一样的目的都是为了闭合后面的&#xff0c;为啥有两个or呢 us…

Redis中有常见数据类型

Redis的数据类型 string数据类型 string是redis最基本的类型&#xff0c;而且string类型是二进制安全的。意思是redis的string可以包含任何 数据&#xff0c;比如jpg图片或者序列化的对象 String类型是最基本的数据类型&#xff0c;一个redis中字符串value最多可以是512M r…

Allegro如何使用Snake命令走蛇形线操作指导

Allegro如何使用Snake命令走蛇形线操作指导 在做PCB设计的时候,遇到不规则BGA的时候,蛇形走线是惯用的走线方式,类似下图 Allegro支持蛇形走线,具体操作如下 首先把过孔打好,尽量上下左右间距一致,不容易出现偏差,如下图在Command命令栏下方输入snake,然后回车

常见字符串函数的使用,你确定不进来看看吗?

&#x1f466;个人主页&#xff1a;Weraphael ✍&#x1f3fb;作者简介&#xff1a;目前是C语言学习者 ✈️专栏&#xff1a;C语言航路 &#x1f40b; 希望大家多多支持&#xff0c;咱一起进步&#xff01;&#x1f601; 如果文章对你有帮助的话 欢迎 评论&#x1f4ac; 点赞&a…

2023年最强大的12款数据可视化工具,值得收藏

做数据分析也有年头了&#xff0c;好的坏的工具都用过&#xff0c;推荐几个觉得很好用的&#xff0c;避坑必看&#xff01; PS&#xff1a;一般比较成熟的公司里&#xff0c;数据分析工具不只是满足业务分析和报表制作&#xff0c;像我现在给我们公司选型BI工具&#xff0c;是做…

差分模拟信号转单端输出电路设计

需求分析&#xff1a; 1.差分输入0~16V -Vpp电压量&#xff1b; 2.输入频率0~1.2KHz&#xff1b; 3.单端对应输出0~3V的模拟量&#xff1b; 4.输出频率对应0~1.2KHz&#xff1b; 5.供电范围3~5V。 针对以上需求&#xff0c;设计如下图所示电路。 1.电路功能&#xff1a; …

Spring为什么这么火 之 Bean的6种作用域和Bean的生命周期

1、Bean的作用域 1.1、什么是作用域&#xff1f; 限定程序中变量的可用范围叫做作用域&#xff0c;或者说在源代码中定义变量的某个区域就叫做作用域 1.2、Bean的6种作用域 singleton&#xff1a;单例作用域prototype&#xff1a;原型作用域【多例作用域】request&#xff1…

Flowable进阶学习(九)数据对象DataObject、租户Tenant、接收任务ReceiveTask

文章目录一、数据对象DataObject二、租户 Tenant三、接收任务 ReceiveTask案例一、数据对象DataObject DataObject可以⽤来定义⼀些流程的全局属性。 绘制流程图&#xff0c;并配置数据对象&#xff08;不需要选择任意节点&#xff09; 2. 编码与测试 /*** 部署流程*/ Test…

C++类和对象(中)

✨个人主页&#xff1a; Yohifo &#x1f389;所属专栏&#xff1a; C修行之路 &#x1f38a;每篇一句&#xff1a; 图片来源 I do not believe in taking the right decision. I take a decision and make it right. 我不相信什么正确的决定。我都是先做决定&#xff0c;然后把…

java二叉排序树

1.先看一个需求 给你一个数列 (7, 3, 10, 12, 5, 1, 9)&#xff0c;要求能够高效的完成对数据的查询和添加 2.解决方案分析 使用数组 数组未排序&#xff0c; 优点&#xff1a;直接在数组尾添加&#xff0c;速度快。 缺点&#xff1a;查找速度慢. [示意图] 数组排序&#xf…

车道线检测-PolyLaneNet 论文学习笔记

论文&#xff1a;《PolyLaneNet: Lane Estimation via Deep Polynomial Regression》代码&#xff1a;https://github.com/lucastabelini/PolyLaneNet地址&#xff1a;https://arxiv.org/pdf/2004.10924.pdf参考&#xff1a;https://blog.csdn.net/sinat_17456165/article/deta…

Java中的clone方法

注解定义&#xff1a; 注解是一种注释机制&#xff0c;它可以注释包、类、方法、变量、参数&#xff0c;在编译器生成类文件时&#xff0c;标注可以被嵌入到字节码中。注解的分类&#xff1a;内置注解Override :重写方法&#xff0c;引用时没有该方法时会编译错误public class …

使用 ThreeJS 实现第一个三维场景(详)

文章目录参考描述index.html三维场景的基本实现导入 ThreeJS准备工作场景摄像机视锥体正交摄像机透视摄像机渲染器后续处理将摄像机添加至场景中移动摄像机设置画布尺寸将渲染器创建的画布添加到 HTML 元素中渲染物体结构材质合成将物体添加至场景中代码总汇执行效果动画reques…

Python基础及函数解读(深度学习)

一、语句1.加注释单行注释&#xff1a;&#xff08;1&#xff09;在代码上面加注释&#xff1a; # 后面跟一个空格&#xff08;2&#xff09;在代码后面加注释&#xff1a;和代码相距两个空格&#xff0c; # 后面再跟一个空格多行注释&#xff1a;按住shift 点击三次"&am…