示例代码
import torch
from torch import nn
from torch.nn import MaxPool2d
input=torch.tensor([[1,2,0,3,1],
[0,1,2,3,1],
[1,2,1,0,0],
[5,2,3,1,1],
[2,1,0,1,1]])
input=torch.reshape(input,(-1,1,5,5))
print(input.shape)
class Ning(nn.Module):
def __init__(self):
super(Ning,self).__init__()
self.maxpool=MaxPool2d(kernel_size=3,ceil_mode=True)
def forward(self,input):
output=self.maxpool(input)
return output
ning=Ning()
output=ning(input)
print(output)
运行报错:RuntimeError: "max_pool2d" not implemented for 'Long'
报错原因:输入input数据类型错误,改变输入数据类型
更改结果如下:
input=torch.tensor([[1,2,0,3,1],
[0,1,2,3,1],
[1,2,1,0,0],
[5,2,3,1,1],
[2,1,0,1,1]],dtype=torch.float32)
更改后运行结果:
torch.Size([1, 1, 5, 5])
tensor([[[[2., 3.],
[5., 1.]]]])