使用yolov4训练时出现报错: cuDNN没有找到卷积的FWD算法

电脑系统是win11,CUDA版本是11.6,cudnn版本是8.6.0,环境配置完成时,使用yolo官网的权重文件可以正常对图片进行标注,后面训练自己的数据集时,我在labelImg对图片标注有4个标签分类,yolov4.cfg voc.data voc.names这三个文件都进行了相应的配置(附图1,2,3,4),开始训练时,出现了报错:cuDNN没有找到卷积的FWD算法(训练时使用的命令以及出现的错误,如图5,6)请问该如何解决

img

img

img

img

img

img

img


你这显示你的DarkNet中的cudnn是8.1.1的版本,这个和你说的8.6对不上。不过按理来说cudnn的影响不会很大(只要不是cudnn7.6.5和cudnn8.x这种大版本大区别就基本上没啥大影响)

img


从你这张报错可以看到,模型没有加载完成,再看你的显卡是桌面的3050 ti,考虑下4G显存不足的问题导致模型无法正确加载进显卡,也会报这个错误。
按照我之前的训练来看,608x608大小的图片yolov4,差不多要7G多的显存(3070接近满载的状态,扣掉一些系统占用,也要7G以上的显存),所以我估计你这个最大的可能就是显存不足,或者你把batch和sub都设置为1,图片大小设置为128看下能否加载,不行的话只能试试其他小一点的模型(yolov4-tiny)能否完成整个加载过程。

根据您描述的问题,在使用yolov4出现报错,没有找到算法的错误,大概率是版本不匹配的问题。cuda 显卡驱动等要匹配。这里推荐你先更新一下cudnn的版本再看看

解决方法:检查cuDNN的版本是否与GPU驱动程序版本匹配,如果不匹配,可以尝试更新GPU驱动程序或者cuDNN版本。

把报错发给我看一下

使用YOLOv4训练时出现cuDNN没有找到卷积FWD算法报错,通常是由于GPU和cuDNN版本不兼容或者cuDNN版本比较低导致的。因此,你可以尝试升级GPU和cuDNN的版本,然后重新运行代码来解决该问题。

您可以尝试以下解决方法:

1.检查cudnn是否安装正确。如果是,则可以重新安装cudnn。

2.检查cudnn的版本是否与CUDA版本兼容。如果不兼容,则需要安装适合的cudnn版本。

3.检查项目代码中的cudnn调用是否正确。如果有任何代码问题,请修复代码。

4.在项目代码中加入CUDA环境变量路径。

5.尝试使用更早的cudnn版本或更新更高的CUDA版本。

如果以上方法都无法解决问题,您可以在技术论坛或者GitHub上寻找更多解决方案。