aliran tensor:: operasi:: SparseApplyCenteredRMSProp

#include <training_ops.h>

Perbarui '*var' sesuai dengan algoritma RMSProp terpusat.

Ringkasan

Algoritme RMSProp terpusat menggunakan perkiraan momen kedua terpusat (yaitu varians) untuk normalisasi, berbeda dengan RMSProp biasa, yang menggunakan momen kedua (tidak terpusat). Hal ini sering kali membantu dalam pelatihan, namun sedikit lebih mahal dalam hal komputasi dan memori.

Perhatikan bahwa dalam implementasi padat dari algoritme ini, mg, ms, dan mom akan diperbarui meskipun gradasinya nol, tetapi dalam implementasi yang jarang ini, mg, ms, dan mom tidak akan diperbarui dalam iterasi yang gradannya nol.

mean_square = peluruhan * mean_square + (1-decay) * gradien ** 2 mean_grad = peluruhan * mean_grad + (1-decay) * gradien Delta = learning_rate * gradien / sqrt(mean_square + epsilon - mean_grad ** 2)

$$ms <- rho * ms_{t-1} + (1-rho) * grad * grad$$
$$mom <- momentum * mom_{t-1} + lr * grad / sqrt(ms + epsilon)$$
$$var <- var - mom$$

Argumen:

  • ruang lingkup: Objek Lingkup
  • var: Harus dari Variabel().
  • mg: Harus dari Variabel().
  • ms: Harus dari Variabel().
  • ibu: Harus dari Variabel().
  • lr: Faktor penskalaan. Pasti skalar.
  • rho : Tingkat pembusukan. Pasti skalar.
  • epsilon: Istilah punggungan. Pasti skalar.
  • lulusan: Gradien.
  • indeks: Vektor indeks ke dalam dimensi pertama var, ms, dan ibu.

Atribut opsional (lihat Attrs ):

  • use_locking: Jika True , pembaruan tensor var, mg, ms, dan mom dilindungi oleh kunci; jika tidak, perilaku tersebut tidak terdefinisikan, namun mungkin menunjukkan lebih sedikit pertentangan.

Pengembalian:

  • Output : Sama seperti "var".

Konstruktor dan Destruktor

SparseApplyCenteredRMSProp (const :: tensorflow::Scope & scope, :: tensorflow::Input var, :: tensorflow::Input mg, :: tensorflow::Input ms, :: tensorflow::Input mom, :: tensorflow::Input lr, :: tensorflow::Input rho, :: tensorflow::Input momentum, :: tensorflow::Input epsilon, :: tensorflow::Input grad, :: tensorflow::Input indices)
SparseApplyCenteredRMSProp (const :: tensorflow::Scope & scope, :: tensorflow::Input var, :: tensorflow::Input mg, :: tensorflow::Input ms, :: tensorflow::Input mom, :: tensorflow::Input lr, :: tensorflow::Input rho, :: tensorflow::Input momentum, :: tensorflow::Input epsilon, :: tensorflow::Input grad, :: tensorflow::Input indices, const SparseApplyCenteredRMSProp::Attrs & attrs)

Atribut publik

operation
out

Fungsi publik

node () const
::tensorflow::Node *
operator::tensorflow::Input () const
operator::tensorflow::Output () const

Fungsi statis publik

UseLocking (bool x)

Struktur

tensorflow:: ops:: SparseApplyCenteredRMSProp:: Attrs

Penyetel atribut opsional untuk SparseApplyCenteredRMSProp .

Atribut publik

operasi

Operation operation

keluar

::tensorflow::Output out

Fungsi publik

SparseApplyCenteredRMSProp

 SparseApplyCenteredRMSProp(
  const ::tensorflow::Scope & scope,
  ::tensorflow::Input var,
  ::tensorflow::Input mg,
  ::tensorflow::Input ms,
  ::tensorflow::Input mom,
  ::tensorflow::Input lr,
  ::tensorflow::Input rho,
  ::tensorflow::Input momentum,
  ::tensorflow::Input epsilon,
  ::tensorflow::Input grad,
  ::tensorflow::Input indices
)

SparseApplyCenteredRMSProp

 SparseApplyCenteredRMSProp(
  const ::tensorflow::Scope & scope,
  ::tensorflow::Input var,
  ::tensorflow::Input mg,
  ::tensorflow::Input ms,
  ::tensorflow::Input mom,
  ::tensorflow::Input lr,
  ::tensorflow::Input rho,
  ::tensorflow::Input momentum,
  ::tensorflow::Input epsilon,
  ::tensorflow::Input grad,
  ::tensorflow::Input indices,
  const SparseApplyCenteredRMSProp::Attrs & attrs
)

simpul

::tensorflow::Node * node() const 

operator::tensorflow::Masukan

 operator::tensorflow::Input() const 

operator::tensorflow::Keluaran

 operator::tensorflow::Output() const 

Fungsi statis publik

Gunakan Penguncian

Attrs UseLocking(
  bool x
)