RuntimeError: No such operator torchvision::nms问题解决方法

RuntimeError: No such operator torchvision::nms 问题解决方法:
最近在学习YoloV5,跑了代码,训练的时候没有问题,在测试的时候报错如下:
在这里插入图片描述
网上搜了一下,发现很多人遇到过这个问题,尤其是在跑Yolov4和Yolov5等对pytorch版本要求比较高的代码。但是解决方案说的大都是pytorch和torchvision的版本不匹配,让升级torchvision版本,或者重新安装pytorch。

但是因为pytorch较大,每次安装比较麻烦,且另一种简单升级torchvision的方法好像并不奏效。

本文这里分享一种简单、有效的解决方案:

因为Yolov5要求pytorch1.6以上版本,所以按照requirements.txt文件直接配置了虚拟环境:
python3.7+cuda10.1+pytorch1.6+torchvision0.7.0
在这里插入图片描述
报错时特意看了下环境:
在这里插入图片描述
pytorch版本是没有问题的,所以前面第一个epoch训练没有问题。

分析原因是因为torchvision版本虽然达到了0.7.0,但是没有和cuda10.1环境匹配,因为如果pytorch如果是在官网获得的安装命令,应该是这样的:

在这里插入图片描述

pip install torch==1.6.0+cu101 torchvision==0.7.0+cu101 -f https://download.pytorch.org/whl/torch_stable.html

这个时候安装的torchvision的版本自动的是0.7.0+cu101, 而通过requirements.txt安装则是和pytorch 分别安装的,导致版本不一致。

所以直接卸载原来的torchvision,安装torchvision==0.7.0+cu101即可,而不需要重新安装pytorch。

但是直接在命令行安装torchvision==0.7.0+cu101,又会报错,因为找不到对应包的路径:
在这里插入图片描述

这个时候直接把官网的安装命令的后部分链接加上就可以了:
在这里插入图片描述

pip install torchvision==0.7.0+cu101 -f https://download.pytorch.org/whl/torch_stable.html

可以看到问题快速解决了。

所以,下次遇到较高版本的pytorch环境时,可以通过同样的方式处理!

评论 13
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值