我为我的第一个 pytorch 模型设置了一个玩具示例:
x = torch.from_numpy(np.linspace(1,100,num=100))
y = torch.from_numpy(np.dot(2,x))
Run Code Online (Sandbox Code Playgroud)
我建立的模型如下:
class Net(nn.Module):
def __init__(self):
super(Net,self).__init__()
self.fc1 = nn.Linear(1,10)
self.fc2 = nn.Linear(10,20)
self.fc3 = nn.Linear(16,1)
def forward(self,inputs):
x = F.relu(self.fc1(inputs))
x = F.relu(self.fc2(x))
x = F.linear(self.fc3(x))
return x
Run Code Online (Sandbox Code Playgroud)
然而,当我尝试训练时遇到了这个错误:
RuntimeError: mat1 and mat2 shapes cannot be multiplied (1x20 and 1x10)
Run Code Online (Sandbox Code Playgroud)
以下是完整代码供参考:
import numpy as np # linear algebra
import torch
from torch.utils.data import Dataset
import torch.nn as nn
import torch.nn.functional as F
import torch.optim as optim
x = torch.from_numpy(np.linspace(1,100,num=100))
y = …
Run Code Online (Sandbox Code Playgroud)