本文重点
前面我们学习pytorch中已经封装好的神经网络层,有全连接层,激活层,卷积层等等,我们可以直接使用。
如代码所示我们直接使用了两个nn.Linear(),这两个linear之间并没有组合在一起,所以forward的之后,分别调用了,在实际使用中我们常常将几个神经层组合在一起,这样不仅操作方便,而且代码清晰。
这里介绍一下Sequential()和ModuleList(),它们可以将多个神经网络层组合在一起,这两个函数都是特殊的module,包含子module。ModuleList还可以当作list使用,但是不能直接传入输入。
本文主要学习第二步(模型搭建)
Sequential
写法一:为每一个神经网络层添加一个名字
net1 = nn.Sequential()
net1.add_module('conv', nn.Conv2d(3, 3, 3))
net1.add_module('batchnorm', nn.BatchNorm2d(3))
net1.add_m