View source on GitHub |

Assert the condition `x`

and `y`

are close element-wise.

tf.debugging.assert_near( x, y, rtol=None, atol=None, data=None, summarize=None, message=None, name=None )

Example of adding a dependency to an operation:

with tf.control_dependencies([tf.compat.v1.assert_near(x, y)]): output = tf.reduce_sum(x)

This condition holds if for every pair of (possibly broadcast) elements `x[i]`

, `y[i]`

, we have

If both `x`

and `y`

are empty, this is trivially satisfied.

The default `atol`

and `rtol`

is `10 * eps`

, where `eps`

is the smallest representable positive number such that `1 + eps != 1`

. This is about `1.2e-6`

in `32bit`

, `2.22e-15`

in `64bit`

, and `0.00977`

in `16bit`

. See `numpy.finfo`

.

Args | |
---|---|

`x` | Float or complex `Tensor` . |

`y` | Float or complex `Tensor` , same `dtype` as, and broadcastable to, `x` . |

`rtol` | `Tensor` . Same `dtype` as, and broadcastable to, `x` . The relative tolerance. Default is `10 * eps` . |

`atol` | `Tensor` . Same `dtype` as, and broadcastable to, `x` . The absolute tolerance. Default is `10 * eps` . |

`data` | The tensors to print out if the condition is False. Defaults to error message and first few entries of `x` , `y` . |

`summarize` | Print this many entries of each tensor. |

`message` | A string to prefix to the default message. |

`name` | A name for this operation (optional). Defaults to "assert_near". |

Returns | |
---|---|

Op that raises `InvalidArgumentError` if `x` and `y` are not close enough. |

Similar to `numpy.assert_allclose`

, except tolerance depends on data type. This is due to the fact that `TensorFlow`

is often used with `32bit`

, `64bit`

, and even `16bit`

data.

© 2020 The TensorFlow Authors. All rights reserved.

Licensed under the Creative Commons Attribution License 3.0.

Code samples licensed under the Apache 2.0 License.

https://www.tensorflow.org/versions/r1.15/api_docs/python/tf/debugging/assert_near