是否可以继续训练一个Keras估计器,保留之前所有超参数(包括递减的学习率)和权重,就像在scikit-learn中使用warm_start
参数那样?类似于这样:
estimator = KerasRegressor(build_fn=create_model, epochs=20, batch_size=40, warm_start=True)
具体来说,warm start应该这样做:
warm_start : bool, 可选,默认值为False 当设置为True时,复用上次调用fit的解决方案作为初始化,否则,直接清除之前的解决方案。
Keras中有类似的功能吗?
回答:
是的 – 这是可能的。但操作起来相当繁琐。你需要使用train_on_batch
函数,该函数会保留所有模型参数(包括优化器的参数)。
这很繁琐,因为你需要自己将数据集分成批次,并且你还会失去应用Callbacks
和使用自动progbar
的机会。我希望在新的Keras
版本中,这个选项能被添加到fit
方法中。