作者:crazttitan | 来源:互联网 | 2022-12-07 16:56
当使用类似的东西时:
callbacks = [
EarlyStopping(patience=15, mOnitor='val_loss', min_delta=0, mode='min'),
ModelCheckpoint('best-weights.h5', mOnitor='val_loss', save_best_Only=True, save_weights_Only=True)
]
model.fit(..., callbacks=callbacks)
y_pred = model.predict(x_test)
我model
是使用训练过程中计算出的最佳权重进行预测还是使用最后的权重(可能不是最佳权重)?
因此,以上是安全的方法,还是best-weights.h5
即使在训练后立即进行预测,也应该将其加载到模型中吗?
1> today..:
在通过EarlyStopping
回调停止训练之后,当前模型可能不是监视数量最高/最低的最佳模型。因此,如果您想恢复最佳权重restore_best_weights
,则在Keras 2.2.3版本中引入了新的参数,用于EarlyStopping
回调。
restore_best_weights:是否从时期以受监视数量的最佳值恢复模型权重。如果为False
,则使用训练的最后一步获得的模型权重。