tensorflow::ops::ScatterAdd

#include <state_ops.h>

Adds sparse updates to a variable reference.

Summary

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 reset value.

Duplicate entries are handled correctly: if multiple indices reference the same location, their contributions add.

Requires updates.shape = indices.shape + ref.shape[1:] or updates.shape = [].

Arguments:

  • scope: A Scope object
  • ref: Should be from a Variable node.
  • indices: A tensor of indices into the first dimension of ref.
  • updates: A tensor of updated values to add to ref.

Optional attributes (see Attrs):

  • use_locking: If True, the addition will be protected by a lock; otherwise the behavior is undefined, but may exhibit less contention.

Returns:

  • Output: = Same as ref. Returned as a convenience for operations that want to use the updated values after the update is done.
Constructors and Destructors
ScatterAdd(const ::tensorflow::Scope & scope, ::tensorflow::Input ref, ::tensorflow::Input indices, ::tensorflow::Input updates)
ScatterAdd(const ::tensorflow::Scope & scope, ::tensorflow::Input ref, ::tensorflow::Input indices, ::tensorflow::Input updates, const ScatterAdd::Attrs & attrs)
Public attributes
operation
output_ref
Public functions
node() const
::tensorflow::Node *
operator::tensorflow::Input() const
operator::tensorflow::Output() const
Public static functions
UseLocking(bool x)
Structs
tensorflow::ops::ScatterAdd::Attrs

Optional attribute setters for ScatterAdd.

Public attributes

operation

Operation operation

output_ref

::tensorflow::Output output_ref

Public functions

ScatterAdd

 ScatterAdd(
  const ::tensorflow::Scope & scope,
  ::tensorflow::Input ref,
  ::tensorflow::Input indices,
  ::tensorflow::Input updates
)

ScatterAdd

 ScatterAdd(
  const ::tensorflow::Scope & scope,
  ::tensorflow::Input ref,
  ::tensorflow::Input indices,
  ::tensorflow::Input updates,
  const ScatterAdd::Attrs & attrs
)

node

::tensorflow::Node * node() const 

operator::tensorflow::Input

operator::tensorflow::Input() const 

operator::tensorflow::Output

operator::tensorflow::Output() const 

Public static functions

UseLocking

Attrs UseLocking(
  bool x
)

© 2020 The TensorFlow Authors. All rights reserved.
Licensed under the Creative Commons Attribution License 4.0.
Code samples licensed under the Apache 2.0 License.
https://www.tensorflow.org/versions/r2.4/api_docs/cc/class/tensorflow/ops/scatter-add