Hi everyone,
I’ve been following the torch.det(x) example here. Yet, I get the following error and I can’t seem to find a solution online. My code is below,
>>> import torch
>>> A = torch.randn(3,3) #initialise tensor (array) of size 3,3
>>> torch.det(A) #calc determinant
tensor(0.4273)
>>>
>>> A = torch.randn(3,2,2) #initialise tensor (array) of 3,2,2
>>> A
tensor([[[-0.6285, -0.2763],
[-0.8588, 1.3266]],
[[ 1.3004, -0.7479],
[-1.1130, -0.2943]],
[[-1.6380, -1.3417],
[-0.0915, 0.8072]]])
>>> A.det() #calculate determinant along axis 0 (i.e. calc determinant for [i,:,:])
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
RuntimeError: det(torch.FloatTensor{[3, 2, 2]}): expected a 2D square tensor of floating types
>>> torch.det(A)
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
RuntimeError: det(torch.FloatTensor{[3, 2, 2]}): expected a 2D square tensor of floating types
This is the same as the example in the link above, yet I get an error? I assume it might be a version issue? (I’ve copied the example from link below for completeness)
>>> A = torch.randn(3, 3)
>>> torch.det(A)
tensor(3.7641)
>>> A = torch.randn(3, 2, 2)
>>> A
tensor([[[ 0.9254, -0.6213],
[-0.5787, 1.6843]],
[[ 0.3242, -0.9665],
[ 0.4539, -0.0887]],
[[ 1.1336, -0.4025],
[-0.7089, 0.9032]]])
>>> A.det()
tensor([1.1990, 0.4099, 0.7386])
Versions for my code are: PyTorch version: 1.1.0 with py3.7_cuda10.0.130_cudnn7.5.1_0
Thank you in advance!