keras.fit()重新初始化权重

paa*_*chi 3 machine-learning neural-network deep-learning keras tensorflow

我有一个训练有素的模型,该模型model.fit()用于model.save()将其保存在物理文件中。现在,我有另一个数据集,我想在该数据集上继续使用保存的模型进行训练。但是,我发现每次fit()通话都被认为是全新的培训。这意味着,它正在重新初始化之前生成并保存的权重。

当我fit()以纪元0进行调用时,我看不到权重重置问题。但是,我绝对想尝试> 0。

我在这里错过了什么吗,还是Keras的问题。

Keras版本:2.0.3

谢谢。

Mar*_*jko 5

实际上-调用的情况fit如下:

  1. 权重不会重置 -您的模型将具有与调用之前完全相同的权重fit-当然,直到优化算法在第一批中不会更改权重之前。

  2. 模型状态未重置 -这可能是您遇到的情况。rnn重置模型隐藏状态(尤其是万一)。这是唯一更改的内容。如果您还希望保留这些值(在许多情况下,尤其是优化器状态至关重要),则可以使用train_on_batch完全不影响模型任何状态的方法。

  3. 优化器状态不会重置 -再次调用fit()不会重置优化器状态。参考:https : //github.com/keras-team/keras/issues/454#issuecomment-125644222