評價此頁

torch.allclose#

torch.allclose(input: Tensor, other: Tensor, rtol: float = 1e-05, atol: float = 1e-08, equal_nan: bool = False) bool#

此函式檢查 inputother 是否滿足以下條件:

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

逐元素地,對於 inputother 的所有元素。此函式行為類似於 numpy.allclose

引數
  • input (Tensor) – 第一個要比較的張量

  • other (Tensor) – 第二個要比較的張量

  • atol (float, optional) – 絕對容差。預設值:1e-08

  • rtol (float, optional) – 相對容差。預設值:1e-05

  • equal_nan (bool, optional) – 如果為 True,則兩個 NaN 將被視為相等。預設值:False

示例

>>> torch.allclose(torch.tensor([10000., 1e-07]), torch.tensor([10000.1, 1e-08]))
False
>>> torch.allclose(torch.tensor([10000., 1e-08]), torch.tensor([10000.1, 1e-09]))
True
>>> torch.allclose(torch.tensor([1.0, float('nan')]), torch.tensor([1.0, float('nan')]))
False
>>> torch.allclose(torch.tensor([1.0, float('nan')]), torch.tensor([1.0, float('nan')]), equal_nan=True)
True