TensorFlow Lite來了!手機上輕量的AI運算

樂通探索夢發表於2018-12-20

TensorFlow Lite 可以說是 TensorFlow 的完美減肥版本,讓機器學習的模型在各種行動裝置上跑起來更有效率。 TensorFlow Lite 預覽版現在 iOS、Android 全都支援喔!快來試試看吧!日前,谷歌正式釋出 TensorFlow Lite 開發者預覽版,這是針對移動和嵌入式裝置的輕量級解決方案。TensorFlow Lite 是一種全新的設計,具有三個重要功能——輕量級(Lightweight)、跨平臺(Cross-platform)、快速(Fast)。

TensorFlow Lite來了!手機上輕量的AI運算
下面是來自 網路大廠公司Developers Blog 的詳細資訊,雷鋒網 AI 科技評論編譯如下。今天,我們正式釋出 TensorFlow Lite 開發者預覽版,這是針對移動和嵌入式裝置的輕量級解決方案。TensorFlow 可以在許多平臺上執行,從機架上大量的伺服器到小型的物聯網裝置,但近幾年,隨著大家使用的機器學習模型呈指數級增長,因此需要將訓練模型的平臺擴充套件到移動和嵌入式裝置上。TensorFlow Lite 支援裝置上機器學習模型的低時延推理。TensorFlow Lite 是一種全新的設計,它支援以下功能: 1.輕量級(Lightweight):支援機器學習模型的推理在較小二進位制數下進行,能快速初始化/啟動。 2.跨平臺(Cross-platform):可以在許多不同的平臺上執行,現在支援 Android 和 iOS 3.快速(Fast):針對移動裝置進行了優化,包括大大減少了模型載入時間、支援硬體加速。 如今,越來越多的移動裝置中含有專用的定製硬體來更高效地進行機器學習。TensorFlow Lite 支援 Android 神經網路 API(Android Neural Networks API),大家在使用 TensorFlow Lite 時可以利用這些有用的加速器。當加速器(硬體裝置)不可用時,TensorFlow Lite 會返回到 CPU 來執行,這將保證模型仍然可以在一大批裝置上快速執行。

結構 下圖是 TensorFlow Lite 的結構設計:

TensorFlow Lite來了!手機上輕量的AI運算
模組如下:

  1. TensorFlow Model:儲存在硬碟上已經訓練好的 TensorFlow 模型
  2. TensorFlow Lite Converter: 將模型轉換為 TensorFlow Lite 檔案格式的程式。
  3. TensorFlow Lite Model File: 基於 FlatBuffers 的模型檔案格式,針對速度和大小進行了優化。 可以將 TensorFlow Lite Model File 部署到 Mobile App ,如上圖中所示:
  4. Java API: 處於 Android App 中 C++ App 上,方便封裝。
  5. C++ API: 載入 TensorFlow Lite Model File,呼叫直譯器(Interpreter)。 上面的這兩個庫在 Android 和 iOS 端都可用。
  6. Interpreter:使用一組運算子來執行模型。運算子可以選擇,如果不含運算子,只有 70KB,載入所有的運算子之後為 300KB。比起需要 1.5 M(使用一組正規的操作符) 的 TensorFlow Mobile,能使容量大大減小。
  7. 在 Android 裝置上,Interpreter 支援 Android 神經網路 API,可以用它進行硬體加速。如果沒有可用的加速器,則預設使用 CPU。 開發人員還可以使用 C++ API 來自定義 kernel。

模型 TensorFlow Lite 目前支援很多針對移動端訓練和優化好的模型。 1.MobileNet:能夠識別 1000 種不同對像類的視覺模型,為實現移動和嵌入式裝置的高效執行而設計。 2.Inception v3:影像識別模型,功能與 MobileNet 相似,它提供更高的精度,但相對來說更大。 3.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。部分參考資訊內容:勝博發一起祈福 chiayuan.org.tw/

相關文章