BatchNormInference // Adjust input for mean and variance
||real||\((\bullet, C, \ldots)\)|
||Small bias added to variance to avoid division by 0.|
The axes of the input fall into two categories: positional and channel, with channel being axis 1. For each position, there are \(C\) channel values, each normalized independently.
Normalization of a channel sample is controlled by two values:
- the mean \(\mu\), and
- the variance \(\sigma^2\);
and by two scaling attributes: \(\gamma\) and \(\beta\).
BatchNormInference: public ngraph::op::Op¶
input: [., C, …]
gamma: gamma scaling for normalized value. [C]
beta: bias added to the scaled normalized value [C]
mean: value for mean normalization [C]
variance: value for variance normalization [C]
epsilon: Avoids divsion by 0 if input has 0 variance
In this version of BatchNorm:
MEAN AND VARIANCE: provided by the ‘mean’ and ‘variance’ parameters.
OUTPUT VALUE: a single tensor with the normalized value of ‘input’.
- ’generate_adjoints(…) may throw an exception.
SHAPE DETAILS: gamma: must have rank 1, with the same span as input’s channel axis. beta: must have rank 1, with the same span as input’s channel axis. input: must have rank >= 2. The second dimension represents the channel axis and must have a span of at least 1. mean: must have rank 1, with the same span as input’s channel axis. variance: must have rank 1, with the same span as input’s channel axis. output: shall have the same shape as ‘input’.
Throws if the node is invalid.