Mantieni tutto organizzato con le raccolte
Salva e classifica i contenuti in base alle tue preferenze.
tensoreflusso:: ops:: SparseApplyMomentum
#include <training_ops.h>
Aggiorna le voci rilevanti in '*var' e '*accum' secondo lo schema del momentum.
Riepilogo
Imposta use_nesterov = True se desideri utilizzare lo slancio di Nesterov.
Questo è per le righe per le quali abbiamo grad, aggiorniamo var e accum come segue:
$$accum = accum * momentum + grad$$ $$var -= lr * accum$$
Argomenti:
- scope: un oggetto Scope
- var: dovrebbe provenire da una variabile().
- accum: dovrebbe provenire da una variabile().
- lr: tasso di apprendimento. Deve essere uno scalare.
- grad: il gradiente.
- indici: un vettore di indici nella prima dimensione di var e accum.
- slancio: slancio. Deve essere uno scalare.
Attributi facoltativi (vedi Attrs
):
- use_locking: Se
True
, l'aggiornamento dei tensori var e accum sarà protetto da un lock; altrimenti il comportamento non è definito, ma può mostrare meno contesa. - use_nesterov: Se
True
, il tensore passato al calcolo grad sarà var - lr * momentum * accum, quindi alla fine, il var che ottieni è in realtà var - lr * momentum * accum.
Resi:
Costruttori e distruttori |
---|
SparseApplyMomentum (const :: tensorflow::Scope & scope, :: tensorflow::Input var, :: tensorflow::Input accum, :: tensorflow::Input lr, :: tensorflow::Input grad, :: tensorflow::Input indices, :: tensorflow::Input momentum)
|
SparseApplyMomentum (const :: tensorflow::Scope & scope, :: tensorflow::Input var, :: tensorflow::Input accum, :: tensorflow::Input lr, :: tensorflow::Input grad, :: tensorflow::Input indices, :: tensorflow::Input momentum, const SparseApplyMomentum::Attrs & attrs) |
Attributi pubblici
Funzioni pubbliche
nodo
::tensorflow::Node * node() const
operator::tensorflow::Input() const
operatore::tensorflow::Output
operator::tensorflow::Output() const
Funzioni pubbliche statiche
UsaLocking
Attrs UseLocking(
bool x
)
Usa Nesterov
Attrs UseNesterov(
bool x
)
Salvo quando diversamente specificato, i contenuti di questa pagina sono concessi in base alla licenza Creative Commons Attribution 4.0, mentre gli esempi di codice sono concessi in base alla licenza Apache 2.0. Per ulteriori dettagli, consulta le norme del sito di Google Developers. Java è un marchio registrato di Oracle e/o delle sue consociate.
Ultimo aggiornamento 2025-07-25 UTC.
[null,null,["Ultimo aggiornamento 2025-07-25 UTC."],[],[],null,["# tensorflow::ops::SparseApplyMomentum Class Reference\n\ntensorflow::ops::SparseApplyMomentum\n====================================\n\n`#include \u003ctraining_ops.h\u003e`\n\nUpdate relevant entries in '\\*var' and '\\*accum' according to the momentum scheme.\n\nSummary\n-------\n\nSet use_nesterov = True if you want to use Nesterov momentum.\n\nThat is for rows we have grad for, we update var and accum as follows:\n\n$$accum = accum \\* momentum + grad$$ $$var -= lr \\* accum$$\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- accum: Should be from a Variable().\n- lr: Learning rate. Must be a scalar.\n- grad: The gradient.\n- indices: A vector of indices into the first dimension of var and accum.\n- momentum: Momentum. Must be a scalar.\n\n\u003cbr /\u003e\n\nOptional attributes (see [Attrs](/versions/r1.15/api_docs/cc/struct/tensorflow/ops/sparse-apply-momentum/attrs#structtensorflow_1_1ops_1_1_sparse_apply_momentum_1_1_attrs)):\n\n- use_locking: If `True`, updating of the var and accum tensors will be protected by a lock; otherwise the behavior is undefined, but may exhibit less contention.\n- use_nesterov: If `True`, the tensor passed to compute grad will be var - lr \\* momentum \\* accum, so in the end, the var you get is actually var - lr \\* momentum \\* accum.\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| [SparseApplyMomentum](#classtensorflow_1_1ops_1_1_sparse_apply_momentum_1aad6f0afa69fbbc1896aceb60f9651bc8)`(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)` accum, ::`[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)` grad, ::`[tensorflow::Input](/versions/r1.15/api_docs/cc/class/tensorflow/input#classtensorflow_1_1_input)` indices, ::`[tensorflow::Input](/versions/r1.15/api_docs/cc/class/tensorflow/input#classtensorflow_1_1_input)` momentum)` ||\n| [SparseApplyMomentum](#classtensorflow_1_1ops_1_1_sparse_apply_momentum_1a769bc8a904000fccba7f122e985687c9)`(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)` accum, ::`[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)` grad, ::`[tensorflow::Input](/versions/r1.15/api_docs/cc/class/tensorflow/input#classtensorflow_1_1_input)` indices, ::`[tensorflow::Input](/versions/r1.15/api_docs/cc/class/tensorflow/input#classtensorflow_1_1_input)` momentum, const `[SparseApplyMomentum::Attrs](/versions/r1.15/api_docs/cc/struct/tensorflow/ops/sparse-apply-momentum/attrs#structtensorflow_1_1ops_1_1_sparse_apply_momentum_1_1_attrs)` & attrs)` ||\n\n| ### Public attributes ||\n|---------------------------------------------------------------------------------------------------|----------------------------------------------------------------------------------------------------------|\n| [operation](#classtensorflow_1_1ops_1_1_sparse_apply_momentum_1a30b8c7c6bf9f92ee2be7ac7297df6fa2) | [Operation](/versions/r1.15/api_docs/cc/class/tensorflow/operation#classtensorflow_1_1_operation) |\n| [out](#classtensorflow_1_1ops_1_1_sparse_apply_momentum_1a64f0643f05faf59221caf6fce9bbe4b5) | `::`[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_sparse_apply_momentum_1a79f23cdeb4f72f3271572314b76661a4)`() const ` | `::tensorflow::Node *` |\n| [operator::tensorflow::Input](#classtensorflow_1_1ops_1_1_sparse_apply_momentum_1a1be0ad2b688da68c70f65c7ae802a258)`() const ` | ` ` ` ` |\n| [operator::tensorflow::Output](#classtensorflow_1_1ops_1_1_sparse_apply_momentum_1a8eb81a827b3a21e7a6feaef16e6df395)`() const ` | ` ` ` ` |\n\n| ### Public static functions ||\n|---------------------------------------------------------------------------------------------------------------|----------------------------------------------------------------------------------------------------------------------------------------------------|\n| [UseLocking](#classtensorflow_1_1ops_1_1_sparse_apply_momentum_1a91893d64df26bd060d9da800107c6e3c)`(bool x)` | [Attrs](/versions/r1.15/api_docs/cc/struct/tensorflow/ops/sparse-apply-momentum/attrs#structtensorflow_1_1ops_1_1_sparse_apply_momentum_1_1_attrs) |\n| [UseNesterov](#classtensorflow_1_1ops_1_1_sparse_apply_momentum_1a90b8463d951fbf572ba63b9ec8ca3946)`(bool x)` | [Attrs](/versions/r1.15/api_docs/cc/struct/tensorflow/ops/sparse-apply-momentum/attrs#structtensorflow_1_1ops_1_1_sparse_apply_momentum_1_1_attrs) |\n\n| ### Structs ||\n|------------------------------------------------------------------------------------------------------------------------------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| [tensorflow::ops::SparseApplyMomentum::Attrs](/versions/r1.15/api_docs/cc/struct/tensorflow/ops/sparse-apply-momentum/attrs) | Optional attribute setters for [SparseApplyMomentum](/versions/r1.15/api_docs/cc/class/tensorflow/ops/sparse-apply-momentum#classtensorflow_1_1ops_1_1_sparse_apply_momentum). |\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### SparseApplyMomentum\n\n```gdscript\n SparseApplyMomentum(\n const ::tensorflow::Scope & scope,\n ::tensorflow::Input var,\n ::tensorflow::Input accum,\n ::tensorflow::Input lr,\n ::tensorflow::Input grad,\n ::tensorflow::Input indices,\n ::tensorflow::Input momentum\n)\n``` \n\n### SparseApplyMomentum\n\n```gdscript\n SparseApplyMomentum(\n const ::tensorflow::Scope & scope,\n ::tensorflow::Input var,\n ::tensorflow::Input accum,\n ::tensorflow::Input lr,\n ::tensorflow::Input grad,\n ::tensorflow::Input indices,\n ::tensorflow::Input momentum,\n const SparseApplyMomentum::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``` \n\n### UseNesterov\n\n```text\nAttrs UseNesterov(\n bool x\n)\n```"]]