六條規則讓你的ML模型部署的更快

  • 2020 年 8 月 18 日
  • AI

字幕組雙語原文:六點規則讓你的ML模型部署的更快

英語原文:Six Rules for Deploying your Machine Learning Models Faster

翻譯:雷鋒字幕組(yhfwww


數據科學和機器學習幾乎可以改善組織的任何方面,但前提是你的想法得到利用。在過去的一年中,我們學到了很多關於更快地構建和部署機器學習模型的知識,我們想分享一些我們在這裡學到的東西。

圖:《棕色田野上奔跑的獵豹》 來自《Unsplash》,作者Cara Fuller

形勢

在我們的組織中,我們需要儘快從我們的分析投資中獲得回報。我們需要更快地將機器學習模型應用到生產中。最重要的是,我們不想讓偉大的想法停留在紙面上,只能等着被使用。

傳統上,我們將為每個數據產品構建為定製解決方案。每個定製解決方案之間幾乎沒有重用。我們需要的是一條生產數據產品的流水線。

因此,我們建立了一條流水線來構建、測試和部署數據產品,我們稱之為機器學習平台。有了它,我們現在可以在幾分鐘內將模型部署到生產環境中。我們不再需要等那麼長時間才能享受分析投資的回報。

一路上我們學到了什麼

在這個過程中,我們學習了一些關於如何安全、快速地構建、測試和部署機器學習模型的重要規則。這些規則改變了我們的工作方式,希望您會發現它們對您和您的組織有用。

1.採用自助服務

在我們的機器學習平台存在之前,數據科學家創建的模型將交給IT部門,這樣他們就可以為每個模型創建數據管道和模型部署環境。有些模型在部署之前甚至被重寫成另一種語言。

我們構建了機器學習平台,為模型構建者提供了通過內部模型管理流程自主部署模型的能力。自助服務是提高速度的關鍵。

2.使用容器從基礎設施中提供抽象

容器提供了一種很好的隔離和模型版本管理的方法。如果您的組織使用標準服務器負載,您可能會發現很難在該標準服務器上安裝依賴項和構件。容器解決了這個問題。可能服務器管理員安裝程序包的時間太長。容器也能解決這個問題。您可能需要託管同一模型的新版本和舊版本一段時間,每個版本都需要一組不同的依賴關係。容器也有助於版本控制策略。

您的企業可能是全雲的,有雲的,或者沒有雲的,但是即使您當前沒有使用雲,您也可能在考慮它。容器非常輕便。如果您採用基於容器的方法,您可以在本地或雲上的任何地方運行這些模型。

3.數據科學家需要關心代碼質量。

讓您的數據科學家能夠自助服務地將模型部署到生產環境中,同時還要負責編寫產品質量代碼。

這可能意味着你的模型構建團隊必須提升他們的軟件工程水平。了解一點Python語法並調用API並不能使您成為一名優秀的軟件工程師。當您構建組織將在生產系統中使用的軟件時,軟件質量至少與數據和模型質量同等重要。

這可能意味着採用諸如測試驅動開發和代碼評審之類的實踐。這可能意味着嘗試配對編程。在使用notebook時,您應該仔細考慮如何以及何時使用筆記本,以及對軟件質量的影響。幸運的是,這些模式在軟件工程界是眾所周知的,並且非常適合大多數團隊。

4.如果它不是自動化的,那它就還沒完成。

平台的速度和穩定性都依賴於模型部署平台和過程的自動化。如果你想更快,那就毫不妥協地採用自動化。在我們的機器學習平台上,我們已經自動化了整個模型生命周期。持續集成和持續交付推動了平台上的模型測試和模型部署。

我們還自動化了底層平台基礎設施的配置和部署。在這樣做的過程中,我們的團隊學會了將這些自動化虛擬機視為一次性資源。沒有人登錄到服務器進行管理,所有管理任務都是自動化的。這意味着無論我們擴展多少,每個服務器都是一致配置的。我們沒有升級服務器,而是用新的基礎設施自動重新部署平台。

5.構建一個支持模型整個生命周期的平台。

到目前為止,我主要關注構建、培訓和部署,但這只是機器學習模型生命周期的第一部分。許多型號都會逐漸變差,隨着時間的推移性能會下降。部署的模型需要監控和調整。每個部署的模型都應該記錄所有的輸入、輸出和異常。模型部署平台需要提供日誌存儲和模型性能可視化。

在我們的機器學習平台上,每個模型將每次執行記錄為一個通用格式。每個託管模型應用程序都以一種通用的方式發出日誌。我們路由和存儲這些日誌,使用它們監視模型性能並幫助識別模型漂移。最後,我們會自動創建模型儀錶板,以提供關於每個模型如何執行的額外見解。

密切關注模型性能是有效管理機器學習模型生命周期的關鍵。不能忽視模型監視作為模型整個生命周期的一部分。

6.標準化開發方法

軟件工程師已經提出了很棒的方法和設計模式,我們可以用它們來構建可移植的和有彈性的應用程序。如果您的模型構建者知道這些方法,那麼其中許多方法可以很容易地適應機器學習應用程序。利用外面的東西。

機器學習平台的非官方座右銘 -    noShelfWare

分析結果

將這六條規則結合起來有助於我們更快地獲得結果,我希望它們也能幫助貴公司。數據科學應該是創造有影響力的軟件。白皮書、儀錶盤、詞雲和餅圖再也不能削減開支了,如果他們真的這樣做的話。取得成果需要很困難的工作。

這不是一條容易的路。史蒂夫·喬布斯說:「偉大的創意和偉大的產品之間還有着大量的工程步驟。」要想快速進入市場,你可能需要戴上DevOps的帽子。這意味着你的團隊可能需要提升他們的軟件工程技能。

但是,這是值得的。過去有時需要12個月的時間,現在在我們公司只需要幾分鐘。更重要的是,我們不是在構建分析書架軟件。


雷鋒字幕組是一個由 AI 愛好者組成的翻譯團隊,匯聚五百多位志願者的力量,分享最新的海外AI資訊,交流關於人工智能技術領域的行業變革與技術創新的見解。

團隊成員有大數據專家、算法工程師、圖像處理工程師、產品經理、產品運營、IT諮詢人、在校師生;志願者們來自IBM、AVL、Adobe、阿里、百度等知名企業,北大、清華、港大、中科院、南卡羅萊納大學、早稻田大學等海內外高校研究所。

如果,你也是位熱愛分享的AI愛好者。歡迎與雷鋒字幕組一起,學習新知,分享成長。

雷鋒網雷鋒網