【YOLOv5实战3】基于YOLOv5的交通标志识别系统-模型训练

本文详细介绍了如何使用Yolov5在实战环境中搭建自定义数据集,包括模型训练参数设置、预训练模型选择、训练过程和使用PyQt5进行界面集成。后续将探讨验证与测试及模型性能评估。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

实战博客指引:

  1. 实战环境搭建
  2. 自定义数据集
  3. 模型训练
  4. 模型测试与评估
  5. YOLOv5整合PyQt5

项目源代码可联系博主获取。

一、参数说明

再经历前两个步骤后,开始进行模型训练与测试。首先进行模型训练。官方给出的训练命令如下:

python train.py --data coco.yaml --cfg yolov5n.yaml --weights '' --batch-size 128
                                       yolov5s                                64
                                       yolov5m                                40
                                       yolov5l                                24
                                       yolov5x                                16

我们可以查看train.py文件,里面设定了我们训练时需要指定的参数,如图所示(这个参数被我修改过了,初始值和本图所示有所不同,大家按照自己的情况进行修改):
在这里插入图片描述

简要介绍一下参数:

  • weights: 指定预训练模型。yolov5官方提供了几种预训练模型用于提高训练效率,在后文会讲。
  • data: 在上一篇实战指引中编写的myvoc.yaml,用于指定训练集和验证集的路径,以及你要分类的数目个数和名称,必须修改在这里插入图片描述
  • epochs: 训练多少轮,建议修改
  • batch-size: 批大小,个人理解为每次读取多少个数据进行处理(根据自己的配置进行修改,如果报内存不足的错误可以将该值调小,建议修改)
  • img-size: 分别为训练集和验证集的大小,会将原来的数据集resize为所设定大小。默认为[640, 640],可以不修改
  • resume: 断点续训。这个主要是你在训练过程中如果打断了,可以接着上次的训练结果继续训练。默认为False
  • device: 设定使用CPU还是GPU(如果GPU有多块,指定使用哪块)。
  • workers: 好像是线程数量,设备允许的话可以调整,由于本人设备太辣鸡所以设为了0

基本上常用的就是上述参数了,其他的参数可以保持默认值,你也可以按照自己的实际情况进行相应的修改。

二、预训练模型

官方给出了下面几种预训练模型。
在这里插入图片描述
常用的有n,s,m,l,x五种规格的大小,规模逐渐增大,训练准确率也逐渐升高,但训练时间也会增加。如下图所示:
在这里插入图片描述
在本篇博客中我将使用yolov5s.pt进行模型训练。

三、模型训练

上述准备步骤都完成后,开始训练模型。训练参数可以在train.py文件中指定,也可以在命令行中显式指定,命令行的优先级高于文件中的优先级。我在这里显式指定了各项参数,你也可以不指定,那就是用文件里的参数信息。需要注意,如果你一开始没有下载yolov5s.pt(即–weights指定的文件),那么他会下载相对应的文件。(好像默认下载路径不是在weights/下,个人习惯把他移到weights/目录下)。下载速度太慢的话建议修改pip源,这个可以去看别人的博客改一下,然后速度就会快很多。
打开终端,输入下面的命令:
在这里插入图片描述

python train.py --weights weights/yolov5s.pt --data data/myvoc.yaml --epochs 20 --batch-size 8

如果没有报错,应该会得到如下的界面:
在这里插入图片描述
会显示本次结果训练的存放位置,放在runs/train/下,从exp开始,每次训练都会使数字加一,我这里由于之前有结果,因此为exp5/。
在这里插入图片描述
可以检查一下在runs/train/是否生成了该目录:
在这里插入图片描述

四、下期预告

下一篇博客将介绍如何使用训练好的模型对自己的数据集进行验证与测试,并判断模型的好坏。

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

每天进步一点丶

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值