# tensorflow::ops::DeserializeManySparse

`#include <sparse_ops.h>`

Deserialize and concatenate `SparseTensors` from a serialized minibatch.

## Summary

The input `serialized_sparse` must be a string matrix of shape `[N x 3]` where `N` is the minibatch size and the rows correspond to packed outputs of `https://www.tensorflow.org/versions/r2.0/api_docs/cc/class/tensorflow/ops/serialize-sparse#classtensorflow_1_1ops_1_1_serialize_sparse`. The ranks of the original `SparseTensor` objects must all match. When the final `SparseTensor` is created, it has rank one higher than the ranks of the incoming `SparseTensor` objects (they have been concatenated along a new row dimension).

The output `SparseTensor` object's shape values for all dimensions but the first are the max across the input `SparseTensor` objects' shape values for the corresponding dimensions. Its first shape value is `N`, the minibatch size.

The input `SparseTensor` objects' indices are assumed ordered in standard lexicographic order. If this is not the case, after this step run `https://www.tensorflow.org/versions/r2.0/api_docs/cc/class/tensorflow/ops/sparse-reorder#classtensorflow_1_1ops_1_1_sparse_reorder` to restore index ordering.

For example, if the serialized input is a `[2 x 3]` matrix representing two original `SparseTensor` objects:

```
index = [ 0]
        [10]
        [20]
values = [1, 2, 3]
shape = [50]
```

<br />

and

```
index = [ 2]
        [10]
values = [4, 5]
shape = [30]
```

<br />

then the final deserialized `SparseTensor` will be:

```
index = [0  0]
        [0 10]
        [0 20]
        [1  2]
        [1 10]
values = [1, 2, 3, 4, 5]
shape = [2 50]
```

<br />

Arguments:

- scope: A [Scope](https://www.tensorflow.org/versions/r2.0/api_docs/cc/class/tensorflow/scope#classtensorflow_1_1_scope) object
- serialized_sparse: 2-D, The `N` serialized `SparseTensor` objects. Must have 3 columns.
- dtype: The `dtype` of the serialized `SparseTensor` objects.

<br />

Returns:

- `https://www.tensorflow.org/versions/r2.0/api_docs/cc/class/tensorflow/output#classtensorflow_1_1_output` sparse_indices
- `https://www.tensorflow.org/versions/r2.0/api_docs/cc/class/tensorflow/output#classtensorflow_1_1_output` sparse_values
- `https://www.tensorflow.org/versions/r2.0/api_docs/cc/class/tensorflow/output#classtensorflow_1_1_output` sparse_shape

<br />

| ### Constructors and Destructors ||
|---|---|
| `https://www.tensorflow.org/versions/r2.0/api_docs/cc/class/tensorflow/ops/deserialize-many-sparse#classtensorflow_1_1ops_1_1_deserialize_many_sparse_1ab7cf9797d35b97c6d82e4000573b7839(const ::https://www.tensorflow.org/versions/r2.0/api_docs/cc/class/tensorflow/scope#classtensorflow_1_1_scope & scope, ::https://www.tensorflow.org/versions/r2.0/api_docs/cc/class/tensorflow/input#classtensorflow_1_1_input serialized_sparse, DataType dtype)` ||

| ### Public attributes ||
|---|---|
| `https://www.tensorflow.org/versions/r2.0/api_docs/cc/class/tensorflow/ops/deserialize-many-sparse#classtensorflow_1_1ops_1_1_deserialize_many_sparse_1ac7cd19536afb9e162240583e49e59e8d` | `https://www.tensorflow.org/versions/r2.0/api_docs/cc/class/tensorflow/operation#classtensorflow_1_1_operation` |
| `https://www.tensorflow.org/versions/r2.0/api_docs/cc/class/tensorflow/ops/deserialize-many-sparse#classtensorflow_1_1ops_1_1_deserialize_many_sparse_1a047caae64f0cea6d6dc1659d15bfe4b9` | `::https://www.tensorflow.org/versions/r2.0/api_docs/cc/class/tensorflow/output#classtensorflow_1_1_output` |
| `https://www.tensorflow.org/versions/r2.0/api_docs/cc/class/tensorflow/ops/deserialize-many-sparse#classtensorflow_1_1ops_1_1_deserialize_many_sparse_1a248aaedf66a2ba1733b1f2e541c4d3e2` | `::https://www.tensorflow.org/versions/r2.0/api_docs/cc/class/tensorflow/output#classtensorflow_1_1_output` |
| `https://www.tensorflow.org/versions/r2.0/api_docs/cc/class/tensorflow/ops/deserialize-many-sparse#classtensorflow_1_1ops_1_1_deserialize_many_sparse_1a1047d48275c3140bedd5e8737af534f2` | `::https://www.tensorflow.org/versions/r2.0/api_docs/cc/class/tensorflow/output#classtensorflow_1_1_output` |

## Public attributes

### operation

```
Operation operation
```

### sparse_indices

```
::tensorflow::Output sparse_indices
```

### sparse_shape

```
::tensorflow::Output sparse_shape
```

### sparse_values

```
::tensorflow::Output sparse_values
```

## Public functions

### DeserializeManySparse

```
 DeserializeManySparse(
  const ::tensorflow::Scope & scope,
  ::tensorflow::Input serialized_sparse,
  DataType dtype
)
```