tf.keras.layers.HashedCrossing  |  TensorFlow v2.16.1 (original) (raw)

tf.keras.layers.HashedCrossing

Stay organized with collections Save and categorize content based on your preferences.

A preprocessing layer which crosses features using the "hashing trick".

Inherits From: Layer, Operation

tf.keras.layers.HashedCrossing(
    num_bins,
    output_mode='int',
    sparse=False,
    name=None,
    dtype=None,
    **kwargs
)

This layer performs crosses of categorical features using the "hashing trick". Conceptually, the transformation can be thought of as: `hash(concatenate(features)) % num_bins.

This layer currently only performs crosses of scalar inputs and batches of scalar inputs. Valid input shapes are (batch_size, 1), (batch_size,) and().

Args
num_bins Number of hash bins.
output_mode Specification for the output of the layer. Values can be"int", or "one_hot" configuring the layer as follows: "int": Return the integer bin indices directly. "one_hot": Encodes each individual element in the input into an array the same size as num_bins, containing a 1 at the input's bin index. Defaults to "int".
sparse Boolean. Only applicable to "one_hot" mode and only valid when using the TensorFlow backend. If True, returns a SparseTensor instead of a dense Tensor. Defaults to False.
**kwargs Keyword arguments to construct a layer.

Examples:

Crossing two scalar features.

layer = keras.layers.HashedCrossing( num_bins=5) feat1 = np.array(['A', 'B', 'A', 'B', 'A']) feat2 = np.array([101, 101, 101, 102, 102]) layer((feat1, feat2)) array([1, 4, 1, 1, 3])

Crossing and one-hotting two scalar features.

layer = keras.layers.HashedCrossing( num_bins=5, output_mode='one_hot') feat1 = np.array(['A', 'B', 'A', 'B', 'A']) feat2 = np.array([101, 101, 101, 102, 102]) layer((feat1, feat2)) array([[0., 1., 0., 0., 0.], [0., 0., 0., 0., 1.], [0., 1., 0., 0., 0.], [0., 1., 0., 0., 0.], [0., 0., 0., 1., 0.]], dtype=float32)

Attributes
input Retrieves the input tensor(s) of a symbolic operation.Only returns the tensor(s) corresponding to the _first time_the operation was called.
output Retrieves the output tensor(s) of a layer.Only returns the tensor(s) corresponding to the _first time_the operation was called.

Methods

from_config

View source

@classmethod from_config( config )

Creates a layer from its config.

This method is the reverse of get_config, capable of instantiating the same layer from the config dictionary. It does not handle layer connectivity (handled by Network), nor weights (handled by set_weights).

Args
config A Python dictionary, typically the output of get_config.
Returns
A layer instance.

symbolic_call

View source

symbolic_call(
    *args, **kwargs
)