文件最后提交记录最后更新时间
3 天前
20 天前
20 天前
20 天前
20 天前
20 天前
2 天前
3 个月前
3 天前
README

SiluGrad

产品支持情况

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

功能说明

  • 接口功能:aclnnSilu的反向传播,根据silu反向传播梯度与正向输出计算silu的梯度输入。

  • 计算公式:

    σ(x)=11+e−x\sigma(x) = {\frac{1} {1+{e}^{-x}}}

    s(x)=xσ(x)s(x) = x\sigma(x)

    s′(x)=σ(x)(1+x−xσ(x))s^\prime(x) = \sigma(x)(1+x-x\sigma(x))

    gradInput=gradOutput∗s′(x)gradInput = gradOutput * s^\prime(x)

其中σ(x)\sigma(x)为sigmoid函数,s(x)s(x)为silu函数,s′(x)s^\prime(x)为silu函数的导数。

参数说明

参数名 输入/输出/属性 描述 数据类型 数据格式
gradOutput 输入 表示输入梯度。公式中的gradOutput。 BFLOAT16、FLOAT16、FLOAT ND
self 输入 表示输入数据。公式中的x,且对应正向的输入参数。 BFLOAT16、FLOAT16、FLOAT ND
gradInput 输出 表示对输入数据self求的梯度。公式中的gradInput。 BFLOAT16、FLOAT16、FLOAT ND
  • Atlas 训练系列产品:数据类型支持FLOAT16、FLOAT。

约束说明

调用说明

调用方式 样例代码 说明
aclnn接口 test_aclnn_silu_grad.cpp 通过aclnnSiluBackward接口方式调用SiluGrad算子。