Sinusoid Regression, Omniglot, CIFAR-FS, MiniImageNet
收藏github2020-02-22 更新2024-05-31 收录
下载链接:
https://github.com/greentfrapp/fewshot-datasets
下载链接
链接失效反馈官方服务:
资源简介:
这些数据集用于少样本学习,包括正弦回归任务、Omniglot字符数据集、CIFAR-FS图像数据集和MiniImageNet图像数据集。每个数据集都有详细的下载和预处理指导。
These datasets are utilized for few-shot learning, encompassing tasks such as sine regression, the Omniglot character dataset, the CIFAR-FS image dataset, and the MiniImageNet image dataset. Each dataset is accompanied by comprehensive guidelines for downloading and preprocessing.
创建时间:
2018-08-24
原始信息汇总
数据集概述
1. Sinusoid Regression
- 生成方式: 通过
data_generator.py脚本生成。
2. Omniglot
- 下载与准备: 从https://github.com/brendenlake/omniglot下载数据集,将
images_background和images_evaluation提取到data/omniglot_resized目录。 - 图像处理: 使用
resize_images.py脚本将图像调整为28x28像素。
3. CIFAR-FS
- 下载与准备: 从http://www.cs.toronto.edu/~kriz/cifar.html下载CIFAR-100数据集,提取到
data/cifar目录。 - 图像处理: 使用
proc_images.py脚本处理图像,调整图像为通道最后格式,并存储在test,train和val文件夹中。
4. MiniImageNet
- 下载与准备: 从Google Drive链接下载数据集,提取到
data目录,替换现有的miniImagenet文件夹。 - 预处理: 数据集已预先分割为
test,val和train文件夹,并已调整大小。
5. 数据集生成与管理
-
数据生成: 使用
data_generator.py中的make_data_tensor方法生成训练任务,可随机选择类和样本来创建N-way k-shot任务。 -
数据存储: 可通过指定
--save和其他任务特定标志来保存训练集,例如:$ python data_generator.py --save --savepath=my_training_set.pkl --datasource=cifar --num_classes=5 --num_shot_train=1 --num_shot_test=1
-
数据加载: 使用
load=True和savepath参数加载预先生成的数据集。
6. 使用DataGenerator
- 回归任务: 初始化
DataGenerator对象,生成样本和标签,并使用sess.run传递给tf.placeholder变量。 - 分类任务: 初始化
DataGenerator对象,生成样本和标签为Tensorflow张量,直接传递给网络层,无需tf.placeholder。
搜集汇总
数据集介绍

构建方式
该数据集的构建方式涉及使用Python脚本进行图像的下载、处理和存储。例如,Omniglot数据集需要从指定链接下载并解压到特定目录,然后通过脚本进行28x28像素的缩放处理。CIFAR-FS和MiniImageNet数据集的构建则需下载相应的数据集文件,并通过脚本进行格式转换和切分,以适应元学习任务的需求。
特点
这些数据集均为few-shot学习领域常用的基准数据集,具有以下几个特点:1)均适用于小样本学习任务,能够评估模型在仅有少量样本情况下的泛化能力;2)数据集包含了多种类别,能够支持多类别的分类任务;3)部分数据集如Omniglot和MiniImageNet提供了背景和评估图像,可用于不同场景下的模型评估。
使用方法
使用这些数据集时,首先需要通过相应的Python脚本对图像进行预处理。之后,利用`DataGenerator`类生成N-way k-shot任务,并可以通过TensorFlow的队列机制高效地传递数据。在训练过程中,可以选择保存生成的任务,以便后续快速加载,提高实验效率。具体使用时,根据任务类型(回归或分类)和数据集特点,初始化`DataGenerator`对象,并生成相应的数据张量,进而进行模型训练和评估。
背景与挑战
背景概述
Sinusoid Regression, Omniglot, CIFAR-FS, MiniImageNet这四个数据集均为few-shot学习领域的重要资源。Few-shot学习是机器学习中的一个研究热点,旨在使模型能够在仅获得少量样本的情况下快速适应新任务。Sinusoid Regression数据集用于回归任务的few-shot学习,而Omniglot、CIFAR-FS和MiniImageNet则用于图像分类任务。这些数据集的创建时间虽未明确指出,但根据few-shot学习的兴起时间,推测应起源于2010年代中期。主要研究人员或机构包括Chelsea Finn等知名学者。这些数据集对相关领域的研究产生了深远影响,推动了模型在少量样本学习方面的进展。
当前挑战
这些数据集在构建和使用过程中面临的挑战包括:1) 如何在少量样本上训练出具有泛化能力的模型,这是few-shot学习领域的主要挑战;2) 数据集的构建过程中,如何保证数据的多样性和平衡性,以及如何高效地生成训练任务,例如CIFAR-FS和MiniImageNet数据集在生成训练任务时需要较长时间;3) 在使用过程中,如何避免因加载错误的pickle文件而导致模型训练失败等潜在问题。
常用场景
经典使用场景
在机器学习领域,特别是少样本学习中,Sinusoid Regression, Omniglot, CIFAR-FS, MiniImageNet等数据集被广泛用于评估模型的泛化能力。这些数据集通过提供少量的样本,模拟了现实世界中的情景,其中模型需要在信息极度有限的情况下进行有效的学习和预测。
解决学术问题
这些数据集解决了传统机器学习需要大量数据才能训练模型的问题,为研究者在少样本学习领域提供了实验基础。它们帮助推动了元学习(meta-learning)的发展,使得模型能够通过少量的样本快速适应新任务,这对于现实世界中的应用具有重要意义。
衍生相关工作
基于这些数据集,研究者们衍生出了许多相关工作,如改进的少样本学习算法、跨领域的模型迁移学习等。这些研究不仅推动了机器学习理论的进步,也为实际应用提供了更多可能性。
以上内容由遇见数据集搜集并总结生成



