Это похоже на ошибку, вероятно, в связи с тем, что pytorch связывает **
с __rpow__
или __pow__
.
Например, если вы попытались 0.9 - torch.tensor(2)
, поскольку 0,9 не является тензором, это интерпретируется как torch.tensor(2).__rsub__(0.9)
, что работает правильно. **
ведет себя так же, но torch.tensor(2).__rpow__(0.9)
некорректно возвращает tensor(0)
с dtype int64.
Тем временем вы можете использовать torch.tensor(0.9) ** torch.tensor(2)
.
Подана ошибка: https://github.com/pytorch/pytorch/issues/32436