Кэшировать набор данных до dataset.repeat() dataset.batch() и dataset.prefetch() или после?

Я строю конвейер данных с использованием Dataset API для обучения на нескольких графических процессорах. Набор данных состоит из большого количества изображений в формате png с несколькими метками. Кешировать ли я перед сборкой или перед / после повторения, предварительной выборки? Цель состоит в том, чтобы минимизировать ввод-вывод и использование памяти при максимизации скорости тренировки.

def input_fn():
    ...
    dataset = dataset.repeat(num_epochs)
    dataset = dataset.batch(batch_size = batch_size)
    dataset = dataset.cache()

    dataset = dataset.prefetch(buffer_size=None)

    return dataset

0 ответов

Другие вопросы по тегам