tensorflow:: ops:: ApplyCenteredRMSProp

#include <training_ops.h>

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

ملخص

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

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

متوسط_المربع = التضاؤل ​​* متوسط_المربع + (1-التضاؤل) * التدرج ** 2 متوسط_التدرج = التضاؤل ​​* متوسط_التدرج + (1-التضاؤل) * التدرج

دلتا = معدل التعلم * التدرج / جذر (متوسط ​​المربع + إبسيلون - متوسط ​​التدرج ** 2)

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

الحجج:

  • النطاق: كائن النطاق
  • var: يجب أن يكون من نوع Variable().
  • mg: يجب أن يكون من متغير ().
  • ms: يجب أن يكون من متغير ().
  • الأم: يجب أن يكون من متغير ().
  • lr: عامل القياس. يجب أن يكون قيمة عددية.
  • rho: معدل الاضمحلال. يجب أن يكون قيمة عددية.
  • إبسيلون: مصطلح الحافة. ​​يجب أن يكون كمية قياسية.
  • grad: التدرج.

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

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

المرتجعات:

  • Output : نفس الناتج "var".

البناة والمدمرون

ApplyCenteredRMSProp (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)
ApplyCenteredRMSProp (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, const ApplyCenteredRMSProp::Attrs & attrs)

السمات العامة

operation
out

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

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

الدوال الثابتة العامة

UseLocking (bool x)

الهياكل

tensorflow:: ops:: ApplyCenteredRMSProp:: Attrs

مُعدِّلات السمات الاختيارية لـ ApplyCenteredRMSProp .

السمات العامة

عملية

Operation operation

خارج

::tensorflow::Output out

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

تطبيق خصائص RMS المركزية

 ApplyCenteredRMSProp(
  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
)

تطبيق خصائص RMS المركزية

 ApplyCenteredRMSProp(
  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,
  const ApplyCenteredRMSProp::Attrs & attrs
)

العقدة

::tensorflow::Node * node() const 

operator::tensorflow::Input

 operator::tensorflow::Input() const 

operator::tensorflow::Output

 operator::tensorflow::Output() const 

الدوال الثابتة العامة

قفل الاستخدام

Attrs UseLocking(
  bool x
)