TensorFlow Lite 轉換工具可用來將 TensorFlow 模型轉換為經過最佳化的 FlatBuffer 格式,以便 TensorFlow Lite 解譯器使用。
FlatBuffer
FlatBuffer 是高效率的開放原始碼跨平台序列化程式庫,與通訊協定緩衝區相似,差別在於 FlatBuffer 不需要剖析和解除封裝成次要表示法的步驟,資料即可存取,因此可以省下為個別物件所分配的記憶體。FlatBuffer 程式碼所占用的空間比通訊協定緩衝區小一個數量級。
從模型訓練到裝置部署
TensorFlow Lite 轉換工具會透過 TensorFlow 模型建立 TensorFlow Lite FlatBuffer 檔案 (.tflite
)。
轉換工具支援下列輸入格式:
- SavedModel
- 凍結
GraphDef
:由 freeze_graph.py 建立的模型。 tf.keras
HDF5 模型。- 任何取自
tf.Session
的模型 (僅支援 Python API)。
系統會接著將 TensorFlow Lite FlatBuffer
檔案部署至用戶端裝置,而 TensorFlow Lite 解譯器會使用經過壓縮的模型在裝置端執行推論。這個轉換程序如下圖所示:
選項
你可以透過下列兩個選項中的任一個選項,來使用 TensorFlow Lite 轉換工具: