تدفق التوتر:: العمليات:: SparseApplyCenteredRMSProp

#include <training_ops.h>

قم بتحديث '*var' وفقًا لخوارزمية RMSProp المركزية.

ملخص

تستخدم خوارزمية RMSProp المركزية تقديرًا للحظة الثانية المركزية (أي التباين) للتطبيع، على عكس خوارزمية RMSProp العادية، التي تستخدم اللحظة الثانية (غير المركزية). غالبًا ما يساعد هذا في التدريب، ولكنه أكثر تكلفة قليلاً من حيث الحساب والذاكرة.

لاحظ أنه في التنفيذ المكثف لهذه الخوارزمية، سيتم تحديث mg وms وmom حتى لو كان grad صفرًا، ولكن في هذا التنفيذ المتناثر، لن يتم تحديث mg وms وmom في التكرارات التي يكون خلالها grad صفرًا.

متوسط ​​مربع = تسوس * متوسط ​​مربع + (1-اضمحلال) * تدرج ** 2 متوسط_جراد = تسوس * متوسط_جراد + (1-تسوس) * تدرج دلتا = معدل التعلم * التدرج / 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$$

الحجج:

  • النطاق: كائن النطاق
  • فار: يجب أن يكون من متغير ().
  • mg: يجب أن يكون من متغير ().
  • مللي ثانية: يجب أن يكون من متغير ().
  • أمي: يجب أن يكون من متغير ().
  • lr: عامل التحجيم. يجب أن يكون العددية.
  • رو: معدل الاضمحلال. يجب أن يكون العددية.
  • إبسيلون: مصطلح ريدج. يجب أن يكون العددية.
  • غراد: التدرج.
  • المؤشرات: متجه للمؤشرات في البعد الأول لـ var وms وmom.

السمات الاختيارية (انظر Attrs ):

  • use_locking: إذا كان True ، فإن تحديث الموترات var وmg وms وmom محمي بقفل؛ وإلا فإن السلوك غير محدد، ولكنه قد يحمل قدرًا أقل من الخلاف.

العوائد:

البنائين والمدمرين

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)

الهياكل

Tensorflow:: ops:: SparseApplyCenteredRMSProp:: Attrs

محددات السمات الاختيارية لـ SparseApplyCenteredRMSProp .

الصفات العامة

عملية

Operation operation

خارج

::tensorflow::Output out

الوظائف العامة

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
)

العقدة

::tensorflow::Node * node() const 

المشغل::tensorflow::الإدخال

 operator::tensorflow::Input() const 

المشغل::tensorflow::الإخراج

 operator::tensorflow::Output() const 

وظائف ثابتة العامة

UseLocking

Attrs UseLocking(
  bool x
)