BatchNorm2d()参数及用法

批归一化:在卷积神经网络的卷积层之后总会添加BatchNorm2d进行数据的归一化处理,这使得数据在进行Relu之前不会因为数据过大而导致网络性能的不稳定。

y = \frac{x - \mathrm{E}[x]}{ \sqrt{\mathrm{Var}[x] + \epsilon}} * \gamma + \beta   or    

其中,γ(默认为1)和β(默认是0)是可学习参数,维度是输入的size C。

输入:(N, C, H, W)

输出:(N, C, H, W)` (same shape as input)

参数:

--num_features: size C 来自 size (N, C, H,W),channel的数量

--eps(默认值:le-5):为数值稳定性添加到分母的值。

--monentun(默认值:0.1):动量参数,用于running_mean and running_var计算的值,可以设置为None,简单的平均值。

--affine(bool,默认值:"True"):当设置为“True”时,该模块具有可学习的仿射参数 γ和β。

--track_running_stats(bool,默认值:"True"):当设置为"True"时,该模块跟踪运行平均值和偏差,当设置为" False "时,该模块不跟踪此类统计,并将统计缓冲区:otr: 'running_meon'和:attr: 'running_vor'初始化为"None"当这些缓冲区为"None"时,该模块始终使用批量统计。

例子:

import torch
import torch.nn as nn

>>> # With Learnable Parameters
>>> m = nn.BatchNorm2d(100)
>>> # Without Learnable Parameters
>>> m = nn.BatchNorm2d(100, affine=False)
>>> input = torch.randn(20, 100, 35, 45)
>>> output = m(input)

【PyTorch】详解pytorch中nn模块的BatchNorm2d()函数-CSDN博客

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值