تينسورفلو :: العمليات :: SparseApplyCenteredRMSProp

#include <training_ops.h>

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

ملخص

تستخدم خوارزمية 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: يجب أن يكون من متغير ().
  • mg: يجب أن يكون من متغير ().
  • ms: يجب أن يكون من المتغير ().
  • mom: يجب أن تكون من متغير ().
  • lr: عامل التحجيم. يجب أن يكون عددًا.
  • rho: معدل الاضمحلال. يجب أن يكون عددًا.
  • إبسيلون: مصطلح ريدج. يجب أن يكون عددًا.
  • غراد: التدرج.
  • المؤشرات: متجه من المؤشرات في البعد الأول من 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 :: Output

 operator::tensorflow::Output() const 

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

UseLocking

Attrs UseLocking(
  bool x
)