
TFX 一系列元件,專門用於可擴充的高效能機器學習工作,包括建立模型、進行訓練、提供推論,以及管理線上、行動裝置 (TensorFlow Lite)和網頁應用服務 (TensorFlow JS) 的部署。
ExampleGen:
tf.Examples 格式,提供訓練與評估之用。
StatisticsGen:
pandas.describe()、pandas.info()的功能,也可以視覺化呈現。
SchemaGen:
ExampleValidator:
Transform:
這個元件會運用 TensorFlow Transform (TFT) 程式庫的功能執行特徵工程,分散運算的底層採用 Apache Beam ,程式在部署情境會轉成tf.Graph,因為都是同一套程式碼,達到減少 training-severing skew。
Transform 元件會產生 SavedModel,在 Trainer 元件執行期間匯入並用於 TensorFlow 中的建模程式碼。如果也產生了 EvalSavedModel,可進行後續模型分析,此時也須引入 TFMA 程式庫。

Tuner:
Trainer:
tensorflow、tensorflow.keras 皆可。Evaluator:
tfma.load_eval_results、 tfma.view.render_slicing_metrics 可視覺化瞭解模型的特性,並視需要進行修改。InfraValidator:
Pusher:
Pusher的功能分別對應部署在TensorFlow Lite 、TensorFlow JS 、 Tensorflow Serving 情境。BulkInferrer:
這些元件之間的資料流向如下圖所示:
ExampleGen接收 。StatisticsGen 接收 ExampleGen 數據產生統計情報,供 SchemaGen 產生 Schema、 ExampleValidator 驗證資料之用。SchemaGen 的資料定義也作為資料驗證ExampleValidator 、 Transform 特徵工程之用。Transform 特徵工程、Tuner 參數調整、Trainer 訓練模型為機械學習系統熟悉的建模核心。Trainer 訓練的模型交由 Evaluator 確保能否將模型投入生產、InfraValidator 內部驗證模型是否符合要求。Pusher 部署在網頁、手機終端設備、伺服器等情境。TFX pipeline 各元件與 TFX 程式模組關係對應:
主要程式庫包含
ExampleGen、StatisticsGen、SchemaGen、ExampleValidator 皆屬於 TFDV 程式庫的功能。Apache Airflow 是一個平台,可透過程式輔助的方式編寫、排程及監控工作流程。TFX 使用 Airflow 將工作流程編寫為工作的有向非循環圖 (DAG),而 Airflow 排程器會執行工作站陣列的工作,並且遵循指定的相依性。
豐富的使用者介面方便您以視覺化的方式呈現在生產環境中執行的管線、監控進度,並視需要進行疑難排解。
將工作流程定義為程式碼,即可更輕鬆地進行維護、建立版本、測試和協同合作。
