tensorflow::ops::ScatterNdAdd

#include <state_ops.h>

Applique une addition clairsemée aux valeurs ou tranches individuelles d'une variable .

Résumé

ref est un Tensor de rang P et indices est un Tensor de rang Q

indices doivent être un tenseur entier, contenant des indices dans ref . Il doit avoir la forme [d_0, ..., d_{Q-2}, K] où 0 < K <= P

La dimension la plus interne des indices (de longueur K ) correspond aux indices dans les éléments (si K = P ) ou les tranches (si K < P ) le long de la K ème dimension de ref .

updates est Tensor de rang Q-1+PK de forme :

[d_0, ..., d_{Q-2}, ref.shape[K], ..., ref.shape[P-1]]

Par exemple, supposons que nous voulions ajouter 4 éléments dispersés à un tenseur de rang 1 pour obtenir 8 éléments. En Python, cette addition ressemblerait à ceci :

ref = tf.Variable([1, 2, 3, 4, 5, 6, 7, 8])
indices = tf.constant([[4], [3], [1], [7]])
updates = tf.constant([9, 10, 11, 12])
add = tf.scatter_nd_add(ref, indices, updates)
with tf.Session() as sess:
  print sess.run(add)

La mise à jour de la référence qui en résulterait ressemblerait à ceci :

[1, 13, 3, 14, 14, 6, 7, 20]

Consultez tf.scatter_nd pour plus de détails sur la manière de mettre à jour les tranches.

Arguments :

  • portée : un objet Scope
  • ref : Un tenseur mutable. Doit provenir d’un nœud Variable .
  • indices : Un tenseur . Doit être de l'un des types suivants : int32, int64. Un tenseur d'indices dans ref.
  • mises à jour : Un tenseur . Doit être du même type que ref. Un tenseur de valeurs mises à jour à ajouter à ref.

Attributs optionnels (voir Attrs ) :

  • use_locking : Booléen optionnel. Par défaut : True. Si True, l’affectation sera protégée par un verrou ; sinon, le comportement est indéfini, mais peut entraîner moins de conflits d’accès.

Retours :

  • Output : Identique à la référence. Retourné pour plus de commodité pour les opérations qui souhaitent utiliser les valeurs mises à jour une fois la mise à jour terminée.

Constructeurs et destructeurs

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

attributs publics

operation
output_ref

fonctions publiques

node () const
::tensorflow::Node *
operator::tensorflow::Input () const
operator::tensorflow::Output () const

fonctions statiques publiques

UseLocking (bool x)

Structures

tensorflow::ops::ScatterNdAdd::Attrs

Définiteurs d'attributs optionnels pour ScatterNdAdd .

attributs publics

opération

Operation operation

référence de sortie

::tensorflow::Output output_ref

fonctions publiques

ScatterNdAdd

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

ScatterNdAdd

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

nœud

::tensorflow::Node * node() const 

opérateur::tensorflow::Entrée

 operator::tensorflow::Input() const 

opérateur::tensorflow::Sortie

 operator::tensorflow::Output() const 

fonctions statiques publiques

Utiliser le verrouillage

Attrs UseLocking(
  bool x
)