Spec-Zone.ru › TensorFlow

tf.experimental.Optional

Представляет значение, которое может присутствовать или отсутствовать.

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

Основные псевдонимы

tf.data.experimental.Optional

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

Подробнее см. в руководстве по миграции.

tf.compat.v1.data.experimental.Optional, tf.compat.v1.experimental.Optional

tf.experimental.Optional может представлять результат операции, которая может завершиться с ошибкой, в виде значения, вместо того чтобы вызывать исключение и останавливать выполнение. Например, tf.data.Iterator.get_next_as_optional() возвращает tf.experimental.Optional, содержащий следующий элемент итератора, если он есть, либо «пустое» значение, указывающее на достижение конца последовательности.

tf.experimental.Optional можно использовать только со значениями, преобразуемыми в tf.Tensor или tf.CompositeTensor.

Создать tf.experimental.Optional из значения можно с помощью метода from_value():

optional = tf.experimental.Optional.from_value(42)
print(optional.has_value())
tf.Tensor(True, shape=(), dtype=bool)
print(optional.get_value())
tf.Tensor(42, shape=(), dtype=int32)

или без значения с помощью метода empty():

optional = tf.experimental.Optional.empty(
  tf.TensorSpec(shape=(), dtype=tf.int32, name=None))
print(optional.has_value())
tf.Tensor(False, shape=(), dtype=bool)
Атрибуты
element_spec Спецификация типа элемента этого объекта optional.
optional = tf.experimental.Optional.from_value(42)
print(optional.element_spec)
tf.TensorSpec(shape=(), dtype=tf.int32, name=None)

Методы

empty

Просмотреть исходный код

@staticmethod
empty(
    element_spec
)

Возвращает Optional без значения.

Примечание: Этот метод принимает аргумент, задающий структуру значения, которое содержалось бы в возвращаемом Optional, если бы оно имело значение.
optional = tf.experimental.Optional.empty(
  tf.TensorSpec(shape=(), dtype=tf.int32, name=None))
print(optional.has_value())
tf.Tensor(False, shape=(), dtype=bool)
Аргументы
element_spec (Вложенная) структура объектов tf.TypeSpec, соответствующая структуре элемента этого объекта optional.
Возвращает
tf.experimental.Optional без значения.

from_value

Просмотреть исходный код

@staticmethod
from_value(
    value
)

Возвращает tf.experimental.Optional, содержащий указанное значение.

optional = tf.experimental.Optional.from_value(42)
print(optional.has_value())
tf.Tensor(True, shape=(), dtype=bool)
print(optional.get_value())
tf.Tensor(42, shape=(), dtype=int32)
Аргументы
value Значение, которое нужно обернуть. Значение должно преобразовываться в tf.Tensor или tf.CompositeTensor.
Возвращает
tf.experimental.Optional, содержащий value.

get_value

Просмотреть исходный код

@abc.abstractmethod
get_value(
    name=None
)

Возвращает значение, содержащееся в этом объекте optional.

Если этот объект optional не содержит значения (то есть self.has_value() имеет значение False), во время выполнения эта операция вызовет tf.errors.InvalidArgumentError.

optional = tf.experimental.Optional.from_value(42)
print(optional.get_value())
tf.Tensor(42, shape=(), dtype=int32)
Аргументы
name (Необязательно.) Имя создаваемой операции.
Возвращает
Содержащееся значение.

has_value

Просмотреть исходный код

@abc.abstractmethod
has_value(
    name=None
)

Возвращает тензор, значение которого равно True, если этот объект optional содержит значение.

optional = tf.experimental.Optional.from_value(42)
print(optional.has_value())
tf.Tensor(True, shape=(), dtype=bool)
Аргументы
name (Необязательно.) Имя создаваемой операции.
Возвращает
Скалярный tf.Tensor типа tf.bool.

© 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/Optional

Spec-Zone.ru

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