【问题标题】:How to save and resume tensorflow model?如何保存和恢复张量流模型?
【发布时间】:2021-05-26 18:11:45
【问题描述】:

我是这个领域的新手,希望你能帮助我:) 我正在 Google Colab 中训练我的 TensorFlow 模型,但由于时间有限,我的数据量很大,所以我不能运行超过 2 个 epoch。

history = model.fit(
  x=data.train_x, 
  y=data.train_y,
  validation_split=0.2,
  batch_size=32,
  shuffle=True,
  epochs=2,
  callbacks=[tensorboard_callback]

Epoch 1/2
22016/22016 [==============================] - 14481s 657ms/step - loss: 0.3934 - acc: 0.8225 - val_loss: 0.3893 - val_acc: 0.8289
Epoch 2/2
22016/22016 [==============================] - 14466s 657ms/step - loss: 0.2807 - acc: 0.8825 - val_loss: 0.3793 - val_acc: 0.8348

我的问题是是否可以保存此模型并在第二天从第 3 个 epoch 开始恢复训练?

【问题讨论】:

  • 如果它解决了您的问题,请考虑接受答案。如果没有,请告诉我。

标签: python tensorflow neural-network tensorflow2.0


【解决方案1】:

您将丢失 history 对象,您可以绘制损失和指标。保存模型时,历史对象保留。

您需要设置initial_epoch参数。示例:

model.fit(
    ds_train,
    epochs=2,
    validation_data=ds_test,
)

Epoch 1/2
469/469 [==============================] - 2s 4ms/step - loss: 0.3593 - sparse_categorical_accuracy: 0.9015 - val_loss: 0.1918 - val_sparse_categorical_accuracy: 0.9438
Epoch 2/2
469/469 [==============================] - 2s 4ms/step - loss: 0.1628 - sparse_categorical_accuracy: 0.9537 - val_loss: 0.1329 - val_sparse_categorical_accuracy: 0.9621

假设您使用以下方式保存它:

model.save('model.h5')

加载它:

restored_model = tf.keras.models.load_model('/content/model.h5') # path here

现在你可以重新适应了:

restored_model.fit(
    ds_train,
    initial_epoch=2,
    validation_data=ds_test,
    epochs = 5
)

Epoch 3/5
469/469 [==============================] - 2s 4ms/step - loss: 0.1169 - sparse_categorical_accuracy: 0.9663 - val_loss: 0.1097 - val_sparse_categorical_accuracy: 0.9671
Epoch 4/5
469/469 [==============================] - 2s 4ms/step - loss: 0.0901 - sparse_categorical_accuracy: 0.9735 - val_loss: 0.0942 - val_sparse_categorical_accuracy: 0.9719
Epoch 5/5
469/469 [==============================] - 2s 4ms/step - loss: 0.0730 - sparse_categorical_accuracy: 0.9789 - val_loss: 0.0865 - val_sparse_categorical_accuracy: 0.9724

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-07-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-12-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多