yolov5和yolov8在train时,出现box_loss、cls_loss、dfl_loss为nan,Box(P R mAP50 mAP50-95)为0的解决办法

yolov5 版本是v7.0 yolov8的版本是8.0.66
显卡:NVIDIA Quadro T2000
cuda:11.7
weight:yolov5m.pt yolov8m.pt

yolov5在训练中出现上述nan和0的现象,出现的问题跟下边这个链接中提到的问题一模一样,
NaN tensor values problem for GTX16xx users (no problem on other devices)
解决方法可以参考以下链接:
YOLO系列训练时出现loss出现nan值或者测试时P\R\map全部为0值的解决办法(GTX16xx系列显卡大坑)

修改amp和model.half.float即可

yolov8训练中出现nan和0的现象,可以参考
YOLOV8 GPU train all loss is NAN and P/R/map is 0
用命令行训练时,可以添加一个设置选项 amp=False
但是这种办法解决了【box_loss、cls_loss、dfl_loss为nan】的问题,并未解决【Box(P R mAP50 mAP50-95)为0】的问题。
另外我在yolov8上使用devide=cpu训练时,不会出现nan和0的问题,但是速度很慢。

显卡1660的,Box(P R mAP50 mAP50-95)为0
可以参考评论区置顶集美的做法,看看缩小batch size能否有用

猜你喜欢

转载自blog.csdn.net/weixin_42283539/article/details/129988766