MLOps 的 Machine Learning 登錄
本文說明 Azure Machine Learning 登錄如何將機器學習的資產與工作區分離,讓您能夠跨開發、測試和生產環境使用 MLOps。 您的環境可能會隨 IT 系統的複雜性而不同。 下列因素會對您需要的環境數目和類型產生影響:
- 安全性與合規性原則。 在存取控制、網路架構、資料暴露等方面,生產環境可能需要與開發環境隔離。
- 訂用帳戶。 開發環境和生產環境常會使用個別的訂用帳戶進行計費、預算與成本管理。
- 區域。 您可能需要部署至不同的 Azure 區域,以支援延遲和備援需求。
在前述情況下,您可能會使用不同的 Azure Machine Learning 工作區進行開發、測試及生產。 此設定顯示模型定型和部署可能會有的下列挑戰:
您可能需要在開發工作區中定型模型,但要將其部署至生產工作區中的端點 (可能位於不同的 Azure 訂用帳戶或區域)。 在此情況下,您必須能夠回溯訓練作業。 例如,若生產部署發生正確性或效能問題,您就必須分析用來定型模型的計量、記錄、程式碼、環境和資料。
您可能須使用開發工作區中的測試資料或匿名資料來開發定型管線,但需要在生產工作區中使用生產資料重新定型模型。 在此情況下,您可能需要比較範例與生產資料的定型計量,以確保定型最佳化會使用實際資料妥善執行。
具有登錄的跨工作區 MLOps
登錄與 Git 存放庫非常相似,會將機器學習資產與工作區分離,並資產裝載在中央位置,使其可供組織中的所有工作區使用。 您可以使用登錄來儲存和共享資產,例如模型、環境、元件和數據集。
若要跨開發、測試和生產環境升階模型,首先請在開發環境中反覆開發模型。 當您有良好的候選模型時,就可以將它發佈至登錄。 然後可以將模型從登錄部署到不同工作區中的端點。
提示
如已在工作區中註冊模型,您可以將模型升階至登錄。 您也可以從訓練作業的輸出,直接在登錄中註冊模型。
若要在某個工作區中開發管線,然後在其他工作區中執行該管線,請先註冊構成管線建置組塊的元件和環境。 當您提交管線作業時,計算和定型資料 (對每個工作區而言都是唯一的) 將決定其執行所在的工作區。
下圖說明探勘與開發工作區之間的定型管線升階,然後定型的模型升階至測試和生產環境的情形。