小样本学习数据集
时间: 2025-07-19 14:13:59 浏览: 8
在小样本学习(Few-shot Learning)领域,研究人员通常使用一些标准的小规模数据集来进行实验和评估。这些数据集设计用于测试模型在仅有少量样本的情况下能否有效进行学习和泛化。以下是一些常见的用于小样本学习的小规模数据集:
### 1. **Omniglot 数据集**
Omniglot 数据集是小样本学习中最常用的基准数据集之一。它包含来自 50 个不同字母系统的 1623 个手写字符,每个字符由不同的人绘制,总共约 16000 张图像。每张图像的大小为 105×105 像素,具有高度的类间多样性。Omniglot 数据集特别适合用于评估 one-shot 或 few-shot 分类任务[^1]。
### 2. **miniImageNet 数据集**
miniImageNet 是 ImageNet 的一个子集,包含 100 个类别,每个类别有 600 张图像,图像大小为 84×84 像素。通常将这些类别划分为 64 个训练类、16 个验证类和 20 个测试类。该数据集广泛用于评估 few-shot 图像分类任务,尤其是在元学习(meta-learning)框架下[^1]。
### 3. **tieredImageNet 数据集**
tieredImageNet 是 ImageNet 的另一个子集,相较于 miniImageNet,它的类别划分更加复杂,训练集、验证集和测试集之间的类别在语义上更加分离,从而更具挑战性。该数据集包含 608 个类别,划分为 34 个超类,适用于评估模型在更复杂的语义层次上的 few-shot 学习能力[^1]。
### 4. **CUB-200-2011 (Caltech-UCSD Birds) 数据集**
CUB-200-2011 数据集包含 200 种鸟类的图像,共 11788 张图像。每张图像标注了详细的属性信息,如鸟喙形状、羽毛颜色等。该数据集常用于细粒度分类任务,也适用于 few-shot 学习的研究,尤其是在结合属性信息进行元学习的场景中[^3]。
### 5. **FC100 (Fewshot Colorful Dataset)**
FC100 是基于 CIFAR-100 构建的一个 few-shot 学习数据集,包含 100 个类别,每个类别有 600 张图像。这些类别被划分为训练集(60 类)、验证集(20 类)和测试集(20 类)。图像大小为 32×32 像素,适用于轻量级模型的 few-shot 图像分类实验[^1]。
### 6. **Aircraft 数据集**
Aircraft 数据集包含 100 种不同型号的飞机图像,共 10246 张图像。该数据集主要用于细粒度分类任务,也适用于 few-shot 学习的研究,尤其是在需要高精度特征提取的场景中。
### 7. **Plant Seedlings 分类数据集**
该数据集包含不同种类的植物幼苗图像,适用于农业和植物识别任务。数据集中每个类别的样本数量较少,非常适合用于 few-shot 学习的实际应用研究。
### 8. **EuroSAT 数据集**
EuroSAT 是一个遥感图像数据集,包含 27,000 张卫星图像,涵盖 10 种土地使用类型。虽然整体数据集较大,但可以从中抽取子集用于 few-shot 学习任务,尤其是在地理信息系统的应用中。
### 示例代码:加载 Omniglot 数据集(使用 PyTorch)
```python
from torchvision import datasets, transforms
from torch.utils.data import DataLoader
# 定义图像转换操作
transform = transforms.Compose([
transforms.Resize((28, 28)),
transforms.ToTensor(),
])
# 加载 Omniglot 数据集
omniglot_dataset = datasets.Omniglot(
root='./data',
background=True,
transform=transform,
download=True
)
# 创建 DataLoader
dataloader = DataLoader(omniglot_dataset, batch_size=32, shuffle=True)
```
阅读全文
相关推荐















