tf.data.IteratorSpec
Спецификация типа для tf.data.Iterator.
Наследует от: TypeSpec, TraceType
tf.data.IteratorSpec(
element_spec
)
Например, tf.data.IteratorSpec можно использовать для определения tf.function, принимающей tf.data.Iterator в качестве входного аргумента:
@tf.function(input_signature=[tf.data.IteratorSpec( tf.TensorSpec(shape=(), dtype=tf.int32, name=None))]) def square(iterator): x = iterator.get_next() return x * x dataset = tf.data.Dataset.from_tensors(5) iterator = iter(dataset) print(square(iterator)) tf.Tensor(25, shape=(), dtype=int32)
| Атрибуты | |
|---|---|
element_spec | Вложенная структура объектов tf.TypeSpec, представляющая спецификацию типа элементов итератора. |
value_type | Тип Python для значений, совместимых с этой TypeSpec. В частности, все значения, совместимые с этой TypeSpec, должны быть экземплярами этого типа. |
Методы
experimental_as_proto
experimental_as_proto() -> struct_pb2.TypeSpecProto
Возвращает представление экземпляра TypeSpec в виде proto.
НЕ переопределяйте для пользовательских типов, не относящихся к TF.
experimental_from_proto
@classmethod
experimental_from_proto(
proto: struct_pb2.TypeSpecProto
) -> 'TypeSpec'
Возвращает экземпляр TypeSpec на основе сериализованного proto.
НЕ переопределяйте для пользовательских типов, не относящихся к TF.
| Аргументы | |
|---|---|
proto | Proto, созданный с помощью 'experimental_as_proto'. |
experimental_type_proto
@classmethod experimental_type_proto() -> Type[struct_pb2.TypeSpecProto]
Возвращает тип proto, связанный с сериализацией TypeSpec.
НЕ переопределяйте для пользовательских типов, не относящихся к TF.
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/api_docs/python/tf/data/IteratorSpec