tensorflow:: عملیات:: ApplyCenteredRMSProp
#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
دلتا = نرخ یادگیری * گرادیان / sqrt(میانگین مربعات + اپسیلون - میانگین گرادیان ** ۲)
mg <- rho * mg_{t-1} + (1-rho) * grad ms <- rho * ms_{t-1} + (1-rho) * grad * grad mom <- مومنتوم * mom_{t-1} + lr * grad / sqrt(ms - mg * mg + epsilon) var <- var - mom
استدلالها:
- دامنه: یک شیء دامنه
- var: باید از یک متغیر () باشد.
- mg: باید از یک متغیر () باشد.
- ms: باید از یک متغیر () باشد.
- mom: باید از یک Variable() باشد.
- lr: ضریب مقیاسبندی. باید یک اسکالر باشد.
- rho: نرخ واپاشی. باید یک اسکالر باشد.
- اپسیلون: جمله ریج. باید یک اسکالر باشد.
- گرادیان: شیب.
ویژگیهای اختیاری (به Attrs مراجعه کنید):
- use_locking: اگر
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:: عملیات:: ApplyCenteredRMSProp:: جذابیتها | تنظیمکنندههای ویژگی اختیاری برای ApplyCenteredRMSProp . |
ویژگیهای عمومی
عملیات
Operation operation
بیرون
::tensorflow::Output out
کارکردهای عمومی
ApplyCenteredRMSProp
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
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
توابع استاتیک عمومی
استفاده از قفل
Attrs UseLocking( bool x )
جز در مواردی که غیر از این ذکر شده باشد،محتوای این صفحه تحت مجوز Creative Commons Attribution 4.0 License است. نمونه کدها نیز دارای مجوز Apache 2.0 License است. برای اطلاع از جزئیات، به خطمشیهای سایت Google Developers مراجعه کنید. جاوا علامت تجاری ثبتشده Oracle و/یا شرکتهای وابسته به آن است.
تاریخ آخرین بهروزرسانی 2026-11-05 بهوقت ساعت هماهنگ جهانی.