Альтернатива Keras для ImageDataGenerator для загрузки произвольного numpy тензорного - PullRequest
0 голосов
/ 10 апреля 2020

ImageDataGenerator Keras отлично подходит для простой постепенной загрузки изображений и передачи итератора в функцию model.fit. Тем не менее, его можно использовать только для изображений и для задач классификации.

Я хочу сделать регрессию, т. Е. Мои метки также являются массивами той же формы, что и обучающие наборы. На практике они являются многомерными (> 1 каналами) массивами, подобными изображениям, но не являются изображениями.

Любые предложения относительно того, какой класс использовать, чтобы просто выплевывать пакеты данных в keras model.fit () для обучения deep neural net?

Проблема, конечно, в том, что мои наборы данных слишком велики, чтобы помещаться в памяти, поэтому мне нужно использовать эти генераторы / итераторы.

Ответы [ 2 ]

1 голос
/ 10 апреля 2020

Лучшее решение для вашего случая - использовать tf.data.Dataset().

. Хотя привыкание к нему может занять относительно короткое время, это рекомендуемый способ загрузки ваших данных и использования model.fit ( ).

Вы можете ознакомиться с документацией здесь: https://www.tensorflow.org/api_docs/python/tf/data/Dataset

Это новый, быстрый, красивый дизайн и легко расширяемый.

Например, , для вашей проблемы вы можете использовать tf.data.Dataset.from_tensor_slices(); Я оставлю вас открыть для себя его особенности: D.

0 голосов
/ 10 апреля 2020

Быстрое решение - использовать Colab, чей экземпляр GPU имеет 24 ГБ ОЗУ для работы. Вы также можете уменьшить объем памяти, когда загружаете массив numpy, как я это делал здесь

...