鍍金池/ 教程/ Android/ 利用 TensorFlow Serving 系統(tǒng)在生產(chǎn)環(huán)境中運行模型
101 種讓你的網(wǎng)頁看起來更酷的方法
Android 項目是如何使用 Kotlin 語言生成的 1/2
Nimbledroid 版本更新
使用TypeScript提高開發(fā)能力
利用 TensorFlow Serving 系統(tǒng)在生產(chǎn)環(huán)境中運行模型
Google Play 榜單APP冷啟動速度分析報告
使用微信控制電腦(Python 版)
jQuery 3 中的新變動
RxAndroid 基礎(chǔ):第一部分
Swift in 2016
UI自動化測試基于Activity的封裝模式
2016年,有哪些適合你學習的編程語言?
Swift 響應(yīng)式編程
如何組合使用 VIM 編輯器與 IPYthon
如何使你的app更加流暢
介紹用來選擇輪廓圖像的一個類——Will J Miller
關(guān)于Android N 開發(fā)者預(yù)覽版的一些隨想

利用 TensorFlow Serving 系統(tǒng)在生產(chǎn)環(huán)境中運行模型

譯者:李鑫

原文:Running your models in production with TensorFlow Serving

本文為極客學院Wiki組織翻譯,轉(zhuǎn)載請注明出處。

時間:2016.3.4

機器學習技術(shù)支撐著許多 Google 產(chǎn)品的功能,比如:Google 應(yīng)用中的語音識別,收件箱的智能回復(fù),以及 Google 照片搜索,等等。盡管軟件行業(yè)幾十年中積累起的無數(shù)經(jīng)驗促成了很多用于構(gòu)建并支持產(chǎn)品的最佳實踐,但基于機器學習的服務(wù)卻還是帶來了一些新穎而有趣的挑戰(zhàn)。如今,專為解決這些挑戰(zhàn)的系統(tǒng)終于出現(xiàn)了,這就是 TensorFlow Serving。TensorFlow Serving 是一種用于機器學習模型的高性能開源服務(wù)系統(tǒng),專為生產(chǎn)環(huán)境而設(shè)計,并針對 TensorFlow 進行了優(yōu)化處理。

TensorFlow Serving 系統(tǒng)非常適用于大規(guī)模運行能夠基于真實情況的數(shù)據(jù)并會發(fā)生動態(tài)改變的多重模型。它能夠?qū)崿F(xiàn):

  • 模型生命周期管理。
  • 使用多重算法進行試驗。
  • GPU 資源的有效使用。

TensorFlow Serving 能夠簡化并加速從模型到生產(chǎn)的過程。它能實現(xiàn)在服務(wù)器架構(gòu)和 API 保持不變的情況下,安全地部署新模型并運行試驗。除了原生集成 TensorFlow,還可以擴展服務(wù)其他類型的模型。下圖顯示了簡化的監(jiān)督學習過程,向 learner 輸入訓(xùn)練數(shù)據(jù),然后輸出模型:

http://wiki.jikexueyuan.com/project/geekdigest/images/Tensor_Flow_Diagram1_TrainingPipeline_FINAL.png" alt="" />

一旦經(jīng)過驗證后,新模型版本定型,就可以部署到服務(wù)系統(tǒng),如下圖所示:

http://wiki.jikexueyuan.com/project/geekdigest/images/Tensor_Flow_Diagram1_Serving_FINAL.png" alt="" />

TensorFlow Serving 使用(之前訓(xùn)練的)模型來實施推理——基于客戶端呈現(xiàn)數(shù)據(jù)的預(yù)測。因為客戶端通常會使用遠程過程調(diào)用(RPC)接口來與服務(wù)系統(tǒng)通信,TensorFlow Serving 提供了一種基于 gRPC 的參考型前端實現(xiàn),這是一種 Google 開發(fā)的高性能開源 RPC 架構(gòu)。當新數(shù)據(jù)可用或改進模型時,加載并迭代模型是很常見的。事實上,在谷歌,許多管線經(jīng)常運行,一旦當新數(shù)據(jù)可用時,就會產(chǎn)生新版本的模型。

http://wiki.jikexueyuan.com/project/geekdigest/images/Tensor_Flow_Diagram2_Final.png" alt="" />

TensorFlow Serving 由 C++ 編寫而成,支持 Linux。TensorFlow Serving 引入的開銷是非常小的。我們在一個有著 16個 vCPU 的英特爾至強 E5 2.6 GHz 的機器上進行了測試,執(zhí)行每核每秒約 100,000 次查詢,不包括 gRPC 和 TensorFlow 推理處理時間。我們非常激動地向大家分享這個遵守 Apache 2.0 開源協(xié)議的 TensorFlow 重要組件。非常希望大家能在 Stack Overflow 和 GitHub 上提問或請求開發(fā)一些功能。上手很簡單,只需復(fù)制 github.com/tensorflow/serving 中的代碼,然后簽出教程即可。隨著我們對 TensorFlow 的繼續(xù)開發(fā),你一定會了解到更多有關(guān)內(nèi)容,因為這大概是世界上最好用的機器學習工具包了。如果希望及時了解最新進展,請關(guān)注 @googleresearch?或?+ResearchatGoogle,以及 2016 年 3 月,Jeff Dean 將在 GCP Next 2016 上的主題演講。