ImageNet-1k数据集
我直接先给一个整体结论:ImageNet-1k = ImageNet 中最经典的那个“1000 类分类子集”,有 1000 个类别、≈128 万训练图像、5 万验证图像,是深度学习里各种 CNN/ViT 论文、预训练模型几乎必提的那个标准数据集。
下面我分块详细说清楚:
1. ImageNet 与 ImageNet-1k 的关系
-
ImageNet:
最初是一个超大规模图像数据库,基于 WordNet 的概念层次结构,每个“概念(synset)”对应一类图像。总共上千万张图片、上万类类别(常说的 ImageNet-21k 等)。 -
ImageNet-1k(有时写作 ImageNet-1K、ImageNet-ILSVRC-2012):
是从完整 ImageNet 中挑选出的 1000 个类别,专门为 ILSVRC(ImageNet Large Scale Visual Recognition Challenge)竞赛准备的分类任务数据集。
这就是大家平时说:“在 ImageNet 上预训练”、“ImageNet top-1 acc”、“ResNet-50 在 ImageNet 上 76% top-1”
指的基本都是 这个 1k 子集。
2. 数据规模与划分
经典的 ImageNet-1k(ILSVRC 2012)包含:
-
类别数(Classes):1000 个
-
训练集(train):
-
图像数:1,281,167 张
-
每个类别大约 1300 张左右(略有不均衡,但差不多)
-
-
验证集(val):
-
图像数:50,000 张
-
每类 50 张(1000 × 50)
-
-
测试集(test):
-
图像数:100,000 张
-
不公开标签(原来用于比赛评测)
-
💡 训练/验证的标签是公开的,测试集标签原本只在竞赛服务器侧存在。
3. 数据内容:图像长什么样、类别怎么选的?
3.1 图像内容特征
-
都是自然图像,主要来源于互联网(Flickr 等)
-
分辨率不统一,原图大小各不相同
→ 在训练时,通常要做:-
缩放到短边 256 或 384 等
-
再随机裁剪成固定大小(通常 224×224)
-
-
图像风格:
-
包含大量真实场景:动物、日常物体、场景的一部分等
-
背景通常复杂、多样,比简单数据集(MNIST、CIFAR)复杂得多
-
3.2 类别选择
-
1000 个类别来自 WordNet synsets,如:
-
n01440764 tench(丁鲶鱼) -
n02123045 tabby cat(虎斑猫) -
…
-
-
类别覆盖大致包括:
-
各种动物(狗、猫、鸟、鱼、昆虫)
-
日用品(杯子、键盘、沙发、电视等)
-
交通工具(汽车、飞机、轮船等)
-
乐器、工具、家具等
-
注意:
-
类别间有时非常细粒度,比如几十种不同犬种;
-
有些类别间的差别很细微(细粒度分类任务的天然来源)。
4. 标注方式与标签格式
4.1 基本标注
-
每张图像一个主标签(单标签分类),对应一个 synset
-
标注由**众包(Amazon Mechanical Turk)**完成,多人投票确认
4.2 标签的具体形式
训练/验证集通常会有:
-
一张图片对应一个 synset ID,例如:
-
n02123045(WordNet ID)
-
-
在实际训练代码中:
-
通常把 1000 个 synset 映射成整数索引
0 ~ 999 -
模型最后输出一个长度为 1000 的向量,做 softmax
-
5. 常见的预处理和训练配置(“ImageNet 标准设置”)
虽然数据集本身不规定你一定要怎么处理,但在论文和开源代码里,出现了非常“标准化”的做法。常见配置大概是:
5.1 输入尺寸
-
经典 CNN(AlexNet / VGG / ResNet 等):
-
训练:随机裁剪为 224 × 224
-
测试:通常取中心裁剪 224 × 224,或者多裁剪测试(现在多用单中心裁剪/全图 resize)
-
-
现代 ViT / ConvNeXt 等:
-
也常用 224×224、256×256 或 384×384 作为输入大小
-
5.2 数据增强(train)
经典 baseline 大概是:
-
随机 resize/crop:
-
把短边缩放到一个范围内,然后随机裁剪 224×224
-
-
随机水平翻转(p=0.5)
-
归一化:
-
按 ImageNet 统计的 mean/std 做通道归一化:
-
mean ≈ [0.485, 0.456, 0.406]
-
std ≈ [0.229, 0.224, 0.225]
-
-
现代增强还会加:
-
RandAugment / AutoAugment
-
Random Erasing / Cutout
-
Mixup, CutMix 等
这些不属于数据集本身,但已经和“ImageNet 训练”绑得很紧。
6. 评价指标:Top-1 / Top-5
在 ImageNet-1k 上,最常见的两个指标:
-
Top-1 accuracy
-
模型预测概率最大的那个类别 = 真正标签时计为正确。
-
对应普通的分类准确率。
-
-
Top-5 accuracy
-
模型预测概率最大的前 5 个类别中,只要包含真正类别就算对。
-
用于缓和细粒度类别/标签歧义带来的影响,是 ILSVRC 比赛的官方指标之一。
-
在论文里经常看到:
ResNet-50:76.0% top-1 / 93.0% top-5(仅举例)
这些都是在 ImageNet-1k 验证集 上测出来的。
7. ImageNet-1k 在深度学习中的地位
为什么这个数据集这么重要?
-
标准 benchmark
-
类别多,图像复杂度高,是“通用图像理解能力”的一个重要测试。
-
成为 CNN、Transformer 视觉模型的“金标准”之一。
-
-
预训练的核心数据
-
许多模型(ResNet、DenseNet、MobileNet、ViT 等)都先在 ImageNet-1k 上预训练,再迁移到下游任务(检测、分割等)。
-
几乎所有深度学习框架(PyTorch / TensorFlow / JAX)都内置了在 ImageNet-1k 上预训练的模型权重。
-
-
历史意义
-
AlexNet(2012)在 ImageNet 竞赛上实现了巨大突破,直接把 deep learning 推向计算机视觉的中心舞台,“ImageNet moment”。
-
8. 常见的几个“容易混淆”的 ImageNet 版本
说 “ImageNet” 时,可能指的不止一种东西,简单理一理:
-
ImageNet-1k / ILSVRC2012
-
1000 类、128 万训练图片
-
最经典的分类版本
-
-
ImageNet-21k
-
≈ 21k 类别,约 1400 万张图像
-
一般用于更大规模的预训练(如一些 ViT 模型)
-
-
ImageNet-A / ImageNet-C / ImageNet-R
-
ImageNet 的鲁棒性评测子集,包含各种扰动、分布偏移等
-
常用来测试模型的鲁棒性、泛化性能
-
-
Tiny ImageNet
-
200 类,每类 500 张训练、50 张验证、50 张测试
-
64×64 尺寸
-
教学/课程常用的更小版本,不是官方 ILSVRC 主赛道。
-
如果只说 “ImageNet-1k”,基本就是指 ILSVRC2012 的 1000 类分类数据集。
9. 数据集的一些争议与局限
虽然很经典,但也有一些需要注意的点:
-
标签噪声
-
标注主要来自众包,个别图片可能标签不准确或有歧义。
-
-
类别与数据分布偏差
-
类别不完全代表现实世界物体的分布(比如犬种远多于很多其他类别)。
-
数据主要来源于西方互联网,对其他地区/文化的覆盖有限。
-
-
版权与隐私
-
图像来自网络,版权状况复杂,所以现在直接公开下载的途径减少,有些镜像站可能被下架。
-
一些机构开始尝试用其他、更加合规的数据集替代。
-
10. 如果你要“用” ImageNet-1k,通常会怎么做?
一般流程(以 PyTorch 为例的思路):
-
准备目录结构(典型):
imagenet/ train/ n01440764/ xxx.jpg yyy.jpg ... n01443537/ ... ... val/ n01440764/ ... -
使用
ImageFolder+ 自定义transform:-
训练 transform:随机裁剪、随机翻转、归一化
-
验证 transform:缩放 + 中心裁剪 + 归一化
-
-
创建 DataLoader,送入模型训练/验证。
DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。
更多推荐


所有评论(0)