This Op takes a SparseTensor and is the sparse counterpart to
tf.reduce_max(). In particular, this Op also returns a dense Tensor
instead of a sparse one.
Reduces sp_input along the dimensions given in reduction_axes. Unless
keepdims is true, the rank of the tensor is reduced by 1 for each entry in
reduction_axes. If keepdims is true, the reduced dimensions are retained
with length 1.
If reduction_axes 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.
The values not defined in sp_input don't participate in the reduce max,
as opposed to be implicitly assumed 0 -- hence it can return negative values
for sparse reduction_axes. But, in case there are no values in
reduction_axes, it will reduce to 0. See second example below.
For example:
# 'x' represents [[1, ?, 2]# [?, 3, ?]]# where ? is implicitly-zero.tf.sparse.reduce_max(x)==> 3tf.sparse.reduce_max(x,0)==> [1,3,2]tf.sparse.reduce_max(x,1)==> [2,3]# Can also use -1 as the axis.tf.sparse.reduce_max(x,1,keepdims=True)==> [[2],[3]]tf.sparse.reduce_max(x,[0,1])==> 3# 'y' represents [[-7, ?]# [ 4, 3]# [ ?, ?]tf.sparse.reduce_max(x,1)==> [-7,4,0]
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.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Missing the information I need","missingTheInformationINeed","thumb-down"],["Too complicated / too many steps","tooComplicatedTooManySteps","thumb-down"],["Out of date","outOfDate","thumb-down"],["Samples / code issue","samplesCodeIssue","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2020-10-01 UTC."],[],[],null,["# tf.compat.v1.sparse_reduce_max\n\n\u003cbr /\u003e\n\n|-------------------------------------------------------------------------------------------------------------------------------|\n| [View source on GitHub](https://github.com/tensorflow/tensorflow/blob/v2.0.0/tensorflow/python/ops/sparse_ops.py#L1132-L1200) |\n\nComputes the max of elements across dimensions of a SparseTensor. (deprecated arguments) (deprecated arguments)\n\n#### View aliases\n\n\n**Compat aliases for migration**\n\nSee\n[Migration guide](https://www.tensorflow.org/guide/migrate) for\nmore details.\n\n[`tf.compat.v1.sparse.reduce_max`](/api_docs/python/tf/compat/v1/sparse_reduce_max)\n\n\u003cbr /\u003e\n\n tf.compat.v1.sparse_reduce_max(\n sp_input, axis=None, keepdims=None, reduction_axes=None, keep_dims=None\n )\n\n| **Warning:** SOME ARGUMENTS ARE DEPRECATED: `(keep_dims)`. They will be removed in a future version. Instructions for updating: keep_dims is deprecated, use keepdims instead\n| **Warning:** SOME ARGUMENTS ARE DEPRECATED: `(reduction_axes)`. They will be removed in a future version. Instructions for updating: reduction_axes is deprecated, use axis instead\n\nThis Op takes a SparseTensor and is the sparse counterpart to\n[`tf.reduce_max()`](../../../tf/math/reduce_max). In particular, this Op also returns a dense `Tensor`\ninstead of a sparse one.\n| **Note:** 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 `reduction_axes`. Unless\n`keepdims` is true, the rank of the tensor is reduced by 1 for each entry in\n`reduction_axes`. If `keepdims` is true, the reduced dimensions are retained\nwith length 1.\n\nIf `reduction_axes` 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\nThe values not defined in `sp_input` don't participate in the reduce max,\nas opposed to be implicitly assumed 0 -- hence it can return negative values\nfor sparse `reduction_axes`. But, in case there are no values in\n`reduction_axes`, it will reduce to 0. See second example below.\n\n#### For example:\n\n # 'x' represents [[1, ?, 2]\n # [?, 3, ?]]\n # where ? is implicitly-zero.\n tf.sparse.reduce_max(x) ==\u003e 3\n tf.sparse.reduce_max(x, 0) ==\u003e [1, 3, 2]\n tf.sparse.reduce_max(x, 1) ==\u003e [2, 3] # Can also use -1 as the axis.\n tf.sparse.reduce_max(x, 1, keepdims=True) ==\u003e [[2], [3]]\n tf.sparse.reduce_max(x, [0, 1]) ==\u003e 3\n\n # 'y' represents [[-7, ?]\n # [ 4, 3]\n # [ ?, ?]\n tf.sparse.reduce_max(x, 1) ==\u003e [-7, 4, 0]\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| `reduction_axes` | Deprecated name of `axis`. |\n| `keep_dims` | Deprecated alias for `keepdims`. |\n\n\u003cbr /\u003e\n\n\u003cbr /\u003e\n\n\u003cbr /\u003e\n\n\u003cbr /\u003e\n\n| Returns ------- ||\n|---|---|\n| The reduced Tensor. ||\n\n\u003cbr /\u003e"]]