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
Stay organized with collections
Save and categorize content based on your preferences.
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.
[null,null,["Last updated 2023-05-25 UTC."],[],[],null,["# tfa.activations.sparsemax\n\n|-------------------------------------------------------------------------------------------------------------------------------|\n| [View source on GitHub](https://github.com/tensorflow/addons/blob/v0.20.0/tensorflow_addons/activations/sparsemax.py#L21-L77) |\n\nSparsemax activation function. \n\n tfa.activations.sparsemax(\n logits: ../../tfa/types/TensorLike,\n axis: int = -1\n ) -\u003e tf.Tensor\n\nFor each batch \\\\(i\\\\), and class \\\\(j\\\\),\ncompute sparsemax activation function:\n\n\\\\\\[\n\\\\mathrm{sparsemax}(x)\\[i, j\\] = \\\\max(\\\\mathrm{logits}\\[i, j\\] - \\\\tau(\\\\mathrm{logits}\\[i, :\\]), 0).\n\\\\\\]\n\nSee [From Softmax to Sparsemax: A Sparse Model of Attention and Multi-Label Classification](https://arxiv.org/abs/1602.02068).\n\n#### Usage:\n\n x = tf.constant([[-1.0, 0.0, 1.0], [-5.0, 1.0, 2.0]])\n tfa.activations.sparsemax(x)\n \u003ctf.Tensor: shape=(2, 3), dtype=float32, numpy=\n array([[0., 0., 1.],\n [0., 0., 1.]], dtype=float32)\u003e\n\n\u003cbr /\u003e\n\n\u003cbr /\u003e\n\n\u003cbr /\u003e\n\n| Args ---- ||\n|----------|-------------------------------------------------------------|\n| `logits` | A `Tensor`. |\n| `axis` | `int`, axis along which the sparsemax operation is applied. |\n\n\u003cbr /\u003e\n\n\u003cbr /\u003e\n\n\u003cbr /\u003e\n\n\u003cbr /\u003e\n\n| Returns ------- ||\n|---|---|\n| A `Tensor`, output of sparsemax transformation. Has the same type and shape as `logits`. ||\n\n\u003cbr /\u003e\n\n\u003cbr /\u003e\n\n\u003cbr /\u003e\n\n\u003cbr /\u003e\n\n| Raises ------ ||\n|--------------|-----------------------------|\n| `ValueError` | In case `dim(logits) == 1`. |\n\n\u003cbr /\u003e"]]