import torch
from torch import nn
from torch.nn import init
print(torch.__version__)
net = nn.Sequential(nn.Linear(4,3), nn.ReLU(), nn.Linear(3,1))# 构造模型print(net)# 构造输入数据
X = torch.rand(2,4)
Y = net(X).sum()# 输出结果print(net(X))print(net(X).sum())
访问模型参数
print(type(net.named_parameters()))
for name, param in net.named_parameters():# 查看模型所有参数和维度print(name, param.size())
for name, param in net[0].named_parameters():# 查看模型第一层层参数和维度print(name, param.size(),type(param))
classMyModel(nn.Module):def__init__(self,**kwargs):super(MyModel, self).__init__(**kwargs)
self.weight1 = nn.Parameter(torch.rand(20,20))
self.weight2 = torch.rand(20,20)defforward(self, x):pass
n = MyModel()for name, param in n.named_parameters():print(name)# 只有weight1在参数列表中