TensorFlow Lite 指南

TensorFlow Lite 是可協助開發人員在行動裝置、嵌入式裝置和 IoT 裝置上執行 TensorFlow 模型的一組工具,可讓開發人員在裝置端執行機器學習推論,不僅延遲時間短,並且二進位檔也很小。

TensorFlow Lite 由兩個主要元件組成:

  • TensorFlow Lite 解譯器:可在許多不同類型的硬體上 (包括手機、嵌入式 Linux 裝置和微控制器) 執行經過特別最佳化的模型。
  • TensorFlow Lite 轉換工具:可將 TensorFlow 模型轉換為方便解譯器使用的格式,並且可透過最佳化來降低二進位檔的大小及提高效能。

在邊緣執行機器學習

TensorFlow Lite 的設計是為了讓開發人員能在裝置端輕鬆執行機器學習,不必透過伺服器來回傳送資料,可直接在網路的「邊緣」執行。對開發人員來說,在裝置端執行機器學習有助於改善以下項目:

  • 延遲情況:不必透過伺服器來回傳送資料
  • 隱私性:資料無須離開裝置
  • 連線:不需要網際網路連線
  • 耗電量:可節省網路連線的龐大耗電量

TensorFlow Lite 可用於多種裝置,從小型的微控制器到功能強大的手機都適用。

開始使用

請前往開始使用頁面,瞭解如何在行動裝置上開始使用 TensorFlow Lite。如要將 TensorFlow Lite 模型部署至微控制器,請前往微控制器頁面。

主要功能

  • 解譯器已針對裝置端的機器學習進行調整:支援一系列針對裝置端應用程式進行最佳化的核心運算子,而且二進位檔很小。
  • 支援多元平台:包含 AndroidiOS 裝置、嵌入式 Linux 及微控制器,並善用平台 API 來加速推論。
  • 提供多種語言的 API:包含 Java、Swift、Objective-C、C++ 和 Python。
  • 高效能:在支援的裝置上執行硬體加速、提供針對裝置進行最佳化的核心,以及預先融合的啟用和偏誤
  • 模型最佳化工具:包含量化功能,可在不犧牲準確率的情況下,縮減模型的大小並提升效能。
  • 有效率的模型格式:使用已針對小型檔案和可攜性進行最佳化的 FlatBuffer
  • 預先訓練模型:適用於常見的機器學習工作,可針對應用程式進行自訂。
  • 範例和教學課程:說明如何在支援的平台上部署機器學習模型。

開發工作流程

TensorFlow Lite 的使用工作流程包含下列步驟:

  1. 選擇模型

    使用自己的 TensorFlow 模型、在線上尋找模型,或是從我們的預先訓練模型中進行挑選,並選擇直接套用或是重新訓練。

  2. 轉換模型

    如果您使用的是自訂模型,請使用 TensorFlow Lite 轉換工具和幾行 Python 程式碼,將模型轉換成 TensorFlow Lite 格式。

  3. 部署至裝置

    使用 TensorFlow Lite 解譯器 (提供多種語言的 API) 在裝置端執行模型。

  4. 將模型最佳化

    使用我們的模型最佳化工具包來縮減模型大小並提高效率,同時降低對準確率的影響。

請參閱開始使用頁面,進一步瞭解如何在專案中使用 TensorFlow Lite。

技術限制

TensorFlow Lite 預計為所有 TensorFlow 模型提供高效能的裝置端推論功能。不過,TensorFlow Lite 解譯器目前僅支援一部分針對裝置端用途最佳化的 TensorFlow 運算子。因此,部分模型需要額外步驟才能與 TensorFlow Lite 搭配使用。

請參閱運算子相容性瞭解可用的運算子。

如果您的模型用到了 TensorFlow Lite 解譯器尚未支援的運算子,您可以使用 TensorFlow Select 將 TensorFlow 運算納入您的 TensorFlow Lite 版本。不過,這麼做會增加二進位檔的大小。

TensorFlow Lite 目前不支援裝置端訓練,但這項支援已納入我們的發展藍圖,我們也預計改善其他項目。

後續步驟

想要進一步瞭解 TensorFlow Lite 嗎?您可以參考以下的後續步驟: