今天笔者想记录一下深度学习模型的部署,不知道大家研究过没有,tensorflow模型有三种保存方式:
- 训练时我们会一般会将模型保存成:checkpoint文件
- 为了方便python,C++或者其他语言部署你的模型,你可以将模型保存成一个既包含网络结构又包含权重参数的:PB文件
- 为了方便使用TensorFlow Serving 部署你的模型,你可以将模型保存成:Saved_model文件
笔者是keras(tensorflow )的深度用户,经常把模型保存成HDF5格式。那么问题来了,如何把keras的模型转化成PB文件 或者 Saved_model文件供生成部署使用。今天笔者就是来介绍一下如何将Keras的模型保存成PB文件 或者 Saved_model文件。
定义BERT二分类模型
下方函数定义的是一个标准的BERT做文本二分类的图结构。
from keras.models import Model
from keras.layers import *
from keras import backend as K
import tensorflow as tf
from keras_bert import get_model,compile_model
def load_bert_model_weight(bert_model_path):
b_model = get_model(token_num=21128,)
compile_model(b_model)
bert_model = Model(
inputs = b_model.input[:2],
outputs = b_model.get_layer('Encoder-12-FeedForward-Norm').output
)
x1_in = Input(shape=(None,))
x2_in = Input
来源:oschina
链接:https://my.oschina.net/u/4324616/blog/4480240