module ‘torch‘ has no attribute ‘_six‘问题解决
1 问题描述
运行模型程序,报错内容如下:
Traceback (most recent call last):File "D:\code\ptcontainer\gan_minist.py", line 74, in <module>datasets.MNIST('./data', train=True, download=True,File "C:\Users\lishu\anaconda3\envs\pt2\lib\site-packages\torchvision\datasets\mnist.py", line 78, in __init__super(MNIST, self).__init__(root, transform=transform,File "C:\Users\lishu\anaconda3\envs\pt2\lib\site-packages\torchvision\datasets\vision.py", line 17, in __init__if isinstance(root, torch._six.string_classes):
AttributeError: module 'torch' has no attribute '_six'
torch模块中没有'_six'属性,所以运行出错
2 原因分析及解决
原因分析:torch 2.0版本以后中没有 ‘_six.py’ 文件,所以运行模型报错
3 问题解决
3.1 方案1
将version.py中的代码修改如下
if isinstance(root, torch._six.string_classes):修改为:if isinstance(root, str):
3.2 方案2
降低torch版本到2.0以下