YOLOv5实战记录04 模型训练

个人打卡,慎看。

指路大佬:【手把手带你实战YOLOv5-入门篇】YOLOv5 模型训练_哔哩哔哩_bilibili

一、数据集

首先提到了两个概念,训练集和验证集。我机器学习0基础,于是查找了资料。

 数据集一般分为三类:训练集、验证集和测试集。

  • 训练集:训练模型, 用于模型拟合的数据样本。不能反映模型真实的能力。
  • 验证集:模型训练过程中单独留出的样本集,需要选择超参数,可以评估不同超参数训练出的模型效果,优化模型。参与了 “人工调参” 的训练过程。
  • 测试集:评估最终模型效果。

个人白话理解:训练集是普通数据;验证集是挑取一部分非训练集,人工为其添加参数,不断优化;测试集是测试包含所有数据的模型效果。 

如果人工修改大部分数据的参数,速度会很慢,所以验证集只验证一部分数据,并不是所有的数据。所有数据会在测试集评定效果。

参考:

二、数据调整

images和labels文件夹下都新增train和val文件夹,分别代表训练集和验证集。

将图片一部分放到train,另一部分放到val中。images和labels中两个文件夹下的文件对应。比如01.jpg在images/train中,那么01.txt也应该在labels/train中。

三、模型训练

关键参数:

  • weights: 预训练的权重文件
  • data: 数据集描述文件
  1. 在yolov5-master下新建datasets文件夹,将images和labels放到这儿。修改data参数的数据集描述文件。找到data/coco128.yaml,复制粘贴该文件生成一个副本。在该文件下修改数据集描述。重命名为dvn.yaml【随意】
  2. names: 下是所有class类别。删除多余的类别,修改类名。path,train,val的路径也要修改。
  3. 运行train.py

我遇到了报错,已解决,问题如下:

遇到报错:ImportError: Bad git executable

解决方案:在train.py文件中的import os后面加上 os.environ["GIT_PYTHON_REFRESH"] = "quiet"

参考:

YOLOv5运行错误:ImportError: Failed to initialize: Bad git executable.-CSDN博客

  1. 运行后,根据提示,找到runs/train/exp2文件夹,里面生成了很多文件。在weights文件夹下有best.pt和last.pt 这两个文件分别是,训练最好的模型和训练的最后一个模型;events.out文件存放了 tensorboard的日志。可以查看训练过程中各项指标的变化。
  2. 我们可以输入该命令,进入tensorboard: tensorboard --logdir runs,点击出现的Localhost链接。可查看tensorboard存放的日志
  3. 检测视频,设置参数:--weights指定权重文件,--source指定测试的资源,--view-img指定可视化。python detect.py --weights ./runs/train/exp2/weights/best.pt --source ./datasets/192.mp4 --view-img
  4. ctrl+c退出

  • 22
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值