Asserts and boolean checks.
[TOC]
Asserts and Boolean Checks
tf.assert_negative(x, data=None, summarize=None, message=None, name=None)
Assert the condition x < 0 holds element-wise.
Example of adding a dependency to an operation:
with tf.control_dependencies([tf.assert_negative(x)]):
output = tf.reduce_sum(x)
Example of adding dependency to the tensor being checked:
x = tf.with_dependencies([tf.assert_negative(x)], x)
Negative means, for every element x[i] of x, we have x[i] < 0.
If x is empty this is trivially satisfied.
Args:
x: NumericTensor.data: The tensors to print out if the condition is False. Defaults to error message and first few entries ofx.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_negative".
Returns:
Op raising InvalidArgumentError unless x is all negative.
tf.assert_positive(x, data=None, summarize=None, message=None, name=None)
Assert the condition x > 0 holds element-wise.
Example of adding a dependency to an operation:
with tf.control_dependencies([tf.assert_positive(x)]):
output = tf.reduce_sum(x)
Example of adding dependency to the tensor being checked:
x = tf.with_dependencies([tf.assert_positive(x)], x)
Positive means, for every element x[i] of x, we have x[i] > 0.
If x is empty this is trivially satisfied.
Args:
x: NumericTensor.data: The tensors to print out if the condition is False. Defaults to error message and first few entries ofx.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_positive".
Returns:
Op raising InvalidArgumentError unless x is all positive.
tf.assert_proper_iterable(values)
Static assert that values is a "proper" iterable.
Ops that expect iterables of Tensor can call this to validate input.
Useful since Tensor, ndarray, byte/text type are all iterables themselves.
Args:
values: Object to be checked.
Raises:
TypeError: Ifvaluesis not iterable or is one ofTensor,SparseTensor,np.array,tf.compat.bytes_or_text_types.
tf.assert_non_negative(x, data=None, summarize=None, message=None, name=None)
Assert the condition x >= 0 holds element-wise.
Example of adding a dependency to an operation:
with tf.control_dependencies([tf.assert_non_negative(x)]):
output = tf.reduce_sum(x)
Example of adding dependency to the tensor being checked:
x = tf.with_dependencies([tf.assert_non_negative(x)], x)
Non-negative means, for every element x[i] of x, we have x[i] >= 0.
If x is empty this is trivially satisfied.
Args:
x: NumericTensor.data: The tensors to print out if the condition is False. Defaults to error message and first few entries ofx.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_non_negative".
Returns:
Op raising InvalidArgumentError unless x is all non-negative.
tf.assert_non_positive(x, data=None, summarize=None, message=None, name=None)
Assert the condition x <= 0 holds element-wise.
Example of adding a dependency to an operation:
with tf.control_dependencies([tf.assert_non_positive(x)]):
output = tf.reduce_sum(x)
Example of adding dependency to the tensor being checked:
x = tf.with_dependencies([tf.assert_non_positive(x)], x)
Non-positive means, for every element x[i] of x, we have x[i] <= 0.
If x is empty this is trivially satisfied.
Args:
x: NumericTensor.data: The tensors to print out if the condition is False. Defaults to error message and first few entries ofx.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_non_positive".
Returns:
Op raising InvalidArgumentError unless x is all non-positive.
tf.assert_equal(x, y, data=None, summarize=None, message=None, name=None)
Assert the condition x == y holds element-wise.
Example of adding a dependency to an operation:
with tf.control_dependencies([tf.assert_equal(x, y)]):
output = tf.reduce_sum(x)
Example of adding dependency to the tensor being checked:
x = tf.with_dependencies([tf.assert_equal(x, y)], x)
This condition holds if for every pair of (possibly broadcast) elements
x[i], y[i], we have x[i] == y[i].
If both x and y are empty, this is trivially satisfied.
Args:
x: NumericTensor.y: NumericTensor, same dtype as and broadcastable tox.data: The tensors to print out if the condition is False. Defaults to error message and first few entries ofx,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_equal".
Returns:
Op that raises InvalidArgumentError if x == y is False.
tf.assert_integer(x, message=None, name=None)
Assert that x is of integer dtype.
Example of adding a dependency to an operation:
with tf.control_dependencies([tf.assert_integer(x)]):
output = tf.reduce_sum(x)
Example of adding dependency to the tensor being checked:
x = tf.with_dependencies([tf.assert_integer(x)], x)
Args:
x:Tensorwhose basetype is integer and is not quantized.message: A string to prefix to the default message.name: A name for this operation (optional). Defaults to "assert_integer".
Raises:
TypeError: Ifx.dtypeis anything other than non-quantized integer.
Returns:
A no_op that does nothing. Type can be determined statically.
tf.assert_less(x, y, data=None, summarize=None, message=None, name=None)
Assert the condition x < y holds element-wise.
Example of adding a dependency to an operation:
with tf.control_dependencies([tf.assert_less(x, y)]):
output = tf.reduce_sum(x)
Example of adding dependency to the tensor being checked:
x = tf.with_dependencies([tf.assert_less(x, y)], x)
This condition holds if for every pair of (possibly broadcast) elements
x[i], y[i], we have x[i] < y[i].
If both x and y are empty, this is trivially satisfied.
Args:
x: NumericTensor.y: NumericTensor, same dtype as and broadcastable tox.data: The tensors to print out if the condition is False. Defaults to error message and first few entries ofx,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_less".
Returns:
Op that raises InvalidArgumentError if x < y is False.
tf.assert_less_equal(x, y, data=None, summarize=None, message=None, name=None)
Assert the condition x <= y holds element-wise.
Example of adding a dependency to an operation:
with tf.control_dependencies([tf.assert_less_equal(x, y)]):
output = tf.reduce_sum(x)
Example of adding dependency to the tensor being checked:
x = tf.with_dependencies([tf.assert_less_equal(x, y)], x)
This condition holds if for every pair of (possibly broadcast) elements
x[i], y[i], we have x[i] <= y[i].
If both x and y are empty, this is trivially satisfied.
Args:
x: NumericTensor.y: NumericTensor, same dtype as and broadcastable tox.data: The tensors to print out if the condition is False. Defaults to error message and first few entries ofx,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_less_equal"
Returns:
Op that raises InvalidArgumentError if x <= y is False.
tf.assert_greater(x, y, data=None, summarize=None, message=None, name=None)
Assert the condition x > y holds element-wise.
Example of adding a dependency to an operation:
with tf.control_dependencies([tf.assert_greater(x, y)]):
output = tf.reduce_sum(x)
Example of adding dependency to the tensor being checked:
x = tf.with_dependencies([tf.assert_greater(x, y)], x)
This condition holds if for every pair of (possibly broadcast) elements
x[i], y[i], we have x[i] > y[i].
If both x and y are empty, this is trivially satisfied.
Args:
x: NumericTensor.y: NumericTensor, same dtype as and broadcastable tox.data: The tensors to print out if the condition is False. Defaults to error message and first few entries ofx,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_greater".
Returns:
Op that raises InvalidArgumentError if x > y is False.
tf.assert_greater_equal(x, y, data=None, summarize=None, message=None, name=None)
Assert the condition x >= y holds element-wise.
Example of adding a dependency to an operation:
with tf.control_dependencies([tf.assert_greater_equal(x, y)]):
output = tf.reduce_sum(x)
Example of adding dependency to the tensor being checked:
x = tf.with_dependencies([tf.assert_greater_equal(x, y)], x)
This condition holds if for every pair of (possibly broadcast) elements
x[i], y[i], we have x[i] >= y[i].
If both x and y are empty, this is trivially satisfied.
Args:
x: NumericTensor.y: NumericTensor, same dtype as and broadcastable tox.data: The tensors to print out if the condition is False. Defaults to error message and first few entries ofx,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_greater_equal"
Returns:
Op that raises InvalidArgumentError if x >= y is False.
tf.assert_rank(x, rank, data=None, summarize=None, message=None, name=None)
Assert x has rank equal to rank.
Example of adding a dependency to an operation:
with tf.control_dependencies([tf.assert_rank(x, 2)]):
output = tf.reduce_sum(x)
Example of adding dependency to the tensor being checked:
x = tf.with_dependencies([tf.assert_rank(x, 2)], x)
Args:
x: NumericTensor.rank: Scalar integerTensor.data: The tensors to print out if the condition is False. Defaults to error message and first few entries ofx.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_rank".
Returns:
Op raising InvalidArgumentError unless x has specified rank.
If static checks determine x has correct rank, a no_op is returned.
Raises:
ValueError: If static checks determinexhas wrong rank.
tf.assert_rank_at_least(x, rank, data=None, summarize=None, message=None, name=None)
Assert x has rank equal to rank or higher.
Example of adding a dependency to an operation:
with tf.control_dependencies([tf.assert_rank_at_least(x, 2)]):
output = tf.reduce_sum(x)
Example of adding dependency to the tensor being checked:
x = tf.with_dependencies([tf.assert_rank_at_least(x, 2)], x)
Args:
x: NumericTensor.rank: ScalarTensor.data: The tensors to print out if the condition is False. Defaults to error message and first few entries ofx.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_rank_at_least".
Returns:
Op raising InvalidArgumentError unless x has specified rank or higher.
If static checks determine x has correct rank, a no_op is returned.
Raises:
ValueError: If static checks determinexhas wrong rank.
tf.assert_type(tensor, tf_type, message=None, name=None)
Statically asserts that the given Tensor is of the specified type.
Args:
tensor: A tensorflowTensor.tf_type: A tensorflow type (dtypes.float32,tf.int64,dtypes.bool, etc).message: A string to prefix to the default message.name: A name to give thisOp. Defaults to "assert_type"
Raises:
TypeError: If the tensors data type doesn't matchtf_type.
Returns:
A no_op that does nothing. Type can be determined statically.
tf.is_non_decreasing(x, name=None)
Returns True if x is non-decreasing.
Elements of x are compared in row-major order. The tensor [x[0],...]
is non-decreasing if for every adjacent pair we have x[i] <= x[i+1].
If x has less than two elements, it is trivially non-decreasing.
See also: is_strictly_increasing
Args:
x: NumericTensor.name: A name for this operation (optional). Defaults to "is_non_decreasing"
Returns:
Boolean Tensor, equal to True iff x is non-decreasing.
Raises:
TypeError: ifxis not a numeric tensor.
tf.is_numeric_tensor(tensor)
tf.is_strictly_increasing(x, name=None)
Returns True if x is strictly increasing.
Elements of x are compared in row-major order. The tensor [x[0],...]
is strictly increasing if for every adjacent pair we have x[i] < x[i+1].
If x has less than two elements, it is trivially strictly increasing.
See also: is_non_decreasing
Args:
x: NumericTensor.name: A name for this operation (optional). Defaults to "is_strictly_increasing"
Returns:
Boolean Tensor, equal to True iff x is strictly increasing.
Raises:
TypeError: ifxis not a numeric tensor.