簡介
TensorFlow Hub 託管各種任務的模型。鼓勵相同任務的模型實作常見的 API,如此一來,模型消費者就能輕鬆交換模型,而無需修改使用模型的程式碼,即使模型來自不同的發布者也一樣。
目標是讓相同任務的不同模型之間的交換,如同切換字串值超參數一樣簡單。如此一來,模型消費者就能輕鬆找到最適合他們問題的模型。
這個目錄收集了 TF2 SavedModel 格式模型中常見 API 的規範。(它取代了現已棄用的 TF1 Hub 格式的常見簽名。)
可重複使用的 SavedModel:共同基礎
可重複使用的 SavedModel API 定義了一般慣例,說明如何將 SavedModel 載入回 Python 程式,並將其重新用於更大的 TensorFlow 模型中。
基本用法
obj = hub.load("path/to/model") # That's tf.saved_model.load() after download.
outputs = obj(inputs, training=False) # Invokes the tf.function obj.__call__.
對於 Keras 使用者來說,hub.KerasLayer
類別依賴此 API 將可重複使用的 SavedModel 包裝為 Keras 層 (讓 Keras 使用者無需了解其詳細資訊),並根據以下列出的任務特定 API 設定輸入和輸出。
任務特定的 API
這些 API 使用特定 ML 任務和資料類型慣例,完善了可重複使用的 SavedModel API。