تدفق التوتر:: العمليات:: تطبيقCenteredRMSProp
#include <training_ops.h>
قم بتحديث '*var' وفقًا لخوارزمية RMSProp المركزية.
ملخص
تستخدم خوارزمية RMSProp المركزية تقديرًا للحظة الثانية المركزية (أي التباين) للتطبيع، على عكس خوارزمية RMSProp العادية، التي تستخدم اللحظة الثانية (غير المركزية). غالبًا ما يساعد هذا في التدريب، ولكنه أكثر تكلفة قليلاً من حيث الحساب والذاكرة.
لاحظ أنه في التنفيذ المكثف لهذه الخوارزمية، سيتم تحديث mg وms وmom حتى لو كان grad صفرًا، ولكن في هذا التنفيذ المتناثر، لن يتم تحديث mg وms وmom في التكرارات التي يكون فيها grad صفرًا.
mean_square = الاضمحلال * mean_square + (1-اضمحلال) * التدرج ** 2 mean_grad = الاضمحلال * mean_grad + (1-اضمحلال) * التدرج
دلتا = معدل التعلم * التدرج / sqrt (mean_square + epsilon - mean_grad ** 2)
ملغ <- رو * ملغ_{t-1} + (1-رو) * غراد مللي ثانية <- رو * مللي_{t-1} + (1-رو) * غراد * غراد أمي <- الزخم * أمي_{t-1 } + lr * grad / sqrt(ms - mg * mg + epsilon) var <- var - mom
الحجج:
- النطاق: كائن النطاق
- فار: يجب أن يكون من متغير ().
- mg: يجب أن يكون من متغير ().
- مللي ثانية: يجب أن يكون من متغير ().
- أمي: يجب أن يكون من متغير ().
- lr: عامل التحجيم. يجب أن يكون العددية.
- رو: معدل الاضمحلال. يجب أن يكون العددية.
- إبسيلون: مصطلح ريدج. يجب أن يكون العددية.
- غراد: التدرج.
السمات الاختيارية (انظر Attrs
):
- use_locking: إذا كان
True
، فإن تحديث الموترات var وmg وms وmom محمي بقفل؛ وإلا فإن السلوك غير محدد، ولكنه قد يحمل قدرًا أقل من الخلاف.
العوائد:
-
Output
: نفس "فار".
البنائين والمدمرين | |
---|---|
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
الوظائف العامة
تطبيقCenteredRMSProp
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 )
تطبيقCenteredRMSProp
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
المشغل::tensorflow::الإدخال
operator::tensorflow::Input() const
المشغل::tensorflow::الإخراج
operator::tensorflow::Output() const
وظائف ثابتة العامة
UseLocking
Attrs UseLocking( bool x )
إنّ محتوى هذه الصفحة مرخّص بموجب ترخيص Creative Commons Attribution 4.0 ما لم يُنصّ على خلاف ذلك، ونماذج الرموز مرخّصة بموجب ترخيص Apache 2.0. للاطّلاع على التفاصيل، يُرجى مراجعة سياسات موقع Google Developers. إنّ Java هي علامة تجارية مسجَّلة لشركة Oracle و/أو شركائها التابعين.
تاريخ التعديل الأخير: 2024-11-24 (حسب التوقيت العالمي المتفَّق عليه)