torch.pow () возвращает nan, когда ему дан аргумент экспоненты в диапазоне от -1 до 1
a = torch.randn(1,3)
a
>> tensor([[-1.7871, -0.5375, -0.1164]])
torch.pow(a, 2) #or a**2
>> tensor([[3.1938, 0.2889, 0.0136]])
torch.pow(a,0.5) #or a**0.5
>> tensor([[nan, nan, nan]])
ожидаемый результат:
tensor([[-1.3368, -0.7331, -0.3412]])
Редактировать: получается, что **работает так же, как. a**2
делает то же самое с тензором, что и torch.pow(a,2)
. a**0.5
возвращает nan как torch.pow.