Spec-Zone.ru › TensorFlow 2.3

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 = 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, соответствующая структуре элемента этого опционального значения.
Возвращаемое значение
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
)

Возвращает значение, обернутое этим опциональным значением.

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

© 2020 The TensorFlow Authors. All rights reserved.
Licensed under the Creative Commons Attribution License 3.0.
Code samples licensed under the Apache 2.0 License.
https://www.tensorflow.org/versions/r2.3/api_docs/python/tf/experimental/Optional

Spec-Zone.ru

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