ImageNet 1k数据集简介
ImageNet是CV领域非常出名的数据集, 其中ISLVRC2012数据集是Large Scale Visual Recognition Challenge 2012所用的数据集,包括:
- 训练数据集ILSVRC2012_img_test.tar,里面包括1000类共计1,281,167张图片,大约138G
- 验证数据集ILSVRC2012_img_val.tar,里面包括1000类每类50张图片,一共50000张图片,大约6.3G
由于ISLVRC2012有1000类数据,所以很多论文把这个数据集叫做:ImageNet 1K。行业里面渐渐约定俗成用这个数据集来测试模型结构,或者从零开始训练一个全新的CNN主干网络(backbone)。
ImageNet的评价指标是固定的:top1 acc 和 top5 acc。基于ImageNet 1K训练的模型,很容易跟已发表的模型比较,看看性能是否有提高,例如:下载并解压ImageNet 1k数据集
第一步,下载ILSVRC2012_img_test.tar和ILSVRC2012_img_val.tar
# parent
# ├── yolov5
# └── datasets
# └── imagenet ← downloads here
下载后的结果如下所示:第二步,解压ImageNet 1k数据集:创建解压批处理文件:unpack_imagenet.sh
train=true
val=true
# Download/unzip train
if [ "$train" == "true" ]; then
#wget https://image-net.org/data/ILSVRC/2012/ILSVRC2012_img_train.tar # download 138G, 1281167 images
mkdir train && mv ILSVRC2012_img_train.tar train/ && cd train
tar -xf ILSVRC2012_img_train.tar && rm -f ILSVRC2012_img_train.tar
find . -name "*.tar" | while read NAME; do
mkdir -p "${NAME%.tar}"
tar -xf "${NAME}" -C "${NAME%.tar}"
rm -f "${NAME}"
done
cd ..
fi
# Download/unzip val
if [ "$val" == "true" ]; then
#wget https://image-net.org/data/ILSVRC/2012/ILSVRC2012_img_val.tar # download 6.3G, 50000 images
mkdir val && mv ILSVRC2012_img_val.tar val/ && cd val && tar -xf ILSVRC2012_img_val.tar
wget -qO- https://raw.githubusercontent.com/soumith/imagenetloader.torch/master/valprep.sh | bash # move into subdirs
fi
并在MINGW64中运行从上图可见,好的SDD,可以极大缩短解压时间;HDD真的是太慢了,整个解压工作大约耗时30分钟。