<br />

|---|
| [![](https://www.tensorflow.org/images/GitHub-Mark-32px.png) View source on GitHub](https://github.com/tensorflow/tensorflow/blob/v2.13.1/tensorflow/python/ops/sparse_ops.py#L1331-L1414) |

Computes [`tf.sparse.maximum`](https://www.tensorflow.org/versions/r2.13/api_docs/python/tf/sparse/maximum) of elements across dimensions of a SparseTensor. (deprecated arguments) (deprecated arguments)

#### View aliases


**Compat aliases for migration**

See
[Migration guide](https://www.tensorflow.org/guide/migrate) for
more details.

[`tf.compat.v1.sparse.reduce_max`](https://www.tensorflow.org/api_docs/python/tf/compat/v1/sparse_reduce_max)

<br />

    tf.compat.v1.sparse_reduce_max(
        sp_input, axis=None, keepdims=None, reduction_axes=None, keep_dims=None
    )

> [!WARNING]
> **Deprecated:** SOME ARGUMENTS ARE DEPRECATED: `(keep_dims)`. They will be removed in a future version. Instructions for updating: keep_dims is deprecated, use keepdims instead

> [!WARNING]
> **Deprecated:** SOME ARGUMENTS ARE DEPRECATED: `(reduction_axes)`. They will be removed in a future version. Instructions for updating: reduction_axes is deprecated, use axis instead

This is the reduction operation for the elementwise [`tf.sparse.maximum`](https://www.tensorflow.org/versions/r2.13/api_docs/python/tf/sparse/maximum) op.

This Op takes a SparseTensor and is the sparse counterpart to
[`tf.reduce_max()`](https://www.tensorflow.org/versions/r2.13/api_docs/python/tf/math/reduce_max). In particular, this Op also returns a dense `Tensor`
instead of a sparse one.

> [!NOTE]
> **Note:** A gradient is not defined for this function, so it can't be used in training models that need gradient descent.

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.

<br />

<br />

<br />

| ## For example ||
|---|---|
| <br /> # 'x' represents \[\[1, ?, 2\] # \[?, 3, ?\]\] # where ? is implicitly-zero. x = tf.sparse.SparseTensor([[0, 0], [0, 2], [1, 1]], [1, 2, 3], [2, 3]) tf.sparse.reduce_max(x) <tf.Tensor: shape=(), dtype=int32, numpy=3> tf.sparse.reduce_max(x, 0) <tf.Tensor: shape=(3,), dtype=int32, numpy=array([1, 3, 2], dtype=int32)> tf.sparse.reduce_max(x, 1) <tf.Tensor: shape=(2,), dtype=int32, numpy=array([2, 3], dtype=int32)> tf.sparse.reduce_max(x, 1, keepdims=True) <tf.Tensor: shape=(2, 1), dtype=int32, numpy= array([[2], [3]], dtype=int32)> tf.sparse.reduce_max(x, [0, 1]) <tf.Tensor: shape=(), dtype=int32, numpy=3> # 'y' represents \[\[-7, ?\] # \[ 4, 3\] # \[ ?, ?\] y = tf.sparse.SparseTensor([[0, 0,], [1, 0], [1, 1]], [-7, 4, 3], [3, 2]) tf.sparse.reduce_max(y, 1) <tf.Tensor: shape=(3,), dtype=int32, numpy=array([-7,  4,  0], dtype=int32)> <br /> ||

<br />

<br />

<br />

<br />

| ## 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. |
| `reduction_axes` | Deprecated name of `axis`. |
| `keep_dims` | Deprecated alias for `keepdims`. |

<br />

<br />

<br />

<br />

| ## Returns ||
|---|---|
| The reduced Tensor. ||

<br />