Недавно я сделал нечто подобное, поскольку Педро сказал, что вы должны использовать fit_generator и написать свой собственный генератор.
Вот пример генератора:
def generator(files):
print('start generator')
while 1:
print('loop generator')
for file in files:
try:
df = pd.read_csv(file)
batches = int(np.ceil(len(df)/batch_size))
for i in range(0, batches):
yield pad_batch(df[i*batch_size:min(len(df), i*batch_size+batch_size)])
except EOFError:
print("error" + file)
Где вы проходите списокимени файла для генератора, и он перебирает файлы и возвращает содержимое в пакетном режиме.load_data
в моем случае это функция, которая читает csvs в пандах и выполняет некоторую предварительную обработку.pad_batch
выполняет заполнение для LSTM.
Использование:
model.fit_generator(
generator=generator(trainingFiles),
steps_per_epoch=steps,
epochs=num_epochs,
validation_data=[x_test, y_test],
verbose=1)