tensorflow:: ops:: SparseApplyCenteredRMSProp

#include <training_ops.h>

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

ملخص

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

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

متوسط_المربع = معدل_التضاؤل ​​* متوسط_المربع + (1-معدل_التضاؤل) * التدرج ** 2 متوسط_التدرج = معدل_التضاؤل ​​* متوسط_التدرج + (1-معدل_التضاؤل) * التدرج دلتا = معدل_التعلم * التدرج / جذر(متوسط_المربع + إبسيلون - متوسط_التدرج ** 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: يجب أن يكون من متغير ().
  • ms: يجب أن يكون من متغير ().
  • الأم: يجب أن يكون من متغير ().
  • lr: عامل القياس. يجب أن يكون قيمة عددية.
  • rho: معدل الاضمحلال. يجب أن يكون قيمة عددية.
  • إبسيلون: مصطلح الحافة. ​​يجب أن يكون كمية قياسية.
  • grad: التدرج.
  • المؤشرات: متجه من المؤشرات في البعد الأول من var و ms و mom.

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

  • استخدام القفل: إذا كانت 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)

الهياكل

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 

operator::tensorflow::Input

 operator::tensorflow::Input() const 

operator::tensorflow::Output

 operator::tensorflow::Output() const 

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

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

Attrs UseLocking(
  bool x
)