tensorflow:: ops:: SparseApplyCenteredRMSProp

#include <training_ops.h>

सेंटर्ड RMSProp एल्गोरिदम के अनुसार '*var' को अपडेट करें।

सारांश

सेंटर्ड RMSProp एल्गोरिदम सामान्यीकरण के लिए सेंटर्ड सेकंड मोमेंट (यानी, विचरण) के अनुमान का उपयोग करता है, जबकि नियमित RMSProp (अनसेंटर्ड) सेकंड मोमेंट का उपयोग करता है। यह अक्सर प्रशिक्षण में सहायक होता है, लेकिन गणना और मेमोरी के मामले में थोड़ा अधिक खर्चीला होता है।

ध्यान दें कि इस एल्गोरिदम के सघन कार्यान्वयन में, mg, ms और mom तब भी अपडेट होंगे जब grad शून्य हो, लेकिन इस विरल कार्यान्वयन में, mg, ms और mom उन पुनरावृत्तियों के दौरान अपडेट नहीं होंगे जिनमें grad शून्य है।

mean_square = decay * mean_square + (1-decay) * gradient ** 2 mean_grad = decay * mean_grad + (1-decay) * gradient Delta = learning_rate * gradient / 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$$

तर्क:

  • स्कोप: एक स्कोप ऑब्जेक्ट
  • var: यह एक Variable() से होना चाहिए।
  • mg: यह एक वेरिएबल() से होना चाहिए।
  • एमएस: यह एक वेरिएबल() से होना चाहिए।
  • माँ: यह एक वेरिएबल() से होना चाहिए।
  • lr: स्केलिंग फैक्टर। यह एक स्केलर होना चाहिए।
  • rho: क्षय दर। यह एक अदिश राशि होनी चाहिए।
  • एप्सिलॉन: रिज टर्म। यह एक स्केलर होना चाहिए।
  • ग्रेड: प्रवणता।
  • indices: var, ms और mom के पहले आयाम में सूचकांकों का एक वेक्टर।

वैकल्पिक विशेषताएँ (देखें Attrs ):

  • use_locking: यदि True , तो var, mg, ms और mom टेंसरों का अद्यतन एक लॉक द्वारा सुरक्षित होता है; अन्यथा व्यवहार अपरिभाषित है, लेकिन कम टकराव प्रदर्शित कर सकता है।

प्रतिफल:

  • Output : "var" के समान।

कंस्ट्रक्टर और डिस्ट्रक्टर

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)

सार्वजनिक विशेषताएँ

operation
out

सार्वजनिक समारोह

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

सार्वजनिक स्थैतिक फ़ंक्शन

UseLocking (bool x)

संरचनाएँ

टेन्सरफ्लो::ऑप्स::स्पार्सअप्लाईसेंटर्डआरएमएसपीप्रॉप::एट्रिब्यूट्स

SparseApplyCenteredRMSProp के लिए वैकल्पिक विशेषता निर्धारक।

सार्वजनिक विशेषताएँ

संचालन

Operation operation

बाहर

::tensorflow::Output out

सार्वजनिक समारोह

स्पार्सअप्लाईसेंटर्डआरएमएसपीरोप

 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
)

नोड

::tensorflow::Node * node() const 

ऑपरेटर::टेन्सरफ्लो::इनपुट

 operator::tensorflow::Input() const 

ऑपरेटर::टेन्सरफ्लो::आउटपुट

 operator::tensorflow::Output() const 

सार्वजनिक स्थैतिक फ़ंक्शन

यूज़लॉकिंग

Attrs UseLocking(
  bool x
)