这是我定义的模型
class CNN(nn.Module):
def __init__(self):
super(CNNcpl, self).__init__()
self.conv1 = nn.Conv1d(20, 64, 5)
self.pool1 = nn.AvgPool1d(4, 4)
self.conv2 = nn.Conv1d(64, 128, 5)
self.pool2 = nn.AvgPool1d(4, 4)
self.conv3 = nn.Conv1d(128, 256, 5)
self.pool3 = nn.AvgPool1d(4, 4)
self.fc1 = nn.Linear(256*29, 64)
self.fc2 = nn.Linear(64, 2)
def forword(self, x):
x = self.pool1(F.relu(self.conv1(x)))
x = self.pool2(F.relu(self.conv2(x)))
x = self.pool3(F.relu(self.conv3(x)))
x = x.reshape(256*29)
x = F.relu(self.fc1(x))
x = F.softmax(self.fc2(x), dim = 1 )
return x
当我运行下面的代码时
cnn = CNN()
cnn(x)
# x 是一个 20*2000 的 tensor
报错
~/anaconda3/lib/python3.7/site-packages/torch/nn/modules/module.py in _call_impl(self, *input, **kwargs)
1100 if not (self._backward_hooks or self._forward_hooks or self._forward_pre_hooks or _global_backward_hooks
1101 or _global_forward_hooks or _global_forward_pre_hooks):
-> 1102 return forward_call(*input, **kwargs)
1103 # Do not call functions when jit is used
1104 full_backward_hooks, non_full_backward_hooks = [], []
~/anaconda3/lib/python3.7/site-packages/torch/nn/modules/module.py in _forward_unimplemented(self, *input)
199 registered hooks while the latter silently ignores them.
200 """
--> 201 raise NotImplementedError
202
203
NotImplementedError:
这个类定义的有问题吗?我刚刚接触深度学习和 Python 不久,请各位大佬指教。
1
ec0 2022-04-10 22:07:11 +08:00 1
函数 forword 改成 forward ?
|