在使用pytorch时出现以下问题:AttributeError: module ‘torchvision.transforms’ has no attribute ‘Resize’
查看我的pytorch版本为1.0.0
(import torch)
(print(torch.__version __))
查看我的torchvision版本为0.1.8
在使用pytorch时出现以下问题:AttributeError: module ‘torchvision.transforms’ has no attribute ‘Resize’查看我的pytorch版本为1.0.0(import torch)(print(torch.__version __))查看我的torchvision版本为0.1.8此问题为torchvision版本太低导致...
Python脚本报错
AttributeError
: ‘
module
’ object has no
attribute
’xxx’解决方法
2014年04月30日 ⁄ 测试工具, 软件测试 ⁄
共 678字 ⁄ 字号 小 中 大 ⁄ 暂无评论 ⁄
阅读 12,782 次
最近开始仔细玩了一下
pytorch
,发现里面有个BUG之前都没有发现。
在测试
torch
最基本的示例的情况下,居然碰到了个
pytorch
无法转化numpy为Tensor的问题,呈现的问题如下:
ndscbigdata@ndscbigdata:~/work/change/AI$ python
Python 3.6.1 (default, Jul 14 2017, 17:08:44)
rc =
vision
.
transform
s.RandomCrop([224, 224])
toPIL =
vision
.
transform
s.ToPILImage()
toTensor =
vision
.
transform
s.ToTensor()
input =
torch
.randn(3, 256,
在实验中,经常遇到图片数据是分类存储的—即不同的文件夹存放不同label的图片,比如猫狗数据集,将猫的数据放在cat文件夹下,而将狗的图片放在名为dog的文件夹。在跑模型的过程中,常常需要将数据切分为训练集、验证集和测试集,并且同一类别的label要一致。
from
torch
vision
.datasets import ImageFolder
from PIL import Image
from...
import
torch
vision
.
transform
s as
transform
s
transform
s模块提供了一般的图像转换操作类。
class
torch
vision
.
transform
s.ToTensor
把shape=(H x W x C)的像素值范围为[0, 255]的PIL.Image或者numpy.ndarray转换成shape=(C x H x W)的像素值范围为[0.0,
AttributeError
:
module
'
torch
vision
.
transform
s' has no
attribute
'InterpolationMode'
### 回答1:
这个错误通常是因为你的
PyTorch
版本过低所致。`InterpolationMode` 属性是在
PyTorch
1.6 版本中引入的。如果你使用的是旧版本的
PyTorch
,可以尝试更新
PyTorch
到最新版本。可以使用以下命令来更新
PyTorch
:
pip install --upgrade
torch
torch
vision
如果更新
PyTorch
后仍然出现这个错误,可以尝试将 `InterpolationMode` 改为 `mode`,例如:
transform
s.
Resize
((224, 224), mode='bilinear')
### 回答2:
"
AttributeError
:
module
'
torch
vision
.
transform
s' has no
attribute
'InterpolationMode'" 的错误是由于
torch
vision
.
transform
s 模块中没有名为 'InterpolationMode' 的属性而引起的。
这个错误通常出现在使用
torch
vision
.
transform
s 的代码中,当我们尝试使用 'InterpolationMode' 属性时,会收到该错误消息。
为了解决这个问题,我们需要更新
torch
vision
库的版本。较旧的
torch
vision
版本可能不支持 'InterpolationMode' 属性,所以我们需要安装一个新的版本。
我们可以通过以下命令来安装最新版本的
torch
vision
:
pip install --upgrade
torch
vision
安装完成后,我们可以再次尝试运行之前的代码,这次应该不会出现 '
AttributeError
:
module
'
torch
vision
.
transform
s' has no
attribute
'InterpolationMode'' 的错误了。
如果问题仍然存在,可能是因为我们的代码中存在其他问题。我们应该检查我们的代码,确保正确导入了所需的模块,并使用正确的方式访问 'InterpolationMode' 属性。
总结:'
AttributeError
:
module
'
torch
vision
.
transform
s' has no
attribute
'InterpolationMode'' 错误是由于较旧版本的
torch
vision
不支持 'InterpolationMode' 属性而引起的。我们需要安装最新版本的
torch
vision
并检查代码中是否有其他问题。
### 回答3:
该错误是由于`
torch
vision
.
transform
s`模块中没有`InterpolationMode`属性引起的。在较新的
PyTorch
版本中,`InterpolationMode`被移动到了`
torch
vision
.
transform
s.functional`模块中。要解决这个问题,你需要将`InterpolationMode`从`
torch
vision
.
transform
s`修改为`
torch
vision
.
transform
s.functional`。以下是一个示例代码:
```python
import
torch
vision
.
transform
s.functional as F
# 使用F.InterpolationMode进行插值
image = F.
resize
(image, size=(100, 100), interpolation=F.InterpolationMode.BILINEAR)
通过这个修改,你就可以正确地使用`InterpolationMode`进行插值操作了。