maxframe.tensor.isclose#
- maxframe.tensor.isclose(a, b, rtol=1e-05, atol=1e-08, equal_nan=False)[源代码]#
返回一个布尔张量,其中两个张量在给定容差内逐元素相等。
容差值为正数,通常是非常小的数。相对差值(rtol * abs(b))和绝对差值 atol 相加后与 a 和 b 之间的绝对差值进行比较。
- 参数:
- 返回:
y -- 返回一个布尔张量,表示 a 和 b 在给定容差内相等的位置。如果 a 和 b 都是标量,则返回单个布尔值。
- 返回类型:
array_like
参见
备注
对于有限值,isclose 使用以下等式来测试两个浮点值是否相等。
absolute(a - b) <= (atol + rtol * absolute(b))
上述等式在 a 和 b 中不对称,因此在某些罕见情况下 isclose(a, b) 可能与 isclose(b, a) 不同。
示例
>>> import maxframe.tensor as mt
>>> mt.isclose([1e10,1e-7], [1.00001e10,1e-8]).execute() array([True, False]) >>> mt.isclose([1e10,1e-8], [1.00001e10,1e-9]).execute() array([True, True]) >>> mt.isclose([1e10,1e-8], [1.0001e10,1e-9]).execute() array([False, True]) >>> mt.isclose([1.0, mt.nan], [1.0, mt.nan]).execute() array([True, False]) >>> mt.isclose([1.0, mt.nan], [1.0, mt.nan], equal_nan=True).execute() array([True, True])