SparseReshape
贡献说明
产品支持情况
| 产品 |
是否支持 |
| Ascend 950PR/Ascend 950DT |
√ |
| Atlas A3 训练系列产品/Atlas A3 推理系列产品 |
× |
| Atlas A2 训练系列产品/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张量,shape=(nnz, input_rank)。 |
INT32、INT64 |
ND |
| shape |
输入 |
原始稠密形状,1D张量,shape=(input_rank,)。 |
INT32、INT64 |
ND |
| new_shape |
输入 |
目标稠密形状,1D张量,shape=(output_rank,)。允许一个维度为-1,自动推导。 |
INT32、INT64 |
ND |
| y_indices |
输出 |
重塑后的非零元素坐标矩阵,2D张量,shape=(nnz, output_rank)。 |
INT32、INT64 |
ND |
| y_shape |
输出 |
重塑后的稠密形状,1D张量,shape=(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的总元素数必须一致。
- 所有输入和输出的dtype必须相同(全部int32或全部int64)。
调用说明