Keras管理历史

2024-10-05 15:29:07 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在训练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 = ???

Tags: the历史记录modelmysave历史generatorhistory
2条回答

事实证明,在Keras-AFAIK还没有标准的方法。在

有关上下文,请参见this issue。在

就这样说吧

print(history.history.keys())

生成以下输出:

^{pr2}$

基于加载的模型应该具有与保存的模型相同的性能的假设,您可以尝试类似于连接历史的方法。例如,在加载模型的加载精度历史记录上连接新的精度历史记录。在

它应该从打印空间中加载模型结束的同一点开始(可能需要为绘图添加先前训练的模型的(+)个epoch,这样新的精度值不会从epoch 0开始,而是从加载模型的最后一个epoch开始)。在

我希望你能理解我的想法,并希望它能帮助你:)

相关问题 更多 >