Warning: This project is deprecated. TensorFlow Addons has stopped development, The project will only be providing minimal maintenance releases until May 2024. See the full announcement here or on github.

tfa.activations.sparsemax

View source on GitHub

Sparsemax activation function.

tfa.activations.sparsemax(
 logits: tfa.types.TensorLike ,
 axis: int = -1
) -> tf.Tensor

For each batch \(i\), and class \(j\), compute sparsemax activation function:

\[ \mathrm{sparsemax}(x)[i, j] = \max(\mathrm{logits}[i, j] - \tau(\mathrm{logits}[i, :]), 0). \]

See From Softmax to Sparsemax: A Sparse Model of Attention and Multi-Label Classification.

Usage:

x = tf.constant([[-1.0, 0.0, 1.0], [-5.0, 1.0, 2.0]])
tfa.activations.sparsemax(x)
<tf.Tensor: shape=(2, 3), dtype=float32, numpy=
array([[0., 0., 1.],
 [0., 0., 1.]], dtype=float32)>

Args

logits A Tensor.
axis int, axis along which the sparsemax operation is applied.

Returns

A Tensor, output of sparsemax transformation. Has the same type and shape as logits.

Raises

ValueError In case dim(logits) == 1.

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.

Last updated 2023年05月25日 UTC.