Applica un'aggiunta sparsa a "input" utilizzando valori o sezioni individuali
da "aggiornamenti" secondo gli indici "indici". Gli aggiornamenti non sono alias: "input" viene modificato sul posto solo se nessun'altra operazione lo utilizzerà. Altrimenti, viene creata una copia di "input". Questa operazione ha un gradiente rispetto sia a `input` che ad` updates`.
"input" è un "tensore" con rango "P" e "indici" è un "tensore" di rango "Q".
"indici" deve essere un tensore intero, contenente indici in "input". Deve essere di forma \ \([d_0, ..., d_{Q-2}, K]\\) dove "0 <K <= P".
La dimensione più interna di "indici" (con lunghezza "K") corrisponde agli indici in elementi (se "K = P") o sezioni "(PK)" -dimensionali (se "K <P") lungo la "K" dimensione di "input".
`update` è` Tensor` di rango `Q-1 + PK` con forma:
Ad esempio, supponiamo di voler aggiungere 4 elementi dispersi a un tensore di rango 1 a 8 elementi. In Python, quell'aggiunta sarebbe simile a questa:
input = tf.constant ([1, 2, 3, 4, 5, 6, 7, 8]) indici = tf.constant ([[4], [3], [1], [7]]) aggiornamenti = tf.constant ([9, 10, 11, 12]) output = tf.scatter_nd_non_aliasing_add (input, indices, updates) con tf.Session () as sess: print (sess.run (output))
Il valore risultante `output` sarebbe simile a questo:
[1, 13, 3, 14, 14, 6, 7, 20]
Vedere `tf.scatter_nd` per maggiori dettagli su come effettuare aggiornamenti alle sezioni.
Metodi pubblici
Uscita <T> | asOutput () Restituisce la maniglia simbolica di un tensore. |
static <T, U estende Number> ScatterNdNonAliasingAdd <T> | |
Uscita <T> | output () Un `Tensore` con la stessa forma di` input`, contenente i valori di `input` aggiornati con` updates`. |
Metodi ereditati
Metodi pubblici
output pubblico <T> asOutput ()
Restituisce la maniglia simbolica di un tensore.
Gli input per le operazioni TensorFlow sono output di un'altra operazione TensorFlow. Questo metodo viene utilizzato per ottenere un handle simbolico che rappresenta il calcolo dell'input.
public static ScatterNdNonAliasingAdd <T> create ( ambito ambito, input operando <T>, indici operando <U>, aggiornamenti operando <T>)
Metodo Factory per creare una classe che racchiude una nuova operazione ScatterNdNonAliasingAdd.
Parametri
scopo | ambito attuale |
---|---|
ingresso | Un tensore. |
indici | Un tensore. Deve essere uno dei seguenti tipi: `int32`,` int64`. Un tensore di indici in "input". |
aggiornamenti | Un tensore. Deve avere lo stesso tipo del rif. Un tensore di valori aggiornati da aggiungere a "input". |
ritorna
- una nuova istanza di ScatterNdNonAliasingAdd
output pubblico <T> output ()
Un `Tensore` con la stessa forma di` input`, contenente i valori di `input` aggiornati con` updates`.