mindspore/docs/api/api_python/ops/mindspore.ops.ApplyAdagradD...

57 lines
3.4 KiB
ReStructuredText
Raw Normal View History

mindspore.ops.ApplyAdagradDA
=============================
.. py:class:: mindspore.ops.ApplyAdagradDA(use_locking=False)
<20><><EFBFBD><EFBFBD>Adagrad<61><EFBFBD><E3B7A8><EFBFBD><EFBFBD> `var` <20><>
Adagrad<61><EFBFBD><E3B7A8><EFBFBD><EFBFBD><EFBFBD><EFBFBD> `Adaptive Subgradient Methods for Online Learning and Stochastic Optimization <http://www.jmlr.org/papers/volume12/duchi11a/duchi11a.pdf>`_ <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
.. math::
\begin{array}{ll} \\
grad\_accum += grad \\
grad\_squared\_accum += grad * grad \\
tmp\_val=
\begin{cases}
sign(grad\_accum) * max\left \{|grad\_accum|-l1*global\_step, 0\right \} & \text{ if } l1>0 \\
grad\_accum & \text{ otherwise } \\
\end{cases} \\
x\_value = -1 * lr * tmp\_val \\
y\_value = l2 * global\_step * lr + \sqrt{grad\_squared\_accum} \\
var = \frac{ x\_value }{ y\_value }
\end{array}
`var` <20><> `gradient_accumulator` <20><> `gradient_squared_accumulator` <20><> `grad` <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ѭ<EFBFBD><D1AD>ʽ<EFBFBD><CABD><EFBFBD><EFBFBD>ת<EFBFBD><D7AA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD><CAB9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD>¡<EFBFBD>
<20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ǿ<EFBFBD><C7BE>в<EFBFBD>ͬ<EFBFBD><CDAC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͣ<EFBFBD><CDA3><EFBFBD><EFBFBD>ϵ;<CFB5><CDBE>ȵ<EFBFBD><C8B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͽ<EFBFBD>ת<EFBFBD><D7AA>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>߾<EFBFBD><DFBE>ȵ<EFBFBD><C8B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>͡<EFBFBD>
2022-07-22 14:07:38 +08:00
<20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
- **use_locking** (bool) - <20><><EFBFBD><EFBFBD>ΪTrue<75><65> `var` <20><> `gradient_accumulator` <20>ĸ<EFBFBD><C4B8>½<EFBFBD><C2BD>ܵ<EFBFBD><DCB5><EFBFBD><EFBFBD>ı<EFBFBD><C4B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ΪΪδ<CEAA><CEB4><EFBFBD><EFBFBD>ܿ<EFBFBD><DCBF>ܳ<EFBFBD><DCB3>ֽ<EFBFBD><D6BD>ٵij<D9B5>ͻ<EFBFBD><CDBB>Ĭ<EFBFBD><C4AC>ֵΪFalse<73><65>
<20><><EFBFBD>
- **var** (Parameter) - Ҫ<><D2AA><EFBFBD>µı<C2B5><C4B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͱ<EFBFBD><CDB1><EFBFBD>Ϊfloat16<31><36>float32<33><32>shape<70><65> :math:`(N, *)` <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> :math:`*` <20><>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ĸ<EFBFBD><C4B8><EFBFBD>ά<EFBFBD>ȡ<EFBFBD>
- **gradient_accumulator** (Parameter) - Ҫ<><D2AA><EFBFBD><EFBFBD><EFBFBD>ۻ<EFBFBD><DBBB><EFBFBD><EFBFBD>ݶȣ<DDB6>Ϊ<EFBFBD><CEAA>ʽ<EFBFBD>е<EFBFBD> :math:`grad\_accum` <20><>shape<70><65><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͱ<EFBFBD><CDB1><EFBFBD><EFBFBD><EFBFBD> `var` <20><>ͬ<EFBFBD><CDAC>
- **gradient_squared_accumulator** (Parameter) - Ҫ<><D2AA><EFBFBD>µ<EFBFBD>ƽ<EFBFBD><C6BD><EFBFBD>ۻ<EFBFBD><DBBB><EFBFBD><EFBFBD>ݶȣ<DDB6> Ϊ<><CEAA>ʽ<EFBFBD>е<EFBFBD> :math:`grad\_squared\_accum` <20><>shape<70><65><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͱ<EFBFBD><CDB1><EFBFBD><EFBFBD><EFBFBD> `var` <20><>ͬ<EFBFBD><CDAC>
- **grad** (Tensor) - <20>ݶȣ<DDB6>Ϊһ<CEAA><D2BB>Tensor<6F><72>shape<70><65><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͱ<EFBFBD><CDB1><EFBFBD><EFBFBD><EFBFBD> `var` <20><>ͬ<EFBFBD><CDAC>
- **lr** ([Number, Tensor]) - ѧϰ<D1A7>ʡ<EFBFBD><CAA1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Scalar<61><72><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊfloat32<33><32>float16<31><36>
- **l1** ([Number, Tensor]) - L1<4C><31><EFBFBD>򻯡<EFBFBD><F2BBAFA1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Scalar<61><72><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊfloat32<33><32>float16<31><36>
- **l2** ([Number, Tensor]) - L2<4C><32><EFBFBD>򻯡<EFBFBD><F2BBAFA1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Scalar<61><72><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊfloat32<33><32>float16<31><36>
- **global_step** ([Number, Tensor]) - ѵ<><D1B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ı<EFBFBD><C4B1>š<EFBFBD><C5A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Scalar<61><72><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊint32<33><32>int64<36><34>
<20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
3<><33>Tensor<6F><72><EFBFBD>ɵ<EFBFBD>tuple<6C><65><EFBFBD><EFBFBD><EFBFBD>º<EFBFBD><C2BA>IJ<EFBFBD><C4B2><EFBFBD><EFBFBD><EFBFBD>
- **var** (Tensor) - shape<70><65><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> `var` <20><>ͬ<EFBFBD><CDAC>
- **gradient_accumulator** (Tensor) - shape<70><65><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> `gradient_accumulator` <20><>ͬ<EFBFBD><CDAC>
- **gradient_squared_accumulator** (Tensor) - shape<70><65><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> `gradient_squared_accumulator` <20><>ͬ<EFBFBD><CDAC>
<20><EFBFBD><ECB3A3>
- **TypeError** - <20><><EFBFBD><EFBFBD> `var` <20><> `gradient_accumulator` <20><> `gradient_squared_accumulator` <20><><EFBFBD><EFBFBD>Parameter<65><72>
- **TypeError** - <20><><EFBFBD><EFBFBD> `grad` <20><><EFBFBD><EFBFBD> Tensor<6F><72>
- **TypeError** - <20><><EFBFBD><EFBFBD> `lr` <20><> `l1` <20><> `l2` <20><><EFBFBD><EFBFBD> `global_step` <20>Ȳ<EFBFBD><C8B2><EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD><D6B5>Ҳ<EFBFBD><D2B2><EFBFBD><EFBFBD>Tensor<6F><72>
- **TypeError** - <20><><EFBFBD><EFBFBD> `use_locking` <20><><EFBFBD><EFBFBD>bool<6F><6C>
- **TypeError** - <20><><EFBFBD><EFBFBD> `var` <20><> `gradient_accumulator` <20><> `gradient_squared_accumulator` <20><> `grad` <20><> `lr` <20><> `l1` <20><> `l2` <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͼȲ<CDBC><C8B2><EFBFBD>float16Ҳ<36><D2B2><EFBFBD><EFBFBD>float32<33><32>
- **TypeError** - <20><><EFBFBD><EFBFBD> `gradient_accumulator` <20><> `gradient_squared_accumulator` <20><> `grad` <20><> `var` <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ͳ<EFBFBD><CDB2><EFBFBD>ͬ<EFBFBD><CDAC>
- **TypeError** - <20><><EFBFBD><EFBFBD> `global_step` <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ͳ<EFBFBD><CDB2><EFBFBD>int32Ҳ<32><D2B2><EFBFBD><EFBFBD>int64<36><34>
- **ValueError** - <20><><EFBFBD><EFBFBD> `lr` <20><> `l1` <20><> `l2` <20><> `global_step` <20><>shape<70><65>С<EFBFBD><D0A1>Ϊ0<CEAA><30>
- **RuntimeError** - <20><><EFBFBD><EFBFBD> `var` <20><> `gradient_accumulator` <20><> `gradient_squared_accumulator` <20><> `grad` <20><>֧<EFBFBD><D6A7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ת<EFBFBD><D7AA><EFBFBD><EFBFBD>