Restez organisé à l'aide des collections
Enregistrez et classez les contenus selon vos préférences.
flux tensoriel : : opérations : : ApplyCenteredRMSProp
#include <training_ops.h>
Mettez à jour '*var' selon l'algorithme RMSProp centré.
Résumé
L'algorithme RMSProp centré utilise une estimation du deuxième moment centré (c'est-à-dire la variance) pour la normalisation, par opposition au RMSProp normal, qui utilise le deuxième moment (non centré). Cela facilite souvent la formation, mais coûte légèrement plus cher en termes de calcul et de mémoire.
Notez que dans une implémentation dense de cet algorithme, mg, ms et mom seront mis à jour même si le grade est nul, mais dans cette implémentation clairsemée, mg, ms et mom ne seront pas mis à jour dans les itérations pendant lesquelles le grade est nul.
Mean_square = décroissance * Mean_square + (1-décroissance) * gradient ** 2 Mean_grad = décroissance * Mean_grad + (1-décroissance) * gradient
Delta = learning_rate * gradient / sqrt(mean_square + epsilon - mean_grad ** 2)
mg <- rho * mg_{t-1} + (1-rho) * diplômé ms <- rho * ms_{t-1} + (1-rho) * diplômé * diplômé maman <- élan * mom_{t-1 } + lr * grad / sqrt(ms - mg * mg + epsilon) var <- var - maman
Arguments :
- scope : un objet Scope
- var : doit provenir d'une variable ().
- mg : doit provenir d'une variable().
- ms : doit provenir d'une variable().
- maman : devrait provenir d'une variable ().
- lr : facteur d’échelle. Ça doit être un scalaire.
- rho : taux de décroissance. Ça doit être un scalaire.
- epsilon : terme de crête. Ça doit être un scalaire.
- grad : Le dégradé.
Attributs facultatifs (voir Attrs
) :
- use_locking : Si
True
, la mise à jour des tenseurs var, mg, ms et mom est protégée par un verrou ; sinon, le comportement n'est pas défini, mais peut présenter moins de conflits.
Retours :
Constructeurs et Destructeurs |
---|
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) |
Attributs publics
Fonctions publiques
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
)
nœud
::tensorflow::Node * node() const
operator::tensorflow::Input() const
opérateur :: tensorflow :: Sortie
operator::tensorflow::Output() const
Fonctions statiques publiques
UtiliserVerrouillage
Attrs UseLocking(
bool x
)
Sauf indication contraire, le contenu de cette page est régi par une licence Creative Commons Attribution 4.0, et les échantillons de code sont régis par une licence Apache 2.0. Pour en savoir plus, consultez les Règles du site Google Developers. Java est une marque déposée d'Oracle et/ou de ses sociétés affiliées.
Dernière mise à jour le 2025/07/27 (UTC).
[null,null,["Dernière mise à jour le 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```"]]