Stay organized with collections
Save and categorize content based on your preferences.
tensorflow::
ops::
SparseSoftmax
#include <sparse_ops.h>
Applies softmax to a batched N-D
SparseTensor
.
Summary
The inputs represent an N-D SparseTensor with logical shape
[..., B, C]
(where
N >= 2
), and with indices sorted in the canonical lexicographic order.
This op is equivalent to applying the normal
tf.nn.softmax()
to each innermost logical submatrix with shape
[B, C]
, but with the catch that
the implicitly zero elements do not participate
. Specifically, the algorithm is equivalent to the following:
(1) Applies
tf.nn.softmax()
to a densified view of each innermost submatrix with shape
[B, C]
, along the size-C dimension; (2) Masks out the original implicitly-zero locations; (3) Renormalizes the remaining elements.
Hence, the
SparseTensor
result has exactly the same non-zero indices and shape.
Args:
-
scope: A
Scope
object
-
sp_indices: 2-D.
NNZ x R
matrix with the indices of non-empty values in a SparseTensor, in canonical ordering.
-
sp_values: 1-D.
NNZ
non-empty values corresponding to
sp_indices
.
-
sp_shape: 1-D. Shape of the input SparseTensor.
Returns:
-
Output
: 1-D. The
NNZ
values for the result
SparseTensor
.
Public attributes
Public functions
node
::tensorflow::Node * node() const
operator::tensorflow::Input() const
operator::tensorflow::Output
operator::tensorflow::Output() const
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-05-14 UTC.
[null,null,["Last updated 2021-05-14 UTC."],[],[],null,["# tensorflow::ops::SparseSoftmax Class Reference\n\ntensorflow::\nops::\nSparseSoftmax\n================================\n\n`\n#include \u003csparse_ops.h\u003e\n`\n\n\nApplies softmax to a batched N-D\n`\nSparseTensor\n`\n.\n\nSummary\n-------\n\n\nThe inputs represent an N-D SparseTensor with logical shape\n`\n[..., B, C]\n`\n(where\n`\nN \u003e= 2\n`\n), and with indices sorted in the canonical lexicographic order.\n\n\nThis op is equivalent to applying the normal\n`\ntf.nn.softmax()\n`\nto each innermost logical submatrix with shape\n`\n[B, C]\n`\n, but with the catch that\n*the implicitly zero elements do not participate*\n. Specifically, the algorithm is equivalent to the following:\n\n\n(1) Applies\n`\ntf.nn.softmax()\n`\nto a densified view of each innermost submatrix with shape\n`\n[B, C]\n`\n, along the size-C dimension; (2) Masks out the original implicitly-zero locations; (3) Renormalizes the remaining elements.\n\n\nHence, the\n`\nSparseTensor\n`\nresult has exactly the same non-zero indices and shape.\n\n\nArgs:\n\n- scope: A [Scope](/versions/r2.5/api_docs/cc/class/tensorflow/scope#classtensorflow_1_1_scope) object\n- sp_indices: 2-D. `\n NNZ x R\n ` matrix with the indices of non-empty values in a SparseTensor, in canonical ordering.\n- sp_values: 1-D. `\n NNZ\n ` non-empty values corresponding to `\n sp_indices\n ` .\n- sp_shape: 1-D. Shape of the input SparseTensor.\n\n\u003cbr /\u003e\n\n\nReturns:\n\n- `\n `[Output](/versions/r2.5/api_docs/cc/class/tensorflow/output#classtensorflow_1_1_output)`\n ` : 1-D. The `\n NNZ\n ` values for the result `\n SparseTensor\n ` .\n\n\u003cbr /\u003e\n\n| ### Constructors and Destructors ||\n|---|---|\n| ` `[SparseSoftmax](#classtensorflow_1_1ops_1_1_sparse_softmax_1a64ec9c22eb2f8d50797cfb39eb94009d)` (const :: `[tensorflow::Scope](/versions/r2.5/api_docs/cc/class/tensorflow/scope#classtensorflow_1_1_scope)` & scope, :: `[tensorflow::Input](/versions/r2.5/api_docs/cc/class/tensorflow/input#classtensorflow_1_1_input)` sp_indices, :: `[tensorflow::Input](/versions/r2.5/api_docs/cc/class/tensorflow/input#classtensorflow_1_1_input)` sp_values, :: `[tensorflow::Input](/versions/r2.5/api_docs/cc/class/tensorflow/input#classtensorflow_1_1_input)` sp_shape) ` ||\n\n| ### Public attributes ||\n|--------------------------------------------------------------------------------------------------|--------------------------------------------------------------------------------------------------------------|\n| ` `[operation](#classtensorflow_1_1ops_1_1_sparse_softmax_1ad2dc43b15de20c26df875d2e2f5e9191)` ` | ` `[Operation](/versions/r2.5/api_docs/cc/class/tensorflow/operation#classtensorflow_1_1_operation)` ` |\n| ` `[output](#classtensorflow_1_1ops_1_1_sparse_softmax_1a94b1fda8269b6888396b9c165fdd28b1)` ` | ` :: `[tensorflow::Output](/versions/r2.5/api_docs/cc/class/tensorflow/output#classtensorflow_1_1_output)` ` |\n\n| ### Public functions ||\n|------------------------------------------------------------------------------------------------------------------------------|--------------------------|\n| ` `[node](#classtensorflow_1_1ops_1_1_sparse_softmax_1aabb6b649a7d5f3c8a9db2dea2c44ef1a)` () const ` | ` ::tensorflow::Node * ` |\n| ` `[operator::tensorflow::Input](#classtensorflow_1_1ops_1_1_sparse_softmax_1af6f0269e4c290ac6b8234ba881dafe13)` () const ` | ` ` |\n| ` `[operator::tensorflow::Output](#classtensorflow_1_1ops_1_1_sparse_softmax_1a1fccadd0a530764ea2d1691045ebf2a5)` () const ` | ` ` |\n\nPublic attributes\n-----------------\n\n### operation\n\n```text\nOperation operation\n``` \n\n### output\n\n```text\n::tensorflow::Output output\n``` \n\nPublic functions\n----------------\n\n### SparseSoftmax\n\n```gdscript\n SparseSoftmax(\n const ::tensorflow::Scope & scope,\n ::tensorflow::Input sp_indices,\n ::tensorflow::Input sp_values,\n ::tensorflow::Input sp_shape\n)\n``` \n\n### node\n\n```gdscript\n::tensorflow::Node * node() const \n``` \n\n### operator::tensorflow::Input\n\n```gdscript\n operator::tensorflow::Input() const \n``` \n\n### operator::tensorflow::Output\n\n```gdscript\n operator::tensorflow::Output() const \n```"]]