aclnnBatchNormReduceBackward
产品支持情况
功能说明
接口功能:
主要用于反向传播过程中计算BatchNorm操作的梯度,并进行一些中间结果的规约操作以优化计算效率。计算结果如下:
- 计算损失函数l对缩放权重γ的梯度()。
- 计算损失函数l对偏移量β的梯度()。
- 以损失函数l相对于输出(y[object Object]i[object Object])的偏差d[object Object]yi[object Object]推导计算所需的中间量sumDy和sumDyXmu。其中()为损失函数l相对于对应层各输入(x[object Object]i[object Object])的梯度。
计算公式:
函数原型
每个算子分为,必须先调用“aclnnBatchNormReduceBackwardGetWorkspaceSize”接口获取入参并根据流程计算所需workspace大小,再调用“aclnnBatchNormReduceBackward”接口执行计算。
[object Object]
[object Object]
aclnnBatchNormReduceBackwardGetWorkspaceSize
参数说明:
[object Object]- [object Object]Atlas 训练系列产品[object Object]、[object Object]Atlas 推理系列产品[object Object]:参数
[object Object]、[object Object]、[object Object]、[object Object]、[object Object]、[object Object]、[object Object]、[object Object]、[object Object]的数据类型不支持BFLOAT16。
- [object Object]Atlas 训练系列产品[object Object]、[object Object]Atlas 推理系列产品[object Object]:参数
返回值:
第一段接口完成入参校验,出现以下场景时报错:
[object Object]
aclnnBatchNormReduceBackward
约束说明
- 当任一输入为空Tensor时,输出为空Tensor。
- 确定性计算:
- aclnnBatchNormReduceBackward默认确定性实现。
调用示例
[object Object]