cifa100数据集介绍
时间: 2024-12-25 09:22:29 浏览: 12
### CIFAR-100 数据集详细介绍
#### 数据集概述
CIFAR-100 是一个用于识别自然场景中的物体的小型图片数据集,它由 Alex Krizhevsky、Vinod Nair 和 Geoffrey Hinton 收集[^2]。该数据集是从8000万个微小图像数据集中提取的一个子集,在计算机视觉领域中被广泛应用。
#### 数据集组成
CIFAR-100 包含 60,000 张彩色图像,其中训练集有 50,000 张图,测试集则包含剩下的 10,000 张图。这些图像尺寸均为 32×32 像素,并且每张都附带有一个细粒度标签(fine label)以及粗粒度标签(coarse label)。具体来说:
- **训练集**:单个 batch 文件 `train` 中保存了所有的训练样本及其对应的标签。
- **测试集**:同样位于单一文件 `test` 内部,包含了全部的测试样本与相应标记。
- **元信息**:通过名为 `meta` 的文件来描述类别的名称和其他辅助信息[^1]。
#### 类别定义
不同于仅提供基础分类任务支持的 CIFAR-10,CIFAR-100 提供了一个更复杂的层次化标注方案——即除了常规的目标类别外还引入了一级更高抽象级别的分组概念。这意味着每个实例不仅属于某个特定种类(如 "beaver" 或者 "dolphin"),同时也归属于更大的超类集合之一(比如动物界下的哺乳纲或鸟纲等)。
#### 存储格式
对于 Python 用户而言,可以直接利用官方提供的脚本来加载此数据源。通常情况下,读取后的数组形状如下所示:
```python
import numpy as np
print(f'train_x shape:{np.shape(train_data)}, train_y shape:{np.shape(train_labels)}')
print(f'test_x shape:{np.shape(test_data)}, test_y shape:{np.shape(test_labels)}')
```
上述代码片段会输出类似于下面的结果:
```
train_x shape:(50000, 32, 32, 3), train_y shape:(50000,)
test_x shape:(10000, 32, 32, 3), test_y shape:(10000,)
```
这表明训练集和测试集均按照预期进行了划分并正确地组织成了四维张量形式以便于后续处理操作[^5]。
阅读全文