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.
- If an out of bound index is found, the index is ignored.
- The order in which updates are applied is nondeterministic, so the output
will be nondeterministic if
indicescontains duplicates.
indices is an integer tensor containing indices into a new tensor of shape
shape.
indicesmust have at least 2 axes:(num_updates, index_depth).- The last axis of
indicesis how deep to index intotensorso this index depth must be less than the rank oftensor: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
Returns | |
|---|---|
A Tensor. Has the same type as tensor.
|