這篇文章主要講解了如何使用keras和tensorflow保存為可部署的pb格式,內(nèi)容清晰明了,對(duì)此有興趣的小伙伴可以學(xué)習(xí)一下,相信大家閱讀完之后會(huì)有幫助。

Keras保存為可部署的pb格式
加載已訓(xùn)練好的.h6格式的keras模型
傳入如下定義好的export_savedmodel()方法內(nèi)即可成功保存
import keras
import os
import tensorflow as tf
from tensorflow.python.util import compat
from keras import backend as K
def export_savedmodel(model):
'''
傳入keras model會(huì)自動(dòng)保存為pb格式
'''
model_path = "model/" # 模型保存的路徑
model_version = 0 # 模型保存的版本
# 從網(wǎng)絡(luò)的輸入輸出創(chuàng)建預(yù)測(cè)的簽名
model_signature = tf.saved_model.signature_def_utils.predict_signature_def(
inputs={'input': model.input}, outputs={'output': model.output})
# 使用utf-8編碼將 字節(jié)或Unicode 轉(zhuǎn)換為字節(jié)
export_path = os.path.join(compat.as_bytes(model_path), compat.as_bytes(str(model_version))) # 將保存路徑和版本號(hào)join
builder = tf.saved_model.builder.SavedModelBuilder(export_path) # 生成"savedmodel"協(xié)議緩沖區(qū)并保存變量和模型
builder.add_meta_graph_and_variables( # 將當(dāng)前元圖添加到savedmodel并保存變量
sess=K.get_session(), # 返回一個(gè) session 默認(rèn)返回tf的sess,否則返回keras的sess,兩者都沒(méi)有將創(chuàng)建一個(gè)全新的sess返回
tags=[tf.saved_model.tag_constants.SERVING], # 導(dǎo)出模型tag為SERVING(其他可選TRAINING,EVAL,GPU,TPU)
clear_devices=True, # 清除設(shè)備信息
signature_def_map={ # 簽名定義映射
tf.saved_model.signature_constants.DEFAULT_SERVING_SIGNATURE_DEF_KEY: # 默認(rèn)服務(wù)簽名定義密鑰
model_signature # 網(wǎng)絡(luò)的輸入輸出策創(chuàng)建預(yù)測(cè)的簽名
})
builder.save() # 將"savedmodel"協(xié)議緩沖區(qū)寫(xiě)入磁盤(pán).
print("save model pb success ...")
model = keras.models.load_model('model_data/weight.h6') # 加載已訓(xùn)練好的.h6格式的keras模型
export_savedmodel(model) # 將模型傳入保存模型的方法內(nèi),模型保存成功.
網(wǎng)頁(yè)題目:如何使用keras和tensorflow保存為可部署的pb格式-創(chuàng)新互聯(lián)
標(biāo)題URL:http://www.chinadenli.net/article34/djdsse.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供做網(wǎng)站、移動(dòng)網(wǎng)站建設(shè)、定制開(kāi)發(fā)、企業(yè)建站、網(wǎng)站導(dǎo)航、面包屑導(dǎo)航
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶(hù)投稿、用戶(hù)轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀(guān)點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話(huà):028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容