pytorch快速搭建神经网络

使用Sequential快速搭建神经网络

torch.nn.Sequential是一个Sequential容器,模块将按照构造函数中传递的顺序添加到模块中.另外也可以传递一个有序模块.

model = nn.Sequential(
       nn.Conv2d(1,20,5),
       nn.Relu(),
       nn.Conv2d(20,64,5),
       nn.Relu()
)
model = nn.Sequential(OrderedDict([
        ('conv1',nn.Conv2d(1,20,5)),
        ('relu1',nn.Relu()),
        ('conv2',nn.Conv2d(20,64,5)),
        ('relu2',nn.Relu())
]))

使用普通方法搭建一个神经网络

class Net(nn.Module):
        def __init__(self,n_feature,n_hidden,n_output):
                super(Net,self).__init()
                self.hidden = torch.nn.Linear(n_feature,n_hidden)
                self.predict = torch.nn.Linear(n_hidden,n_output)
        def forward(self,x):
                x = F.relu(self.hidden(x))
                x = self.predict(x)
                return x

使用torch.nn.Sequential会自动加入激励函数, 但是 使用普通方法搭建的网络, 激励函数实际上是在 forward() 功能中才被调用的.

torch.nn.Sequential与torch.nn.Module区别与选择

使用torch.nn.Module,我们可以根据自己的需求改变传播过程,如RNN等
如果你需要快速构建或者不需要过多的过程,直接使用torch.nn.Sequential即可

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 通过PyTorch 进行深度学习 数学公式如下所示: 对于向量来说,为两个向量的点积/内积: 我们可以将这些单元神...
    徐凯_xp阅读 9,651评论 3 7
  • 原文地址:http://www.cnblogs.com/subconscious/p/5058741.html 神...
    Albert陈凯阅读 10,842评论 0 48
  • 连续病了二十多天,很多事情都受影响。平时总是认为有好好照顾自己,细想不过把一些任性的行为合理化而已。无他,连日吃药...
    千影鹿阅读 1,418评论 0 1
  • 没有星,午夜,我们看月亮 看月亮。我们涉水而去,涉过风 涉过几朵漂浮的云 陷进八月的沙滩 这已经是八月,雷雨滚滚而...
    棉花去旅行阅读 4,887评论 0 4
  • 过去在各大公众号上,看过很多大咖分享的跑步文章,《坚持跑步一百天,你将收获什么》,《跑步,从150斤大胖子变成90...
    菁小清阅读 1,679评论 7 3

友情链接更多精彩内容