AcosGrad
产品支持情况
| 产品 | 是否支持 |
|---|---|
| Ascend 950PR/Ascend 950DT | √ |
| Atlas A3 训练系列产品/Atlas A3 推理系列产品 | √ |
| Atlas A2 训练系列产品/Atlas A2 推理系列产品 | √ |
| Atlas 200I/500 A2 推理产品 | × |
| Atlas 推理系列产品 | √ |
| Atlas 训练系列产品 | √ |
功能说明
-
算子功能:计算 Acos(反余弦)算子的反向梯度。
-
算子公式:
zi=−1⋅dyi⋅11−yi2z_i = -1 \cdot dy_i \cdot \dfrac{1}{\sqrt{1 - y_i^2}}
其中:
- yiy_i 为前向 Acos 算子的输入张量(按 canndev REG_OP 命名);
- dyidy_i 为上游传入的梯度;
- ziz_i 为对原始输入张量的梯度,等于上游梯度乘以 −1/1−yi2-1/\sqrt{1 - y_i^2}。
-
超出定义域(∣yi∣>1|y_i| > 1)时:1−yi2<01 - y_i^2 < 0,平方根结果为 NaN,结果同样为 NaN。
参数说明
| 参数名 | 输入/输出/属性 | 描述 | 数据类型 | 数据格式 |
|---|---|---|---|---|
| y | 输入 | 前向 Acos 算子的输入张量(按 canndev REG_OP 命名)。值域期望落在 [-1, 1]。 | FLOAT16, FLOAT32, BFLOAT16 | ND |
| dy | 输入 | 上游传入的梯度张量,shape 与 dtype 与 y 一致。 | FLOAT16, FLOAT32, BFLOAT16 | ND |
| z | 输出 | 对原始输入张量的梯度,shape 与 dtype 与 y 一致。 | FLOAT16, FLOAT32, BFLOAT16 | ND |
约束说明
- y 与 dy 的 shape 必须完全一致。
- y 与 dy 的 dtype 必须完全一致。
- 仅支持 ND 格式。
- 支持 非连续的 Tensor,非连续的 Tensor 维度不大于 8。
调用说明
| 调用方式 | 调用样例 | 说明 |
|---|---|---|
| 图模式调用 | test_geir_acos_grad | 通过 算子IR 构图方式调用 AcosGrad 算子。 |