pytorch add_module

本文介绍了在PyTorch中如何使用nn.Sequential和nn.Module进行深度学习模型的构建。nn.Sequential允许顺序添加模块,如卷积层和激活函数,而nn.Module则可以通过类定义并添加子模块,便于管理和访问。两种方式都是构建复杂神经网络的有效方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在使用pytorch进行深度学习开发的时候,在一个模型的基础上进行模块的添加,可以使用add_module,可以采用nn.Sequential,也可以采用nn.Module。

(1)nn.Sequential()

import torch.nn as nn
 
model = nn.Sequential()
 
model.add_module("conv1", nn.Conv2d(1, 20, 5))
model.add_module('relu1', nn.ReLU())
model.add_module('conv2', nn.Conv2d(20, 64, 5))
model.add_module('relu2', nn.ReLU())

(2) nn.Module()

# 被添加的module可以通过 name 属性来获取。
 
import torch.nn as nn
class Model(nn.Module):
    def __init__(self):
        super(Model, self).__init__()
        self.add_module("conv", nn.Conv2d(10, 20, 4))
        # self.conv = nn.Conv2d(10, 20, 4) 和上面这个增加module的方式等价
model = Model()
print(model.conv) # 通过name属性访问添加的子模块
print(model)

参考文献:

1.用torch.nn.Sequential()搭建神经网络模型

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值