View source on GitHub |
Reshapes a SparseTensor
to represent values in a new dense shape.
tf.sparse.reshape( sp_input, shape, name=None )
This operation has the same semantics as reshape
on the represented dense tensor. The indices of non-empty values in sp_input
are recomputed based on the new dense shape, and a new SparseTensor
is returned containing the new indices and new shape. The order of non-empty values in sp_input
is unchanged.
If one component of shape
is the special value -1, the size of that dimension is computed so that the total dense size remains constant. At most one component of shape
can be -1. The number of dense elements implied by shape
must be the same as the number of dense elements originally represented by sp_input
.
For example, if sp_input
has shape [2, 3, 6]
and indices
/ values
:
[0, 0, 0]: a [0, 0, 1]: b [0, 1, 0]: c [1, 0, 0]: d [1, 2, 3]: e
and shape
is [9, -1]
, then the output will be a SparseTensor
of shape [9, 4]
and indices
/ values
:
[0, 0]: a [0, 1]: b [1, 2]: c [4, 2]: d [8, 1]: e
Args | |
---|---|
sp_input | The input SparseTensor . |
shape | A 1-D (vector) int64 Tensor specifying the new dense shape of the represented SparseTensor . |
name | A name prefix for the returned tensors (optional) |
Returns | |
---|---|
A SparseTensor with the same non-empty values but with indices calculated by the new dense shape. |
Raises | |
---|---|
TypeError | If sp_input is not a SparseTensor . |
ValueError | If argument shape requests a SparseTensor with a different number of elements than sp_input . |
ValueError | If shape has more than one inferred (== -1) dimension. |
© 2020 The TensorFlow Authors. All rights reserved.
Licensed under the Creative Commons Attribution License 3.0.
Code samples licensed under the Apache 2.0 License.
https://www.tensorflow.org/versions/r2.4/api_docs/python/tf/sparse/reshape