如何評價google 開源的TensorFlow Serving?
01-15
google 今天發布的 TensorFlow Serving http://googleresearch.blogspot.com/2016/02/running-your-models-in-production-with.html
github: GitHub - tensorflow/serving: A flexible, high-performance serving system for machine learning models如何評
個人認為其是將tensorflow訓練出來的模型更好的應用在生產環境中,通過API等等支持的方式來方便對外提供穩定可靠的服務,比如人臉識別商業化.舉個例子,清晰一點.說一下我們現在模型對外提供服務的方案:數據建模,我用的python,在用scikit-learn訓練出模型後,怎麼讓其他人也能享受這個模型呢?總不能將代碼給人家,讓人家再訓練一遍吧,所以我們用joblib.dump將訓練出來的模型變為一個實體的文件,然後copy到生產環境,用joblib.load載入後,再用flask對外提供API服務.對比一下,可知tensorflow相當於scikit-learn,是一個深度學習工具.那tensorflow serving就相當於把上面的joblib.dump(當然了tensorflow serving是export方法)與joblib.load以及最後提供輸出能力(相當於上面的flask)都一手包辦了.
意義就在於能夠很方便的將深度學習生產化,解決了模型無法提供服務的弊端,並且用的是c++語言,性能上應該也是可以的.
所以,以後深度學習方向的創業公司都能很方便的將產品商業化了,保證7*24小時的可靠服務.我本來以為serving可以直接serve script,然後在線訓練,沒想到看了一圈搭了一次之後發現是將已訓練好的模型進行部署,然後根據用戶輸入的數據返回結果。跟我想的不太一樣,而且serving現在還沒封裝好,並不是很容易搭建,還有很多坑,而且第一次建serving環境的時候起碼等一個小時吧,根據硬體情況的不同很可能還要花2個小時左右,建議第一次初始化的時候打開別的project做做別的事情。。
當初剛出的時候用過幾次,感覺寫起來有點麻煩後來就不用了,還是習慣用tornado來重新載入模型提供api...
打算使用
推薦閱讀:
※在集成電路設計領域(數字,模擬),人工智慧有無可能取代人類?
※怎麼樣理解SVM中的hinge-loss?
※如何評價猿輔導分散式機器學習庫ytk-learn、分散式通信庫ytk-mp4j?
※關於L1、L2正規化的一些疑問?
TAG:機器學習 | TensorFlow |