hi, assume I have a (m,n) Tensor, say mat.
I would like to have each of its n columns shuffled in a different manner.
a naive implementation would be, mat being the (m,n) Tensor:
res = mat.clone()
for i in range(res.shape[1]):
    ind = torch.randperm(res.shape[0], device=device)
    res[:, i] = res[ind, i]

can I do the same without the for loop in a vectorized manner ?