flux tensoriel : : opérations : : DispersionNdMise à jour

#include <state_ops.h>

Applique updates éparses à des valeurs individuelles ou à des tranches au sein d'un élément donné.

Résumé

variable selon indices .

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

indices doivent être des tenseurs entiers, contenant des indices dans ref . Il doit avoir la forme \([d_0, ..., d_{Q-2}, K]\) où 0 < K <= P .

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

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

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

Par exemple, disons que nous souhaitons mettre à jour 4 éléments dispersés vers un tenseur de rang 1 à 8 éléments. En Python, cette mise à jour 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])
    update = tf.scatter_nd_update(ref, indices, updates)
    with tf.Session() as sess:
      print sess.run(update)

La mise à jour résultante de la référence ressemblerait à ceci :

[1, 11, 3, 10, 9, 6, 7, 12]

Voir tf.scatter_nd pour plus de détails sur la façon de mettre à jour les tranches.

Voir aussi tf.scatter_update et tf.batch_scatter_update .

Arguments:

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

Attributs facultatifs (voir Attrs ) :

  • use_locking : un booléen facultatif. La valeur par défaut est True. Si True, l'affectation sera protégée par un verrou ; sinon, le comportement n'est pas défini, mais peut présenter moins de conflits.

Retour:

  • Output : Identique à la réf. Renvoyé pour faciliter les opérations qui souhaitent utiliser les valeurs mises à jour une fois la mise à jour terminée.

Constructeurs et Destructeurs

ScatterNdUpdate (const :: tensorflow::Scope & scope, :: tensorflow::Input ref, :: tensorflow::Input indices, :: tensorflow::Input updates)
ScatterNdUpdate (const :: tensorflow::Scope & scope, :: tensorflow::Input ref, :: tensorflow::Input indices, :: tensorflow::Input updates, const ScatterNdUpdate::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 :: ScatterNdUpdate :: Attrs

Setters d'attributs facultatifs pour ScatterNdUpdate .

Attributs publics

opération

Operation operation

réf_sortie

::tensorflow::Output output_ref

Fonctions publiques

DispersionNdMise à jour

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

DispersionNdMise à jour

 ScatterNdUpdate(
  const ::tensorflow::Scope & scope,
  ::tensorflow::Input ref,
  ::tensorflow::Input indices,
  ::tensorflow::Input updates,
  const ScatterNdUpdate::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

UtiliserVerrouillage

Attrs UseLocking(
  bool x
)