colab GPU训练模型 yolov5

文章预览

    • **云上GPU训练**
      • 环境搭建
      • 训练模型
      • 训练结果
      • 分析总结

此为学习yolov5的学习笔记,根据的是PyTorch 深度学习目标检测入门实战,若内容上理解有误,还望大家批评指正。小土堆讲解透彻易懂,推荐给大家。

云上GPU训练

环境搭建

网址:colab

初始页面如下:

colab GPU训练模型 yolov5_第1张图片

点击修改,选择笔记本设置,选择GPU加速。

将训练测试,以及相关数据经过处理压缩整体打包上传至左边的文件夹中,可以看到只有1M大小

colab GPU训练模型 yolov5_第2张图片

colab GPU训练模型 yolov5_第3张图片

!unzip /content/yolov5-6.0_cloudetest.zip -d /content/yolov5-6.0_test
### 用!模拟在终端输入,后面语言表示为将文件加压至/content/yolov5-6.0_test
%cd /content/yolov5-6.0_test/yolov5-6.0
!pip install -r requirements.txt
### 安装所需要的包,使用shell语言时注意大小写之分

colab GPU训练模型 yolov5_第4张图片

%load_ext tensorboard

colab GPU训练模型 yolov5_第5张图片

%tensorboard --logdir=runs/train
### 加载日志文件,需要先加载,再运行后面的程序

训练模型

!python train.py --rect
### 执行train.py

colab GPU训练模型 yolov5_第6张图片

模型训练开始,注意需要将weight中的root删除,只保留空字符串,才能重新开始训练,否则报无.pt错误

解决链接如下:https://github.com/ultralytics/yolov5/issues/4948

训练结果

日志文件保存在了exp3中,取消其他的exp,观察图像即可

colab GPU训练模型 yolov5_第7张图片

colab GPU训练模型 yolov5_第8张图片

colab GPU训练模型 yolov5_第9张图片

colab GPU训练模型 yolov5_第10张图片

colab GPU训练模型 yolov5_第11张图片

colab GPU训练模型 yolov5_第12张图片

colab GPU训练模型 yolov5_第13张图片

colab GPU训练模型 yolov5_第14张图片

colab GPU训练模型 yolov5_第15张图片

colab GPU训练模型 yolov5_第16张图片

colab GPU训练模型 yolov5_第17张图片

colab GPU训练模型 yolov5_第18张图片

colab GPU训练模型 yolov5_第19张图片

colab GPU训练模型 yolov5_第20张图片

注意YOLOv5-6.0与YOLOv5-5.0在日志输出方面有所不同

colab GPU训练模型 yolov5_第21张图片

可以看到coco128的数据集中,出现的个例数量

colab GPU训练模型 yolov5_第22张图片

训练的轮数以及对应的损失函数

colab GPU训练模型 yolov5_第23张图片

由此可以看到,训练300轮,用时0.452小时,最后得到了best.pt和last.pt模型,大小为15M,最后对模型进行总结,这个模型中有80类别,训练图片为128张等信息

P:Precision(精确度)

colab GPU训练模型 yolov5_第24张图片

光是精确度还不能衡量分类器的好坏程度,比如50个正样本和50个负样本,我的分类器把49个正样本和50个负样本都分为负样本,剩下一个正样本分为正样本,这样我的精度也是100%,因为分类器分出来1个样本为正类,且这个样本分类正确,则1/1 = 1,所以还需要召回率

R:Recall(召回率)

colab GPU训练模型 yolov5_第25张图片

mAP指标:多类别目标检测任务,就要使用mean AP(mAP),对所有的类别进行AP的计算,然后取均值

训练好以后,将最好的best.pt下载下来,使用detect.py,在weight中输入这个模型进行检测,其他的不用做修改

colab GPU训练模型 yolov5_第26张图片
colab GPU训练模型 yolov5_第27张图片

运行即可。

分析总结

测试结果发现只能识别几个,效果不佳,原因分析如下:

  1. 训练次数较少,一般为1k-2k
  2. 数据集太少,此训练中只用到了128张图片,最好能有3k-5k

你可能感兴趣的:(pytorch,python,人工智能,深度学习,目标检测)