tensorflow :: opérations :: ScatterNdAdd
#include <state_ops.h>
Applique des ajouts épars aux valeurs individuelles ou aux tranches 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 être de forme [d_0, ..., d_{Q-2}, K]
où 0 < K <= P
La dimension la plus interne 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
ième dimension de ref
.
updates
est Tensor
de rang Q-1+PK
avec la forme:
[d_0, ..., d_{Q-2}, ref.shape[K], ..., ref.shape[P-1]]
Par exemple, disons que nous voulons ajouter 4 éléments dispersés à un tenseur de rang 1 à 8 éléments. En Python, cet ajout 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 résultante de ref ressemblerait à ceci:
[1, 13, 3, 14, 14, 6, 7, 20]
Voir tf.scatter_nd
pour plus de détails sur la façon de mettre à jour les tranches.
Arguments:
- scope: un objet Scope
- ref: Un Tensor mutable. Doit provenir d'un nœud Variable .
- indices: A Tensor . Doit être l'un des types suivants: int32, int64. Un tenseur d'indices dans la réf.
- mises à jour: A Tensor . Doit avoir le même type que la réf. Un tenseur de valeurs mises à jour à ajouter à ref.
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 des raisons pratiques 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) |
Structs | |
---|---|
tensorflow :: ops :: ScatterNdAdd :: Attrs | Définisseurs d' attributs facultatifs pour ScatterNdAdd . |
Attributs publics
opération
Operation operation
output_ref
::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
operator :: tensorflow :: Input
operator::tensorflow::Input() const
operator :: tensorflow :: Output
operator::tensorflow::Output() const
Fonctions statiques publiques
Utiliser le verrouillage
Attrs UseLocking( bool x )