Чтобы повысить эффективность приема данных, вы можете попробовать три разные вещи:
- Используйте Tfrecords.
- Использование функции генератора
- Использование специального устройства чтения наборов данных
Использование tf-записей, вероятно, самый простой и эффективный способ решения этой проблемы.Это обеспечивает большую скорость, как только вы преобразуете свой набор данных в набор данных записи tf
Если вы не хотите конвертировать ваш набор данных, вы застряли еще с двумя методами:
Использование генератора и создание генераторанабор данных с использованием функции tf dataset.from_generator (https://www.tensorflow.org/api_docs/python/tf/data/Dataset).Это замедлит ваш прием данных, так как вы не используете оптимизированный читатель C ++, но с небольшим количеством волшебства вы можете создавать вполне нормальных читателей.Используйте этот метод, если вы хотите быстро взглянуть на ваш набор данных.
Если вам нужны скорости, схожие с показателями tfrecords, вам нужно создать специальную программу чтения для набора данных tf.Вы можете найти объяснение здесь: https://www.tensorflow.org/extend/new_data_formats Для того, чтобы это работало, вам нужно немного знаний C ++.
Всего:
Tf record, если вы хотите конвертировать
from_generator, если вы хотите работать быстро и грязно, а производительность - не самая важная
собственная функция чтения, если вы хотите сделать это правильно
Я надеюсь, что смог помочьнемного:)