kears保存 模型
kears保存模型时可以配合回调函数(callback)的方法,在每一次batch(应该是batch)中,保留最佳的模型参数,常见的模型类型有两种,一种是ckpt,另一种是h5。
保存h5模型
首先得保证安装了HDF5 和 Python 库 h5py
保存整个模型
model.save('mode.h5')
将 Keras 模型保存到单个 HDF5 文件中,该文件将包含
模型的结构,允许重新创建模型
模型的权重
训练配置项(损失函数,优化器)
优化器状态,允许准确地从你上次结束的地方继续训练。
重新加载模型
model = load_model('my_model.h5')
保存模型的权重
model.save_weights('my_mode.h5')
重新加载模型权重
model_1.load_weights('my_model_weights.h5') #加载模型的权重,保存权重的网络要和加载权重的网络完全相同
保存ckpt模型
保存模型
save_file = './model/my_model.ckpt'
cp_callback = keras.callbacks.ModelCheckpoint(filepath=save_file,
save_weights_only=True,
#设置True,则调用model.save_weights();
#设置False,则调用model.save();
save_best_only=True)
history = model.fit(trainX, trainY, epochs=10, batch_size=batch_size,
validation_data=(testX, testY),
verbose=2, shuffle=False,
callbacks=[cp_callback])
加载模型
with tf.Session() as sess:
#恢复计算图结构
saver = tf.train.import_meta_graph(',my_model.ckpt.meta')
#恢复所有变量信息
saver.restore(sess, "my_model.ckpt")
保存PB模型
保存模型
# 保存模型结构和参数到文件
import keras
keras.models.save_model(network,"model_save_path") # 默认生成 .pb 格式模型,也可以通过save_format 设置 .h5 格式
加载模型
import keras
network=keras.models.load_model("model_save_path")