MLOps 的 Machine Learning 登錄

在本文中,您將了解如何跨開發、測試和生產環境擴縮 MLOps。 您的環境可能會根據 IT 環境的複雜程度而由少變多,並受到下列因素影響:

  • 安全性與合規性原則 – 在存取控制、網路架構、資料暴露等方面,生產環境需要與開發環境隔離嗎?
  • 訂閱 - 您的開發環境在一個訂閱中,而生產環境分屬不同訂閱嗎? 通常不同的訂閱會用於計費、預算和成本管理用途。
  • 區域 - 您需要部署至不同的 Azure 區域,以支援延遲和備援需求嗎?

在這種情況下,您可能會使用不同的 Azure Machine Learning 工作區進行開發、測試及生產。 此設定會顯示模型訓練和部署的下列挑戰:

  • 您需要在開發工作區中訓練模型,但要將它部署成生產工作區中的端點,可能屬於不同的 Azure 訂閱或區域中。 在此情況下,您必須能夠回溯訓練作業。 例如,當生產部署發生正確性或效能問題時,得以分析用來訓練模型的計量、記錄、程式碼、環境和資料。
  • 您必須使用開發工作區中的測試資料或匿名資料來開發訓練管線,但需要在生產工作區中使用生產資料重新訓練模型。 在此情況下,您可能需要比較範例與生產資料的訓練計量,以確保使用實際資料的訓練最佳化執行良好。

具有登錄的跨工作區 MLOps

登錄與 Git 存放庫極其類似,會將 ML 資產與工作區分離,並裝載在中央位置,使其可供組織中的所有工作區使用。

如果您想要跨環境 (開發、測試、生產) 升階模型,請先在開發環境中反覆開發模型。 當您有良好的候選模型時,就可以將它發佈至登錄。 然後可以將模型從登錄部署到不同工作區中的端點。

提示

如已在工作區中註冊模型,您可以將模型升階至登錄。 您也可以從訓練作業的輸出,直接在登錄中註冊模型。

如果您想要在某個工作區中開發管線,然後在其他工作區中執行該管線,請先從註冊構成管線建置區塊的元件和環境開始。 當您提交管線作業時,其執行所在的工作區是由計算和訓練資料所選取,這對每個工作區而言都是唯一的。

下圖說明探勘和開發工作區間的管線升階,然後在開發、測試和生產環境間的模型升階。

Diagram of pipeline and model use across environments.

下一步