Spec-Zone.ru › TensorFlow 1.15

tf.contrib.data.parallel_interleave

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

tf.contrib.data.parallel_interleave(
    map_func, cycle_length, block_length=1, sloppy=False,
    buffer_output_elements=None, prefetch_input_elements=None
)
Предупреждение: ЭТА ФУНКЦИЯ УСТАРЕЛА. Она будет удалена в будущей версии. Инструкции по обновлению: используйте tf.data.experimental.parallel_interleave(...).

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 Если ложь, элементы генерируются в детерминированном порядке. В противном случае, реализация допускается, для ускорения, генерировать элементы в недетерминированном порядке.
buffer_output_elements Количество элементов, которые должен буферизовать каждый переплетённый итератор (похоже на преобразование .prefetch() для каждого переплетённого итератора).
prefetch_input_elements Количество входных элементов, которые должны быть преобразованы в итераторы, прежде чем они потребуются для переплетения.
Возвращаемое значение
Функция преобразования Dataset, которую можно передать в tf.data.Dataset.apply.

© 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/r1.15/api_docs/python/tf/contrib/data/parallel_interleave

Spec-Zone.ru

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