tensor akışı:: işlem:: SparseApplyCenteredRMSProp

#include <training_ops.h>

'*var'ı ortalanmış RMSProp algoritmasına göre güncelleyin.

Özet

Merkezlenmiş RMSProp algoritması, (merkezlenmemiş) ikinci anı kullanan normal RMSProp'un aksine, normalleştirme için ortalanmış ikinci momentin (yani varyansın) bir tahminini kullanır. Bu genellikle eğitime yardımcı olur, ancak hesaplama ve hafıza açısından biraz daha pahalıdır.

Bu algoritmanın yoğun uygulanmasında mg, ms ve mom'in grad sıfır olsa bile güncelleneceğini, ancak bu seyrek uygulamada mg, ms ve mom'un grad'ın sıfır olduğu yinelemelerde güncellenmeyeceğini unutmayın.

ortalama_kare = bozunum * ortalama_kare + (1-bozunma) * gradyan ** 2 ortalama_grad = bozunma * ortalama_grad + (1-bozunma) * gradyan Delta = öğrenme_oranı * gradyan / sqrt(ortalama_kare + epsilon - ortalama_grad ** 2)

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

Argümanlar:

  • kapsam: Bir Kapsam nesnesi
  • var: Bir Variable()'dan olmalıdır.
  • mg: Bir Değişken()'den olmalıdır.
  • ms: Bir Variable()'dan olmalıdır.
  • anne: Bir Variable()'dan olmalı.
  • lr: Ölçeklendirme faktörü. Bir skaler olmalı.
  • rho: Bozunma oranı. Bir skaler olmalı.
  • epsilon: Ridge terimi. Bir skaler olmalı.
  • grad: Gradyan.
  • indeksler: var, ms ve mom'un birinci boyutuna ait indekslerin bir vektörü.

İsteğe bağlı özellikler (bkz. Attrs ):

  • use_locking: True ise var, mg, ms ve mom tensörlerinin güncellenmesi bir kilitle korunur; aksi takdirde davranış tanımsızdır ancak daha az çekişme sergileyebilir.

İade:

Yapıcılar ve Yıkıcılar

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)

Genel özellikler

operation
out

Kamu işlevleri

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

Genel statik işlevler

UseLocking (bool x)

Yapılar

tensorflow:: ops:: SparseApplyCenteredRMSProp:: Öznitelikler

SparseApplyCenteredRMSProp için isteğe bağlı öznitelik ayarlayıcılar.

Genel özellikler

operasyon

Operation operation

dışarı

::tensorflow::Output out

Kamu işlevleri

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
)

düğüm

::tensorflow::Node * node() const 

operatör::tensorflow::Giriş

 operator::tensorflow::Input() const 

operatör::tensorflow::Çıktı

 operator::tensorflow::Output() const 

Genel statik işlevler

KullanımKilitleme

Attrs UseLocking(
  bool x
)