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。

类型:

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) 的最负幂,与尾数中没有前导 0 一致。

类型:

int

negep#

产生 epsneg 的指数。

类型:

int

nexp#

指数中的位数,包括其符号和偏差。

类型:

int

nmant#

尾数中的位数。

类型:

int

precision#

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

类型:

int

resolution#

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

类型:

适当类型的浮点数

tiny[source]#

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

类型:

float

smallest_normal[source]#

最小的正浮点数,在 IEEE-754 之后,尾数中的前导位为 1(参见 Notes)。

类型:

float

smallest_subnormal#

最小的正浮点数,在 IEEE-754 之后,尾数中的前导位为 0。

类型:

float

参数:

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

另请参阅

iinfo

整数数据类型的等效项。

spacing

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

nextafter

x1 之后朝向 x2 的下一个浮点值

Notes

对于 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 的别名。