【AI關鍵技術】三大熱門深度學習框架新進展



科技巨頭相繼開源釋出深度學習框架,其中Google今年進入正式版的TensorFlow,是GiHub上最受歡迎的機器學習專案。圖片來源/Google

從去年開始,不少科技巨頭紛紛投入開發深度學習框架,像是雲端廠商Google推出的TensorFlow,連社群網站龍頭臉書也釋出Torchnet和Caffe2,而微軟也推出Cognitive Toolkit(CNTK)來加入戰局。這三巨頭釋出的深度學習框架,在今年相繼推出了企業級的新功能。

Google推出最受歡迎的深度學習框架TensorFlow升級至1.2版

2015年底,Google開源釋出自家開發的深度學習框架TensorFlow,,才開源不到半年的時間,TensorFlow就已經成為GiHub上最受歡迎的機器學習專案,目前貢獻者已經將近千人。今年正式進入1.0,而且改版快速,才半年,目前TensorFlow已更新至1.2版。

Google以Apache 2.0授權模式開放TensorFlow函式庫、相關開發工具、說明文件、範例等資源,並邀請開發人員透過TensorFlow.org參與計畫。

TensorFlow可用於任何運算流程圖(Computational Flow Graph),另外自動微分(Auto-differentiation)和最佳化工具可用以改善梯度式機器學習演算法。

TensorFlow從0.8版就開始支援了分散式運算能力,TensorFlow可同時在數百臺機器上執行訓練程式,以建立各種機器學習模型,把原本需要耗費數天或數周的模型訓練縮短到數小時。

TensorFlow底層採用XLA,這是專為TensorFlow圖譜而設計的專用組譯器,效能大為提升,例如在8GPU機器上執行Inception v3 模型速度提升7.3倍,在64GPU環境下跑分散式Inception v3 模型訓練速度更增加到58倍,Google也會於近日將常見模型的實作公開出來。

此外,TensorFlow加入TensorFlow高階API如tf.layers、tf.metrics及tf.losses模組等,並加入tf.keras模組以便能相容於Keras高階神經網路函式庫。TensorFlow還修改Python API,讓TensorFlow與機器學習研發者常用的NumPy用法更相近,並強化穩定性、增加向後相容性等功能,讓開發人員在不影響現有程式碼的情況下,擴增新功能。

TensorFlow現已加入Python 3 Docker images,且PIP套件也相容PyPI,讓TensorFlow只要呼叫pip install tensorflow就可以安裝。目前Google已將TensorFlow更新至1.2版,在Windows環境也開始支援Python 3.6。

社群網站龍頭臉書則搶推輕量版深度學習框架Caffe2

臉書則是在去年6月時,開源了釋出深度學習開發框架Torchnet,藉此降低深度學習開發成本和困難度。Torchnet是以Lua語言撰寫而成,執行於標準x86晶片或GPU上,有助於節省I/O的成本。

Torchnet為深度學習函式庫Torch的框架,目前提供包括資料處理、機器學習的訓練和測試演算法、效能監測計Meter及建立一致性的Log等四個資源,旨在鼓勵程式碼再利用及模組化程式開發。

臉書日前在F8大會上發布了輕量級且模組化的深度學習框架Caffe2,相較於原版Caffe框架,Caffe2更具彈性且效能更好。同時,Caffe2也是臉書推出的第一個能在正式環境中部署的版本,目前已在GitHub上釋出Caffe2原始碼。

不僅如此,Caffe2也能在行動裝置上執行AI的工具,可以部署至iOS、Android和Raspberry Pi裝置,也就是說,使用者將能直接從行動裝置上取得圖像辨識、自然語言處理等功能。另外,Caffe2也支援Python和C++ API,以及整合Visual Studio、Android Studio和XCode開發環境,也能開發行動App。

而開發者也可以利用模型動物園(Model Zoo)中,由開發者社群提供的預先訓練模型(Pre-Trained Model)來快速打造自己的AI應用,如聊天機器人、物聯網、翻譯、語音辨識等應用,或是改進Model Zoo裡的模型,再發布一套新的機器學習模型。

《全文請見iThome(http://www.ithome.com.tw/news/115588)》