datagen = ImageDataGenerator(
featurewise_center=False, # set input mean to 0 over the dataset
samplewise_center=False, # set each sample mean to 0
featurewise_std_normalization=False, # divide inputs by std of the dataset
samplewise_std_normalization=False, # divide each input by its std
zca_whitening=False, # apply ZCA whitening
rotation_range=15, # randomly rotate images in the range (degrees, 0 to 180)
width_shift_range=0.1, # randomly shift images horizontally (fraction of total width)
height_shift_range=0.1, # randomly shift images vertically (fraction of total height)
horizontal_flip=True, # randomly flip images
vertical_flip=False) # randomly flip images
# (std, mean, and principal components if ZCA whitening is applied).
# datagen.fit(x_train)
print(x_train.shape)
def data_generator(generator, x, y1, y2, batch_size):
genX = generator.flow(x, seed=7, batch_size=batch_size)
genY1 = generator.flow(y1, seed=7, batch_size=batch_size)
genY2 = generator.flow(y2, seed=7, batch_size=batch_size)
while(True):
Xi = genX.next()
Yi1 = genY1.next()
Yi2 = genY2.next()
yield Xi, [Yi1, Yi2]
И вот как я называю model.fit_generator
model.fit_generator(data_generator(datagen, x_train, y_train, y_aux_train, params['batch_size']),
epochs=params['epochs'], steps_per_epoch=150,
validation_data=data_generator(datagen, x_test, y_test, y_aux_test, params['batch_size']),
validation_steps=100, callbacks=[reduce_lr, tensorboard],verbose=2)
Это ошибка, которую я получаю -
ValueError: ('Входные данные в NumpyArrayIterator
должны иметь ранг 4.
Вы передали массив с формой ', (5630, 4))