本文主要是介绍如何解决报错 ModuleNotFoundError: No module named ‘torch.ao.quantization‘,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
环境与报错
1. 环境安装版本
torch 1.9.0+cu102
torchaudio 0.9.0
torchvision 0.13.1a0
2. 出错的代码行
import torchvision
3. 报错
File "/usr/local/miniconda3/envs/***/lib/python3.8/site-packages/torchvision/models/quantization/mobilenetv2.py", line 6, in <module>from torch.ao.quantization import QuantStub, DeQuantStub
ModuleNotFoundError: No module named 'torch.ao.quantization'
发生的问题
在我这种情况下是torch版本和torchvision版本不匹配的问题,根据网上其他帖子我的猜测是:torchvision安装版本过高或者是一个非正式的版本(像是他的版本编号后面有个a0),他会默认我下载的torch是和他匹配的,在那个版本的torch中存在着可以调用的torch.ao.quantization。
因此我需要做的就是令torch和torchvision的版本之间相互匹配。
解决方式
在pytorch官网的过往历史版本中根据torch与CUDA的版本查找你所需要的安装代码。如我安装的torch版本是1.9.0,CUDA版本是10.2,那么我需要参考的就是下面这幅图片中给出的代码:
因此我在命令行里面输入
pip install torchvision==0.10.0+cu102 -f https://download.pytorch.org/whl/torch_stable.html
代码正常运行得到结果,问题解决
这篇关于如何解决报错 ModuleNotFoundError: No module named ‘torch.ao.quantization‘的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!