【问题标题】:How to multiply a sparse matrix by a sparse matrix element-wise in pytorch如何在pytorch中将稀疏矩阵乘以稀疏矩阵元素
【发布时间】:2021-02-18 10:01:27
【问题描述】:

在pytorch中,我可以通过先将它们变成密集形式来实现两个稀疏矩阵的乘法

adjdense = torch.sparse.FloatTensor(indextmp, valuetmp, torch.Size([num_nodes,num_nodes])).to_dense()
mask_dense = torch.sparse.FloatTensor(edge_index, edge_mask_list[k], torch.Size([num_nodes,num_nodes])).to_dense()
gdcdense = adjdense * mask_dense

但是当图形很大时,这种方法需要大量的内存。 因此,如何在 pytorch 中将稀疏矩阵乘以稀疏矩阵元素? 非常感谢。

【问题讨论】:

  • 稀疏张量上的mul 对你不起作用吗?

标签: python sparse-matrix elementwise-operations


【解决方案1】:

感谢您的模拟。 我知道该怎么做。

adjsparse = torch.sparse.FloatTensor(indextmp, valuetmp, torch.Size([num_nodes,num_nodes])) maskparse = torch.sparse.FloatTensor(edge_index, edge_mask_list[k],torch.Size([num_nodes,num_nodes]))

结果 = adjsparse.mul(masksparse)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-01-19
    • 2017-07-20
    • 2014-03-06
    • 2017-04-16
    • 1970-01-01
    相关资源
    最近更新 更多