一个连续的容器。模块将按照在构造函数中传递的顺序添加到模块中。或者,也可以传递模块的有序字典。

为了更容易理解,这是一个小示例:

#使用Sequential的示例
model = nn.Sequential(
          nn.Conv2d(1,20,5),
          nn.ReLU(),
          nn.Conv2d(20,64,5),
          nn.ReLU()
        )

#使用Sequential和OrderedDict示例
model = nn.Sequential(OrderedDict([
          ('conv1', nn.Conv2d(1,20,5)),
          ('relu1', nn.ReLU()),
          ('conv2', nn.Conv2d(20,64,5)),
          ('relu2', nn.ReLU())
        ]))

个人感觉为自动定义了一个前向传播的模块。在ResNet中可定义残差块,减少代码量,方便理解

参考链接:
Pytorch官方英文文档

Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐