tf.scatter_add( ref, indices, updates, use_locking=False, name=None )
See the guide: Variables > Sparse Variable Updates
Adds sparse updates to the variable referenced by
This operation computes
# Scalar indices ref[indices, ...] += updates[...] # Vector indices (for each i) ref[indices[i], ...] += updates[i, ...] # High rank indices (for each i, ..., j) ref[indices[i, ..., j], ...] += updates[i, ..., j, ...]
This operation outputs
ref after the update is done.
This makes it easier to chain operations that need to use the updated value.
Duplicate entries are handled correctly: if multiple
the same location, their contributions add.
updates.shape = indices.shape + ref.shape[1:].
Tensor. Must be one of the following types:
int64. A tensor of indices into the first dimension of
Tensor. Must have the same type as
ref. A tensor of updated values to store in
use_locking: An optional
bool. Defaults to
True. If True, the assignment will be protected by a lock; otherwise the behavior is undefined, but may exhibit less contention.
name: A name for the operation (optional).
ref. Returned as a convenience for operations that want
to use the updated values after the update is done.