BatchNormInference#

The formula is the same as Batch Normalization primitive :ref:`batch_normalization-label like below.

\[\dst(n, c, h, w) = \gamma(c) \cdot \frac{\src(n, c, h, w) - \mu(c)} {\sqrt{\sigma^2(c) + \varepsilon}} + \beta(c),\]

where

  • \(\gamma(c), \beta(c)\) are required scale and shift for a channel,

  • \(\mu(c), \sigma^2(c)\) are mean and variance for a channel, and

  • \(\varepsilon\) is a constant to improve numerical stability.

Operation Attributes#

Attribute

Name

Description

Value Type

Supported

Values

Required or

Optional

epsilon

A number to be added to the variance to avoid division by zero

f32

A positive float value

Required

data_format

Controls how to interpret the shape of src and dst.

string

NCX, NXC (default)

Optional

Execution Arguments#

The inputs and outputs must be provided according to the below index order when constructing an operation.

Inputs#

Index

Argument Name

Required or Optional

0

src

Required

1

gamma

Required

2

beta

Required

3

mean

Required

4

variance (\(\sigma^2\))

Required

Outputs#

Index

Argument Name

Required or Optional

0

dst

Required

Supported Data Types#

BatchNormInference operation supports the following data type combinations.

Src / Dst

Gamma / Beta / Mean / Variance

f32

f32

bf16

f32, bf16

f16

f32