Для данных проверки вы передаете только один массив для ввода.
model.fit(x=[x_train, aux_input], y=y_train, batch_size=batch_size, steps_per_epoch=x_train.shape[0] // batch_size, epochs=maxepoches, validation_data=(x_test, y_test), callbacks=[reduce_lr, tensorboard], verbose=2)
Вы должны передать значения для aux_rand_input
и x_train_input
. Если у вас есть переменная aux_test
для хранения тестовых данных для aux_rand_input
, то это можно сделать следующим образом:
model.fit(x=[x_train, aux_input], y=y_train, batch_size=batch_size, steps_per_epoch=x_train.shape[0] // batch_size, epochs=maxepoches, validation_data=([x_test, aux_test], y_test), callbacks=[reduce_lr, tensorboard], verbose=2)
Edit:
Чтобы использовать метод model.fit_generator
, генератор должен выдать кортеж или список из двух элементов, причем первый элемент состоит из двух массивов. Э.Г.
def generator(x, aux, y):
## part of the code...
yield [batch_x, batch_aux], batch_y