如何部署tensorflow训练的模型

96
lirainbow0
2018.05.29 22:00 字数 300

最近深度学习算法被广泛研究和应用,而tensorflow则是被应用最为广泛的工具。tensorflow训练的模型被应用在线上时,主要有3种方式(本文主要讨论java方向的应用):

1:java代码重写预测代码(应用效率太低)

2:tensorflow serving加载tensorflow模型,通过rpc服务调用,改种方式耗时较长,不满足线上要求(之前测试的结果)

3:tensorflow sdk加载tensorflow模型(目前线上应用的方式)

采用tensorflow sdk 加载模型有几个条件:

      1):需要tensorflow 版本1.1.0以上

      2):部署环境需要centos7

      3):需要jdk1.8

A:tensorflow保存模型的方式为:

保存模型代码

每一次保存模型版本号都需要更新,不然会保存失败,但tag可不变。

B:java加载tensorflow保存的模型

java加载tensorflow模型

C:预测时,模型入参都需要tensor变量,如果是矩阵可保存为二维数组,然后创建tensor作为入参。

模型预测

D:模型预测结果也是tensor,因此需要对结果进行转换

将tensor转换为数组
随笔
Web note ad 1