適用於 MLOps 的 Amazon SageMaker

大規模且快速地在生產環境下提供高效的機器學習 (ML) 模型

為什麼要選擇 Amazon SageMaker MLOps

Amazon SageMaker 備有專為機器學習操作 (MLOps) 量身打造的工具,有助於自動化及標準化 ML 生命週期中的作業程序。使用 SageMaker MLOps 工具可輕鬆地大規模訓練、測試、疑難排解、部署及管控 ML 模型,不僅能提高資料科學家和 ML 工程師的效率,還能維護生產環境中的模型效能。

運作方式

運作方式

SageMaker MLOps 的好處

建立可重複使用的訓練工作流程,以便加快模型開發的速度
集中管理 ML 成品的目錄,以便促進模型再現性和管控成效
將 ML 工作流程與 CI/CD 管道加以整合,以便縮短正式上線使用所需的時間
持續不斷地監控生產環境中的資料和模型以維護品質

加速模型開發

佈建標準化的資料科學環境

標準化 ML 開發環境可提高資料科學家的生產力,讓他們輕鬆發起新的專案、輪替專案中的資料科學家並落實 ML 最佳實務做法,最終加快創新腳步。Amazon SageMaker Projects 所提供的範本可透過經精密測試的最新工具和程式庫、原始程式碼控制儲存庫、未定案程式碼以及 CI/CD 管道等,快速佈建標準化的資料科學家環境。

閱讀開發人員指南以使用 SageMaker 專案將 MLOps 自動化

SageMaker MLOps - 佈建標準化的 ML 環境

在 ML 實驗期間使用 MLflow 進行合作

ML 模型構建是一個迭代過程,涉及數百個模型訓練,以找到最佳演算法、架構和參數來達成最佳模型準確度。MLflow 可讓您追蹤這些訓練迭代的輸入和輸出、提高試驗重複性,並促進資料科學家之間的合作。透過全受管 MLflow 功能,您可以為每個團隊建立 MLflow 追蹤伺服器,進而促進 ML 實驗期間的高效協作。

Amazon SageMaker with MLflow 可管理端對端機器學習生命週期、簡化高效模型訓練、追蹤實驗,以及達成跨架構和環境的可重複性。它配備的單一介面可讓進行中的訓練作業以視覺化方式呈現、與其他同儕共享實驗內容,亦可直接註冊實驗的模型。

透過 MLflow 管理機器學習實驗

SageMaker Experiments

自動化 ML 訓練工作流程

自動化訓練工作流程可建立反覆進行的作業程序,藉此協調模型開發步驟,以便快速進行實驗並重新訓練模型。使用 Amazon SageMaker Pipelines 可將整個模型建置工作流程自動化,包括準備資料、特徵工程、訓練模型、調校模型和驗證模型。您可以將 SageMaker Pipelines 設定為定期自動執行或在系統觸發特定事件時自動執行,也可以視情況需要手動執行。

進一步了解 Amazon SageMaker 模型建構管道

SageMaker Pipelines

在生產環境中輕鬆部署及管理模型

快速重現模型以便進行疑難排解

在生產環境下往往必須重現模型,才能針對模型行為進行疑難排解並確定問題的根本原因。有鑑於此,Amazon SageMaker 會記錄工作流程的每一步,建立模型成品的稽核追蹤,例如訓練資料、組態設定、模型參數和學習梯度。透過譜系追蹤可以重建模型,對潛在問題進行偵錯。

進一步了解 Amazon SageMaker ML 歷程追蹤

SageMaker Lineage Tracking

集中追蹤和管理模型版本

建構 ML 應用程式需要開發模型、資料管道、訓練管道以及驗證測試。使用 Amazon SageMaker Model Registry 可以在一個中央儲存庫中追蹤模型版本及其中繼資料 (例如使用案例分組以及模型效能指標基準),從而輕鬆根據業務需求選擇適當的部署模型。此外,SageMaker Model Registry 還可以自動記錄核准工作流程以滿足稽核和合規需求。

進一步了解如何使用模型註冊表來註冊和部署模型

SageMaker Model Registry

透過程式碼定義 ML 基礎架構

透過宣告式組態檔案協調基礎架構 (所謂的「基礎架構即程式碼」) 是佈建 ML 基礎架構並完全落實 CI/CD 管道或部署工具所指定之解決方案架構的常用方式。使用 Amazon SageMaker Projects 可以透過預建的範本檔案來編寫基礎架構即程式碼。

進一步了解如何使用 SageMaker 專案將 MLOps 自動化

將整合和部署 (CI/CD) 工作流程加以自動化

ML 開發工作流程需與整合和部署工作流程整併在一起,才能快速交付新的模型供生產環境的應用程式使用。Amazon SageMaker Projects 將 CI/CD 實務帶入 ML,例如讓開發和生產環境保持對等狀態、來源和版本控制、A/B 測試,以及端對端自動化等。因此,模型一經核准並提高靈活度後,就會進入生產環境正式上線使用。 

此外,Amazon SageMaker 還設有內建的防護機制,有助於維護端點的可用性並盡量降低部署風險。SageMaker 能妥善設定和協調藍/綠部署等最佳的部署實務做法,進而達到最高的可用性並將其與自動復原機制等端點更新機制整合,透過這種方式盡快自動察覺問題,同時在生產環境受到嚴重影響之前採取補救措施。

使用 SageMaker 專案,透過 CI/CD 建立端對端 ML 解決方案

適用於機器學習的 Amazon SageMaker CI/CD

持續不斷地重新訓練模型以維護預測品質

一旦模型進入正式上線的生產環境後,就必須設定提醒以監控模型的效能,這樣隨時待命的資料科學家就可以針對問題進行疑難排解並觸發模型的重新訓練。Amazon SageMaker Model Monitor 透過即時偵測模型漂移和概念漂移並向您發送提醒,便於您立即採取行動,從而協助您維護模型的品質。SageMaker Model Monitor 會持續監控模型效能特徵,例如準確度,它可衡量與預測的總數相比正確預測的數量,以便您應對異常狀況。SageMaker Model Monitor 與 SageMaker Clarify 整合,以提高對潛在偏差的可見性。

進一步了解

SageMaker Model Monitor

最佳化模型部署,以達到最佳效能和成本效益

使用 Amazon SageMaker 可輕鬆部署 ML 模型,無論在任何使用情況下都能達到高效能和低成本的效果。它提供各式各樣的 ML 基礎架構和模型部署選項,能滿足一切 ML 推論需求。

進一步了解

SageMaker Model Hosting