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

aclnnCdistBackward

产品支持情况

[object Object]undefined

功能说明

  • 接口功能:完成aclnnCdist的反向
  • 计算公式:out=grady=grad((x1x2)pp)=grad1p×((x1x2)p)1p1×p×(x1x2)p1=grad((x1x2)p)(p1)p×(x1x2)p1=grad((x1x2)p)1p×((p1))×(x1x2)p1=graddiffp1cdistp1=graddiff×diffp2cdistp1\begin{aligned} out&=grad \cdot y' \\ &= grad \cdot \left( \sqrt[p]{\sum (x_1 - x_2)^p} \right)' \\ &= grad \cdot \frac{1}{p} \times \left( \sum (x_1 - x_2)^p \right)^{\frac{1}{p}-1} \times p \times (x_1 - x_2)^{p-1} \\ &= grad \cdot \left( \sum (x_1 - x_2)^p \right)^{\frac{-(p-1)}{p}} \times (x_1 - x_2)^{p-1} \\ &= grad \cdot \left( \sum (x_1 - x_2)^p \right)^{\frac{1}{p} \times (-(p-1))} \times (x_1 - x_2)^{p-1} \\ &= grad \cdot \frac{diff^{p-1}}{cdist^{p-1}} \\ &= grad \cdot \frac{diff \times |diff|^{p-2}}{cdist^{p-1}} \end{aligned}
    • diff=x1x2\mathrm{diff} = x_1 - x_2 :变量差值
    • cdist=(x1x2)pp\mathrm{cdist} = \sqrt[p]{\sum (x_1 - x_2)^p}pp -范数距离

函数原型

每个算子分为,必须先调用“aclnnCdistBackwardGetWorkspaceSize”接口获取入参并根据流程计算所需workspace大小,再调用“aclnnCdistBackward”接口执行计算。

[object Object]
[object Object]

aclnnCdistBackwardGetWorkspaceSize

  • 参数说明:

    [object Object]
  • 返回值:

    aclnnStatus:返回状态码,具体参见

    第一段接口完成入参校验,出现以下场景时报错:

    [object Object]

aclnnCdistBackward

  • 参数说明:

    [object Object]
  • 返回值:

    aclnnStatus:返回状态码,具体参见

约束说明

默认支持确定性计算。

调用示例

示例代码如下,仅供参考,具体编译和执行过程请参考

[object Object]