Как преобразовать PyTorch sparse_coo_tensor в PyTorch плотный тензор?

#python #pytorch #sparse-matrix #tensor #torch

#python #pytorch #разреженная матрица #тензор #факел

Вопрос:

Я создаю тензор sparse_coo в PyTorch:

 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 плотный тензор. Какую функцию можно использовать?

Ответ №1:

вы можете использовать to_dense , как предложено в этом примере :

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

И, кстати, документация здесь