如何将 PyTorch sparse_coo_tensor 转换为 PyTorch 稠密张量?

How to convert a PyTorch sparse_coo_tensor into a PyTorch dense tensor?

我在 PyTorch 中创建了一个 sparse_coo 张量:

import torch

# create indices
i = torch.tensor([[0, 1, 1],
                  [2, 0, 2]])
# create values
v = torch.tensor([3, 4, 5], dtype=torch.float32)

# create sparse_coo_tensor
sparse_tensor = torch.sparse_coo_tensor(i, v, [2, 4])

现在我想将 PyTorch 稀疏张量转换为 PyTorch 密集张量。可以使用哪个功能?

您可以按照 this example 中的建议使用 to_dense :

s = torch.sparse_coo_tensor(i, v, [2, 4])
s_dense = s.to_dense()

顺便说一下,文档是 here