jax.numpy.finfo#

class jax.numpy.finfo(dtype)#

浮点类型的机器限制。

bits#

该类型占用的位数。

类型:

int

dtype#

返回 finfo 提供信息的 dtype。对于复数输入,返回的 dtype 是其实部和虚部对应的 float* dtype。

类型:

dtype

eps#

1.0 与下一个大于 1.0 的可表示浮点数之间的差值。例如,对于 IEEE-754 标准中的 64 位二进制浮点数,eps = 2**-52,约等于 2.22e-16。

类型:

float

epsneg#

1.0 与下一个小于 1.0 的可表示浮点数之间的差值。例如,对于 IEEE-754 标准中的 64 位二进制浮点数,epsneg = 2**-53,约等于 1.11e-16。

类型:

float

iexp#

浮点表示中指数部分的位数。

类型:

int

machep#

产生 eps 的指数。

类型:

int

max#

可表示的最大数。

类型:

相应类型的浮点数

maxexp#

导致溢出的基数 (2) 的最小正幂。

类型:

int

min#

可表示的最小数,通常为 -max

类型:

相应类型的浮点数

minexp#

与尾数中没有前导零一致的基数 (2) 的最大负幂。

类型:

int

negep#

产生 epsneg 的指数。

类型:

int

nexp#

指数中包括符号和偏差在内的位数。

类型:

int

nmant#

尾数的位数。

类型:

int

precision#

此浮点类型精确到的小数位数近似值。

类型:

int

resolution#

此类型的近似十进制分辨率,即 10**-precision

类型:

相应类型的浮点数

tiny#

smallest_normal 的别名,为向后兼容性保留。

类型:

float

smallest_normal#

遵循 IEEE-754 标准的尾数中以 1 为首位的最小正浮点数(参见注释)。

类型:

float

smallest_subnormal#

遵循 IEEE-754 标准的尾数中以 0 为首位的最小正浮点数。

类型:

float

参数:

dtype (float, dtype, 或 实例) – 要获取信息的浮点或复数浮点数据类型。

另请参阅

iinfo

整数数据类型的等效项。

spacing

一个值与最近的相邻数之间的距离

nextafter

x1 朝 x2 方向的下一个浮点值

注意事项

对于 NumPy 开发者:请勿在模块级别实例化此对象。这些参数的初始计算开销很大,会对导入时间产生负面影响。这些对象是缓存的,因此在您的函数内部重复调用 finfo() 不是问题。

请注意,smallest_normal 实际上并非 NumPy 浮点类型中可表示的最小正值。根据 IEEE-754 标准 [1],NumPy 浮点类型使用次正规数来填补 0 和 smallest_normal 之间的空白。然而,次正规数可能会显著降低精度 [2]

此函数也可用于复数数据类型。如果使用,其输出将与相应的实浮点类型相同(例如,numpy.finfo(numpy.csingle) 与 numpy.finfo(numpy.single) 相同)。然而,该输出对于实部和虚部都是成立的。

参考文献

示例

>>> import numpy as np
>>> np.finfo(np.float64).dtype
dtype('float64')
>>> np.finfo(np.complex64).dtype
dtype('float32')
__init__()#

方法

__init__()

属性

smallest_normal

返回最小正规数的值。

tiny

返回 tiny 的值,它是 smallest_normal 的别名。