tf.raw_ops.OneShotIterator
Создаёт итератор "одного прохода", который можно перебрать только один раз.
tf.raw_ops.OneShotIterator(
dataset_factory,
output_types,
output_shapes,
container='',
shared_name='',
name=None
)
Итератор "одного прохода" объединяет логику определения набора данных и состояния итератора в одной операции, что позволяет определять простые каналы ввода без дополнительного шага инициализации ("MakeIterator").
Итераторы "одного прохода" имеют следующие ограничения:
- Они не поддерживают параметризацию: вся логика создания базового набора данных должна быть объединена в функции
dataset_factory. - Они не являются перезапускаемыми. После того, как итератор "одного прохода" достигнет конца своего базового набора данных, последующие операции "IteratorGetNext" над этим итератором всегда будут выдавать ошибку
OutOfRange.
Для большей гибкости используйте "Iterator" и "MakeIterator", чтобы определить итератор с помощью произвольного подграфа, который может принимать тензоры (включая значения, предоставленные пользователем) в качестве параметров и который может быть перезапущен несколько раз путём повторного выполнения "MakeIterator".
| Аргументы | |
|---|---|
dataset_factory | Функция, помеченная аннотацией @Defun. Функция типа () -> DT_VARIANT, где возвращаемое значение DT_VARIANT представляет собой набор данных. |
output_types | Список tf.DTypes, длина которого равна >= 1. |
output_shapes | Список форм (каждая — tf.TensorShape или список ints), длина которого равна >= 1. |
container | Необязательный string. По умолчанию "". |
shared_name | Необязательный string. По умолчанию "". |
name | Имя операции (необязательно). |
| Возвращаемое значение | |
|---|---|
Tensor типа resource. |
© 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/raw_ops/OneShotIterator