TensorScatterAdd

TensorScatterAdd kelas akhir publik

Menambahkan `pembaruan` yang jarang ke tensor yang ada menurut `indeks`.

Operasi ini membuat tensor baru dengan menambahkan `pembaruan` yang jarang ke `tensor` yang diteruskan. Operasi ini sangat mirip dengan tf.compat.v1.scatter_nd_add , kecuali pembaruan ditambahkan ke tensor yang sudah ada (bukan variabel). Jika memori untuk tensor yang ada tidak dapat digunakan kembali, salinan akan dibuat dan diperbarui.

`indices` adalah tensor bilangan bulat yang berisi indeks ke dalam tensor baru berbentuk `tensor.shape`. Dimensi terakhir `indices` paling banyak dapat berupa peringkat `tensor.shape`:

indices.shape[-1] <= tensor.shape.rank
 
Dimensi terakhir `indices` berhubungan dengan indeks ke dalam elemen (jika `indices.shape[-1] = tensor.shape. rank`) atau irisan (jika `indices.shape[-1] < tensor.shape.rank`) sepanjang dimensi `indices.shape[-1]` dari `tensor.shape`. `updates` adalah tensor dengan bentuk
indices.shape[:-1] + tensor.shape[indices.shape[-1]:]
 
Bentuk paling sederhana dari `tensor_scatter_nd_add` adalah menambahkan elemen individual ke tensor berdasarkan indeks. Misalnya kita ingin menambahkan 4 elemen pada tensor peringkat-1 dengan 8 elemen.

Dengan Python, operasi penambahan pencar ini akan terlihat seperti ini:

>>> indeks = tf.constant([[4], [3], [1], [7]]) >>> pembaruan = tf.constant([9, 10, 11, 12]) >>> tensor = tf.ones([8], dtype=tf.int32) >>> diperbarui = tf.tensor_scatter_nd_add(tensor, indeks, pembaruan) >>> diperbarui

Kita juga dapat memasukkan seluruh bagian tensor dengan peringkat lebih tinggi sekaligus. Misalnya, jika kita ingin menyisipkan dua irisan pada dimensi pertama tensor peringkat-3 dengan dua matriks nilai baru.

Dengan Python, operasi penambahan pencar ini akan terlihat seperti ini:

>>> indeks = tf.constant([[0], [2]]) >>> pembaruan = tf.constant([[[5, 5, 5, 5], [6, 6, 6, 6], ... [7, 7, 7, 7], [8, 8, 8, 8]], ... [[5, 5, 5, 5], [6, 6, 6, 6], .. .[7, 7, 7, 7], [8, 8, 8, 8]]]) >>> tensor = tf.ones([4, 4, 4],dtype=tf.int32) >>> diperbarui = tf.tensor_scatter_nd_add(tensor, indeks, pembaruan) >>> diperbarui

Catatan: pada CPU, jika ditemukan indeks di luar batas, kesalahan akan dikembalikan. Pada GPU, jika ditemukan indeks di luar batas, indeks tersebut akan diabaikan.

Metode Publik

Keluaran <T>
sebagai Keluaran ()
Mengembalikan pegangan simbolik tensor.
statis <T, U memperluas Angka> TensorScatterAdd <T>
buat ( Lingkup lingkup, Tensor Operand <T>, Indeks Operand <U>, Pembaruan Operand <T>)
Metode pabrik untuk membuat kelas yang membungkus operasi TensorScatterAdd baru.
Keluaran <T>
keluaran ()
Tensor baru disalin dari tensor dan pembaruan ditambahkan sesuai dengan indeks.

Metode Warisan

Metode Publik

Keluaran publik <T> sebagai Keluaran ()

Mengembalikan pegangan simbolik tensor.

Masukan ke operasi TensorFlow adalah keluaran dari operasi TensorFlow lainnya. Metode ini digunakan untuk mendapatkan pegangan simbolis yang mewakili perhitungan input.

public static TensorScatterAdd <T> create ( Lingkup cakupan, Tensor <T> Operand , indeks Operand <U>, pembaruan Operand <T>)

Metode pabrik untuk membuat kelas yang membungkus operasi TensorScatterAdd baru.

Parameter
cakupan ruang lingkup saat ini
tensor Tensor untuk disalin/diperbarui.
indeks Tensor indeks.
pembaruan Pembaruan untuk disebarkan ke dalam keluaran.
Kembali
  • contoh baru TensorScatterAdd

Keluaran publik <T> keluaran ()

Tensor baru disalin dari tensor dan pembaruan ditambahkan sesuai dengan indeks.