為什麼要使用MLOps? - Amazon SageMaker

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

為什麼要使用MLOps?

當您從執行個別人工智慧和機器學習 (AI/ML) 專案轉變為使用 AI/ML 大規模轉型業務時,ML Operations (MLOps) 的學科可以提供協助。MLOps涵蓋 AI/ML 專案在專案管理、CI/CD 和品質保證方面的獨特層面,協助您縮短交付時間、減少瑕疵,並提高資料科學生產力。MLOps指的是以將 DevOps 實務套用至機器學習工作負載為基礎的方法。有關 DevOps 原則的討論,請參閱白 paper DevOps 上的介紹 AWS。 若要進一步了解實作使用 AWS 服務,請參閱在上練習 CI/CD AWS基礎設施即代碼

就像 DevOps,MLOps依賴協同合作且簡化的方法來實現機器學習開發生命週期,人員、程序和技術的交集將開發、建置和操作機器學習工作負載所需的 end-to-end 活動最佳化。

MLOps著重於資料科學和資料工程的交集,並結合現有 DevOps 實務,以簡化整個機器學習開發生命週期的模型交付。MLOps是將機器學習工作負載整合至發行管理、CI/CD 和作業的紀律。MLOps需要整合軟體開發、作業、資料工程和資料科學。

面臨的挑戰 MLOps

雖然MLOps可以提供寶貴的工具來協助您擴展業務,但是當您整合MLOps到機器學習工作負載時,您可能會遇到某些問題。

專案管理

  • 機器學習 (ML) 專案涉及資料科學家,這是一個相對較新的角色,通常不會整合到跨職能團隊中。這些新團隊成員所說的技術語言往往與產品擁有者和軟體工程師截然不同,這加劇了將業務需求轉化為技術需求的常見問題。

溝通與協同合作

  • 建立機器學習專案的可見度,並在不同利益相關者 (例如資料工程師、資料科學家、機器學習工程師) 之間進行協同合作,並且 DevOps 對於確保成功的成果

一切都是策劃給您是嗎

  • 在開發活動中使用生產資料、更長的實驗生命週期、資料管道的相依性、重新訓練部署管道,以及評估模型效能的獨特指標。

  • 模型的生命週期通常獨立於與這些模型整合的應用程式和系統。

  • 整個 end-to-end 系統可以通過版本化的代碼和工件重現。 DevOps 專案使用基礎結構即程式碼 (IAC) 和組態即程式碼 (CAC) 來建置環境,並使用管線即程式碼 (PAC) 來確保一致的 CI/CD 模式。管道必須與大數據和機器學習 (ML) 訓練工作流程整合。這通常意味著管道是傳統的 CI/CD 工具和另一個工作流程引擎的組合。許多機器學習 (ML) 專案都有重要的政策考量,因此管道可能也需要強制執行這些政策。偏移的輸入資料會產生偏移的結果,企業利益相關者越來越關注這一問題。

CI/CD

  • 在中MLOps,源數據是一流的輸入,以及源代碼。這就是為什麼在來源或推論資料變更時,要MLOps求對來源資料和啟動管道執行進行版本化的原因。

  • 管道還必須對機器學習 (ML) 模型以及輸入和其他輸出進行版本化,才能提供可追溯性。

  • 自動化測試必須包括在建置階段和模型生產時對機器學習 (ML) 模型的正確驗證。

  • 建置階段可能包括模型訓練和再訓練,這是一個耗時的資源密集型流程。管道必須足夠精細,以便僅在來源資料或機器學習 (ML) 程式碼變更時執行完整的訓練週期,而不是在相關元件變更時執行完整的訓練週期。

  • API由於機器學習程式碼通常是整體解決方案的一小部分,因此部署管線也可能納入封裝模型以供其他應用程式和系統使用的模型所需的其他步驟。

監控和記錄

  • 擷取模型訓練指標以及模型實驗所需的特徵工程和模型訓練階段。調整機器學習 (ML) 模型需要操作輸入資料的形式以及演算法超參數,並有系統地擷取這些實驗。實驗追蹤可協助資料科學家更有效地工作,並為其工作提供可重複的快照。

  • 部署的機器學習 (ML) 模型需要監控傳遞至模型以進行推論的資料,以及標準端點穩定性和效能指標。監控系統還必須擷取透過適當的機器學習 (ML) 指標評估的模型輸出的品質。

MLOps 的優點

採用MLOps實務可提供下列好處,讓您更快地 time-to-market 處理 ML 專案。

  • 生產力:為自助服務環境提供可存取策劃彙整資料集的存取權,可讓資料工程師和資料科學家更快地移動資料,減少資料遺失或無效資料的情況。

  • 重複性:自動化中的所有步驟可MLDC協助您確保可重複的程序,包括如何訓練、評估、版本化和部署模型。

  • 可靠性:結合 CI/CD 實務,不僅可以快速部署,還可以提高品質和一致性。

  • 可稽核性:版本化從資料科學實驗到來源資料再到訓練模型的所有輸入和輸出,這意味著我們可以準確展示模型的建置方式和部署位置。

  • 資料和模型品質:MLOps可讓我們強制執行原則,以防範模型偏差,並追蹤資料統計屬性和模型品質隨著時間的變更。