探索解決方案架構

已完成

若您與規模較小的小組處理較小的專案,只有一個 Azure Machine Learning 工作區可能相當合理。 一個工作區可用於所有流程:訓練、測試與部署模型。 不過,在 Proseware 中,您想要有一個強固且與未來技術兼容的解決方案,因此您會建置與維護多個您想要與 Web 應用程式整合的模型,以便醫生使用時可輕鬆調整。

為了快速且安全地將模型從開發移至生產環境,您已同意執行高等級機器學習作業 (MLOPs) 架構。

Diagram of machine learning operations architecture.

注意

此圖表簡單呈現了 MLOps 架構。 若要檢視更詳細的架構,請於 MLOps (v2) 解決方案加速器中探索各種使用案例。

架構包含:

  1. 設定:為解決方案建立所有必要的 Azure 資源。
  2. 模型開發 (內部迴圈):探索與處理資料來訓練與評估模型。
  3. 持續整合:封裝並註冊模型。
  4. 模型部署 (外部迴圈):部署模型。
  5. 持續部署:測試模型並升階至實際執行環境。
  6. 監視:監視模型與端點效能。

為了大規模使用機器學習模型,Proseware 想要在不同的階段使用不同的環境。 擁有不同的環境會更容易控制資源存取。 然後,每個環境均可與個別的 Azure Machine Learning 工作區建立關聯。

注意

在此課程模組中,我們會參考 DevOps 對環境的解譯。 請注意,Azure Machine Learning 也會使用環境一詞來描述執行指令碼所需的 Python 套件集合。 這兩種環境概念互不相關。 深入了解 Azure Machine Learning 環境

若要允許在部署前測試模型,您想要使用三種環境:

Diagram of development, staging, and production environment.

用於內部迴圈的開發環境:

  1. 資料科學家會訓練模型。
  2. 模型已封裝並註冊。

用於外部迴圈一部分的預備環境:

  1. 使用 Lint 分析與單元測試來測試程式碼與模型。
  2. 部署模型以測試端點。

用於外部迴圈另一部分的生產環境:

  1. 將模型部署至生產端點。 生產端點會與 Web 應用程式整合。
  2. 監視模型與端點效能,以在必要時觸發重新訓練。

雖然許多機器學習工作可以且應該自動化,但您也會希望規劃想要進行閘道核准的點。 模型經過訓練與封裝後,您會想要先通知潛在客戶資料科學家先驗證模型,再移至預備環境。

同樣地,在預備環境中測試模型後,若您想要新增閘道核准,以確保軟體發展小組的人員在將模型部署至生產環境前,確認所有測試都成功。

當您使用環境時,閘道核准可讓您控制從一個環境移至下一個環境的部署。