預測的表格工作流程

本文件將概略說明預測的資料欄工作流程管道和元件。如要瞭解如何訓練模型,請參閱「使用預測用 Tabular Workflow 訓練模型 」一文。

預測的「表格工作流程」是預測工作完整的管道。這項服務與 AutoML API 類似,但可讓您選擇要控制和自動化的項目。您可以為管道中的每個步驟設定控制項,而非為整個管道設定控制項。管道控制項包括:

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

優點

以下列舉預測用表格式工作流程的部分優點:

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

使用 Vertex AI 管道進行預測

預測用 Tabular Workflow 是 Vertex AI Pipelines 的受管例項。

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

管道和元件總覽

下圖顯示預測用表格式工作流程的模擬管道:

預測管道 

管道元件如下:

  1. feature-transform-engine:執行特徵工程。詳情請參閱「特徵轉換引擎」。
  2. training-configurator-and-validator:驗證訓練設定,並產生訓練中繼資料。

    輸入:

    • instance_schema:OpenAPI 規格中的例項結構定義,用於描述推論資料的資料類型。
    • dataset_stats:描述原始資料集的統計資料。舉例來說,dataset_stats 會提供資料集中的資料列數。
    • training_schema:OpenAPI 規格中的訓練資料架構,用於說明訓練資料的資料類型。
  3. split-materialized-data:將具象化資料分割為訓練集、評估集和測試集。

    輸入:

    • materialized_data:已實體化的資料。

    輸出:

    • materialized_train_split:具體化訓練分割。
    • materialized_eval_split:具體化評估分割。
    • materialized_test_split:已實作的測試集。
  4. calculate-training-parameters-2:計算 automl-forecasting-stage-1-tuner 的預期執行時間長度。

  5. get-hyperparameter-tuning-results - 選用:如果您已將管道設定為略過架構搜尋,請從先前管道執行作業中載入超參數調整結果。

  6. 執行模型架構搜尋並調整超參數 (automl-forecasting-stage-1-tuner),或使用先前管道執行作業的超參數調整結果 (automl-forecasting-stage-2-tuner)。

    • 架構是由一組超參數定義。
    • 超參數包括模型類型和模型參數。
    • 考慮的模型類型包括類神經網路和強化型樹狀結構。
    • 系統會針對考慮的每個架構訓練模型。

    輸入:

    • materialized_train_split:具體化訓練分割。
    • materialized_eval_split:具體化評估分割。
    • artifact - 先前管道執行作業的超參數調整結果。只有在您將管道設定為略過架構搜尋時,這個構件才會是輸入內容。

    輸出:

    • tuning_result_output:調整輸出內容。
  7. get-prediction-image-uri-2:根據模型類型產生正確的推論圖片 URI。

  8. automl-forecasting-ensemble-2:將最佳架構匯集起來,產生最終模型。

    輸入:

    • tuning_result_output:調整輸出內容。

    輸出:

    • unmanaged_container_model:輸出模型。
  9. model-upload-2 - 上傳模型。

    輸入:

    • unmanaged_container_model:輸出模型。

    輸出:

    • model:Vertex AI 模型。
  10. should_run_model_evaluation - 選用:使用測試集計算評估指標。

後續步驟