端對端 AutoML 的資料表工作流程

本文件將概略說明端對端 AutoML 管道和元件。如要瞭解如何使用端對端 AutoML 訓練模型,請參閱「使用端對端 AutoML 訓練模型」。

端對端 AutoML 的「表格工作流程」是專為分類和迴歸工作而設計的完整 AutoML 管道。這項功能與 AutoML API 類似,但可讓您選擇要控制和自動化的項目。您可以為管道中的每個步驟設定控制項,而非為整個管道設定控制項。管道控制項包括:

  • 資料分割
  • 特徵工程
  • 架構搜尋
  • 模型訓練
  • 模型集成
  • 模型精煉

優點

以下是針對端對端 AutoML 的資料欄工作流程的部分優點:

  • 支援大型資料集,大小為數 TB,最多可包含 1000 個欄。
  • 您可以限制架構類型的搜尋空間或略過架構搜尋,提高穩定性並縮短訓練時間
  • 您可以手動選取用於訓練和架構搜尋的硬體,提升訓練速度
  • 可讓您透過蒸餾或變更集合大小,縮減模型大小並改善延遲時間
  • 您可以在強大的管道圖表介面中檢查每個 AutoML 元件,查看轉換的資料表、評估的模型架構,以及更多詳細資料。
  • 每個 AutoML 元件都享有更高的彈性和透明度,例如可自訂參數、硬體、查看程序狀態和記錄等。

在 Vertex AI Pipelines 上執行端對端 AutoML

端對端 AutoML 的表格工作流程是 Vertex AI Pipelines 的受管執行個體。

Vertex AI Pipelines 是執行 Kubeflow 管道的無伺服器服務。您可以使用管道來自動執行及監控機器學習和資料準備工作。管道中的每個步驟都會執行管道工作流程的一部分。舉例來說,管道可以包含分割資料、轉換資料類型和訓練模型的步驟。由於步驟是管道元件的例項,因此步驟會包含輸入內容、輸出內容和容器映像檔。步驟輸入內容可從管道的輸入內容設定,也可以取決於管道中其他步驟的輸出內容。這些依附元件會將管道的工作流程定義為有向非循環圖。

管道和元件總覽

下圖顯示端對端 AutoML 的資料表工作流程建模管道:

端對端 AutoML Tables 管道 

管道元件如下:

  1. feature-transform-engine:執行特徵工程。詳情請參閱「特徵轉換引擎」。
  2. split-materialized-data:將具象化資料拆分為訓練集、評估集和測試集。

    輸入:

    • 具體化資料 materialized_data

    輸出:

    • 已實體化的訓練分割區 materialized_train_split
    • 已具現的評估分割作業 materialized_eval_split
    • 具體化測試集 materialized_test_split
  3. merge-materialized-splits - 合併具體化評估分割作業和具體化訓練分割作業。
  4. automl-tabular-stage-1-tuner:執行模型架構搜尋並調整超參數。

    • 架構是由一組超參數定義。
    • 超參數包括模型類型和模型參數。
    • 考慮的模型類型包括類神經網路和強化型樹狀結構。
    • 系統會針對考慮的每個架構訓練模型。
  5. automl-tabular-cv-trainer:針對輸入資料的不同資料區塊訓練模型,以便交叉驗證架構。

    • 系統會考慮先前步驟中成效最佳的架構。
    • 選出約十個最佳架構。具體數字則由訓練預算定義。
  6. automl-tabular-ensemble:將最佳架構組合起來,產生最終模型。

    • 下圖說明使用袋法進行 K 折交叉驗證:

    袋化集成 

  7. condition-is-distill - 選用。建立較小版本的集成模型。

    • 較小的模型可縮短推論的延遲時間和成本。
  8. automl-tabular-infra-validator:驗證訓練的模型是否有效。

  9. model-upload:上傳模型。

  10. condition-is-evaluation - 選填。使用測試集計算評估指標。

後續步驟