【我們為什麼挑選這篇文章】 TensorFlow Lite 可以說是 TensorFlow 的完美瘦身版本,讓機器學習的模型在各種行動裝置上跑起來更有效率。 TensorFlow Lite 預覽版現在 iOS、Android 全都支援喔!快來試試看吧!(責任編輯:劉庭瑋)
日前,谷歌正式發布 TensorFlow Lite 開發者預覽版,這是針對移動和嵌入式設備的輕量級解決方案。TensorFlow Lite 是一種全新的設計,具有三個重要功能——輕量級(Lightweight)、跨平台(Cross-platform)、快速(Fast)。
下面是來自 Google Developers Blog 的詳細信息,雷鋒網 AI 科技評論編譯如下。
今天,我們正式發布 TensorFlow Lite 開發者預覽版,這是針對移動和嵌入式設備的輕量級解決方案。TensorFlow 可以在許多平台上運行,從機架上大量的服務器到小型的物聯網設備,但近幾年,隨著大家使用的機器學習模型呈指數級增長,因此需要將訓練模型的平台擴展到移動和嵌入式設備上。TensorFlow Lite 支持設備上機器學習模型的低時延推理。
TensorFlow Lite 是一種全新的設計,它支持以下功能:
- 輕量級(Lightweight):支持機器學習模型的推理在較小二進制數下進行,能快速初始化/啟動。
- 跨平台(Cross-platform):可以在許多不同的平台上運行,現在支持Android 和iOS
- 快速(Fast):針對移動設備進行了優化,包括大大減少了模型加載時間、支持硬件加速。
如今,越來越多的移動設備中含有專用的定制硬件來更高效地進行機器學習。TensorFlow Lite 支持Android 神經網絡API(Android Neural Networks API),大家在使用TensorFlow Lite 時可以利用這些有用的加速器。
當加速器(硬件設備)不可用時,TensorFlow Lite 會返回到CPU 來執行,這將保證模型仍然可以在一大批設備上快速運行。
結構
下圖是TensorFlow Lite 的結構設計:
模塊如下:
1. TensorFlow Model:存儲在硬盤上已經訓練好的TensorFlow 模型
2. TensorFlow Lite Converter: 將模型轉換為TensorFlow Lite 文件格式的程序。
3. TensorFlow Lite Model File: 基於FlatBuffers 的模型文件格式,針對速度和大小進行了優化。
可以將 TensorFlow Lite Model File 部署到 Mobile App ,如上圖中所示:
1. Java API: 處於 Android App 中C++ App 上,方便封裝。
2. C++ API: 加載 TensorFlow Lite Model File,調用解釋器(Interpreter)。
上面的這兩個庫在Android 和iOS 端都可用。
1. Interpreter:使用一組運算符來執行模型。運算符可以選擇,如果不含運算符,只有70KB,加載所有的運算符之後為300KB。比起需要1.5 M(使用一組正規的操作符)的TensorFlow Mobile,能使容量大大減小。
2. 在Android 設備上,Interpreter 支持Android神經網絡API,可以用它進行硬件加速。如果沒有可用的加速器,則默認使用CPU。
開發人員還可以使用 C++ API 來自定義 kernel。
模型
TensorFlow Lite 目前支持很多針對移動端訓練和優化好的模型。
- MobileNet:能夠識別1000種不同對像類的視覺模型,為實現移動和嵌入式設備的高效執行而設計。
- Inception v3:圖像識別模型,功能與MobileNet 相似,它提供更高的精度,但相對來說更大。
- Smart Reply: 設備對話模型,可以即時回复聊天消息,在Android Wear 上有使用這一功能。
Inception v3 和MobileNets 已經在ImageNet 數據集上訓練了。大家可以利用遷移學習來輕鬆地對自己的圖像數據集進行再訓練。
關於 TensorFlow Mobile
正如大家知道的那樣,TensorFlow 可以通過TensorFlow Mobile API 對模型進行移動和嵌入式部署。展望未來,TensorFlow Lite 應該被看作是TensorFlow Mobile 的升級。隨著一步步的成熟,它將成為在移動和嵌入式設備上部署模型的推薦解決方案。
TensorFlow Lite 目前是預覽版,大家仍然可以使用TensorFlow Mobile。
TensorFlow Lite 的功能有很多,目前仍處於緊鑼密鼓的開發階段。這次的發布中,我們特意使用受限平台,來保證一些最重要的常見模型的性能不受到影響。
我們計劃根據用戶的需要來考慮未來優先擴展的功能。我們的開發目標是簡化開發人員的體驗,並讓模型能部署到一系列移動和嵌入式設備上。
很高興開發者也在幫助TensorFlow Lite項目的順利進行。我們將會以與TensorFlow項目相同的熱情來支持和啟動TensorFlow Lite社群。歡迎大家來使用TensorFlow Lite。
更多訊息請點擊: TensorFlow Lite文件頁面,接下來會有持續更新。
(本文經合作夥伴 雷鋒網 授權轉載,並同意 TechOrange 編寫導讀與修訂標題,原文標題為 〈 Google正式發布TensorFlow Lite預覽版,針對移動/嵌入設備的輕量級解決方案 〉。圖片取自 Flickr)
延伸閱讀
中國 AI 戰場開打!Google 強力推廣 TensorFlow,要用 AI 和百度決一死戰
挑戰 TensorFlow 霸主地位!Facebook 聯手微軟整合三大 AI 運算框架,讓 AI 協同工作再也不難
Google 工程師手把手教學!用 Arduino 和 TensorFlow 自組圖像識別小汽車
連 Google 做 5000 個 AI 專案也只成功 10 個!程世嘉:跟風做 AI 前,先問自己「想解決什麼」