YOLOv5 提升模型训练结果小技巧

一、数据集
1、 每类图片数,建议>1500张
2、 每类实例数,推荐每类标签实例数>10000
3、 图片多样性,必须代表部署环境,对于现实世界我们推荐图片来自一天中不同时间,不同季节,不同天气,不同光照,不同角度和不同相机等
4、 标签一致性,所以图片的所有类的实例都需要被标注,部分标签将不起作用
5、 标签准确性,标签必须紧密地包围每个对象,对象与其边界框之间不应存在空间,任何对象都不应缺少标签。
6、 背景图像,背景图像是没有对象的图像,这些对象添加到数据集中以减误报(FP),建议使用大约0-10%的背景图像来帮助减少FPs(COCO有1000张背景图像供参考,占总数的1%),背景图像不需要标签。
二、模型选择
模型越大,得到的结果约好,但是需要更多的CUDA内存去训练,且训练时间更长。对于移动部署,我们建议使用YOLOv5s/m;对于云部署,我们建议使用YOLOv5l/x。
小数据集(VOC)建议使用预训练模型做迁移学习,大数据集(COCO)可从头开始训练。
三、训练设置
第一次训练推荐使用默认设置,得到模型性能基线。
1、 Epochs,默认300个,出现过拟合则减小該直,反之亦然。
2、 Image size,COCO数据集训练使用640分辨率,由于数据集中有大量的小目标,增加分辨率(如1280),有利于训练结果。如果客户数据集有很多小目标,使用原始像素或者更高像素有利于训练。想要获得好的模型推理结果则推理像素需与训练像素一致。
3、 Batch size,使用硬件允许的最大值,需避免值过小产生糟糕的统计结果
4、 Hyperparameters,默认的超参数在hyp.scratch.yaml文件中,一般情况下,增加augmentation参数可降低和推迟过拟合,以便于更长的训练获得更高的mAP值。减小类似[‘obj’]等损失增益的值也可降低过拟合。对于自动优化这些超参数的方法,后期更新。

  • 32
    点赞
  • 216
    收藏
    觉得还不错? 一键收藏
  • 18
    评论
Yolov5是一个流行的目标检测算法,它基于深度学习框架PyTorch。下面是一些Yolov5训练技巧: 1. 数据集准备:首先,需要准备一个包含图片和对应标注的数据集。确保数据集中的标注格式匹配Yolov5所需的格式。 2. 数据集划分:将数据集划分为训练集和验证集,通常采用70%的数据作为训练集,30%的数据作为验证集。这样可以用验证集评估模型性能。 3. 数据增强:在训练过程中使用数据增强技术,如随机裁剪、缩放、翻转等,提供更多的样本和变化。这有助于提升模型的泛化能力。 4. 预训练模型:可以使用在大规模数据集上预训练好的模型作为初始权重。常见的选择是使用COCO数据集预训练模型。 5. 学习率调整:在训练过程中,可以采用学习率调整策略来优化模型性能。常见的策略有学习率衰减和学习率余弦退火。 6. 模型结构调整:根据不同的应用场景和需求,可以调整Yolov5模型结构,如调整网络的深度、宽度等。 7. 多尺度训练:在训练过程中,可以采用多尺度训练技术,即使用不同大小的输入图像进行训练。这有助于提升模型对目标的检测效果。 8. 训练策略选择:选择适合自己数据集和硬件环境的训练策略,如使用分布式训练、混合精度训练等。 9. 模型评估:在训练过程中,定期使用验证集评估模型性能。可以计算精度、召回率等指标来评估模型的准确性。 10. 调试和优化:在训练过程中,根据模型在验证集上的表现进行调试和优化。可以分析误检、漏检的原因,并针对性地进行调整。 这些是一些常见的Yolov5训练技巧,希望对你有帮助!
评论 18
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值