pytorch之 bulid_nn_with_2_method

 1 import torch
 2 import torch.nn.functional as F
 3 
 4 
 5 # replace following class code with an easy sequential network
 6 class Net(torch.nn.Module):
 7     def __init__(self, n_feature, n_hidden, n_output):
 8         super(Net, self).__init__()
 9         self.hidden = torch.nn.Linear(n_feature, n_hidden)   # hidden layer
10         self.predict = torch.nn.Linear(n_hidden, n_output)   # output layer
11 
12     def forward(self, x):
13         x = F.relu(self.hidden(x))      # activation function for hidden layer
14         x = self.predict(x)             # linear output
15         return x
16 
17 net1 = Net(1, 10, 1)
18 
19 # easy and fast way to build your network
20 net2 = torch.nn.Sequential(
21     torch.nn.Linear(1, 10),
22     torch.nn.ReLU(),
23     torch.nn.Linear(10, 1)
24 )
25 
26 
27 print(net1)     # net1 architecture
28 """
29 Net (
30   (hidden): Linear (1 -> 10)
31   (predict): Linear (10 -> 1)
32 )
33 """
34 
35 print(net2)     # net2 architecture
36 """
37 Sequential (
38   (0): Linear (1 -> 10)
39   (1): ReLU ()
40   (2): Linear (10 -> 1)
41 )
42 """

 

posted @ 2019-10-26 13:56  _Meditation  阅读(171)  评论(0编辑  收藏  举报