最近用YOLOV5训练自己的数据集,出现了训练失败的情况,比如box,obj,cls,labels等均为nan或0,找了很多办法,其实就是cuda与PyTorch版本的问题

Epoch   gpu_mem      box       obj       cls    labels  img_size
0/499     1.76G  	 nan   	   nan       nan      25       640: 100%|██████████| 140/140 [04:19<00:00,  1.85s/it]                                          
       Class     Images     Labels          P          R     mAP@.5 mAP@.5:.95: 100%|██████████| 8/8 [00:05<00:00,  1.50it/s]                              
        all         63         0            0          0          0          0

我的cuda版本是11.2,PyTorch1.9,可能以前安装的有问题,重新安装官网的cuda11.3版本也是没有解决,可能重置电脑后用11.3的才能跑通,在网上找了很多办法,安装cuda10.2版本与对应的PyTorch即可

这里我没有卸载cuda11.3,直接安装了cuda10.2与对应的cudnn,注意一下如果电脑有多个cuda共存的时候,安装一定要选择自定义安装,安装的时候有三个选项,第一个选项是cuda,只选择cuda即可,后面两个选项不要选择! 这里我已经安装完了就懒得再截图了,注意一下别选可以了。

cuda10.2下载:https://developer.nvidia.com/cuda-10.2-download-archive
cudnn下载,选择对应cuda10.2的即可,注意配置cudnn的环境变量:https://developer.nvidia.com/rdp/cudnn-download

安装对应PyTorch:cuda10.2版本已经不可用了,但是在以前的版本中可以找到,点击install previous versions of PyTorch进去找对应版本即可
在这里插入图片描述

yolov5就可以正常训练了:
在这里插入图片描述

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐