tf.debugging.assert_none_equal
Проверяет поэлементное выполнение условия x != y.
tf.debugging.assert_none_equal(
x, y, summarize=None, message=None, name=None
)
Эта операция проверяет, что x[i] != y[i] выполняется для каждой пары (возможно, транслируемых) элементов 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_none_equal(tf.size(x), 6,
message='Bad tensor size')]):
return xcheck_size(tf.ones([2, 3], tf.float32)) Traceback (most recent call last): InvalidArgumentError: ...
| Аргументы | |
|---|---|
x | Числовой Tensor. |
y | Числовой Tensor с тем же типом данных, что и у x, который можно транслировать к его форме. |
message | Строка, добавляемая перед сообщением по умолчанию. (необязательно) |
summarize | Количество элементов каждого тензора, которые нужно вывести. (необязательно) |
name | Имя этой операции (необязательно). По умолчанию — "assert_none_equal". |
| Возвращает | |
|---|---|
Операцию, которая вызывает исключение 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_none_equal