探索解決方案架構
開始之前,讓我們先探索架構以了解所有需求。 將模型帶入生產環境,表示您需要調整解決方案,並與其他小組合作。 您已決定與資料科學家、資料工程師和基礎結構小組一起使用下列方法:
- 所有資料都會儲存在資料工程師所管理的 Azure Blob 儲存體中。
- 基礎結構小組會建立必要的 Azure 資源,例如 Azure Machine Learning 工作區。
- 資料科學家將著重於內部迴圈:開發和定型模型。
- 機器學習工程師會採用定型的模型,並將其部署在外部迴圈中。
您已與更大的小組一起設計架構來實現機器學習作業 (MLOps)。
注意
此圖表簡單呈現了 MLOps 架構。 若要檢視更詳細的架構,請探索 MLOps (v2) 解決方案加速器中的各種使用案例。
MLOps 架構的主要目標是建立穩固且可重現的解決方案。 若要達成目的,此架構包括:
- 安裝程式:為解決方案建立所有必要的 Azure 資源。
- 模型開發(內部迴圈):探索和處理數據以定型和評估模型。
- 持續整合:封裝並註冊模型。
- 模型部署(外部迴圈):部署模型。
- 持續部署:測試模型並升階至生產環境。
- 監視:監視模型和端點效能。
此時在您的專案中會建立 Azure Machine Learning 工作區、資料會儲存在Azure Blob 儲存體中,而資料科學小組已定型模型。
您想要藉由將模型部署至生產環境,從內部迴圈和模型開發移至外部迴圈。 因此,您必須將資料科學小組的輸出轉換成 Azure Machine Learning 中強固且可重現的管線。
確保所有程式碼都會儲存為指令碼,並以 Azure Machine Learning 作業的形式執行這些指令碼,這可讓您更輕鬆地將模型定型自動化,以及在未來重新定型模型。
資料科學小組不斷地致力於模型開發。 他們為您提供 Jupyter Notebook,其中包括下列工作:
- 讀取和探索資料。
- 執行特徵工程。
- 定型模型。
- 評估模型。
在設定過程中,基礎結構小組已建立:
- 可供數據科學小組用於探索和實驗的 Azure Machine Learning 開發 (dev) 工作區 。
- 工作區中的數據 資產 ,此資產是指 Azure Blob 記憶體中包含資料的資料夾。
- 執行筆記本和腳本所需的計算資源。
您對 MLOps 所做的第一項工作是轉換來自資料科學家的工作,以便您可以輕鬆地將模型開發自動化。 雖然資料科學小組在 Jupyter Notebook 中工作,但您需要使用指令碼並使用 Azure Machine Learning 作業來執行這些指令碼。 作業的輸入將是基礎結構小組所建立的資料資產,其指向位於 Azure Blob 儲存體 (連線至 Azure Machine Learning 工作區) 上的資料。