Оптимизируйте свои подборки
Сохраняйте и классифицируйте контент в соответствии со своими настройками.
тензорный поток:: опс:: Применитьцентредрмспроп
#include <training_ops.h>
Обновите «*var» в соответствии с центрированным алгоритмом RMSProp.
Краткое содержание
Алгоритм центрированного RMSProp использует оценку центрированного второго момента (т. е. дисперсии) для нормализации, в отличие от обычного алгоритма RMSProp, который использует (нецентрированный) второй момент. Это часто помогает при обучении, но требует немного больше затрат с точки зрения вычислений и памяти.
Обратите внимание, что в плотной реализации этого алгоритма mg, ms и Mom будут обновляться, даже если градиент равен нулю, но в этой разреженной реализации mg, ms и Mom не будут обновляться на итерациях, во время которых градиент равен нулю.
средний_квадрат = затухание * средний_квадрат + (1-затухание) * градиент ** 2 средний_град = затухание * средний_град + (1-затухание) * градиент
Дельта = скорость обучения * градиент / sqrt (средний_квадрат + эпсилон - средний_град ** 2)
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: Должно быть из переменной().
- мс: Должно быть из переменной().
- мама: Должно быть из переменной().
- lr: Коэффициент масштабирования. Должно быть скаляр.
- ро: Скорость распада. Должно быть скаляр.
- эпсилон: термин хребта. Должно быть скаляр.
- град: Градиент.
Необязательные атрибуты (см. Attrs
):
- use_locking: Если
True
, обновление тензоров var, mg, ms и Mom защищено блокировкой; в противном случае поведение не определено, но может вызывать меньше конфликтов.
Возврат:
Конструкторы и деструкторы |
---|
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) |
Публичные атрибуты
Общественные функции
Применитьцентредрмспроп
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
operator::tensorflow::Input() const
оператор::tensorflow::Выход
operator::tensorflow::Output() const
Публичные статические функции
Использование блокировки
Attrs UseLocking(
bool x
)
Если не указано иное, контент на этой странице предоставляется по лицензии Creative Commons "С указанием авторства 4.0", а примеры кода – по лицензии Apache 2.0. Подробнее об этом написано в правилах сайта. Java – это зарегистрированный товарный знак корпорации Oracle и ее аффилированных лиц.
Последнее обновление: 2025-07-27 UTC.
[null,null,["Последнее обновление: 2025-07-27 UTC."],[],[],null,["# tensorflow::ops::ApplyCenteredRMSProp Class Reference\n\ntensorflow::ops::ApplyCenteredRMSProp\n=====================================\n\n`#include \u003ctraining_ops.h\u003e`\n\nUpdate '\\*var' according to the centered RMSProp algorithm.\n\nSummary\n-------\n\nThe centered RMSProp algorithm uses an estimate of the centered second moment (i.e., the variance) for normalization, as opposed to regular RMSProp, which uses the (uncentered) second moment. This often helps with training, but is slightly more expensive in terms of computation and memory.\n\nNote that in dense implementation of this algorithm, mg, ms, and mom will update even if the grad is zero, but in this sparse implementation, mg, ms, and mom will not update in iterations during which the grad is zero.\n\nmean_square = decay \\* mean_square + (1-decay) \\* gradient \\*\\* 2 mean_grad = decay \\* mean_grad + (1-decay) \\* gradient\n\nDelta = learning_rate \\* gradient / sqrt(mean_square + epsilon - mean_grad \\*\\* 2)\n\nmg \\\u003c- rho \\* mg_{t-1} + (1-rho) \\* grad ms \\\u003c- rho \\* ms_{t-1} + (1-rho) \\* grad \\* grad mom \\\u003c- momentum \\* mom_{t-1} + lr \\* grad / sqrt(ms - mg \\* mg + epsilon) var \\\u003c- var - mom\n\nArguments:\n\n- scope: A [Scope](/versions/r1.15/api_docs/cc/class/tensorflow/scope#classtensorflow_1_1_scope) object\n- var: Should be from a Variable().\n- mg: Should be from a Variable().\n- ms: Should be from a Variable().\n- mom: Should be from a Variable().\n- lr: Scaling factor. Must be a scalar.\n- rho: Decay rate. Must be a scalar.\n- epsilon: Ridge term. Must be a scalar.\n- grad: The gradient.\n\n\u003cbr /\u003e\n\nOptional attributes (see [Attrs](/versions/r1.15/api_docs/cc/struct/tensorflow/ops/apply-centered-r-m-s-prop/attrs#structtensorflow_1_1ops_1_1_apply_centered_r_m_s_prop_1_1_attrs)):\n\n- use_locking: If `True`, updating of the var, mg, ms, and mom tensors is protected by a lock; otherwise the behavior is undefined, but may exhibit less contention.\n\n\u003cbr /\u003e\n\nReturns:\n\n- [Output](/versions/r1.15/api_docs/cc/class/tensorflow/output#classtensorflow_1_1_output): Same as \"var\".\n\n\u003cbr /\u003e\n\n| ### Constructors and Destructors ||\n|---|---|\n| [ApplyCenteredRMSProp](#classtensorflow_1_1ops_1_1_apply_centered_r_m_s_prop_1a4bd3dd81dc6d1695c9ad5728462dd8cd)`(const ::`[tensorflow::Scope](/versions/r1.15/api_docs/cc/class/tensorflow/scope#classtensorflow_1_1_scope)` & scope, ::`[tensorflow::Input](/versions/r1.15/api_docs/cc/class/tensorflow/input#classtensorflow_1_1_input)` var, ::`[tensorflow::Input](/versions/r1.15/api_docs/cc/class/tensorflow/input#classtensorflow_1_1_input)` mg, ::`[tensorflow::Input](/versions/r1.15/api_docs/cc/class/tensorflow/input#classtensorflow_1_1_input)` ms, ::`[tensorflow::Input](/versions/r1.15/api_docs/cc/class/tensorflow/input#classtensorflow_1_1_input)` mom, ::`[tensorflow::Input](/versions/r1.15/api_docs/cc/class/tensorflow/input#classtensorflow_1_1_input)` lr, ::`[tensorflow::Input](/versions/r1.15/api_docs/cc/class/tensorflow/input#classtensorflow_1_1_input)` rho, ::`[tensorflow::Input](/versions/r1.15/api_docs/cc/class/tensorflow/input#classtensorflow_1_1_input)` momentum, ::`[tensorflow::Input](/versions/r1.15/api_docs/cc/class/tensorflow/input#classtensorflow_1_1_input)` epsilon, ::`[tensorflow::Input](/versions/r1.15/api_docs/cc/class/tensorflow/input#classtensorflow_1_1_input)` grad)` ||\n| [ApplyCenteredRMSProp](#classtensorflow_1_1ops_1_1_apply_centered_r_m_s_prop_1a632653cb819d859518dab8ceb0e7601c)`(const ::`[tensorflow::Scope](/versions/r1.15/api_docs/cc/class/tensorflow/scope#classtensorflow_1_1_scope)` & scope, ::`[tensorflow::Input](/versions/r1.15/api_docs/cc/class/tensorflow/input#classtensorflow_1_1_input)` var, ::`[tensorflow::Input](/versions/r1.15/api_docs/cc/class/tensorflow/input#classtensorflow_1_1_input)` mg, ::`[tensorflow::Input](/versions/r1.15/api_docs/cc/class/tensorflow/input#classtensorflow_1_1_input)` ms, ::`[tensorflow::Input](/versions/r1.15/api_docs/cc/class/tensorflow/input#classtensorflow_1_1_input)` mom, ::`[tensorflow::Input](/versions/r1.15/api_docs/cc/class/tensorflow/input#classtensorflow_1_1_input)` lr, ::`[tensorflow::Input](/versions/r1.15/api_docs/cc/class/tensorflow/input#classtensorflow_1_1_input)` rho, ::`[tensorflow::Input](/versions/r1.15/api_docs/cc/class/tensorflow/input#classtensorflow_1_1_input)` momentum, ::`[tensorflow::Input](/versions/r1.15/api_docs/cc/class/tensorflow/input#classtensorflow_1_1_input)` epsilon, ::`[tensorflow::Input](/versions/r1.15/api_docs/cc/class/tensorflow/input#classtensorflow_1_1_input)` grad, const `[ApplyCenteredRMSProp::Attrs](/versions/r1.15/api_docs/cc/struct/tensorflow/ops/apply-centered-r-m-s-prop/attrs#structtensorflow_1_1ops_1_1_apply_centered_r_m_s_prop_1_1_attrs)` & attrs)` ||\n\n| ### Public attributes ||\n|-------------------------------------------------------------------------------------------------------|----------------------------------------------------------------------------------------------------------|\n| [operation](#classtensorflow_1_1ops_1_1_apply_centered_r_m_s_prop_1a1eed55db035d88dc72301a9da4440e4a) | [Operation](/versions/r1.15/api_docs/cc/class/tensorflow/operation#classtensorflow_1_1_operation) |\n| [out](#classtensorflow_1_1ops_1_1_apply_centered_r_m_s_prop_1a62975e9d2166f002e315def153375125) | `::`[tensorflow::Output](/versions/r1.15/api_docs/cc/class/tensorflow/output#classtensorflow_1_1_output) |\n\n| ### Public functions ||\n|-------------------------------------------------------------------------------------------------------------------------------------|------------------------|\n| [node](#classtensorflow_1_1ops_1_1_apply_centered_r_m_s_prop_1aa871631223879c0e00dc1ad75118f3ad)`() const ` | `::tensorflow::Node *` |\n| [operator::tensorflow::Input](#classtensorflow_1_1ops_1_1_apply_centered_r_m_s_prop_1a9c793c604a2790930231f4244e7118cb)`() const ` | ` ` ` ` |\n| [operator::tensorflow::Output](#classtensorflow_1_1ops_1_1_apply_centered_r_m_s_prop_1a5506a3056061103ac1e9a7a48412a968)`() const ` | ` ` ` ` |\n\n| ### Public static functions ||\n|------------------------------------------------------------------------------------------------------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| [UseLocking](#classtensorflow_1_1ops_1_1_apply_centered_r_m_s_prop_1ace802790fc34b37dc6b7574ea6f55cea)`(bool x)` | [Attrs](/versions/r1.15/api_docs/cc/struct/tensorflow/ops/apply-centered-r-m-s-prop/attrs#structtensorflow_1_1ops_1_1_apply_centered_r_m_s_prop_1_1_attrs) |\n\n| ### Structs ||\n|-----------------------------------------------------------------------------------------------------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| [tensorflow::ops::ApplyCenteredRMSProp::Attrs](/versions/r1.15/api_docs/cc/struct/tensorflow/ops/apply-centered-r-m-s-prop/attrs) | Optional attribute setters for [ApplyCenteredRMSProp](/versions/r1.15/api_docs/cc/class/tensorflow/ops/apply-centered-r-m-s-prop#classtensorflow_1_1ops_1_1_apply_centered_r_m_s_prop). |\n\nPublic attributes\n-----------------\n\n### operation\n\n```text\nOperation operation\n``` \n\n### out\n\n```text\n::tensorflow::Output out\n``` \n\nPublic functions\n----------------\n\n### ApplyCenteredRMSProp\n\n```gdscript\n ApplyCenteredRMSProp(\n const ::tensorflow::Scope & scope,\n ::tensorflow::Input var,\n ::tensorflow::Input mg,\n ::tensorflow::Input ms,\n ::tensorflow::Input mom,\n ::tensorflow::Input lr,\n ::tensorflow::Input rho,\n ::tensorflow::Input momentum,\n ::tensorflow::Input epsilon,\n ::tensorflow::Input grad\n)\n``` \n\n### ApplyCenteredRMSProp\n\n```gdscript\n ApplyCenteredRMSProp(\n const ::tensorflow::Scope & scope,\n ::tensorflow::Input var,\n ::tensorflow::Input mg,\n ::tensorflow::Input ms,\n ::tensorflow::Input mom,\n ::tensorflow::Input lr,\n ::tensorflow::Input rho,\n ::tensorflow::Input momentum,\n ::tensorflow::Input epsilon,\n ::tensorflow::Input grad,\n const ApplyCenteredRMSProp::Attrs & attrs\n)\n``` \n\n### node\n\n```gdscript\n::tensorflow::Node * node() const \n``` \n\n### operator::tensorflow::Input\n\n```gdscript\n operator::tensorflow::Input() const \n``` \n\n### operator::tensorflow::Output\n\n```gdscript\n operator::tensorflow::Output() const \n``` \n\nPublic static functions\n-----------------------\n\n### UseLocking\n\n```text\nAttrs UseLocking(\n bool x\n)\n```"]]