tensorflow::ops::ResourceApplyCenteredRMSProp

#include <training_ops.h>

Обновите переменную '*var' в соответствии с алгоритмом центрирования RMSProp.

Краткое содержание

В алгоритме RMSProp с центрированием для нормализации используется оценка центрированного второго момента (т.е. дисперсии), в отличие от обычного RMSProp, который использует (нецентрированный) второй момент. Это часто помогает при обучении, но немного дороже с точки зрения вычислений и памяти.

Следует отметить, что в плотной реализации этого алгоритма переменные mg, ms и mom будут обновляться, даже если градиент равен нулю, но в этой разреженной реализации переменные mg, ms и mom не будут обновляться в итерациях, в течение которых градиент равен нулю.

среднеквадратичное отклонение = распад * среднеквадратичное отклонение + (1-распад) * градиент ** 2 среднеквадратичное отклонение = распад * среднеквадратичное отклонение + (1-распад) * градиент

Дельта = скорость обучения * градиент / кварт(средний_квадрат + эпсилон - средний_градиент ** 2)

mg <- rho * mg_{t-1} + (1-rho) * grad ms <- rho * ms_{t-1} + (1-rho) * grad * grad mom <- momentum * mom_{t-1} + lr * grad / sqrt(ms - mg * mg + epsilon) var <- var - mom

Аргументы:

  • scope: Объект Scope
  • var: Должно быть из функции Variable().
  • мг: Должно быть из переменной().
  • мс: Должно быть из переменной().
  • мама: Должно быть из переменной().
  • lr: Масштабный коэффициент. Должен быть скалярным значением.
  • ро: Скорость затухания. Должна быть скалярной величиной.
  • Эпсилон: Член гребня. Должен быть скаляром.
  • grad: Градиент.

Дополнительные атрибуты (см. Attrs ):

  • use_locking: Если True , обновление тензоров var, mg, ms и mom защищено блокировкой; в противном случае поведение не определено, но может демонстрировать меньшую конкуренцию.

Возвращает:

Конструкторы и Деструкторы

ResourceApplyCenteredRMSProp (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)
ResourceApplyCenteredRMSProp (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 ResourceApplyCenteredRMSProp::Attrs & attrs)

Общедоступные атрибуты

operation

Общественные функции

operator::tensorflow::Operation () const

Открытые статические функции

UseLocking (bool x)

Структуры

tensorflow::ops::ResourceApplyCenteredRMSProp::Attrs

Дополнительные параметры установки атрибутов для ResourceApplyCenteredRMSProp .

Общедоступные атрибуты

операция

Operation operation

Общественные функции

ResourceApplyCenteredRMSProp

 ResourceApplyCenteredRMSProp(
  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
)

ResourceApplyCenteredRMSProp

 ResourceApplyCenteredRMSProp(
  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 ResourceApplyCenteredRMSProp::Attrs & attrs
)

оператор::tensorflow::Operation

 operator::tensorflow::Operation() const 

Открытые статические функции

UseLocking

Attrs UseLocking(
  bool x
)