torch.float_power¶
- torch.float_power(input, exponent, *, out=None) Tensor ¶
将
input
提升到exponent
的幂,按元素计算,以双精度形式。如果输入都不是复数,则返回一个torch.float64
张量,如果一个或多个输入是复数,则返回一个torch.complex128
张量。注意
此函数始终以双精度形式进行计算,与
torch.pow()
不同,后者实现了更典型的 类型提升。这在需要以更宽或更精确的 dtype 进行计算时很有用,或者计算结果可能包含输入 dtype 中无法表示的分数值,例如当整数基数被提升到负整数指数时。示例
>>> a = torch.randint(10, (4,)) >>> a tensor([6, 4, 7, 1]) >>> torch.float_power(a, 2) tensor([36., 16., 49., 1.], dtype=torch.float64) >>> a = torch.arange(1, 5) >>> a tensor([ 1, 2, 3, 4]) >>> exp = torch.tensor([2, -3, 4, -5]) >>> exp tensor([ 2, -3, 4, -5]) >>> torch.float_power(a, exp) tensor([1.0000e+00, 1.2500e-01, 8.1000e+01, 9.7656e-04], dtype=torch.float64)