Membuat TensorArray untuk menyimpan gradien nilai dalam pegangan yang diberikan.
Jika gradien TensorArray yang diberikan sudah ada, kembalikan referensi ke sana.
Mengunci ukuran TensorArray asli dengan menonaktifkan bendera ukuran dinamisnya.
**Catatan tentang input flow_in:**
Pegangan flow_in memaksa eksekusi pencarian gradien terjadi hanya setelah operasi tertentu lainnya terjadi. Misalnya, saat TensorArray maju berukuran dinamis, penulisan ke TensorArray ini dapat mengubah ukuran objek. Gradien TensorArray berukuran statis berdasarkan ukuran TensorArray maju saat operasi ini dijalankan. Selanjutnya, ukuran forward TensorArray dibekukan oleh panggilan ini. Akibatnya, aliran digunakan untuk memastikan bahwa panggilan untuk menghasilkan gradien TensorArray hanya terjadi setelah semua penulisan dieksekusi.
Dalam kasus TensorArrays berukuran dinamis, perhitungan gradien hanya boleh dilakukan pada operasi baca yang telah dirantai melalui aliran untuk terjadi hanya setelah semua penulisan dieksekusi. Dengan begitu ukuran akhir dari TensorArray maju diketahui saat operasi ini dipanggil.
**Catatan tentang atribut sumber:**
Panggilan gradien TensorArray menggunakan objek TensorArray akumulator. Jika beberapa gradien dihitung dan dijalankan dalam sesi yang sama, beberapa node gradien mungkin secara tidak sengaja mengalir melalui akumulator TensorArray yang sama. Penghitungan ganda ini dan umumnya memutus aliran gradien TensorArray.
Solusinya adalah mengidentifikasi panggilan gradien mana yang dipanggil gradien TensorArray khusus ini. Ini dilakukan dengan mengidentifikasi string unik (misalnya "gradien", "gradien_1", ...) dari nama Tensor gradien input. String ini digunakan sebagai sufiks saat membuat objek gradien TensorArray di sini (atribut `source`).
Atribut `source` ditambahkan sebagai akhiran ke nama TensorArray penerusan saat melakukan pembuatan/pencarian, sehingga setiap penghitungan gradien terpisah mendapatkan akumulator TensorArray sendiri.
Metode Publik
statis TensorArrayGrad | |
Output <Lampung> | flowOut () |
Output <?> | gradHandle () |
Metode yang Diwarisi
Metode Publik
public static TensorArrayGrad membuat ( Scope lingkup, Operan <?> handle, Operan <Lampung> flowIn, sumber String)
Metode pabrik untuk membuat kelas yang membungkus operasi TensorArrayGrad baru.
Parameter
cakupan | lingkup saat ini |
---|---|
menangani | Pegangan untuk meneruskan TensorArray. |
aliranIn | Skalar pelampung yang memberlakukan rantai operasi yang tepat. |
sumber | String sumber gradien, digunakan untuk memutuskan gradien TensorArray mana yang akan dikembalikan. |
Kembali
- contoh baru dari TensorArrayGrad