Я работаю с Keras 2.0.0 и хочу обучить глубокую модель с огромным количеством параметров на графическом процессоре. Поскольку у меня большие данные, я должен использовать ImageDataGenerator
. Честно говоря, я хочу злоупотребить ImageDataGenerator
в том смысле, что я не хочу выполнять какие-либо аугментации. Я просто хочу объединить свои обучающие изображения в пакеты (и масштабировать их), чтобы я мог скормить их model.fit_generator
.
Я адаптировал код из здесь и внес небольшие изменения в соответствии с моими данными (например, изменив двоичную классификацию на категоричный (но это не имеет значения для данной проблемы, о которой здесь следует поговорить). У меня есть 15000 образов поездов, и единственное «дополнение», которое я хочу выполнить, - это масштабирование до области [0,1] на train_datagen = ImageDataGenerator(rescale=1./255)
. После создания моего "train_generator":
train_generator = train_datagen.flow_from_directory(
train_data_dir,
target_size=(img_width, img_height),
batch_size=batch_size,
class_mode='categorical',
shuffle = True,
seed = 1337,
save_to_dir = save_data_dir)
Я подхожу к модели, используя model.fit_generator()
.
Я установил количество эпох: epochs = 1
И размер партии: batch_size = 60
Что я ожидаю увидеть в каталоге, где хранятся мои увеличенные (то есть с измененным размером) изображения: 15000 масштабированных изображений на эпоху, то есть только с одной эпохой: 15000 масштабированных изображений. Но, как ни странно, всего 15 250 изображений.
Есть ли причина для такого количества изображений? Могу ли я контролировать количество дополненных изображений?
Похожие проблемы:
Модель fit_generator не извлекает образцы данных, как ожидалось (соответственно, при stackoverflow: Keras - Как пакеты и эпохи используются в fit_generator ()? )
Конкретный пример использования генератора данных для больших наборов данных, таких как ImageNet
Я ценю вашу помощь.