PyTorch torch.frexp 函数
torch.frexp 是 PyTorch 中用于将浮点数分解为尾数(mantissa)和指数(exponent)的函数。
函数定义
torch.frexp(input)
返回两个张量:
- mantissa - 尾数部分,范围在 [-0.5, 1)
- exponent - 指数部分,为整数
使用示例
实例
import torch
# 创建浮点数张量
x = torch.tensor([8.0, 4.5, 2.0])
# 分解为尾数和指数
mantissa, exponent = torch.frexp(x)
print("尾数:", mantissa)
print("指数:", exponent)
# 验证: x = mantissa * 2^exponent
print("验证:", mantissa * 2 ** exponent)
# 创建浮点数张量
x = torch.tensor([8.0, 4.5, 2.0])
# 分解为尾数和指数
mantissa, exponent = torch.frexp(x)
print("尾数:", mantissa)
print("指数:", exponent)
# 验证: x = mantissa * 2^exponent
print("验证:", mantissa * 2 ** exponent)
输出结果为:
尾数: tensor([0.5000, 0.5625, 0.5000]) 指数: tensor([4, 3, 2]) 验证: tensor([8., 4.5, 2.])

Pytorch torch 参考手册