YOLOV5训练时MAP、R、P值为0,测试时无检验框

问题引出:

​ 今天帮一个大三的学生,跑yolov5,首先我观察他电脑的配置:显卡是GTX1650,进入英伟达控制面板发现他最高支持的cuda版本的是11.7,便给他装了11.6的cuda和cudnn,但是训练的过程中,发现出现了一段警告,警告的内容为:

C:\Users\28322\AppData\Local\Programs\Python\Python37\lib\site-packages\torch\optim\lr_scheduler.py:136: UserWarning: Detected call of `lr_scheduler.step()` before `optimizer.step()`. In PyTorch 1.1.0 and later, you should call them in the opposite order: `optimizer.step()` before `lr_scheduler.step()`.  Failure to do this will result in PyTorch skipping the first value of the learning rate schedule.See more details at https://pytorch.org/docs/stable/optim.html#how-to-adjust-learning-rate "https://pytorch.org/docs/stable/optim.html#how-to-adjust-learning-rate", UserWarning)

并且训练中的每一个epoch的MAP值、P值以及R值均为0(如下所示)

解决过程:

说一下我的思路:

  1. 排除pytorch版本问题
    ​ 我将pytorch版本卸载,换了个低一点的pytorch,进行训练的时候,发现依然出现这个问题,因此我排除是pytorch版本导致。

  2. 排除python版本和pytorch版本问题
    ​ 因为在上午的时候,我给一个大二的学生配置yolov5,相同的显卡,相同的cuda但是那个大二的学生的python版本是3.8,而这个大三的学生python版本是3.7,所以我创建了一个python3.8的虚拟环境,然后安装好对应的pytorch版本后进行训练,发现该问题依然存在,所以排除。

  3. 接下来排除数据问题
    ​ 紧接着,我怀疑是不是我的数据除了问题,我找了一个小型数据集,进行测试,发现依然出现这个问题,而这个数据集在很多人的电脑都跑通了,故排除数据集问题。

  4. cuda版本问题
    ​ 我在网上找相关的结局的时候看到两篇文章(下面的参考文献),都是再说这个问题,他们一阵见血的指出是cuda问题,所以我将cuda卸载,换成了cuda10.2之后,装pytorch为1.9.1 torchvision为0.10.1之后,进行训练,终于MAP、P、R值都有值了,芜湖,起飞!!!!

我们跑10个epoch进行测试,

并对训练出来的权重进行测试,最后成功显示出结果:

解决掉这个问题,也许只为了这一刻

参考文献:

https://www.iotword.com/4713.html
https://huaweicloud.csdn.net/63806d50dacf622b8df88045.html

GitHub 加速计划 / yo / yolov5
49.42 K
16.03 K
下载
yolov5 - Ultralytics YOLOv8的前身,是一个用于目标检测、图像分割和图像分类任务的先进模型。
最近提交(Master分支:2 个月前 )
79b7336f * Update Integrations table Signed-off-by: Glenn Jocher <glenn.jocher@ultralytics.com> * Update README.md Signed-off-by: Glenn Jocher <glenn.jocher@ultralytics.com> * Update README.zh-CN.md Signed-off-by: Glenn Jocher <glenn.jocher@ultralytics.com> --------- Signed-off-by: Glenn Jocher <glenn.jocher@ultralytics.com> 29 天前
94a62456 * fix: quad training * fix: quad training in segmentation 1 个月前
Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐