开发者
资源
[object Object][object Object][object Object]undefined
[object Object]
  • 接口功能:完成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 -范数距离
[object Object]

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

[object Object]
[object Object]
[object Object]
  • 参数说明:

    [object Object]
  • 返回值:

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

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

    [object Object]
[object Object]
  • 参数说明:

    [object Object]
  • 返回值:

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

[object Object]

默认支持确定性计算。

[object Object]

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

[object Object]