This Op takes a SparseTensor and is the sparse counterpart to
tf.reduce_sum(). In particular, this Op also returns a dense Tensor
if output_is_sparse is False, or a SparseTensor if output_is_sparse
is True.
Reduces sp_input along the dimensions given in axis. Unless keepdims is
true, the rank of the tensor is reduced by 1 for each entry in axis. If
keepdims is true, the reduced dimensions are retained with length 1.
If axis has no entries, all dimensions are reduced, and a tensor
with a single element is returned. Additionally, the axes can be negative,
similar to the indexing rules in Python.
For example:
# 'x' represents [[1, ?, 1]# [?, 1, ?]]# where ? is implicitly-zero.tf.sparse.reduce_sum(x)==> 3tf.sparse.reduce_sum(x,0)==> [1,1,1]tf.sparse.reduce_sum(x,1)==> [2,1]# Can also use -1 as the axis.tf.sparse.reduce_sum(x,1,keepdims=True)==> [[2],[1]]tf.sparse.reduce_sum(x,[0,1])==> 3
Args
sp_input
The SparseTensor to reduce. Should have numeric type.
axis
The dimensions to reduce; list or scalar. If None (the
default), reduces all dimensions.
keepdims
If true, retain reduced dimensions with length 1.
output_is_sparse
If true, returns a SparseTensor instead of a dense
Tensor (the default).
name
A name for the operation (optional).
Returns
The reduced Tensor or the reduced SparseTensor if output_is_sparse is
True.
[null,null,["Last updated 2020-10-01 UTC."],[],[],null,["# tf.sparse.reduce_sum\n\n\u003cbr /\u003e\n\n|------------------------------------------------------------------------------|-------------------------------------------------------------------------------------------------------------------------------|\n| [TensorFlow 1 version](/versions/r1.15/api_docs/python/tf/sparse/reduce_sum) | [View source on GitHub](https://github.com/tensorflow/tensorflow/blob/v2.2.0/tensorflow/python/ops/sparse_ops.py#L1272-L1336) |\n\nComputes the sum of elements across dimensions of a SparseTensor. \n\n tf.sparse.reduce_sum(\n sp_input, axis=None, keepdims=None, output_is_sparse=False, name=None\n )\n\nThis Op takes a SparseTensor and is the sparse counterpart to\n[`tf.reduce_sum()`](../../tf/math/reduce_sum). In particular, this Op also returns a dense `Tensor`\nif `output_is_sparse` is `False`, or a `SparseTensor` if `output_is_sparse`\nis `True`.\n| **Note:** if `output_is_sparse` is True, a gradient is not defined for this function, so it can't be used in training models that need gradient descent.\n\nReduces `sp_input` along the dimensions given in `axis`. Unless `keepdims` is\ntrue, the rank of the tensor is reduced by 1 for each entry in `axis`. If\n`keepdims` is true, the reduced dimensions are retained with length 1.\n\nIf `axis` has no entries, all dimensions are reduced, and a tensor\nwith a single element is returned. Additionally, the axes can be negative,\nsimilar to the indexing rules in Python.\n\n#### For example:\n\n # 'x' represents [[1, ?, 1]\n # [?, 1, ?]]\n # where ? is implicitly-zero.\n tf.sparse.reduce_sum(x) ==\u003e 3\n tf.sparse.reduce_sum(x, 0) ==\u003e [1, 1, 1]\n tf.sparse.reduce_sum(x, 1) ==\u003e [2, 1] # Can also use -1 as the axis.\n tf.sparse.reduce_sum(x, 1, keepdims=True) ==\u003e [[2], [1]]\n tf.sparse.reduce_sum(x, [0, 1]) ==\u003e 3\n\n\u003cbr /\u003e\n\n\u003cbr /\u003e\n\n\u003cbr /\u003e\n\n| Args ---- ||\n|--------------------|--------------------------------------------------------------------------------------------|\n| `sp_input` | The SparseTensor to reduce. Should have numeric type. |\n| `axis` | The dimensions to reduce; list or scalar. If `None` (the default), reduces all dimensions. |\n| `keepdims` | If true, retain reduced dimensions with length 1. |\n| `output_is_sparse` | If true, returns a `SparseTensor` instead of a dense `Tensor` (the default). |\n| `name` | A name for the operation (optional). |\n\n\u003cbr /\u003e\n\n\u003cbr /\u003e\n\n\u003cbr /\u003e\n\n\u003cbr /\u003e\n\n| Returns ------- ||\n|---|---|\n| The reduced Tensor or the reduced SparseTensor if `output_is_sparse` is True. ||\n\n\u003cbr /\u003e"]]