#numpy #keras #deep-learning #google-colaboratory #training-data
#numpy #keras #глубокое обучение #google-colaboratory #обучение-данные
Вопрос:
Я тренирую автокодер (keras) в Google colab. однако у меня есть 25000 входных изображений и 25000 выходных изображений. Я пытался: 1- каждый раз копировать большой файл с Google Диска в colab (занимает 5-6 часов). 2- преобразуйте набор в массив numpy, но при нормализации изображений размер становится намного больше (например, с 7 ГБ до 24 ГБ), и тогда я не могу поместить его в оперативную память. 3- Я не могу заархивировать и разархивировать свои данные. Поэтому, пожалуйста, если кто-нибудь знает, как преобразовать его в массив numpy (и нормализовать его), не имея большого файла (24 ГБ).
Ответ №1:
Что я обычно делаю :
- Заархивируйте все изображения и загрузите
.zip
файл на свой Google Диск - Разархивируйте в своей colab :
from zipfile import ZipFile
with ZipFile('data.zip', 'r') as zip:
zip.extractall()
- Все ваши изображения удалены и сохранены на диске Colab, теперь вы можете получить к ним более быстрый доступ.
- Используйте генераторы в keras like
flow_from_directory
или создайте свой собственный генератор - используйте свой генератор, когда вы подходите к своей модели :
moel.fit(train_generator, steps_per_epoch = ntrain // batch_size,
epochs=epochs,validation_data=val_generator,
validation_steps= nval // batch_size)
с ntrain
и nval
количество изображений в вашем наборе данных для обучения и проверки