

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 步驟 6. 展開管道
<a name="step6"></a>

 本指南說明如何使用具體架構，在 上 AWS 快速開始建置 ML 管道。使管道成熟還有其他考量，例如中繼資料管理、實驗追蹤和監控。這些是本指南範圍以外的重要主題。以下各節討論管道管理的另一個層面，即管道自動化。

## 不同層級的自動化
<a name="automation"></a>

雖然您可以在 SageMaker AI 主控台中手動設定訓練管道，但實際上，我們建議將 ML 訓練管道部署中的手動接觸點降至最低，以確保持續且重複地部署 ML 模型。根據您的需求和要解決的業務問題，您可以判斷和實作三個層級的部署策略：半自動化、全自動化和全受管。
+ 半自動化 – 根據預設，上一節討論的步驟遵循半自動化方法，因為它們使用 CloudFormation 範本部署訓練和推論管道。這有助於確保管道的重現性，並協助您輕鬆變更和更新管道。
+ 完全自動化 – 更進階的選項是將持續整合和持續部署 (CI/CD) 用於開發、預備和生產環境。將 CI/CD 實務納入訓練管道的部署，可確保自動化包含可追蹤性和品質閘道。
+ 完全受管 – 最終，您可以開發完全受管的系統，以便您可以使用一組簡單的資訊清單部署 ML 訓練管道，並且系統可以自行設定和協調所需的 AWS 服務。

在本指南中，我們選擇呈現具體的架構。不過，您可以考慮使用其他技術。接下來的兩個部分討論平台和協調引擎的一些替代選擇。

## 適用於 ML 工作負載的不同平台
<a name="platforms"></a>

[Amazon SageMaker AI](https://aws.amazon.com/sagemaker/) 是用於訓練和服務 ML 模型的 AWS 受管服務。許多使用者都很喜歡其廣泛的內建功能，以及其為執行 ML 工作負載提供的許多選項。如果您剛開始在雲端實作 ML，SageMaker AI 特別有用。SageMaker AI 的主要功能包括：
+ 內建可追蹤性 （包括標籤、訓練、模型追蹤、最佳化和推論）。
+ 內建一鍵式選項，可用於以最少的 Python 和 ML 體驗進行訓練和推論。
+ 進階超參數調校。
+ 支援所有主要人工智慧和機器學習 (ML/AI) 架構和自訂 Docker 容器。
+ 內建監控功能。
+ 歷史記錄的內建追蹤，包括訓練任務、處理任務、批次轉換任務、模型、端點和可搜尋性。有些歷史記錄，例如訓練、處理和批次轉換，是不可變且僅附加的。

使用 SageMaker AI 的替代方案之一是 [AWS Batch](https://aws.amazon.com/batch/)。 可針對您環境的運算和協調 AWS Batch 提供較低層級的控制，但它並非為機器學習而自訂建置。其一些主要功能包括：
+ Out-of-the-box工作負載立即可用的運算資源自動擴展。
+ Out-of-the-box支援任務優先順序、重試和任務相依性。
+ 佇列型方法，支援建置遞迴和隨需任務。
+ 支援 CPU 和 GPU 工作負載。使用 GPU 建置 ML 模型的能力至關重要，因為 GPU 可以大幅加快訓練程序，尤其是深度學習模型。
+ 能夠定義運算環境的自訂 [Amazon Machine Image](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/AMIs.html) (AMI)。

## 適用於管道協調的不同引擎
<a name="engines"></a>

第二個主要元件是管道協同運作層。 AWS 提供 [Step Functions](https://aws.amazon.com/step-functions/) 以獲得完全受管的協同運作體驗。Step Functions 的熱門替代方案是 Apache Airflow。在兩者之間進行決策時，請考慮下列事項：
+ 必要的基礎設施 – AWS Step Functions 是全受管服務，而且是無伺服器服務，而 Airflow 需要管理您自己的基礎設施，並以開放原始碼軟體為基礎。因此，Step Functions 提供立即可用的高可用性，而管理 Apache Airflow 需要額外的步驟。
+ 排程功能 – Step Functions 和 Airflow 都提供類似的功能。
+ 視覺化功能和 UI – Step Functions 和 Airflow 都提供類似的功能。
+ 在運算圖表中傳遞變數 – Step Functions 提供有限的 AWS Lambda 函數使用功能，而 Airflow 則提供 XCom 介面。
+ 用量 – Step Functions 廣受 AWS 客戶歡迎，而 Airflow 已被資料工程社群廣泛採用。