mindspore.Tensor.to_coo

mindspore.Tensor.to_coo()[源代码]

将常规Tensor转为稀疏化的COOTensor。

Note

现在只支持2维Tensor。

返回:

返回一个2维的COOTensor,是原稠密Tensor的稀疏化表示。其中数据分别为:

  • indices (Tensor) - 二维整数张量,表示稀疏张量中 values 所处的位置索引。

  • values (Tensor) - 一维张量,用来给 indices 中的每个元素提供数值。

  • shape (tuple(int)) - 整数元组,用来指定稀疏矩阵的稠密形状。

异常:
  • ValueError - Tensor的shape不是2维。

支持平台:

GPU

样例:

>>> import numpy as np
>>> import mindspore
>>> from mindspore import Tensor
>>> x = Tensor(np.array([[1,  0], [-5, 0]]), mindspore.float32)
>>> output = x.to_coo()
>>> print(output.indices, output.values, output.shape)
[[0 0]
 [1 0]] [ 1. -5.] (2, 2)