print(net)仅显示模型内部关于层的信息(不包括任何层的Paramter和自定义的Paramter)
import torch
from torch.nn.parameter import Parameter
from torch import nn
from torch.nn import functional as F
from torch import optim
class Net(nn.Module):
def __init__(self):
super(Net, self).__init__()
self.linear = nn.Linear(2, 2)
self.parameter = Parameter(torch.tensor([2.0, 2.0]))
def forward(self, x):
x = F.relu(self.linear(x))
x = self.parameter * x
return x
net = Net()
print(net)
# Net(
# (linear): Linear(in_features=2, out_features=2, bias=True)
# )
for parameter in net.parameters():
print(parameter.size())
# torch.Size([2])
# torch.Size([2, 2])
# torch.Size([2])
for name, parameter in net.named_parameters():
print(name, ':', parameter.size())
# parameter : torch.Size([2])
# linear.weight : torch.Size([2, 2])
# linear.bias : torch.Size([2])