جریان تنسور:: عملیات:: SparseApplyCenteredRMSProp
#include <training_ops.h>
"*var" را مطابق با الگوریتم RMSProp متمرکز به روز کنید.
خلاصه
الگوریتم RMSProp متمرکز از تخمین لحظه دوم متمرکز (یعنی واریانس) برای عادی سازی استفاده می کند، برخلاف RMSProp معمولی که از لحظه دوم (غیر مرکزی) استفاده می کند. این اغلب به آموزش کمک می کند، اما از نظر محاسبات و حافظه کمی گران تر است.
توجه داشته باشید که در اجرای متراکم این الگوریتم، mg، ms و mom حتی اگر درجه صفر باشد، به روز می شوند، اما در این پیاده سازی پراکنده، mg، ms و mom در تکرارهایی که در طی آن درجه صفر است، به روز نمی شوند.
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$$
استدلال ها:
- scope: یک شی Scope
- var: باید از یک متغیر () باشد.
- mg: باید از متغیر () باشد.
- ms: باید از یک متغیر () باشد.
- mom: باید از یک متغیر () باشد.
- lr: ضریب مقیاس. باید اسکالر باشد.
- rho: میزان پوسیدگی. باید اسکالر باشد.
- اپسیلون: اصطلاح ریج. باید اسکالر باشد.
- grad: گرادیان.
- شاخص ها: بردار شاخص ها در بعد اول var، ms و mom.
ویژگی های اختیاری (به Attrs
مراجعه کنید):
- use_locking: اگر
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
عملگر::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 و/یا شرکتهای وابسته به آن است.
تاریخ آخرین بهروزرسانی 2024-11-25 بهوقت ساعت هماهنگ جهانی.