FilesLast commitLast update
4 months ago
3 months ago
4 months ago
4 months ago
4 months ago
4 months ago
3 months ago
4 months ago
README

SparseSegmentSumGrad

产品支持情况

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

功能说明

  • 算子功能:SparseSegmentSumGrad 是 SparseSegmentSum 的反向传播算子,用于计算稀疏分段求和操作的梯度。

  • 计算公式:

output[i]=∑j:indices[j]=igrad[segment_ids[j]]output[i] = \sum_{j : indices[j] = i} grad[segment\_ids[j]]

参数说明

参数名 输入/输出/属性 描述 数据类型 数据格式
grad 输入 输出梯度张量,shape为(N, d1, d2, ...) FLOAT16、FLOAT、BF16、DOUBLE ND
indices 输入 1-D索引张量,指向原始数据行 INT32、INT64 ND
segment_ids 输入 1-D分段标识张量,指向grad行 INT32、INT64 ND
output_dim0 输入 标量,原始数据的第一维大小 INT32 ND
output 输出 输入数据的梯度,shape为(output_dim0, d1, d2, ...) FLOAT16、FLOAT、BF16、DOUBLE ND

约束说明

  • indices 和 segment_ids 必须为 1-D 且长度相同。
  • indices 中的值必须在 [0, output_dim0) 范围内。
  • segment_ids 中的值必须在 [0, grad.shape[0]) 范围内。
  • 多个 segment 指向同一 indices 时使用确定性 gather-add 累加(每个输出由单线程顺序累加,无 atomic 操作)。

调用说明

调用方式 调用样例 说明
图模式调用 [test_geir] 通过算子IR构图方式调用SparseSegmentSumGrad算子。