jax.numpy.finfo#

class jax.numpy.finfo(dtype)[source]#

浮点类型的机器限制。

bits#

类型占用的位数。

类型:

int

dtype#

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

类型:

dtype

eps#

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

类型:

浮点数

epsneg#

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

类型:

浮点数

iexp#

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

类型:

int

machep#

产生 eps 的指数。

类型:

int

max#

可表示的最大数。

类型:

相应类型的浮点数

maxexp#

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

类型:

int

min#

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

类型:

相应类型的浮点数

minexp#

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

类型:

int

negep#

产生 epsneg 的指数。

类型:

int

nexp#

指数(包括其符号和偏差)的位数。

类型:

int

nmant#

尾数的位数。

类型:

int

precision#

此类浮点数精确到的十进制位数的近似值。

类型:

int

resolution#

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

类型:

相应类型的浮点数

tiny[source]#

为了向后兼容而保留的 smallest_normal 的别名。

类型:

浮点数

smallest_normal[source]#

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

类型:

浮点数

smallest_subnormal#

尾数中以 0 为前导位的最小正浮点数,遵循 IEEE-754。

类型:

浮点数

参数:

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__()#

方法

属性

smallest_normal

返回最小正规数的值。

tiny

返回 tiny 的值,smallest_normal 的别名。