Aprenda o que há de mais recente em aprendizado de máquina, IA generativa e muito mais no WiML Symposium 2023
Registre-se
Mantenha tudo organizado com as coleções
Salve e categorize o conteúdo com base nas suas preferências.
tensorflow :: ops :: ApplyCenteredRMSProp
#include <training_ops.h>
Atualize '* var' de acordo com o algoritmo RMSProp centralizado.
Resumo
O algoritmo RMSProp centrado usa uma estimativa do segundo momento centrado (ou seja, a variância) para normalização, ao contrário do RMSProp regular, que usa o segundo momento (não centrado). Isso geralmente ajuda no treinamento, mas é um pouco mais caro em termos de computação e memória.
Observe que na implementação densa deste algoritmo, mg, ms e mom serão atualizados mesmo se o grad for zero, mas nesta implementação esparsa, mg, ms e mom não serão atualizados em iterações durante as quais o grad é zero.
média_quadrada = decadência * média_quadrada + (1-decadência) * gradiente ** 2 média_grad = decadência * média_grad + (1-decadência) * gradiente
Delta = learning_rate * gradiente / sqrt (mean_square + epsilon - mean_grad ** 2)
mg <- rho * mg_ {t-1} + (1-rho) * grad ms <- rho * ms_ {t-1} + (1-rho) * grad * grad mãe <- momento * mãe_ {t-1 } + lr * grad / sqrt (ms - mg * mg + epsilon) var <- var - mãe
Argumentos:
- escopo: um objeto Scope
- var: deve ser de uma variável ().
- mg: deve ser de uma variável ().
- ms: deve ser de uma variável ().
- mãe: deve ser de uma variável ().
- lr: Fator de escala. Deve ser um escalar.
- rho: Taxa de decaimento. Deve ser um escalar.
- epsilon: termo de cume. Deve ser um escalar.
- grad: O gradiente.
Atributos opcionais (consulte Attrs
):
- use_locking: Se
True
, a atualização dos tensores var, mg, ms e mom é protegida por um bloqueio; caso contrário, o comportamento é indefinido, mas pode exibir menos contenção.
Retorna:
Construtores e Destruidores |
---|
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) |
Atributos públicos
Funções públicas
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ó
::tensorflow::Node * node() const
operator::tensorflow::Input() const
operador :: tensorflow :: Saída
operator::tensorflow::Output() const
Funções estáticas públicas
UseLocking
Attrs UseLocking(
bool x
)
Exceto em caso de indicação contrária, o conteúdo desta página é licenciado de acordo com a Licença de atribuição 4.0 do Creative Commons, e as amostras de código são licenciadas de acordo com a Licença Apache 2.0. Para mais detalhes, consulte as políticas do site do Google Developers. Java é uma marca registrada da Oracle e/ou afiliadas.
Última atualização 2020-04-20 UTC.
[null,null,["Última atualização 2020-04-20 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```"]]