tf.keras.layers.experimental.preprocessing.Discretization
Stay organized with collections
Save and categorize content based on your preferences.
Buckets data into discrete ranges.
Inherits From: PreprocessingLayer
, Layer
, Module
tf.keras.layers.experimental.preprocessing.Discretization(
bins, **kwargs
)
This layer will place each element of its input data into one of several
contiguous ranges and output an integer index indicating which range each
element was placed in.
Any tf.Tensor
or tf.RaggedTensor
of dimension 2 or higher.
Output shape:
Same as input shape.
Examples:
Bucketize float values based on provided buckets.
>>> input = np.array([[-1.5, 1.0, 3.4, .5], [0.0, 3.0, 1.3, 0.0]])
>>> layer = tf.keras.layers.experimental.preprocessing.Discretization(
... bins=[0., 1., 2.])
>>> layer(input)
<tf.Tensor: shape=(2, 4), dtype=int32, numpy=
array([[0, 1, 3, 1],
[0, 3, 2, 0]], dtype=int32)>
Attributes |
bins
|
Optional boundary specification. Bins exclude the left boundary and
include the right boundary, so bins=[0., 1., 2.] generates bins
(-inf, 0.) , [0., 1.) , [1., 2.) , and [2., +inf) .
|
Methods
adapt
View source
adapt(
data, reset_state=True
)
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. This argument may not be relevant to all
preprocessing layers: a subclass of PreprocessingLayer may choose to
throw if 'reset_state' is set to False.
|
Except as otherwise noted, the content of this page is licensed under the Creative Commons Attribution 4.0 License, and code samples are licensed under the Apache 2.0 License. For details, see the Google Developers Site Policies. Java is a registered trademark of Oracle and/or its affiliates. Some content is licensed under the numpy license.
Last updated 2021-02-18 UTC.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Missing the information I need","missingTheInformationINeed","thumb-down"],["Too complicated / too many steps","tooComplicatedTooManySteps","thumb-down"],["Out of date","outOfDate","thumb-down"],["Samples / code issue","samplesCodeIssue","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2021-02-18 UTC."],[],[],null,["# tf.keras.layers.experimental.preprocessing.Discretization\n\n\u003cbr /\u003e\n\n|-------------------------------------------------------------------------------------------------------------------------------------------------------|\n| [View source on GitHub](https://github.com/tensorflow/tensorflow/blob/v2.4.0/tensorflow/python/keras/layers/preprocessing/discretization.py#L36-L129) |\n\nBuckets data into discrete ranges.\n\nInherits From: [`PreprocessingLayer`](../../../../../tf/keras/layers/experimental/preprocessing/PreprocessingLayer), [`Layer`](../../../../../tf/keras/layers/Layer), [`Module`](../../../../../tf/Module)\n\n#### View aliases\n\n\n**Compat aliases for migration**\n\nSee\n[Migration guide](https://www.tensorflow.org/guide/migrate) for\nmore details.\n\n[`tf.compat.v1.keras.layers.experimental.preprocessing.Discretization`](https://www.tensorflow.org/api_docs/python/tf/keras/layers/experimental/preprocessing/Discretization)\n\n\u003cbr /\u003e\n\n tf.keras.layers.experimental.preprocessing.Discretization(\n bins, **kwargs\n )\n\nThis layer will place each element of its input data into one of several\ncontiguous ranges and output an integer index indicating which range each\nelement was placed in.\n\n#### Input shape:\n\nAny [`tf.Tensor`](../../../../../tf/Tensor) or [`tf.RaggedTensor`](../../../../../tf/RaggedTensor) of dimension 2 or higher.\n\n#### Output shape:\n\nSame as input shape.\n\n#### Examples:\n\nBucketize float values based on provided buckets. \n\n \u003e\u003e\u003e input = np.array([[-1.5, 1.0, 3.4, .5], [0.0, 3.0, 1.3, 0.0]])\n \u003e\u003e\u003e layer = tf.keras.layers.experimental.preprocessing.Discretization(\n ... bins=[0., 1., 2.])\n \u003e\u003e\u003e layer(input)\n \u003ctf.Tensor: shape=(2, 4), dtype=int32, numpy=\n array([[0, 1, 3, 1],\n [0, 3, 2, 0]], dtype=int32)\u003e\n\n\u003cbr /\u003e\n\n\u003cbr /\u003e\n\n\u003cbr /\u003e\n\n| Attributes ---------- ||\n|--------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| `bins` | Optional boundary specification. Bins exclude the left boundary and include the right boundary, so `bins=[0., 1., 2.]` generates bins `(-inf, 0.)`, `[0., 1.)`, `[1., 2.)`, and `[2., +inf)`. |\n\n\u003cbr /\u003e\n\nMethods\n-------\n\n### `adapt`\n\n[View source](https://github.com/tensorflow/tensorflow/blob/v2.4.0/tensorflow/python/keras/engine/base_preprocessing_layer.py#L53-L66) \n\n adapt(\n data, reset_state=True\n )\n\nFits the state of the preprocessing layer to the data being passed.\n\n\u003cbr /\u003e\n\n\u003cbr /\u003e\n\n\u003cbr /\u003e\n\n| Arguments ||\n|---------------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| `data` | The data to train on. It can be passed either as a tf.data Dataset, or as a numpy array. |\n| `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. This argument may not be relevant to all preprocessing layers: a subclass of PreprocessingLayer may choose to throw if 'reset_state' is set to False. |\n\n\u003cbr /\u003e"]]