1.模型權重和圖
保存
#保存模型權重
model.save_weights("model_weights.h5")
#保存圖
with open('graph.json', 'w') as f:
f.write(model.to_json())
加載
from keras.models import model_from_json
# 加載圖
with open('ph.json', 'r') as f:
model = model_from_json(f.read())
# 加載權重
model.load_weights('model_weights.h5')
注:你也可以不加載模型圖文件,直接代碼裏定義模型。
2.同時操作權重和圖
保存
# 保存整個模型
model.save('my_model.h5')
加載
from keras.models import load_model
# 生成一個compile過的的模型,可以直接進行預測
model = load_model('my_model.h5')
目前覺得第二種方法比較方便,可以直接使用完整的模型文件加載模型後,進行模型的線上部署,發佈服務,但是它也會把一些線上部署不需要的數據load進來,比如training的配置和optimizer的state。