此单个内衬用于保存keras深度学习神经网络模型。
model.save('my_model.h5')
model.save()
是否保存最后一个时期或最佳时期的模型?有时,最后一个时期并不能改善性能。
答案 0 :(得分:7)
它将模型保存为确切的当前状态。如果此语句是在Model#fit
方法完成之后,则表示最后一个纪元。
对于最佳时期(假设最佳==最小损失或更高精度),您可以为此使用ModelCheckpoint:
epochs = 100
# other parameters...
model.fit(x, y,
epochs=epochs,
validation_data=valid,
verbose=2,
callbacks=[
TerminateOnNaN(),
TensorBoard('./logs'),
ModelCheckpoint('best.h5',
save_best_only=True),
...
])
# the model is holding the weights optimized for 100 epochs.
model.load_weights('best.h5') # load weights that generated the min val loss.