當前位置:
首頁 > 科技 > TensorFlow 2.0標準化模型交換格式強化布署能力

TensorFlow 2.0標準化模型交換格式強化布署能力

由Google大腦開發而後開源的深度學習函數庫TensorFlow,官方發布更多TensorFlow 2.0的消息,主要更新的大方向是要簡化建模的程序,並強化了平檯布署以及實驗功能。新功能包括tf.keras、默認激活的Eager Execution以及布署函數庫等,官方預計將會在今年初的時候發布公開預覽版。

TensorFlow發展至今已經超過3歲,這過程TensorFlow新加入了許多組件,而在TensorFlow 2.0,這些組件將被打包成一個綜合平台,以支持從訓練到布署的機器學習工作流程。 TensorFlow 2.0主打的重點之一是讓模型構建更加簡單,最近類神經網路函數庫Keras成為TensorFlow中央高階API,能被用來構建和訓練模型,官方認為,Keras API有助於TensorFlow的入門。 Keras提供了包括Sequential、Functional以及Subclassing等數種構建模型的API,開發者可以根據需求,選擇適合的抽象層級用於項目中。

官方舉例了使用Keras構建模型的工作流程,第一步可以使用tf.data載入數據,接著第二步以tf.keras構建、訓練以及驗證模型,官方提到,Keras與TensorFlow緊密集成,因此用戶可以訪問任何的TensorFlow功能,而且也可使用一系列標準套件模型,包括線性、邏輯回歸或是梯度提升決策樹等。如果不想從頭開始訓練模型,開發者也可以使用TensorFlow Hub的模塊,接著訓練Keras或是Estimator模型。

第三步以Eager Execution執行與調試,TensorFlow 2.0默認激活Eager Execution功能,開發者將能獲得更流暢的調試體驗,另外,tf.function也會將Python轉換成TensorFlow圖,以提供性能優化、遠程執行、簡易串列化、輸出與布署等能力。

官方也提到,第四步開發者可以使用目前部分發布的分散策略(Distribution Strategy)API,執行大型機器學習任務,該API可以簡化在不同硬體配置上分散訓練模型的工作,而且不需要額外改變模型的定義。第五步則可以使用SavedModel輸出模型,TensorFlow 2.0將會標準化模型成可交換格式,可在TensorFlow Serving、TensorFlow Lite、TensorFlow.js以及TensorFlow Hub等地方使用。

也由於在TensorFlow 2.0中,標準化交換格式以及一致的API,賦給模型更強大布署能力,提高了跨平台組件的兼容性。因此開發者從TensorFlow輸出的模型,除了可以直接在應用程序中使用,也可以在TensorFlow Serving、TensorFlow Lite與TensorFlow.js等布署函數庫中使用。

TensorFlow Serving允許模型以HTTP/REST或是gRPC/Protocol Buffers方式提供,而輕量級TensorFlow Lite針對行動與嵌入式設備,可在Android、iOS或是樹莓派上布署模型。 TensorFlow.js則可以在JavaScript環境中布署模型,而TensorFlow也支持多種程序語言,現在有C、Java、Go、C#、Rust、Julia以及R等。

TensorFlow 2.0加入了一系列的功能,以幫助開發者快速的將想法轉為程序代碼,在不犧牲執行性能的情況下,定義和訓練模型。 Keras Functional API以及Model Subclassing API,能讓開發者創建複雜的拓撲,另外,開發者還可以自定義訓練邏輯,使用tf.GradientTape和tf.custom_gradient對梯度計算進行精細度控制。

TensorFlow 2.0還加入了一些新功能,供研究人員和高端用戶使用擴展進行實驗,像是Ragged Tensors、TensorFlow Probability和Tensor2Tensor等。官方提到,結合Eager Execution、分散策略API以及AutoGraph,TensorFlow 2.0成為一個可高度自訂,並且可擴展的平台。

TensorFlow 2.0與TensorFlow 1.x的差異,除了之前發布消息,將tf.contrib從TensorFlow存儲庫和構建程序中移除外,也改變了變數處理方式以及重命名部分API,另外也移除了隊列執行器以及圖集合。為了簡化開發者從舊版本搬移到TensorFlow 2.0的步驟,官方發布轉換工具,可以自動轉換程序代碼,並更換相對應的API,也會標記無法轉換的程序代碼。

另外,SavedModels和存儲的GraphDefs將會向後兼容,也就是說TensorFlow 1.x輸出的SavedModels將能繼續於TensorFlow 2.x版本中使用。官方將繼續為TensorFlow 1.x提供12個月的安全補丁,提供用戶足夠的過度時間。

喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 十輪網 的精彩文章:

AWS推出數據傳輸服務DataSync,讓數據上、下雲更方便
車神舒馬赫終於回來了!醫療費每周高達5萬英鎊

TAG:十輪網 |