Spec-Zone.ru › TensorFlow

tf.experimental.dispatch_for_binary_elementwise_assert_apis

Декоратор для переопределения стандартной реализации бинарных операций проверки элементов.

Просмотры псевдонимов

Псевдонимы совместимости для миграции

См. Руководство по миграции для получения более подробной информации.

tf.compat.v1.experimental.dispatch_for_binary_elementwise_assert_apis

tf.experimental.dispatch_for_binary_elementwise_assert_apis(
    x_type, y_type
)

Декорируемая функция (известная как "обработчик проверки элементов") переопределяет стандартную реализацию любой бинарной операции проверки элементов, когда значения первых двух аргументов (обычно называемых x и y) соответствуют указанным аннотациям типов. Обработчик вызывается с двумя аргументами:

elementwise_assert_handler(assert_func, x, y)

Где x и y — первые два аргумента бинарной операции проверки элементов, а assert_func — функция TensorFlow, которая принимает два параметра и выполняет операцию проверки элементов (например, tf.debugging.assert_equal).

Следующий пример демонстрирует, как этот декоратор можно использовать для обновления всех бинарных операций проверки элементов для обработки типа MaskedTensor:

class MaskedTensor(tf.experimental.ExtensionType):
  values: tf.Tensor
  mask: tf.Tensor
@dispatch_for_binary_elementwise_assert_apis(MaskedTensor, MaskedTensor)
def binary_elementwise_assert_api_handler(assert_func, x, y):
  merged_mask = tf.logical_and(x.mask, y.mask)
  selected_x_values = tf.boolean_mask(x.values, merged_mask)
  selected_y_values = tf.boolean_mask(y.values, merged_mask)
  assert_func(selected_x_values, selected_y_values)
a = MaskedTensor([1, 1, 0, 1, 1], [False, False, True, True, True])
b = MaskedTensor([2, 2, 0, 2, 2], [True, True, True, False, False])
tf.debugging.assert_equal(a, b) # assert passed; no exception was thrown
a = MaskedTensor([1, 1, 1, 1, 1], [True, True, True, True, True])
b = MaskedTensor([0, 0, 0, 0, 2], [True, True, True, True, True])
tf.debugging.assert_greater(a, b)
Traceback (most recent call last):

InvalidArgumentError: Condition x > y did not hold.
Аргументы
x_type Аннотация типа, указывающая, когда следует вызвать обработчик api.
y_type Аннотация типа, указывающая, когда следует вызвать обработчик api.
Возвращаемое значение
Декоратор.

Зарегистрированные API

Бинарные API проверки элементов:

<>

© 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/experimental/dispatch_for_binary_elementwise_assert_apis

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API