Save the date! Google I/O returns May 18-20

# tf.compat.v1.keras.layers.experimental.preprocessing.Normalization

Feature-wise normalization of the data.

This layer will coerce its inputs into a distribution centered around 0 with standard deviation 1. It accomplishes this by precomputing the mean and variance of the data, and calling (input-mean)/sqrt(var) at runtime.

What happens in `adapt`: Compute mean and variance of the data and store them as the layer's weights. `adapt` should be called before `fit`, `evaluate`, or `predict`.

#### Examples:

Calculate the mean and variance by analyzing the dataset in `adapt`.

````adapt_data = np.array([[1.], [2.], [3.], [4.], [5.]], dtype=np.float32)`
`input_data = np.array([[1.], [2.], [3.]], np.float32)`
`layer = Normalization()`
`layer.adapt(adapt_data)`
`layer(input_data)`
`<tf.Tensor: shape=(3, 1), dtype=float32, numpy=`
`array([[-1.4142135 ],`
`       [-0.70710677],`
`       [ 0.        ]], dtype=float32)>`
```

Pass the mean and variance directly.

````input_data = np.array([[1.], [2.], [3.]], np.float32)`
`layer = Normalization(mean=3., variance=2.)`
`layer(input_data)`
`<tf.Tensor: shape=(3, 1), dtype=float32, numpy=`
`array([[-1.4142135 ],`
`       [-0.70710677],`
`       [ 0.        ]], dtype=float32)>`
```

`axis` Integer or tuple of integers, the axis or axes that should be "kept". These axes are not be summed over when calculating the normalization statistics. By default the last axis, the `features` axis is kept and any `space` or `time` axes are summed. Each element in the the axes that are kept is normalized independently. If `axis` is set to 'None', the layer will perform scalar normalization (dividing the input by a single scalar value). The `batch` axis, 0, is always summed over (`axis=0` is not allowed).
`mean` The mean value(s) to use during normalization. The passed value(s) will be broadcast to the shape of the kept axes above; if the value(s) cannot be broadcast, an error will be raised when this layer's build() method is called.
`variance` The variance value(s) to use during normalization. The passed value(s) will be broadcast to the shape of the kept axes above; if the value(s)cannot be broadcast, an error will be raised when this layer's build() method is called.

## Methods

### `adapt`

View source

Fits the state of the preprocessing layer to the data being passed.

Arguments
`data` The data to train on. It can be passed either as a tf.data Dataset, or as a numpy array.
`reset_state` Optional argument specifying whether to clear the state of the layer at the start of the call to `adapt`, or whether to start from the existing state. Subclasses may choose to throw if reset_state is set to 'False'.

[{ "type": "thumb-down", "id": "missingTheInformationINeed", "label":"Missing the information I need" },{ "type": "thumb-down", "id": "tooComplicatedTooManySteps", "label":"Too complicated / too many steps" },{ "type": "thumb-down", "id": "outOfDate", "label":"Out of date" },{ "type": "thumb-down", "id": "samplesCodeIssue", "label":"Samples / code issue" },{ "type": "thumb-down", "id": "otherDown", "label":"Other" }]
[{ "type": "thumb-up", "id": "easyToUnderstand", "label":"Easy to understand" },{ "type": "thumb-up", "id": "solvedMyProblem", "label":"Solved my problem" },{ "type": "thumb-up", "id": "otherUp", "label":"Other" }]