昇腾社区首页
中文
注册
开发者
下载

torch_npu.optim.NpuFusedAdamP

产品支持情况

产品 是否支持
[object Object]Atlas A3 训练系列产品[object Object]
[object Object]Atlas A2 训练系列产品[object Object]
[object Object]Atlas 训练系列产品[object Object]

功能说明

通过张量融合实现的高性能AdamP优化器。AdamP的功能和原理可参考《》。

函数原型

[object Object]

参数说明

  • params (dict):必选参数,模型参数或模型参数组,params为参数的可迭代对象或参数组的dict类型。
  • lr (float):可选参数,学习率,默认值为1e-3。
  • betas (Tuple[float, float]):可选参数,用于计算梯度及其平方的运行平均值的系数,betas为包含两个值的tuple类型,默认值为(0.9,0.999)。
  • eps (float):可选参数,分母防止除零项,提高数值稳定性,默认值为1e-8。
  • weight_decay (float):可选参数,权重衰减,默认值为0。
  • delta (float):余弦相似度阈值,默认值为0.1。
  • wd_ratio (float):权重衰减动态调整速率,默认值为0.1。
  • nesterov (bool):使用Nesterov动量,默认值为False。

返回值说明

类型为NpuFusedAdamP的对象。

约束说明

NpuFusedAdamP的实现机制要求params中的每一个模型参数对象在使用过程中不能被重新申请,否则将导致无法预料的结果。引起模型参数对象被重新申请的操作包括但不限于:

  • 将模型或其子Module进行.cpu操作
  • 将模型参数对象指向新的对象
  • 将模型参数对象置为None

对模型参数对象进行inplace计算,或者读取参数的值,NpuFusedAdamP可正常工作。

调用示例

[object Object]