For example, I want to convert torch.tensor([1,2,3,4,5,6] to torch.tensor([[1,0,0],[2,3,0],[4,5,6]]), what is the most efficient way to do the conversion?
2 Likes
Currently, take tril_indices
from numpy, and use advanced indices to assign to an all zeros matrix.
1 Like
Beside numpy, PyTorch has now implemented tril_indices
.
x = torch.tensor([1., 2., 3., 4., 5., 6.])
m = torch.zeros((3, 3))
tril_indices = torch.tril_indices(row=3, col=3, offset=0)
m[tril_indices[0], tril_indices[1]] = x
6 Likes