tf.OptionalSpec
| Просмотреть исходный код на GitHub |
Спецификация типа для tf.experimental.Optional.
Наследуется от: TypeSpec, TraceType
tf.OptionalSpec(
element_spec
)
Например, tf.OptionalSpec можно использовать для определения tf.function, принимающего tf.experimental.Optional в качестве входного аргумента:
@tf.function(input_signature=[tf.OptionalSpec(
tf.TensorSpec(shape=(), dtype=tf.int32, name=None))])
def maybe_square(optional):
if optional.has_value():
x = optional.get_value()
return x * x
return -1
optional = tf.experimental.Optional.from_value(5)
print(maybe_square(optional))
tf.Tensor(25, shape=(), dtype=int32)
| Атрибуты | |
|---|---|
element_spec | Структура (вложенная) объектов TypeSpec, представляющая спецификацию типа необязательного элемента. |
value_type | Тип Python для значений, совместимых с этим TypeSpec. В частности, все значения, совместимые с этим TypeSpec, должны быть экземплярами этого типа. |
Методы
from_value
@staticmethod
from_value(
value
)
is_compatible_with
is_compatible_with(
spec_or_value
)
Возвращает true, если spec_or_value совместимо с этим TypeSpec.
Предпочтительно использовать "is_subtype_of" и "most_specific_common_supertype" всякий раз, когда это возможно.
| Аргументы | |
|---|---|
spec_or_value | TypeSpec или значение, связанное с TypeSpec, для сравнения. |
is_subtype_of
is_subtype_of(
other: tf.types.experimental.TraceType
) -> bool
Возвращает True, если self является подтипом other.
Реализует интерфейс tf.types.experimental.func.TraceType.
Если не переопределено подклассом, по умолчанию предполагается, что TypeSpec является ковариантным для атрибутов, реализующих TraceType, и инвариантным для остальных атрибутов, а также структуры и типа TypeSpec.
| Аргументы | |
|---|---|
other | Объект TraceType. |
most_specific_common_supertype
most_specific_common_supertype(
others: Sequence[tf.types.experimental.TraceType]
) -> Optional['TypeSpec']
Возвращает наиболее конкретный супертип TypeSpec для self и others.
Реализует интерфейс tf.types.experimental.func.TraceType.
Если не переопределено подклассом, по умолчанию предполагается, что TypeSpec является ковариантным для атрибутов, реализующих TraceType, и инвариантным для остальных атрибутов, а также структуры и типа TypeSpec.
| Аргументы | |
|---|---|
others | Последовательность TraceType. |
most_specific_compatible_type
most_specific_compatible_type(
other: 'TypeSpec'
) -> 'TypeSpec'
Возвращает наиболее конкретный TypeSpec, совместимый с self и other. (устарело)
Устарело. Пожалуйста, используйте most_specific_common_supertype вместо этого. Не переопределяйте эту функцию.
| Аргументы | |
|---|---|
other | TypeSpec. |
| Исключения | |
|---|---|
ValueError | Если нет TypeSpec, который совместим с self и other. |
__eq__
__eq__(
other
) -> bool
Возвращает self==value.
__ne__
__ne__(
other
) -> bool
Возвращает self!=value.
© 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/versions/r2.9/api_docs/python/tf/OptionalSpec