使用 Amazon SageMaker 與 MLflow 的機器學習實驗

透過 MLflow 有效大規模管理機器學習模型和生成式 AI 應用程式實驗

為什麼該使用 Amazon SageMaker with MLflow?

Amazon SageMaker 為機器學習 (ML) 和生成式 AI 實驗提供受管 MLflow 功能。此功能可讓資料科學家輕鬆使用 SageMaker 上的 MLflow 進行模型訓練、註冊和部署。管理員可以在 AWS 上快速設定安全又可擴展的 MLflow 環境。資料科學家和 ML 開發人員可以有效追蹤 ML 實驗,並為業務問題找到合適的模型。

Amazon SageMaker with MLflow 的優勢

資料科學家可以使用 MLflow 來追蹤基礎模型微調期間產生的所有指標、評估模型、使用樣本資料測試模型、在 MLflow UI 上逐一比較每個模型的輸出,以及針對其使用案例註冊正確的模型。一旦註冊模型,ML 工程師就可以將模型部署到 SageMaker 推論。
您不需要管理託管 MLflow 所需的任何基礎設施。資料科學家可以使用所有 MLflow 開放原始碼功能,而無需擔心基礎設施的成本問題。這樣一來便可節省設定資料科學環境的時間和成本。MLflow 與 Amazon Identity and Access Management (IAM) 進行整合,可讓您為 MLflow 追蹤伺服器設定角色存取控制 (RBAC)。
在 MLflow 中註冊的模型將使用相關的 Amazon SageMaker 模型註冊表,自動註冊到 Amazon SageMaker Model Registry。這樣一來,資料科學家就能將其模型轉給 ML 工程師以進行生產部署,而無需切換環境。ML 工程師可以將模型從 MLflow 部署到 SageMaker 端點,而無需建立自訂容器或重新封裝 MLflow 模型成品。
隨著 MLflow 專案的發展,SageMaker 客戶將受益於 MLflow 社群的開放原始碼創新,同時享有 AWS 提供的基礎設施管理。

隨時隨地追蹤實驗

ML 實驗在不同的環境中執行,包括本機筆記本、IDE、雲端型訓練程式碼或在 Amazon SageMaker Studio 中受管的 IDE。透過 SageMaker 和 MLflow,您可以使用偏好環境來訓練模型、在 MLflow 中追蹤實驗,並直接或透過 SageMaker Studio 啟動 MLflow UI 進行分析。

記錄實驗

合作進行模型實驗

高效團隊合作是成功資料科學專案的關鍵。 SageMaker Studio 可讓您管理和存取 MLflow 追蹤伺服器和實驗,使團隊成員能共享資訊並實驗結果一致,進而促進合作。

集中管理 ML 實驗中繼資料

評估實驗

為了從多次迭代中找到最佳模型,需要對模型效能進行分析和比較。MLflow 提供散佈圖、長條圖和直條圖等視覺媒介來比較訓練迭代。此外,MLflow 也可以評估模型是否有偏見或公平。

評估 ML 實驗

集中管理 MLflow 模型

許多團隊經常以 MLflow 管理實驗,只有一些模型可以成為生產的候選項目。組織需有簡單的方法來追蹤所有候選模型,以明智決定哪些模型要進行生產。MLflow 與 SageMaker Model Registry 順暢整合,讓組織能看到其在 MLflow 中註冊的模型自動顯示在 SageMaker Model Registry,並配有 SageMaker 模型註冊表進行管控。此整合使資料科學家和機器學習 (ML) 工程師能使用不同工具進行各自的工作:MLflow 負責實驗、SageMaker Model Registry 負責以全面的模型譜系管理生產生命週期。

分享更新和結果

將 MLflow 模型部署到 SageMaker 端點

將模型從 MLflow 順暢部署到 SageMaker 端點,無需為模型儲存空間建置自訂容器。此整合使客戶能夠利用 SageMaker 最佳化推論容器,同時保留 MLflow 的使用者友善體驗來記錄和註冊模型。

重現和稽核 ML 實驗