torch.isclose

torch.isclose(input, other, rtol=1e-05, atol=1e-08, equal_nan=False) → Tensor

Returns a new tensor with boolean elements representing if each element of input is “close” to the corresponding element of other. Closeness is defined as:

inputotheratol+rtol×other\lvert \text{input} - \text{other} \rvert \leq \texttt{atol} + \texttt{rtol} \times \lvert \text{other} \rvert

where input and other are finite. Where input and/or other are nonfinite they are close if and only if they are equal, with NaNs being considered equal to each other when equal_nan is True.

Parameters
  • input (Tensor) – first tensor to compare
  • other (Tensor) – second tensor to compare
  • atol (float, optional) – absolute tolerance. Default: 1e-08
  • rtol (float, optional) – relative tolerance. Default: 1e-05
  • equal_nan (bool, optional) – if True, then two NaN s will be considered equal. Default: False

Examples:

>>> torch.isclose(torch.tensor((1., 2, 3)), torch.tensor((1 + 1e-10, 3, 4)))
tensor([ True, False, False])
>>> torch.isclose(torch.tensor((float('inf'), 4)), torch.tensor((float('inf'), 6)), rtol=.5)
tensor([True, True])

© 2019 Torch Contributors
Licensed under the 3-clause BSD License.
https://pytorch.org/docs/1.8.0/generated/torch.isclose.html