megengine.functional.nn.batch_norm#

batch_norm(inp, running_mean=None, running_var=None, weight=None, bias=None, *, training=False, momentum=0.9, eps=1e-5, inplace=True)[源代码]#

对输入进行批标准化。

更多信息参见 BatchNorm2dBatchNorm1d

参数:
  • inp (Tensor) – 输入张量。

  • running_mean (Optional[Tensor]) – 存储运行中的均值的张量。

  • running_var (Optional[Tensor]) – 存储运行中的方差的张量。

  • weight (Optional[Tensor]) – 可学习仿射参数中的放缩张量。可参阅 BatchNorm2d 中的 \(\gamma\)

  • bias (Optional[Tensor]) – 可学习仿射参数中的偏置张量。可参阅 BatchNorm2d 中的 \(eta\)

  • training (bool) – 一个布尔值,它表示是否执行训练模式下的批归一化,即对当前批数据进行统计并更新统计量。 默认: False

  • momentum (float) – 用于计算 running_meanrunning_var 的值。 默认: 0.9

  • eps (float) – 添加到分母的单个值,增加数值稳定性。默认:1e-5

  • inplace (bool) – 是否更新原始 tensors``running_mean`` 和 running_var tensor, 默认: True, 如果设置成 Flase, 则不更新原始 tensors, 而是返回新的 tensors.

  • compute_mode – 设置为 default 时,计算时中间结果的精度不会有特殊的保证;设置为 float32 时,计算时累加器和中间结果的类型会设为 float32,仅当输入和输出张量的数据类型都是 float16 时生效。

  • param_dim – 表明参数格式的值。默认:’dim_1c11’,表示NCHW格式。’dim_111c’ 表示NHWC格式。