猿问

恢复Keras模型的训练

我正在使用tensorflow.keras它来构建一个具有 3 个密集层的简单神经网络。我能够成功地将模型训练 9000 个时期,达到MSE0.0496的均方误差 ( )。无论恢复模型,它在大约 57 开始训练MSE

这可能表明模型权重没有成功加载,但是当从头重新开始训练过程(不加载之前保存的权重)时,MSE从大约 +9000 开始。

编辑:

  1. 那么这是正常问题,还是我做错了什么?

  2. 为什么即使在 9000 个 epoch 之后准确度始终为 0.0?


动漫人物
浏览 167回答 3
3回答

慕姐4208626

这是当前已修复的错误,tensorflow-gpu-nighlybuild 2.0如此处所述。

慕哥6287543

您可以简单地构建模型,编译它并保留随机初始化的权重以开始训练。接下来,恢复训练:构建模型,编译它,然后重新加载保存的权重。

慕莱坞森

对于恢复培训,您不应该运行完整代码,只需运行以下代码:model= load_model('model.h5')history = model.fit(normed_train_data, train_labels, epochs=1, v     validation_split = 0.2, verbose=2,    batch_size=128, callbacks=[mc])`但是你应该编辑这个:mc = keras.callbacks.ModelCheckpoint('weights{epoch:08d}.h5', save_weights_only=True, period=100)进入这个:mc = keras.callbacks.ModelCheckpoint('weights{epoch:08d}.h5', save_weights_only=False, period=100)
随时随地看视频慕课网APP

相关分类

Python
我要回答