从零开始基于imagenet 1k数据集训练CNN分类模型

ImageNet 1k数据集简介

ImageNet是CV领域非常出名的数据集, 其中ISLVRC2012数据集是Large Scale Visual Recognition Challenge 2012所用的数据集,包括:

由于ISLVRC2012有1000类数据,所以很多论文把这个数据集叫做:ImageNet 1K。行业里面渐渐约定俗成用这个数据集来测试模型结构,或者从零开始训练一个全新的CNN主干网络(backbone)。

ImageNet的评价指标是固定的:top1 acc 和 top5 acc。基于ImageNet 1K训练的模型,很容易跟已发表的模型比较,看看性能是否有提高,例如引用自https://github.com/ultralytics/yolov5

下载并解压ImageNet 1k数据集

第一步,下载ILSVRC2012_img_test.tarILSVRC2012_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真的是太慢了,整个解压工作大约耗时5个小时

在ImageNet 1k数据集上训练模型

克隆YOLOv5并安装其依赖软件包:

git clone https://github.com/ultralytics/yolov5 # clone
cd yolov5
pip install -r requirements.txt # install

先运行命令:

python classify/val.py --weights yolov5m-cls.pt --data …/datasets/imagenet --img 224

若得下面的结果,则证明ImageNet 1k数据集下载解压和YOLOv5运行环境配置已完成!
ImageNet 1K数据集下载解压成功
然后运行命令,启动训练:

python classify/train.py --model yolov5s-cls.pt --data imagenet --img 224 --batch-size 32

训练运行结果
到此,基于imagenet 1k数据集训练CNN分类模型完毕!下一篇文章将继续介绍如何搭建一个CNN分类模型训练框架,方便快速测试各种模型结构!

  • 5
    点赞
  • 33
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值