Я использую этот чрезвычайно простой пример PyTorch NN из документации как есть, и ничего не изменилось.
Я получаю эту ошибку:
Traceback (most recent call last):
File "<stdin>", line 2, in <module>
File "/opt/conda/envs/fastai/lib/python3.6/site-packages/torch/nn/modules/module.py", line 357, in __call__
result = self.forward(*input, **kwargs)
File "/opt/conda/envs/fastai/lib/python3.6/site-packages/torch/nn/modules/container.py", line 67, in forward
input = module(input)
File "/opt/conda/envs/fastai/lib/python3.6/site-packages/torch/nn/modules/module.py", line 357, in __call__
result = self.forward(*input, **kwargs)
File "/opt/conda/envs/fastai/lib/python3.6/site-packages/torch/nn/modules/linear.py", line 55, in forward
return F.linear(input, self.weight, self.bias)
File "/opt/conda/envs/fastai/lib/python3.6/site-packages/torch/nn/functional.py", line 835, in linear
return torch.addmm(bias, input, weight.t())
RuntimeError: addmm(): argument 'mat1' (position 1) must be Variable, not torch.FloatTensor
По-видимому, во время умножения матрицы возникает ошибка типа данных.
Почему матрицы, которые я пытаюсь умножить, должны быть переменнымив любом случае?
Я могу сделать
x = Variable(torch.randn(N, D_in))
y = Variable(torch.randn(N, D_out))
, но получить
AttributeError: 'Variable' object has no attribute 'item'
, чтобы это не помогло.
Я использую PyTorch версии 0.3.1.post2.