tf.debugging.assert_near
Stay organized with collections
Save and categorize content based on your preferences.
Assert the condition x
and y
are close element-wise.
tf.debugging.assert_near(
x, y, rtol=None, atol=None, message=None, summarize=None, name=None
)
This Op checks that x[i] - y[i] < atol + rtol * tf.abs(y[i])
holds for every
pair of (possibly broadcast) elements of x
and y
. If both x
and y
are
empty, this is trivially satisfied.
If any elements of x
and y
are not close, message
, as well as the first
summarize
entries of x
and y
are printed, and InvalidArgumentError
is raised.
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 .
|
message
|
A string to prefix to the default message.
|
summarize
|
Print this many entries of each tensor.
|
name
|
A name for this operation (optional). Defaults to "assert_near".
|
Returns |
Op that raises InvalidArgumentError if x and y are not close enough.
This can be used with tf.control_dependencies inside of tf.function s
to block followup computation until the check has executed.
|
Raises |
InvalidArgumentError
|
if the check can be performed immediately and
x != y is False for any pair of elements in x and y . The check can
be performed immediately during eager execution or if x and y are
statically known.
|
returns None
Similar to numpy.testing.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.
Except as otherwise noted, the content of this page is licensed under the Creative Commons Attribution 4.0 License, and code samples are licensed under the Apache 2.0 License. For details, see the Google Developers Site Policies. Java is a registered trademark of Oracle and/or its affiliates. Some content is licensed under the numpy license.
Last updated 2022-11-04 UTC.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Missing the information I need","missingTheInformationINeed","thumb-down"],["Too complicated / too many steps","tooComplicatedTooManySteps","thumb-down"],["Out of date","outOfDate","thumb-down"],["Samples / code issue","samplesCodeIssue","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2022-11-04 UTC."],[],[]]