Керас - управляй историей - PullRequest
0 голосов
/ 31 октября 2018

Я тренирую модели Keras, сохраняю их с model.save(), затем загружаю их и возобновляю обучение.

Я бы хотел построить после каждой тренировки всю историю тренировок, но model.fit_generator() возвращает историю только последней тренировки.

Я могу сохранить историю начальной сессии и обновить ее самостоятельно, но мне интересно, есть ли в Keras стандартный способ управления историей тренировок.

history1 = model.fit_generator(my_gen)
plot_history(history1)
model.save('my_model.h5')

# Some days afterwards...

model = load_model('my_model.h5')
history2 = model.fit_generator(my_gen)

# here I would like to reconstruct the full_training history
# including the info from history1 and history2
full_history = ???

Ответы [ 2 ]

0 голосов
/ 31 октября 2018

Оказывается, в Керасе пока нет стандартного способа сделать это, AFAIK.

См. эту проблему для контекста.

0 голосов
/ 31 октября 2018

Допустим, эта строка

print(history.history.keys())

производит следующий вывод:

['acc', 'loss', 'val_acc', 'val_loss']

Исходя из предположения, что загруженная модель должна иметь ту же производительность, что и сохраненная модель, вы можете попробовать что-то вроде объединения историй. Например, объединить новую историю точности с загруженной историей точности загруженной модели.

Он должен начинаться с той же точки в области построения, на которой закончилась загруженная модель (возможно, вам придется добавить (+) эпохи ранее обученной модели для графика, чтобы новые значения точности не начинались с эпохи 0, но последняя эпоха загруженных моделей).

Я надеюсь, что вы понимаете мою идею и она вам поможет:)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...