جریان تنسور:: عملیات:: SparseApplyRMSProp

#include <training_ops.h>

"*var" را طبق الگوریتم RMSProp به روز کنید.

خلاصه

توجه داشته باشید که در اجرای متراکم این الگوریتم، ms و mom حتی اگر grad صفر باشد، به روز می شوند، اما در این پیاده سازی پراکنده، ms و mom در تکرارهایی که در طی آن درجه صفر است، به روز نمی شوند.

mean_square = decay * mean_square + (1-decay) * gradient ** 2 Delta = Learning_rate * gradient / sqrt(mean_square + epsilon)

$$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: باید از یک متغیر () باشد.
  • ms: باید از یک متغیر () باشد.
  • mom: باید از یک متغیر () باشد.
  • lr: ضریب مقیاس. باید اسکالر باشد.
  • rho: میزان پوسیدگی. باید اسکالر باشد.
  • اپسیلون: اصطلاح ریج. باید اسکالر باشد.
  • grad: گرادیان.
  • شاخص ها: بردار شاخص ها در بعد اول var، ms و mom.

ویژگی های اختیاری (به Attrs مراجعه کنید):

  • use_locking: اگر True باشد، به‌روزرسانی تانسورهای var، ms و mom توسط یک قفل محافظت می‌شود. در غیر این صورت رفتار تعریف نشده است، اما ممکن است اختلاف کمتری از خود نشان دهد.

برمی گرداند:

سازندگان و ویرانگرها

SparseApplyRMSProp (const :: tensorflow::Scope & scope, :: tensorflow::Input var, :: tensorflow::Input ms, :: tensorflow::Input mom, :: tensorflow::Input lr, :: tensorflow::Input rho, :: tensorflow::Input momentum, :: tensorflow::Input epsilon, :: tensorflow::Input grad, :: tensorflow::Input indices)
SparseApplyRMSProp (const :: tensorflow::Scope & scope, :: tensorflow::Input var, :: 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 SparseApplyRMSProp::Attrs & attrs)

صفات عمومی

operation
out

توابع عمومی

node () const
::tensorflow::Node *
operator::tensorflow::Input () const
operator::tensorflow::Output () const

توابع استاتیک عمومی

UseLocking (bool x)

سازه ها

tensorflow:: ops:: SparseApplyRMSProp:: Attrs

تنظیم کننده های ویژگی اختیاری برای SparseApplyRMSProp .

صفات عمومی

عمل

Operation operation

بیرون

::tensorflow::Output out

توابع عمومی

SparseApplyRMSProp

 SparseApplyRMSProp(
  const ::tensorflow::Scope & scope,
  ::tensorflow::Input var,
  ::tensorflow::Input ms,
  ::tensorflow::Input mom,
  ::tensorflow::Input lr,
  ::tensorflow::Input rho,
  ::tensorflow::Input momentum,
  ::tensorflow::Input epsilon,
  ::tensorflow::Input grad,
  ::tensorflow::Input indices
)

SparseApplyRMSProp

 SparseApplyRMSProp(
  const ::tensorflow::Scope & scope,
  ::tensorflow::Input var,
  ::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 SparseApplyRMSProp::Attrs & attrs
)

گره

::tensorflow::Node * node() const 

عملگر::tensorflow::ورودی

 operator::tensorflow::Input() const 

عملگر::tensorflow::خروجی

 operator::tensorflow::Output() const 

توابع استاتیک عمومی

استفاده از قفل

Attrs UseLocking(
  bool x
)