Spec-Zone.ru › TensorFlow 2.9

tf.data.experimental.parallel_interleave

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

Параллельная версия преобразования Dataset.interleave(). (устарело)

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

Псевдонимы для миграции

См. Руководство по миграции для получения более подробной информации.

tf.compat.v1.data.experimental.parallel_interleave

tf.data.experimental.parallel_interleave(
    map_func,
    cycle_length,
    block_length=1,
    sloppy=False,
    buffer_output_elements=None,
    prefetch_input_elements=None
)
Устарело: ЭТА ФУНКЦИЯ УСТАРЕЛА. Она будет удалена в будущей версии. Инструкции по обновлению: Используйте tf.data.Dataset.interleave(map_func, cycle_length, block_length, num_parallel_calls=tf.data.AUTOTUNE) вместо неё. Если требуется нестрогое выполнение, используйте tf.data.Options.deterministic.

parallel_interleave() применяет map_func к своему входу для создания вложенных наборов данных и выводит их элементы, переплетённые в порядке. В отличие от tf.data.Dataset.interleave, она получает элементы из cycle_length вложенных наборов данных параллельно, что увеличивает пропускную способность, особенно при наличии медленных вычислений. Кроме того, аргумент sloppy можно использовать для повышения производительности, ослабив требование о том, что выходы должны производиться в детерминированном порядке, и разрешая реализации пропускать вложенные наборы данных, элементы которых недоступны при запросе.

Пример использования:

# Preprocess 4 files concurrently.
filenames = tf.data.Dataset.list_files("/path/to/data/train*.tfrecords")
dataset = filenames.apply(
    tf.data.experimental.parallel_interleave(
        lambda filename: tf.data.TFRecordDataset(filename),
        cycle_length=4))
Предупреждение: Если sloppy равно True, порядок производимых элементов не является детерминированным.
Аргументы
map_func Функция, отображающая вложенную структуру тензоров в Dataset.
cycle_length Количество входных Dataset для параллельного переплетения.
block_length Количество последовательных элементов, которые нужно получить из входного Dataset, прежде чем переходить к следующему входному Dataset.
sloppy Логическая переменная, определяющая, должен ли детерминизм быть изменён на производительность, разрешая производство элементов в произвольном порядке. Если sloppy равно None, используется опция набора данных tf.data.Options.deterministic (True по умолчанию) для определения того, следует ли принудительно использовать детерминированный порядок.
buffer_output_elements Количество элементов, которые каждый итератор, подлежащий переплетению, должен буферизовать (аналогично преобразованию .prefetch() для каждого переплетённого итератора).
prefetch_input_elements Количество входных элементов, которые нужно преобразовать в итераторы, прежде чем они понадобятся для переплетения.
Возвращаемое значение
Функция преобразования Dataset, которая может быть передана в tf.data.Dataset.apply.

© 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/data/experimental/parallel_interleave

Spec-Zone.ru

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