keras模型保存和加载
生活随笔
收集整理的這篇文章主要介紹了
keras模型保存和加载
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
(一)保存和加載整個模型
? 包含模型的結構、權重、訓練配置項(損失函數、優化器)、優化器狀態,允許準確地從上次結束的地方開始訓練。
1.訓練完模型后
path='.../.../xxx.h5' model.save(path)2.調用模型
#1 調用模型 import keras from keras.models import load_model path='.../.../xxx.h5' my_model=load_model(path) #2 引入并處理數據(因數據而異) #3 可以直接開始evaluate/predict/繼續訓練(二)只保存、加載模型結構
保存模型的結構,而非其權重或訓練配置項(未經compile)。
1.訓練完模型后
my_model_json=model.to_json() path='.../.../xxx.json' with open(path,'w') as f:f.write(my_model_json)2.調用模型
import keras from keras.models import model_from_json path='.../.../xxx.json' with open(path,'r') as f:my_model_json=f.read() my_json_model=model_from_json(my_model_json) my_json_model.summary()(三)只保存/加載模型的權重
1.訓練完模型后
path='.../.../xx.h5' model.save_weights(path)2.加載
①非按名
path='.../.../xx.h5' model.load_weights(path)②按名(可用來只加載部分權重——只需new_model與原model的名稱部分相同部分不同即可)
path='.../.../xx.h5' model.load_weights(path,by_name=True)(四)checkpoint
1.訓練模型
checkpoint_path='.../.../xx' cp_callback=keras.callback.ModelCheckpoint(checkpoint_path, monitor='val_loss',verbose=0, save_best_only=False,save_weights_only=False,mode='auto', save_freq='epoch', options=None) history=model.fit(train_image,train_label,epochs=3,batch_size=512,validation_data=(test_image,test_label),callbacks=[cp_callback])2.調用
同上1/3中的調用,只需把path換成checkpoint_path
總結
以上是生活随笔為你收集整理的keras模型保存和加载的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 讯飞发布星火认知大模型及四大行业应用成果
- 下一篇: 评论文本预处理