MLOps 部署機器學習管道


MLOps(機器學習運維)提供了一套標準化的流程和技術能力,用於快速可靠地開發、部署和執行機器學習系統。資料科學家、機器學習工程師和 DevOps 工程師協同工作,透過 MLOps 取得優異成果。

有時機器學習產品在生產過程中會失敗,但 MLOps 使得許多團隊能夠透過加快機器學習管道的開發和釋出來協同工作。許多企業越來越重視部署管道和使用 MLOps 最佳實踐來控制整個流程。

什麼是管道?

機器學習管道可用於管理和自動化建立機器學習模型所需的工作流程。管道由多個順序流程組成,涵蓋從模型訓練和部署到資料提取和預處理的所有內容。

迭代式機器學習管道重複每個步驟以提高模型的準確性並達到預期結果。MLOps 管道的目標是以有效且經濟高效的方式大規模地將機器學習模型應用於傳入資料。它旨在透過提供標準的部署工具來減少機器學習工程師在將每個新模型投入執行時花費的時間。

機器學習管道的四大支柱

以下是機器學習管道的四大支柱:

跟蹤 - 在開發系統時,跟蹤所有程式碼、資料和模型至關重要。記錄哪些模型已應用於哪些資料集對於審計至關重要。

自動化 - 機器學習專業人員可以透過使用持續整合/持續交付 (CI/CD) 來更快、更高質量地交付機器學習模型。單元測試、壓力測試、整合測試和迴歸測試都應作為 CI/CD 的一部分自動化。

監控 - MLOps 需要透過有效的日誌記錄和警報來密切關注機器學習管道。透過定期跟蹤機器學習管道的有效性,可以在問題變得嚴重之前發現它們。為了確保模型按預期執行,MLOps 管道應密切關注資料漂移和錯誤預測。

可靠性 - 可靠的機器學習管道將按預期執行並持續為業務創造價值。

機器學習管道的注意事項

  • 考慮建立機器學習模型所涉及的每個步驟。從資料的收集和預處理開始,逐步進行。

  • 測試應該被視為管道的重要組成部分。使用管道,您可以更徹底地進行測試,因為您不必每次都手動進行。

  • 機器學習管道的編排可以透過多種方式完成,但基礎知識始終保持不變。您指定管道的輸入和輸出以及元件的執行順序。

手動 ML 管道與自動化 ML 管道

以下是手動 ML 管道與自動化 ML 管道的區別:

手動管道

自動化管道

在此管道中,模型被視為產品。

在此管道中,管道被視為產品。

它具有緩慢的迭代週期。

它具有快速的迭代週期。

它是一個指令碼驅動的過程。

它是一個自動化過程。

資料科學家和機器學習工程師互動不多。

資料科學家和機器學習工程師之間有良好的溝通。

它不包含版本控制。

它包含版本控制。

構建機器學習管道的步驟

以下是構建機器學習管道所涉及的步驟:

  • 資料收集 - 這是一個關鍵階段,它能夠收集機器學習模型成功滿足關鍵績效指標 (KPI) 所需的關鍵資料。根據我們試圖解決的是分類問題還是迴歸任務,這些指標會發生變化。

  • 資料清洗 - 資料清洗是指從資料集中糾正或刪除不準確、損壞、格式不正確、重複或不完整的資料的做法。

  • 資料視覺化 - 在獲得預測所需的相關資料後,現在是時候研究資料特徵與輸出變數之間是否存在任何關聯了。使用有用的視覺化工具,例如條形圖、散點圖和計數圖,可以極大地促進對資料的理解和分析,從而可以與利益相關者清晰地溝通。工具:MATLAB、R 和 Python。

  • 使用資料建模進行預測 - 可以使用以下任何方法來實現此目的:強化學習、無監督學習、半監督學習和監督學習。

  • 模型部署 - 現在我們已經訓練了各種模型並調整了超引數,是時候即時部署模型並評估其效能了。

  • 模型監控 - 工作流程的最後階段將持續檢查模型的效能,以評估其執行情況以及是否根據 KPI 達到了預期。

更新於:2023年2月17日

瀏覽量 295

開啟您的職業生涯

完成課程獲得認證

開始學習
廣告