Python 如何保存和恢复tensorflow模型?
我是这个领域的新手,希望你能帮助我:) 我正在谷歌Colab上训练我的TensorFlow模型,但由于时间有限,我不能运行超过2个时代,因为我的数据量很大Python 如何保存和恢复tensorflow模型?,python,tensorflow,neural-network,tensorflow2.0,Python,Tensorflow,Neural Network,Tensorflow2.0,我是这个领域的新手,希望你能帮助我:) 我正在谷歌Colab上训练我的TensorFlow模型,但由于时间有限,我不能运行超过2个时代,因为我的数据量很大 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
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
我的问题是,是否可以保存此模型并在第三纪元的第二天恢复训练?您将丢失可以绘制损失和度量的
历史对象。保存模型历史记录时,对象不会被保留
您需要设置initial\u 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
如果解决了你的问题,请考虑接受答案。如果没有,请告诉我。