You can not select more than 25 topics Topics must start with a chinese character,a letter or number, can include dashes ('-') and can be up to 35 characters long.

mindspore.nn.CosineDecayLR.rst 1.3 kB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. mindspore.nn.CosineDecayLR
  2. ===========================
  3. .. py:class:: mindspore.nn.CosineDecayLR(min_lr, max_lr, decay_steps)
  4. 基于余弦衰减函数计算学习率。
  5. 对于当前step,decayed_learning_rate[current_step]的计算公式为:
  6. .. math::
  7. decayed\_learning\_rate[current\_step] = min\_lr + 0.5 * (max\_lr - min\_lr) *
  8. (1 + cos(\frac{current\_step}{decay\_steps}\pi))
  9. **参数:**
  10. - **min_lr** (float): 学习率的最小值。
  11. - **max_lr** (float): 学习率的最大值。
  12. - **decay_steps** (int): 用于计算衰减学习率的值。
  13. **输入:**
  14. - **global_step** (Tensor) - 当前step数。
  15. **输出:**
  16. Tensor。形状为 :math:`()` 的当前step的学习率值。
  17. **异常:**
  18. - **TypeError:** `min_lr` 或 `max_lr` 不是float。
  19. - **TypeError:** `decay_steps` 不是整数。
  20. - **ValueError:** `min_lr` 小于0或 `decay_steps` 小于1。
  21. - **ValueError:** `max_lr` 小于或等于0。
  22. **支持平台:**
  23. ``Ascend`` ``GPU``
  24. **样例:**
  25. >>> min_lr = 0.01
  26. >>> max_lr = 0.1
  27. >>> decay_steps = 4
  28. >>> global_steps = Tensor(2, mstype.int32)
  29. >>> cosine_decay_lr = nn.CosineDecayLR(min_lr, max_lr, decay_steps)
  30. >>> result = cosine_decay_lr(global_steps)
  31. >>> print(result)
  32. 0.055