Справочная информация
У меня сложный конвейерный поток, который будет принимать изображений и структурированных данных (потенциально во многих различных формах - XML, CSV , et c.) И I wi sh для преобразования его в объект набора данных Tensorflow (для моделирования / обучения машинному обучению) ).
Обычно я не использую генераторы для создания наборов tf.Datase, так как я знаю, что они становятся жертвами блокировки GIL. Обычно я следую рекомендациям Tensorflow и использую .from_tensor_slices
для создания начального набора данных и .map
для выполнения дополнений. Однако в проекте, над которым я сейчас работаю, мне потребуется выполнить ЗНАЧИТЕЛЬНЫЕ преобразования, и конвейер приема очень сложен. Кроме того, дополнения данных должны не только изменять изображения, но и изменять соответствующие аннотации.
Большая часть меня по-прежнему хочет использовать .from_tensor_slices
для создания начального набора данных и .map
для выполнять аугментации, но я боюсь, что это станет громоздким.
Вопрос
Кто-нибудь сделал тесты, иллюстрирующие компромиссы между использованием генераторов и .from_tensor_slices
для тренировок и приема пищи? Что бы вы посоветовали мне делать дальше?
Я хочу как можно больше следовать передовым методам, но я также ценю умнее работать, а не усерднее.
Пожалуйста, дайте мне знать, что вы думаю, что будет лучшим подходом здесь и почему.
Спасибо!
РЕДАКТИРОВАТЬ: я читал эти подобные сообщения / вопросы, а также страница лучших практик TF. Ссылки на ресурсы приведены ниже