PyTorch学习笔记之torch.nn

这里主要概括性地讲解一下torch.nn中的几个函数的含义。

nn.Flatten() - 顾名思义,就是将张量的几个维度变成一维的,有点类似于matlab中的reshape函数。该函数一般后跟一个nn.Linear()即全连接层。

nn.Linear() - 用于构造一个全连接层,第三个参数bias默认为True,表示会学习一个附加的偏置。

nn.Conv2d() - 表示2维卷积,参数依次为输入通道,输出通道,卷积核尺寸,步长,填充。卷积前后会发生通道和特征尺度的改变。

nn.ReLU() - 一种激活函数,其他的激活函数还有sigmoid,tanh,softmax

nn.MaxPool2d() - 一种下采样的方法,此外还有nn.AvgPool2d,nn.AdaptiveAvgPool2d

nn.Dropout() - 用于给到全连接层之前的数据处理,目的在于防止过拟合。比如参数设置为0.5,是指该层(layer)的神经元在每次迭代训练时会随机有 50% 的可能性被丢弃(失活),不参与训练

nn.BatchNorm2d() - 进行数据的归一化处理,一般用于卷积之后,使一批(Batch)feature map满足均值为0,方差为1的分布规律。这使得数据在进行Relu之前不会因为数据过大而导致网络性能的不稳定,不仅数据分布一致,而且避免发生梯度消失。

(to be continued ...)

参考:

【PyTorch】详解pytorch中nn模块的BatchNorm2d()函数_颜丑文良777的博客-CSDN博客_nn.batchnorm2d

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值