scipy的稠密矩阵转为pytorch的稀疏矩阵

转换方法

cipy稠密矩阵转换为scipy的稀疏矩阵方法为scipy.sparse,scipy的稀疏矩阵转为稠密矩阵的方法,直接.todense()
pytorch的稀疏矩阵转为稠密矩阵.to_dense(),稠密矩阵转稀疏矩阵torch.sparse.FloatTensor(i, v, coo.shape)

代码

   def _convert_sp_mat_to_sp_tensor(self, X):
        # scipy稠密矩阵转换为scipy的稀疏矩阵方法为scipy.sparse,scipy的稀疏矩阵转为稠密矩阵的方法,直接.todense()
        # pytorch的稀疏矩阵转为稠密矩阵.to_dense(),稠密矩阵转稀疏矩阵torch.sparse.FloatTensor(i, v, coo.shape)
        coo = X.tocoo()
        i = torch.LongTensor([coo.row, coo.col])
        v = torch.from_numpy(coo.data).float()
        return torch.sparse.FloatTensor(i, v, coo.shape)

你可能感兴趣的:(图神经网络,pytorch,矩阵,深度学习)