如何使用MLOps將機器學習自動推向生產環境? - kdnuggets
由於MLOps是一個新生領域,因此可能很難掌握其含義和要求。實施MLOps的最大挑戰之一是在ML管道上疊加DevOps實踐的難度。這主要是由於根本差異:DevOps處理的是程式碼,而ML是既是程式碼又有資料。當涉及到資料時,不可預測性始終是一個主要問題。
由於程式碼和資料是獨立且並行發展的,因此斷開連線會導致ML生產模型變慢且經常不一致。此外,由於缺乏難以跟蹤和版本化的海量資料的可再現性,可能無法應用簡單的CI / CD方法。因此,對於生產中的機器學習,採用CI / CD / CT(連續培訓)方法至關重要。
資料團隊只需將MLOps視為獨立於各個資料例項的程式碼工件即可。因此,將其分為兩個不同的管道(訓練管道和服務管道)可以幫助確保批處理檔案的安全執行環境以及有效的測試周期。
培訓流程涉及整個模型準備過程,該過程從收集和準備資料開始。一旦收集,驗證和準備了資料,資料科學家就需要實施特徵工程以分配用於培訓和生產的資料值。同時,必須選擇一種演算法,該演算法將定義模型如何識別資料模式。完成此操作後,該模型可以根據歷史離線資料開始訓練。然後,可以在透過模型登錄檔將其部署到生產管道之前,對經過訓練的模型進行評估和驗證。
完整模型準備過程的示意圖
生產流程涉及使用部署的模型基於線上或現實資料集生成預測。這就是CI / CD / CT方法透過管道自動化進入完整週期的地方。資料是從端點收集的,幷包含來自要素儲存的其他資料。接下來是資料準備,模型訓練,評估,驗證以及最終生成預測的自動化過程。加強此自動化過程的一些元件包括後設資料管理,管道觸發器,功能儲存以及獨立的資料和模型版本控制。
一旦將模型部署到管道中,然後就可以將所得資料用於在訓練管道中連續訓練模型。這樣,它關閉了資料/程式碼迴圈並簡化了部署過程。
建立合適的團隊
理想情況下,MLOps團隊應包括來自運營,IT和資料科學部門的成員。具有在機器學習中實現運維經驗的企業領導者應領導該團隊。
就協調團隊而言,MLOps團隊可以與IT下的企業體系結構團隊保持一致,也可以與中央分析或資料科學團隊整合。根據需求,MLOps團隊可以與特定業務部門以及資料科學或IT團隊一起管理複雜的模型。
MLOps團隊負責人需要明確定義任務的角色,例如資料準備,訓練ML模型,部署模型等。
MLOps的優勢和前進的方向
利用MLOps的最大好處是快速,創新的ML生命週期管理。MLOps解決方案使資料團隊可以更輕鬆地與IT工程師進行協作,並提高了模型開發的速度。此外,監視,驗證和管理用於機器學習模型的系統的規定可加快部署過程。
除了透過快速的自動化工作流節省時間外,MLOps還支援資源的最佳化和可重用性。透過利用MLOps,IT團隊可以建立一個自學習模型,該模型可以長期容納資料漂移。
MLOps的快速崛起預示著未來,我們將看到它發展成為競爭必需品。隨著ML從研究到應用的發展,它將需要與現代商業模型的敏捷性保持一致,並適應不斷變化的環境。儘管這仍然是未來的某種方式,但企業將需要立即採取行動,抓住時機。
相關文章
- 什麼是機器學習MLOps? - kdnuggets機器學習
- 【機器學習】在生產環境使用Kafka構建和部署大規模機器學習機器學習Kafka
- [譯] 教學:如何使用實際按鈕將應用程式部署到生產環境
- 機器學習MLOps學習路徑 - AI_Grigor機器學習AIGo
- Python 環境下的自動化機器學習超引數調優Python機器學習
- 【機器學習】深度學習開發環境搭建機器學習深度學習開發環境
- 將機器學習投入生產的雲服務SageMaker - svpino機器學習
- 機器學習的文字摘要方法概述 - kdnuggets機器學習
- Webpack4 學習筆記八 開發環境和生產環境配置Web筆記開發環境
- 如何建立企業級別的機器學習模型伺服器?- kdnuggets機器學習模型伺服器
- 當前機器學習失敗危機呼喚MLOps - gradientflow機器學習
- ElasticSearch7.3 學習之生產環境實時重建索引Elasticsearch索引
- mirrord:輕鬆地將流量從生產環境映象到開發環境開發環境
- ClickHouse生產環境部署
- 生產環境 壓測
- 使用 TensorFlow Extended (TFX) 在生產環境中部署機器學習 丨 Google 開發者大會 2018機器學習Go
- Feature Store將成為機器學習與資料工程的基礎架構 - KDnuggets機器學習架構
- ZenML:可擴充套件的開源機器學習MLOps框架套件機器學習框架
- 自動機器學習簡述(AutoML)機器學習TOML
- TorchServe 詳解:5 步將模型部署到生產環境模型
- 使用 Webpack 進行生產環境配置(附 Demo)Web
- 機器學習開篇第一步:如何設定Python環境?機器學習Python
- 專案開發中,如何使用eolinker進行環境管理:開發、測試和生產環境
- 學習使用azureCLI建立linux環境Linux
- 用 Spring 區分開發環境、測試環境、生產環境Spring開發環境
- PayPal將CRDT資料型別落實到生產環境資料型別
- 使用 Docker 開發 PHP 專案(五):生產環境DockerPHP
- 資料科學家會被機器學習工程師取代嗎? - KDnuggets資料科學機器學習工程師
- 資料科學家與機器學習工程師的區別? - kdnuggets資料科學機器學習工程師
- Java可以用於機器學習和資料科學嗎? - kdnuggetsJava機器學習資料科學
- 自動機器學習和AI初學者指南機器學習AI
- Unity機器學習ML-Agents-release_21環境安裝Unity機器學習
- 機器學習的7個真實世界生產案例機器學習
- Yarn生產環境核心引數Yarn
- Webpack(開發、生產環境配置)Web
- 基於化學環境的多相催化吸附機器學習框架機器學習框架
- 機器學習框架ML.NET學習筆記【9】自動學習機器學習框架筆記
- 如何學習機器學習機器學習