1. 程式人生 > >java《部署tensorflow訓練的模型》

java《部署tensorflow訓練的模型》

最近深度學習演算法被廣泛研究和應用,而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轉換為陣列