IndexError:尺寸超出范围预计在[-1,0]范围内,但得到2

问题描述

plt.imshow(torchvision.utils.make_grid(images[3],nrow=5).permute(1,2,0 )

为什么在运行上述代码时弹出以下错误

  ---------------------------------------------------------------------------
IndexError                                Traceback (most recent call last)
<ipython-input-78-ce90d0e2159a> in <module>
----> 1 plt.imshow(torchvision.utils.make_grid(images[3],0))

~\Anaconda3\lib\site-packages\torchvision\utils.py in make_grid(tensor,nrow,padding,normalize,range,scale_each,pad_value)
     74     xmaps = min(nrow,nmaps)
     75     ymaps = int(math.ceil(float(nmaps) / xmaps))
---> 76     height,width = int(tensor.size(2) + padding),int(tensor.size(3) + padding)
     77     num_channels = tensor.size(1)
     78     grid = tensor.new_full((num_channels,height * ymaps + padding,width * xmaps + padding),pad_value)

IndexError: Dimension out of range (expected to be in range of [-1,0],but got 2)

这是在运行以下代码后发生的

model= nn.Sequential(nn.Linear (150528,1000),nn.ReLU(),nn.Linear(1000,250),nn.Linear(250,32),nn.Logsoftmax(dim=1),)
criterion = nn.CrossEntropyLoss()
images = images.view(images.shape[0],-1)
logits = model (images)
loss = criterion(logits,labels)
print(loss)

然后重新运行上面的代码

plt.imshow(torchvision.utils.make_grid(images[3],0 )

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)