tf.debugging.assert_less
Проверяет, что условие x < y выполняется поэлементно.
tf.debugging.assert_less(
x, y, message=None, summarize=None, name=None
)
Эта операция проверяет, что x[i] < y[i] выполняется для каждой пары (возможно, транслируемых с помощью broadcasting) элементов x и y. Если и x, и y пусты, условие выполняется тривиальным образом.
Если условие x < y не выполняется, выводятся message, а также первые summarize элементов x и y, после чего вызывается исключение InvalidArgumentError.
При использовании внутри tf.function этот API действует во время выполнения. Рекомендуется использовать этот API вместе с tf.control_dependencies, чтобы обеспечить правильный порядок выполнения.
В следующем примере без tf.control_dependencies исключения могут вообще не возникнуть. Дополнительные сведения см. в разделе tf.control_dependencies.
def check_size(x):
with tf.control_dependencies([
tf.debugging.assert_less(tf.size(x), 3,
message='Bad tensor size')]):
return xcheck_size(tf.ones([2, 3], tf.float32)) Traceback (most recent call last): InvalidArgumentError: ...
| Аргументы | |
|---|---|
x | Числовой Tensor. |
y | Числовой Tensor того же типа данных, что и x, допускающий broadcasting к его форме. |
message | Строка, добавляемая перед сообщением по умолчанию. (необязательно) |
summarize | Количество элементов каждого тензора, которые нужно вывести. (необязательно) |
name | Имя этой операции (необязательно). По умолчанию — "assert_less". |
| Возвращает | |
|---|---|
Операцию, вызывающую InvalidArgumentError, если x < y имеет значение False. Ее можно использовать с tf.control_dependencies внутри функций tf.function, чтобы приостановить последующие вычисления до выполнения проверки. |
| Исключения | |
|---|---|
InvalidArgumentError | если проверку можно выполнить немедленно и x == y имеет значение False. Проверку можно выполнить немедленно при eager-выполнении или если x и y известны статически. |
Совместимость с eager-выполнением
возвращает None
© 2022 The TensorFlow Authors. All rights reserved.
Licensed under the Creative Commons Attribution License 4.0.
Code samples licensed under the Apache 2.0 License.
https://www.tensorflow.org/api_docs/python/tf/debugging/assert_less