Я работаю над основной задачей классификации с Keras, и мне кажется, что я столкнулся с проблемой, когда мне нужна помощь.
У меня есть 200 образцов для обучения и 100 для проверки. Я намерен использовать ImageDataGenerator для увеличения количества обучающих образцов для своей задачи. Я хочу убедиться в общем количестве тренировочных образов, которые передаются в fit_generator ().
Я знаю, что steps_per_epoch определяет общее количество партий, которые мы получаем от генератора, и в идеале это должно быть число выборок, деленное на размер пакета.
Однако, это то, где вещи не складываются для меня. Вот фрагмент моего кода:
num_samples = 200
batch_size = 10
gen = ImageDataGenerator(horizontal_flip = True,
vertical_flip = True,
width_shift_range = 0.1,
height_shift_range = 0.1,
zoom_range = 0.1,
rotation_range = 10
)
x,y = shuffle(img_data,img_label, random_state=2)
x_train, x_test, y_train, y_test = train_test_split(x, y, test_size=0.333, random_state=2)
generator = gen.flow(x_train, y_train, save_to_dir='check_images/sample_run')
new_network.fit_generator(generator, steps_per_epoch=len(x_train)/batch_size, validation_data=(x_test, y_test), epochs=1, verbose=2)
Я сохраняю дополненные изображения, чтобы увидеть, как изображения получаются из ImageDataGenerator, а также чтобы определить количество изображений, которые сгенерированы из него.
После запуска этого кода в течение одной эпохи я получаю 600 изображений в своем каталоге, число, которое я не могу получить, или, возможно, я делаю ошибку.
Буду очень признателен за любую помощь, которая поможет мне понять вычисления в этом коде. Кто-нибудь сталкивался с подобными проблемами?
ТИА