Menerapkan penambahan jarang ke `input` menggunakan nilai atau irisan individual
dari `pembaruan` menurut indeks `indeks`. Pembaruannya non-aliasing: `input` hanya dimodifikasi di tempat jika tidak ada operasi lain yang akan menggunakannya. Jika tidak, salinan `input` dibuat. Operasi ini memiliki gradien sehubungan dengan `input` dan `updates`.
`input` adalah `Tensor` dengan peringkat `P` dan `indeks` adalah `Tensor` dengan peringkat `Q`.
`indeks` harus berupa tensor bilangan bulat, yang berisi indeks ke dalam `input`. Itu harus berbentuk \\([d_0, ..., d_{Q-2}, K]\\) di mana `0 < K <= P`.
Dimensi terdalam dari `indeks` (dengan panjang `K`) sesuai dengan indeks menjadi elemen (jika `K = P`) atau irisan dimensi `(PK)` (jika `K < P`) di sepanjang `K`th dimensi `masukan`.
`updates` adalah `Tensor` dari rank `Q-1+PK` dengan bentuk:
$$[d_0, ..., d_{Q-2}, input.shape[K], ..., input.shape[P-1]].$$
Misalnya, kita ingin menambahkan 4 elemen yang tersebar ke tensor peringkat-1 ke 8 elemen. Dengan Python, penambahan itu akan terlihat seperti ini:
input = tf.constant([1, 2, 3, 4, 5, 6, 7, 8]) indeks = tf.constant([[4], [3], [1], [7]]) update = tf.constant([9, 10, 11, 12]) output = tf.scatter_nd_non_aliasing_add(input, indeks, update) dengan tf.Session() sebagai sess: print(sess.run(output))
Nilai `output` yang dihasilkan akan terlihat seperti ini:
[1, 13, 3, 14, 14, 6, 7, 20]
Lihat tf.scatter_nd
untuk detail selengkapnya tentang cara memperbarui irisan.
Metode Publik
Keluaran <T> | sebagai Keluaran () Mengembalikan pegangan simbolis dari sebuah tensor. |
static <T, U memperluas Number> ScatterNdNonAliasingAdd <T> | |
Keluaran <T> | keluaran () `Tensor` dengan bentuk yang sama dengan `input`, berisi nilai `input` yang diperbarui dengan `updates`. |
Metode yang Diwarisi
Metode Publik
Output publik <T> sebagai Output ()
Mengembalikan pegangan simbolis dari sebuah tensor.
Input ke operasi TensorFlow adalah output dari operasi TensorFlow lainnya. Metode ini digunakan untuk mendapatkan pegangan simbolis yang mewakili perhitungan input.
public static ScatterNdNonAliasingAdd <T> create ( Scope scope, Operand <T> input, Operand <U> indexs, Operand <T> update)
Metode pabrik untuk membuat kelas yang membungkus operasi ScatterNdNonAliasingAdd baru.
Parameter
cakupan | lingkup saat ini |
---|---|
memasukkan | Sebuah Tensor. |
indeks | Sebuah Tensor. Harus salah satu dari jenis berikut: `int32`, `int64`. Tensor indeks ke dalam `input`. |
pembaruan | Sebuah Tensor. Harus memiliki tipe yang sama dengan ref. Tensor nilai yang diperbarui untuk ditambahkan ke `input`. |
Kembali
- contoh baru ScatterNdNonAliasingAdd
Keluaran publik <T> keluaran ()
`Tensor` dengan bentuk yang sama dengan `input`, berisi nilai `input` yang diperbarui dengan `updates`.