Scatter updates
into an existing tensor according to indices
.
tf.raw_ops.TensorScatterUpdate( tensor, indices, updates, name=None )
This operation creates a new tensor by applying sparse updates
to the passed in tensor
. This operation is very similar to tf.scatter_nd
, except that the updates are scattered onto an existing tensor (as opposed to a zero-tensor). If the memory for the existing tensor cannot be re-used, a copy is made and updated.
If indices
contains duplicates, then we pick the last update for the index.
If an out of bound index is found on CPU, an error is returned.
indices
contains duplicates.indices
is an integer tensor containing indices into a new tensor of shape shape
.
indices
must have at least 2 axes: (num_updates, index_depth)
.indices
is how deep to index into tensor
so this index depth must be less than the rank of tensor
: indices.shape[-1] <= tensor.ndim
if indices.shape[-1] = tensor.rank
this Op indexes and updates scalar elements. if indices.shape[-1] < tensor.rank
it indexes and updates slices of the input tensor
.
Each update
has a rank of tensor.rank - indices.shape[-1]
. The overall shape of updates
is:
indices.shape[:-1] + tensor.shape[indices.shape[-1]:]
For usage examples see the python tf.tensor_scatter_nd_update function
Args | |
---|---|
tensor | A Tensor . Tensor to copy/update. |
indices | A Tensor . Must be one of the following types: int32 , int64 . Index tensor. |
updates | A Tensor . Must have the same type as tensor . Updates to scatter into output. |
name | A name for the operation (optional). |
Returns | |
---|---|
A Tensor . Has the same type as tensor . |
© 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/raw_ops/TensorScatterUpdate