2021-11-30 15:50:30 +08:00
|
|
|
|
mindspore.nn.WarmUpLR
|
|
|
|
|
|
======================
|
|
|
|
|
|
|
|
|
|
|
|
.. py:class:: mindspore.nn.WarmUpLR(learning_rate, warmup_steps)
|
|
|
|
|
|
|
2022-02-11 10:30:32 +08:00
|
|
|
|
预热学习率。
|
2021-11-30 15:50:30 +08:00
|
|
|
|
|
2022-01-05 17:07:51 +08:00
|
|
|
|
对于当前step,计算学习率的公式为:
|
2021-11-30 15:50:30 +08:00
|
|
|
|
|
|
|
|
|
|
.. math::
|
2022-01-05 17:07:51 +08:00
|
|
|
|
warmup\_learning\_rate = learning\_rate * tmp\_step / warmup\_steps
|
2021-11-30 15:50:30 +08:00
|
|
|
|
|
|
|
|
|
|
其中,
|
|
|
|
|
|
|
2022-02-14 10:42:17 +08:00
|
|
|
|
.. math::
|
2021-11-30 15:50:30 +08:00
|
|
|
|
tmp\_step=min(current\_step, warmup\_steps)
|
|
|
|
|
|
|
|
|
|
|
|
**参数:**
|
2021-12-04 20:36:47 +08:00
|
|
|
|
|
2021-11-30 15:50:30 +08:00
|
|
|
|
- **learning_rate** (float): 学习率的初始值。
|
|
|
|
|
|
- **warmup_steps** (int): 学习率warmup的step数。
|
|
|
|
|
|
|
|
|
|
|
|
**输入:**
|
|
|
|
|
|
|
2022-02-14 10:42:17 +08:00
|
|
|
|
- **global_step** (Tensor) - 当前step数,即current_step。
|
2021-11-30 15:50:30 +08:00
|
|
|
|
|
|
|
|
|
|
**输出:**
|
|
|
|
|
|
|
2022-01-05 17:07:51 +08:00
|
|
|
|
标量Tensor。当前step的学习率值。
|
2021-11-30 15:50:30 +08:00
|
|
|
|
|
|
|
|
|
|
**异常:**
|
|
|
|
|
|
|
2021-12-05 16:06:57 +08:00
|
|
|
|
- **TypeError** - `learning_rate` 不是float。
|
|
|
|
|
|
- **TypeError** - `warmup_steps` 不是int。
|
|
|
|
|
|
- **ValueError** - `warmup_steps` 小于1。
|
|
|
|
|
|
- **ValueError** - `learning_rate` 小于或等于0。
|