訓練
認證
Microsoft Certified: Azure Data Scientist Associate - Certifications
使用 Python、Azure Machine Learning 和 MLflow 來管理資料擷取和準備、訓練及部署模型,以及監視機器學習解決方案。
適用於:Azure CLI ml 延伸模組 v2 (目前)
Python SDK azure-ai-ml v2 (目前)
本文會說明 Azure Machine Learning 如何使用機器學習作業 (MLOps) 來管理模型的生命週期。 套用 MLOps 做法可以提高機器學習解決方案的品質與一致性。
MLOps是以 DevOps 原則和做法為基礎,可提升工作流程的效率,例如持續整合、持續部署和持續傳遞。 將這些原則套用至機器學習生命週期會導致:
MLOps 為機器學習程序提供下列功能:
如需 MLOps 的詳細資訊,請參閱機器學習作業。
使用 Azure Machine Learning 管線,將模型定型程序中的所有步驟拼接在一起。 機器學習管線步驟可以包含資料準備、特徵擷取、超參數微調和模型評估。
在 Azure Machine Learning 工作室設計工具中,您可以複製管線來逐一查看其設計,而不會遺失舊版本。 若要在設計工具中隨時複製管線,選取頂端功能表列中的 [複製]。
如需有關 Azure Machine Learning 管線的詳細資訊,請參閱機器學習和管線。
Azure Machine Learning 環境確保您不需要進行手動軟體設定就重現組建。 環境可以追蹤和重現專案的 pip 和 conda 軟體相依性。
您可以使用模型定型和部署的環境。 如需關於環境的詳細資訊,請參閱 Azure Machine Learning 環境。
Azure Machine Learning 可以從任何地方使用 MLOps 來註冊、封裝和部署模型。
模型註冊會在 Azure 雲端的 Azure Machine Learning 工作區中儲存模型並設定其版本。 此模型登錄可讓組織和追蹤您定型的模型變得容易。
已註冊的模型是組成模型的一或多個檔案所在的邏輯容器。 例如,如果您的模型儲存在多個檔案中,您可以將檔案註冊為 Azure Machine Learning 工作區中的單一模型。 註冊之後,您就可以下載或部署已註冊的模型,並接收所有元件檔案。
您也可以註冊在 Azure Machine Learning 外部定型的模型。 Azure Machine Learning 支援可使用 Python 3.5.2 或更高版本載入的任何模型。
您可以依名稱和版本來識別已註冊的模型。 每次註冊與現有模型名稱相同的模型時,登錄都會遞加版本號碼。
您可以在註冊期間提供中繼資料標籤,並在搜尋模型時使用這些標籤。
重要
您無法刪除正在作用中部署中使用的已註冊模型。
如需如何在 Azure Machine Learning 中使用模型的詳細資訊,請參閱在 Azure Machine Learning 中使用模型。
若要將模型部署到生產環境,您必須先將模型封裝到 Docker 映像中。 在大部分情況下,會在部署期間自動在背景中建立映像。 但是,您可以手動指定映像。
先部署至本機開發環境很有用,因為您可以在部署至雲端之前,進行疑難排解和偵錯。 這種做法可協助您避免在部署至 Azure Machine Learning 時發生問題。 如需如何解決常見部署問題的詳細資訊,請參閱如何針對線上端點進行疑難排解。
您可以將模型轉換成 Open Neural Network Exchange (ONNX),以嘗試改善效能。 一般而言,轉換成 ONNX 可以帶來兩倍的效能提升。
如需有關 ONNX 與 Azure Machine Learning 的更多資訊,請參閱建立和加速機器學習模型。
您可以將已定型的機器學習模型部署在本機或雲端中做為端點。 部署會使用 CPU 和 GPU 來進行推斷。
將模型部署為端點時,您必須提供下列項目:
重要
當您部署 MLflow 模型時,您不需要為部署提供輸入腳本或環境。 如需部署 MLflow 模型的詳細資訊,請參閱部署 MLflow 模型的指導方針。
您也可以提供目標部署平台的設定,例如虛擬機器 (VM) 系列類型、可用的記憶體和核心數目。 Azure Machine Learning 建立映像時,也會新增其所需的元件,例如執行 Web 服務所需的資產。
可透過批次端點支援批次評分。 如需批次評分的詳細資訊,請參閱批次端點。
您可以使用模型搭配線上端點進行即時評分。 線上端點的計算目標可以是本機開發環境、受控線上端點或 Azure Kubernetes Service (AKS)。
將模型部署為線上端點時,您必須提供下列資訊:
如需部署以進行即時評分的詳細資訊,請參閱部署線上端點。
部署至線上端點時,您可以使用受控推出來啟用下列案例:
如需使用受控制推出部署的詳細資訊,請參閱針對用於即時推斷的新部署執行安全推出。
Azure Machine Learning 可讓您使用中繼資料,追蹤所有機器學習資產的端對端稽核線索。 例如:
系統會自動擷取模型和資料資產的部分資訊,您也可以使用「標籤」來新增其他資訊。 當您在工作區中尋找已註冊的模型和資料資產時,可以使用標籤做為篩選條件。
注意
當您使用 Azure Machine Learning 工作室 [模型] 頁面上 [篩選依據:] 選項中的 [標籤] 時,請務必使用 TagName=TagValue
(不含空格) 而非 TagName : TagValue
。
Azure Machine Learning 會將重要事件發佈至 Azure 事件格線,其可用來通知機器學習生命週期中的事件,並將其自動化。 如需如何根據 Azure Machine Learning 事件設定事件驅動程序的詳細資訊,請參閱自訂 CI/CD 和事件驅動工作流程。
您可以使用 Git 和 Azure Pipelines,來建立可定型機器學習模型的持續整合流程。 在一般案例中,當資料科學家將變更簽入專案的 Git 存放庫時,Azure Pipeline 會開始定型作業。
您可以檢查作業結果,以查看定型模型的效能特性。 您也可以建立將模型部署為 web 服務的管線。
Machine Learning 延伸模組 (英文) 可讓您更輕鬆地使用 Azure Pipelines。 延伸模組會提供 Azure Pipelines 的下列增強功能:
如需有關搭配 Azure Machine Learning 使用 Azure Pipelines 的詳細資訊,請參閱搭配 Azure Machine Learning 使用 Azure Pipelines。
Microsoft Power BI 支援使用機器學習模型來進行資料分析。 如需詳細資訊,請參閱 AI 與資料流程。
訓練
認證
Microsoft Certified: Azure Data Scientist Associate - Certifications
使用 Python、Azure Machine Learning 和 MLflow 來管理資料擷取和準備、訓練及部署模型,以及監視機器學習解決方案。
文件
使用 Azure DevOps 設定 MLOps - Azure Machine Learning
瞭解如何在 Azure Machine Learning 中設定範例 MLOps 環境
使用 GitHub 設定 MLOps - Azure Machine Learning
了解如何使用 GitHub Actions 在 Azure Machine Learning 中設定範例 MLOps 環境
Azure DevOps for CI/CD - Azure Machine Learning
使用 Azure Pipelines 進行彈性 MLOps 自動化