您的位置:首页 > 其它

邻接矩阵转稀疏矩阵

2022-03-15 16:11 453 查看

Example:

import scipy.sparse as sp
import numpy as np
import torch

adj_matrix = torch.randint(0,2,(4,4))
print(adj_matrix)
tensor([[1, 1, 0, 0],
[0, 1, 0, 1],
[0, 0, 1, 1],
[1, 0, 0, 0]])
# adj_matrix 是邻接矩阵
tmp_coo = sp.coo_matrix(adj_matrix)
values = tmp_coo.data
indices = np.vstack((tmp_coo.row,tmp_coo.col))
i = torch.LongTensor(indices)
v = torch.LongTensor(values)
edge_index=torch.sparse_coo_tensor(i,v,tmp_coo.shape)
print(edge_index)
tensor(indices=tensor([[0, 0, 1, 1, 2, 2, 3],
[0, 1, 1, 3, 2, 3, 0]]),
values=tensor([1, 1, 1, 1, 1, 1, 1]),
size=(4, 4), nnz=7, layout=torch.sparse_coo)

 

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: