mindspore.ops.coo_concat
- mindspore.ops.coo_concat(sp_input, concat_dim=0)[源代码]
根据指定的轴concat_dim对输入的COO Tensor(sp_input)进行合并操作。
警告
这是一个实验性API,后续可能修改或删除。目前只支持CPU。
- 参数:
sp_input (Union[list(COOTensor), tuple(COOTensor)]) - 输入的需要concat合并的稀疏张量。
concat_dim (scalar) - 指定需要合并的轴序号, 它的取值必须是在[-rank, rank)之内, 其中rank为 sp_input 中COOTensor的shape的维度值,默认值:
0
。
- 返回:
COOTensor,按concat_dim轴合并后的COOTensor。这个COOTensor的稠密shape值为: 非concat_dim轴shape与输入一致,concat_dim轴shape是所有输入对应轴shape的累加。
- 异常:
ValueError - 如果只有一个COOTensor输入,报错。
ValueError - 如果输入的COOTensor的shape维度大于3,COOTensor的构造会报错。目前COOTensor的shape维度只能为2。
- 支持平台:
CPU
样例:
>>> from mindspore import Tensor, ops, COOTensor >>> from mindspore import dtype as mstype >>> indices0 = Tensor([[0, 1], [1, 2]], dtype=mstype.int64) >>> values0 = Tensor([1, 2], dtype=mstype.int32) >>> shape0 = (3, 4) >>> input0 = COOTensor(indices0, values0, shape0) >>> indices1 = Tensor([[0, 0], [1, 1]], dtype=mstype.int64) >>> values1 = Tensor([3, 4], dtype=mstype.int32) >>> shape1 = (3, 4) >>> input1 = COOTensor(indices1, values1, shape1) >>> concat_dim = 1 >>> out = ops.coo_concat((input0, input1), concat_dim) >>> print(out) COOTensor(shape=[3, 8], dtype=Int32, indices=Tensor(shape=[4, 2], dtype=Int64, value= [[0 1] [0 4] [1 2] [1 5]]), values=Tensor(shape=[4], dtype=Int32, value=[1 3 2 4]))