Как оптимизировать конвейер данных для обучения на ТПУ - PullRequest
0 голосов
/ 25 апреля 2019

Я пытаюсь понять, как оптимизировать конвейер данных для обучения на TPU.На веб-сайте Google TF есть несколько ресурсов, например [1].Но далеко не ясно, какие форматы использовать и как.Например, для классификации изображений мы можем либо использовать необработанные форматы изображений (одно изображение в одном файле), либо сохранять изображения в TFRecord.Если мне нужно обработать большое количество изображений, какой подход следует использовать, используя необработанные изображения или TFRecords?Если позже, сколько изображений в TFRecord нужно сохранить и т. Д. Ресурс в [1] показывает только, как распараллелить считывание данных с помощью предварительной выборки, чтения с помощью параллельных вызовов и т. Д., Но это не решает основной проблемы организацииданные, чтобы получить лучшую производительность на ТПУ.У кого-нибудь был какой-то опыт и можно ли им поделиться.При первой попытке использовать TPU я получил плохое использование TPU, в основном из-за ввода-вывода.Я использовал TFRecrods с 1000 изображений на файл, и я использовал prefetch и num_parallel_calls, но я все еще получал плохое использование TPU.Вот почему я ищу предложение по организации данных.

Спасибо, Валентин.

[1] https://www.tensorflow.org/guide/performance/datasets

...