SparseReshape
贡献说明
产品支持情况
| 产品 |
是否支持 |
| Ascend 950PR&950DT系列产品 |
√ |
| Atlas A3系列产品 |
√ |
| Atlas A2系列产品 |
√ |
| Atlas 200I/500 A2推理产品 |
× |
| Atlas推理系列产品 |
× |
| Atlas训练系列产品 |
× |
功能说明
flat_id=∑j=0input_rank−1indices[i,j]×input_strides[j]\text{flat\_id} = \sum_{j=0}^{\text{input\_rank}-1} \text{indices}[i, j] \times \text{input\_strides}[j]
flat_id=j=0∑input_rank−1indices[i,j]×input_strides[j]
y_indices[i,j]=⌊flat_id/output_strides[j]⌋,flat_id=flat_id mod output_strides[j]\text{y\_indices}[i, j] = \lfloor \text{flat\_id} / \text{output\_strides}[j] \rfloor, \quad \text{flat\_id} = \text{flat\_id} \bmod \text{output\_strides}[j]
y_indices[i,j]=⌊flat_id/output_strides[j]⌋,flat_id=flat_idmodoutput_strides[j]
参数说明
| 参数名 |
输入/输出/属性 |
描述 |
数据类型 |
数据格式 |
| indices |
输入 |
非零元素的多维坐标矩阵,2D张量,形状为(nnz, input_rank)。 |
INT32、INT64 |
ND |
| shape |
输入 |
原始稠密形状,1D张量,形状为(input_rank,)。 |
INT32、INT64 |
ND |
| new_shape |
输入 |
目标稠密形状,1D张量,形状为(output_rank,)。允许其中一个值为-1,自动推导。 |
INT32、INT64 |
ND |
| y_indices |
输出 |
重塑后的非零元素坐标矩阵,2D张量,形状为(nnz, output_rank)。 |
INT32、INT64 |
ND |
| y_shape |
输出 |
重塑后的稠密形状,1D张量,形状为(output_rank,)。 |
INT32、INT64 |
ND |
约束说明
- 输入indices必须为2D矩阵,shape和new_shape必须为1D向量。
- 输入indices每行是一个非零元素的多维坐标。元素值大于等于0且小于对应shape维度的size。
- input_rank和output_rank均不超过8维(MAX_RANK=8)。
- new_shape中最多允许一个值为-1,该值由shape参数的值乘积除以new_shape参数其他非-1值乘积自动推导。
- 输入shape的值乘积和输入new_shape的值乘积必须一致。
- 所有输入和输出的dtype必须相同(全部int32或全部int64)。
调用说明