解决YOLOV5训练时P、R、mAP等值均为0的问题

最近用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即可

cuda10.2下载: cudnn下载,选择对应cuda10.2的即可,注意配置cudnn的环境变量:

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

yolov5就可以正常训练了:

经验分享 程序员 微信小程序 职场和发展