文件最后提交记录最后更新时间
30 天前
13 天前
5 个月前
30 天前
30 天前
14 天前
5 个月前
1 个月前
README

ApplyMomentum

产品支持情况

产品 是否支持
Ascend 950PR/Ascend 950DT
Atlas A3 训练系列产品/Atlas A3 推理系列产品
Atlas A2 训练系列产品/Atlas A2 推理系列产品
Atlas 200I/500 A2 推理产品 ×
Atlas 推理系列产品
Atlas 训练系列产品

功能说明

  • 算子功能:根据动量方案更新变量"var"。若设置use_nesterov=True,则使用Nesterov动量。

  • 计算公式:

    accum=accum×momentum+gradaccum = accum \times momentum + grad

    • 若use_nesterov = True:

      var=var−grad×lr+accum×momentum×lrvar = var - grad \times lr + accum \times momentum \times lr

    • 若use_nesterov = False:

      var=var−lr×accumvar = var - lr \times accum

参数说明

参数名 输入/输出/属性 描述 数据类型 数据格式
var 输入 待更新的参数张量,应来自Variable。 BFLOAT16、FLOAT16、FLOAT ND
accum 输入 梯度累积值,应来自Variable。 BFLOAT16、FLOAT16、FLOAT ND
lr 输入 学习率,标量。 BFLOAT16、FLOAT16、FLOAT ND
grad 输入 梯度张量。 BFLOAT16、FLOAT16、FLOAT ND
momentum 输入 动量系数,标量。 BFLOAT16、FLOAT16、FLOAT ND
use_nesterov 属性 是否使用Nesterov动量,默认为False。 Bool -
use_locking 属性 是否使用锁机制保护更新操作,默认为False。 Bool -
var 输出 更新后的参数张量。 BFLOAT16、FLOAT16、FLOAT ND

约束说明

输入张量必须具有相同的形状和类型。

调用说明

调用方式 调用样例 说明
图模式调用 test_geir_apply_momentum 通过算子IR构图方式调用ApplyMomentum算子。