جریان تنسور:: عملیات:: SparseApplyMomentum
#include <training_ops.h>
طبق طرح حرکت، ورودیهای مربوطه را در «*var» و «*accum» بهروزرسانی کنید.
خلاصه
تنظیم use_nesterov = درست است اگر می خواهید از حرکت Nesterov استفاده کنید.
یعنی برای ردیف هایی که grad داریم، var و accum را به صورت زیر به روز می کنیم:
$$accum = accum * momentum + grad$$
$$var -= lr * accum$$
استدلال ها:
- scope: یک شی Scope
- var: باید از یک متغیر () باشد.
- accum: باید از یک متغیر () باشد.
- lr: میزان یادگیری. باید اسکالر باشد.
- grad: گرادیان.
- شاخص ها: بردار شاخص ها در بعد اول var و accum.
- تکانه: تکانه. باید اسکالر باشد.
ویژگی های اختیاری (به Attrs
مراجعه کنید):
- use_locking: اگر
True
، بهروزرسانی تانسور var و accum توسط یک قفل محافظت میشود. در غیر این صورت رفتار تعریف نشده است، اما ممکن است اختلاف کمتری از خود نشان دهد. - use_nesterov: اگر
True
، تانسور ارسال شده به درجه محاسبه، var - lr * تکانه * accum خواهد بود، بنابراین در پایان، var که دریافت میکنید در واقع var - lr * تکانه * accum است.
برمی گرداند:
-
Output
: مانند "var".
سازندگان و تخریب کنندگان | |
---|---|
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) |
صفات عمومی | |
---|---|
operation | |
out |
توابع عمومی | |
---|---|
node () const | ::tensorflow::Node * |
operator::tensorflow::Input () const | |
operator::tensorflow::Output () const |
توابع استاتیک عمومی | |
---|---|
UseLocking (bool x) | |
UseNesterov (bool x) |
سازه ها | |
---|---|
tensorflow:: ops:: SparseApplyMomentum:: Attrs | تنظیم کننده های ویژگی اختیاری برای SparseApplyMomentum . |
صفات عمومی
عملیات
Operation operation
بیرون
::tensorflow::Output out
توابع عمومی
SparseApplyMomentum
SparseApplyMomentum( const ::tensorflow::Scope & scope, ::tensorflow::Input var, ::tensorflow::Input accum, ::tensorflow::Input lr, ::tensorflow::Input grad, ::tensorflow::Input indices, ::tensorflow::Input momentum )
SparseApplyMomentum
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 )
گره
::tensorflow::Node * node() const
عملگر::tensorflow::ورودی
operator::tensorflow::Input() const
عملگر::tensorflow::خروجی
operator::tensorflow::Output() const
توابع استاتیک عمومی
استفاده از قفل
Attrs UseLocking( bool x )
UseNesterov
Attrs UseNesterov( bool x )
جز در مواردی که غیر از این ذکر شده باشد،محتوای این صفحه تحت مجوز Creative Commons Attribution 4.0 License است. نمونه کدها نیز دارای مجوز Apache 2.0 License است. برای اطلاع از جزئیات، به خطمشیهای سایت Google Developers مراجعه کنید. جاوا علامت تجاری ثبتشده Oracle و/یا شرکتهای وابسته به آن است.
تاریخ آخرین بهروزرسانی 2025-07-26 بهوقت ساعت هماهنگ جهانی.
[null,null,["تاریخ آخرین بهروزرسانی 2025-07-26 بهوقت ساعت هماهنگ جهانی."],[],[],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\n$$accum = accum \\* momentum + grad$$ \n$$var -= lr \\* accum$$\n\n\u003cbr /\u003e\n\nArguments:\n\n- scope: A [Scope](/versions/r2.3/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/r2.3/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/r2.3/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/r2.3/api_docs/cc/class/tensorflow/scope#classtensorflow_1_1_scope)` & scope, ::`[tensorflow::Input](/versions/r2.3/api_docs/cc/class/tensorflow/input#classtensorflow_1_1_input)` var, ::`[tensorflow::Input](/versions/r2.3/api_docs/cc/class/tensorflow/input#classtensorflow_1_1_input)` accum, ::`[tensorflow::Input](/versions/r2.3/api_docs/cc/class/tensorflow/input#classtensorflow_1_1_input)` lr, ::`[tensorflow::Input](/versions/r2.3/api_docs/cc/class/tensorflow/input#classtensorflow_1_1_input)` grad, ::`[tensorflow::Input](/versions/r2.3/api_docs/cc/class/tensorflow/input#classtensorflow_1_1_input)` indices, ::`[tensorflow::Input](/versions/r2.3/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/r2.3/api_docs/cc/class/tensorflow/scope#classtensorflow_1_1_scope)` & scope, ::`[tensorflow::Input](/versions/r2.3/api_docs/cc/class/tensorflow/input#classtensorflow_1_1_input)` var, ::`[tensorflow::Input](/versions/r2.3/api_docs/cc/class/tensorflow/input#classtensorflow_1_1_input)` accum, ::`[tensorflow::Input](/versions/r2.3/api_docs/cc/class/tensorflow/input#classtensorflow_1_1_input)` lr, ::`[tensorflow::Input](/versions/r2.3/api_docs/cc/class/tensorflow/input#classtensorflow_1_1_input)` grad, ::`[tensorflow::Input](/versions/r2.3/api_docs/cc/class/tensorflow/input#classtensorflow_1_1_input)` indices, ::`[tensorflow::Input](/versions/r2.3/api_docs/cc/class/tensorflow/input#classtensorflow_1_1_input)` momentum, const `[SparseApplyMomentum::Attrs](/versions/r2.3/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/r2.3/api_docs/cc/class/tensorflow/operation#classtensorflow_1_1_operation) |\n| [out](#classtensorflow_1_1ops_1_1_sparse_apply_momentum_1a64f0643f05faf59221caf6fce9bbe4b5) | `::`[tensorflow::Output](/versions/r2.3/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/r2.3/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/r2.3/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/r2.3/api_docs/cc/struct/tensorflow/ops/sparse-apply-momentum/attrs) | Optional attribute setters for [SparseApplyMomentum](/versions/r2.3/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```"]]