tensorflow::ops::ScatterNdUpdate
#include <state_ops.h> Menerapkan updates jarang (sparse updates) pada nilai individual atau irisan (slices) dalam suatu data tertentu.
Ringkasan
variabel menurut indices .
ref adalah Tensor dengan rank P dan indices adalah Tensor dengan rank Q
indices harus berupa tensor bilangan bulat, yang berisi indeks ke dalam ref . Bentuknya harus \([d_0, ..., d_{Q-2}, K]\) di mana 0 < K <= P .
Dimensi terdalam dari indices (dengan panjang K ) sesuai dengan indeks ke dalam elemen (jika K = P ) atau irisan (jika K < P ) di sepanjang dimensi ke- K dari ref .
updates adalah Tensor berperingkat Q-1+PK dengan bentuk:
$$[d_0, ..., d_{Q-2}, ref.shape[K], ..., ref.shape[P-1]].$$
Misalnya, anggaplah kita ingin memperbarui 4 elemen yang tersebar pada tensor rank-1 menjadi 8 elemen. Dalam Python, pembaruan tersebut akan terlihat seperti ini:
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)
Hasil pembaruan pada ref akan terlihat seperti ini:
[1, 11, 3, 10, 9, 6, 7, 12]
Lihat tf.scatter_nd untuk detail lebih lanjut tentang cara melakukan pembaruan pada slice.
Lihat juga tf.scatter_update dan tf.batch_scatter_update .
Argumen:
- Cakupan: Objek Cakupan
- ref: Tensor yang dapat diubah. Seharusnya berasal dari node Variabel .
- indeks: Sebuah Tensor . Harus berupa salah satu dari tipe berikut: int32, int64. Sebuah tensor indeks ke dalam referensi.
- Pembaruan: Sebuah Tensor . Harus memiliki tipe yang sama dengan ref. Sebuah tensor berisi nilai-nilai yang diperbarui untuk ditambahkan ke ref.
Atribut opsional (lihat Attrs ):
- use_locking: Sebuah boolean opsional. Nilai defaultnya adalah True. Jika True, penugasan akan dilindungi oleh kunci; jika tidak, perilakunya tidak terdefinisi, tetapi mungkin menunjukkan persaingan yang lebih sedikit.
Mengembalikan:
-
Output: Sama seperti referensi. Dikembalikan sebagai kemudahan untuk operasi yang ingin menggunakan nilai yang diperbarui setelah pembaruan selesai.
Konstruktor dan Destruktor | |
|---|---|
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) |
Atribut publik | |
|---|---|
operation | |
output_ref | |
Fungsi publik | |
|---|---|
node () const | ::tensorflow::Node * |
operator::tensorflow::Input () const | |
operator::tensorflow::Output () const | |
Fungsi statis publik | |
|---|---|
UseLocking (bool x) | |
Struktur | |
|---|---|
| tensorflow::ops::ScatterNdUpdate::Attrs | Pengaturan atribut opsional untuk ScatterNdUpdate . |
Atribut publik
operasi
Operation operation
output_ref
::tensorflow::Output output_ref
Fungsi publik
ScatterNdUpdate
ScatterNdUpdate( const ::tensorflow::Scope & scope, ::tensorflow::Input ref, ::tensorflow::Input indices, ::tensorflow::Input updates )
ScatterNdUpdate
ScatterNdUpdate( const ::tensorflow::Scope & scope, ::tensorflow::Input ref, ::tensorflow::Input indices, ::tensorflow::Input updates, const ScatterNdUpdate::Attrs & attrs )
simpul
::tensorflow::Node * node() const
operator::tensorflow::Input
operator::tensorflow::Input() const
operator::tensorflow::Output
operator::tensorflow::Output() const
Fungsi statis publik
GunakanPenguncian
Attrs UseLocking( bool x )