# tensorflow::ops::FusedBatchNormV2

`#include <nn_ops.h>`

Batch normalization.

## Summary

Note that the size of 4D Tensors are defined by either "NHWC" or "NCHW". The size of 1D Tensors matches the dimension C of the 4D Tensors.

Arguments:

- scope: A [Scope](https://www.tensorflow.org/versions/r2.0/api_docs/cc/class/tensorflow/scope#classtensorflow_1_1_scope) object
- x: A 4D [Tensor](https://www.tensorflow.org/versions/r2.0/api_docs/cc/class/tensorflow/tensor#classtensorflow_1_1_tensor) for input data.
- scale: A 1D [Tensor](https://www.tensorflow.org/versions/r2.0/api_docs/cc/class/tensorflow/tensor#classtensorflow_1_1_tensor) for scaling factor, to scale the normalized x.
- offset: A 1D [Tensor](https://www.tensorflow.org/versions/r2.0/api_docs/cc/class/tensorflow/tensor#classtensorflow_1_1_tensor) for offset, to shift to the normalized x.
- mean: A 1D [Tensor](https://www.tensorflow.org/versions/r2.0/api_docs/cc/class/tensorflow/tensor#classtensorflow_1_1_tensor) for population mean. Used for inference only; must be empty for training.
- variance: A 1D [Tensor](https://www.tensorflow.org/versions/r2.0/api_docs/cc/class/tensorflow/tensor#classtensorflow_1_1_tensor) for population variance. Used for inference only; must be empty for training.

<br />

Optional attributes (see `https://www.tensorflow.org/versions/r2.0/api_docs/cc/struct/tensorflow/ops/fused-batch-norm-v2/attrs#structtensorflow_1_1ops_1_1_fused_batch_norm_v2_1_1_attrs`):

- epsilon: A small float number added to the variance of x.
- data_format: The data format for x and y. Either "NHWC" (default) or "NCHW".
- is_training: A bool value to indicate the operation is for training (default) or inference.

<br />

Returns:

- `https://www.tensorflow.org/versions/r2.0/api_docs/cc/class/tensorflow/output#classtensorflow_1_1_output` y: A 4D [Tensor](https://www.tensorflow.org/versions/r2.0/api_docs/cc/class/tensorflow/tensor#classtensorflow_1_1_tensor) for output data.
- `https://www.tensorflow.org/versions/r2.0/api_docs/cc/class/tensorflow/output#classtensorflow_1_1_output` batch_mean: A 1D [Tensor](https://www.tensorflow.org/versions/r2.0/api_docs/cc/class/tensorflow/tensor#classtensorflow_1_1_tensor) for the computed batch mean, to be used by TensorFlow to compute the running mean.
- `https://www.tensorflow.org/versions/r2.0/api_docs/cc/class/tensorflow/output#classtensorflow_1_1_output` batch_variance: A 1D [Tensor](https://www.tensorflow.org/versions/r2.0/api_docs/cc/class/tensorflow/tensor#classtensorflow_1_1_tensor) for the computed batch variance, to be used by TensorFlow to compute the running variance.
- `https://www.tensorflow.org/versions/r2.0/api_docs/cc/class/tensorflow/output#classtensorflow_1_1_output` reserve_space_1: A 1D [Tensor](https://www.tensorflow.org/versions/r2.0/api_docs/cc/class/tensorflow/tensor#classtensorflow_1_1_tensor) for the computed batch mean, to be reused in the gradient computation.
- `https://www.tensorflow.org/versions/r2.0/api_docs/cc/class/tensorflow/output#classtensorflow_1_1_output` reserve_space_2: A 1D [Tensor](https://www.tensorflow.org/versions/r2.0/api_docs/cc/class/tensorflow/tensor#classtensorflow_1_1_tensor) for the computed batch variance (inverted variance in the cuDNN case), to be reused in the gradient computation.

<br />

| ### Constructors and Destructors ||
|---|---|
| `https://www.tensorflow.org/versions/r2.0/api_docs/cc/class/tensorflow/ops/fused-batch-norm-v2#classtensorflow_1_1ops_1_1_fused_batch_norm_v2_1a41b5d9943718ba17353eb0bea3660fb5(const ::https://www.tensorflow.org/versions/r2.0/api_docs/cc/class/tensorflow/scope#classtensorflow_1_1_scope & scope, ::https://www.tensorflow.org/versions/r2.0/api_docs/cc/class/tensorflow/input#classtensorflow_1_1_input x, ::https://www.tensorflow.org/versions/r2.0/api_docs/cc/class/tensorflow/input#classtensorflow_1_1_input scale, ::https://www.tensorflow.org/versions/r2.0/api_docs/cc/class/tensorflow/input#classtensorflow_1_1_input offset, ::https://www.tensorflow.org/versions/r2.0/api_docs/cc/class/tensorflow/input#classtensorflow_1_1_input mean, ::https://www.tensorflow.org/versions/r2.0/api_docs/cc/class/tensorflow/input#classtensorflow_1_1_input variance)` ||
| `https://www.tensorflow.org/versions/r2.0/api_docs/cc/class/tensorflow/ops/fused-batch-norm-v2#classtensorflow_1_1ops_1_1_fused_batch_norm_v2_1a22fcefed0156ba86e64e061602ec0502(const ::https://www.tensorflow.org/versions/r2.0/api_docs/cc/class/tensorflow/scope#classtensorflow_1_1_scope & scope, ::https://www.tensorflow.org/versions/r2.0/api_docs/cc/class/tensorflow/input#classtensorflow_1_1_input x, ::https://www.tensorflow.org/versions/r2.0/api_docs/cc/class/tensorflow/input#classtensorflow_1_1_input scale, ::https://www.tensorflow.org/versions/r2.0/api_docs/cc/class/tensorflow/input#classtensorflow_1_1_input offset, ::https://www.tensorflow.org/versions/r2.0/api_docs/cc/class/tensorflow/input#classtensorflow_1_1_input mean, ::https://www.tensorflow.org/versions/r2.0/api_docs/cc/class/tensorflow/input#classtensorflow_1_1_input variance, const https://www.tensorflow.org/versions/r2.0/api_docs/cc/struct/tensorflow/ops/fused-batch-norm-v2/attrs#structtensorflow_1_1ops_1_1_fused_batch_norm_v2_1_1_attrs & attrs)` ||

| ### Public attributes ||
|---|---|
| `https://www.tensorflow.org/versions/r2.0/api_docs/cc/class/tensorflow/ops/fused-batch-norm-v2#classtensorflow_1_1ops_1_1_fused_batch_norm_v2_1ad9498789c65ee5d72dd6402f5835b8b0` | `::https://www.tensorflow.org/versions/r2.0/api_docs/cc/class/tensorflow/output#classtensorflow_1_1_output` |
| `https://www.tensorflow.org/versions/r2.0/api_docs/cc/class/tensorflow/ops/fused-batch-norm-v2#classtensorflow_1_1ops_1_1_fused_batch_norm_v2_1af3991b993b39913909e81cd81d31c9c8` | `::https://www.tensorflow.org/versions/r2.0/api_docs/cc/class/tensorflow/output#classtensorflow_1_1_output` |
| `https://www.tensorflow.org/versions/r2.0/api_docs/cc/class/tensorflow/ops/fused-batch-norm-v2#classtensorflow_1_1ops_1_1_fused_batch_norm_v2_1a62346d231fb85e6491b13e4fc411ab46` | `https://www.tensorflow.org/versions/r2.0/api_docs/cc/class/tensorflow/operation#classtensorflow_1_1_operation` |
| `https://www.tensorflow.org/versions/r2.0/api_docs/cc/class/tensorflow/ops/fused-batch-norm-v2#classtensorflow_1_1ops_1_1_fused_batch_norm_v2_1ab49ecd24ce13e304ef6ab0fab40d0db2` | `::https://www.tensorflow.org/versions/r2.0/api_docs/cc/class/tensorflow/output#classtensorflow_1_1_output` |
| `https://www.tensorflow.org/versions/r2.0/api_docs/cc/class/tensorflow/ops/fused-batch-norm-v2#classtensorflow_1_1ops_1_1_fused_batch_norm_v2_1ae91d40f4fb497e2879f0df7a2e9ee3b4` | `::https://www.tensorflow.org/versions/r2.0/api_docs/cc/class/tensorflow/output#classtensorflow_1_1_output` |
| `https://www.tensorflow.org/versions/r2.0/api_docs/cc/class/tensorflow/ops/fused-batch-norm-v2#classtensorflow_1_1ops_1_1_fused_batch_norm_v2_1a5d32535fa6ebf586beef899f5fa9d9d1` | `::https://www.tensorflow.org/versions/r2.0/api_docs/cc/class/tensorflow/output#classtensorflow_1_1_output` |

| ### Public static functions ||
|---|---|
| `https://www.tensorflow.org/versions/r2.0/api_docs/cc/class/tensorflow/ops/fused-batch-norm-v2#classtensorflow_1_1ops_1_1_fused_batch_norm_v2_1a3067def97f7ccef0ca9214a5c3edcb65(StringPiece x)` | `https://www.tensorflow.org/versions/r2.0/api_docs/cc/struct/tensorflow/ops/fused-batch-norm-v2/attrs#structtensorflow_1_1ops_1_1_fused_batch_norm_v2_1_1_attrs` |
| `https://www.tensorflow.org/versions/r2.0/api_docs/cc/class/tensorflow/ops/fused-batch-norm-v2#classtensorflow_1_1ops_1_1_fused_batch_norm_v2_1a23f682a773a88566f7b763b43f804830(float x)` | `https://www.tensorflow.org/versions/r2.0/api_docs/cc/struct/tensorflow/ops/fused-batch-norm-v2/attrs#structtensorflow_1_1ops_1_1_fused_batch_norm_v2_1_1_attrs` |
| `https://www.tensorflow.org/versions/r2.0/api_docs/cc/class/tensorflow/ops/fused-batch-norm-v2#classtensorflow_1_1ops_1_1_fused_batch_norm_v2_1a3f4305936738a332346a877a56f0efd3(bool x)` | `https://www.tensorflow.org/versions/r2.0/api_docs/cc/struct/tensorflow/ops/fused-batch-norm-v2/attrs#structtensorflow_1_1ops_1_1_fused_batch_norm_v2_1_1_attrs` |

| ### Structs ||
|---|---|
| [tensorflow::ops::FusedBatchNormV2::Attrs](https://www.tensorflow.org/versions/r2.0/api_docs/cc/struct/tensorflow/ops/fused-batch-norm-v2/attrs) | Optional attribute setters for [FusedBatchNormV2](https://www.tensorflow.org/versions/r2.0/api_docs/cc/class/tensorflow/ops/fused-batch-norm-v2#classtensorflow_1_1ops_1_1_fused_batch_norm_v2). |

## Public attributes

### batch_mean

```
::tensorflow::Output batch_mean
```

### batch_variance

```
::tensorflow::Output batch_variance
```

### operation

```
Operation operation
```

### reserve_space_1

```
::tensorflow::Output reserve_space_1
```

### reserve_space_2

```
::tensorflow::Output reserve_space_2
```

### y

```
::tensorflow::Output y
```

## Public functions

### FusedBatchNormV2

```
 FusedBatchNormV2(
  const ::tensorflow::Scope & scope,
  ::tensorflow::Input x,
  ::tensorflow::Input scale,
  ::tensorflow::Input offset,
  ::tensorflow::Input mean,
  ::tensorflow::Input variance
)
```

### FusedBatchNormV2

```
 FusedBatchNormV2(
  const ::tensorflow::Scope & scope,
  ::tensorflow::Input x,
  ::tensorflow::Input scale,
  ::tensorflow::Input offset,
  ::tensorflow::Input mean,
  ::tensorflow::Input variance,
  const FusedBatchNormV2::Attrs & attrs
)
```

## Public static functions

### DataFormat

```
Attrs DataFormat(
  StringPiece x
)
```

### Epsilon

```
Attrs Epsilon(
  float x
)
```

### IsTraining

```
Attrs IsTraining(
  bool x
)
```