torch.float_power¶
- torch.float_power(input, exponent, *, out=None) 张量 ¶
将
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)