MLOps最全的資料合集:書籍、課程與博文
MLOps最全的資料合集:書籍、課程與博文
MLOps並不是那麼簡單,尤其是在當今MLOps不斷變化的環境中。MLOps存在許多挑戰——構建、集成、測試、發佈、部署和基礎架構管理,您需要經常關注最新的MLOps實踐並且知道如何適應這些挑戰。
如果你不學習和發展自己的知識,你就會被圈子淘汰。正確的資源可以幫助您遵循最佳實踐、發現有用的提示並了解最新趨勢。
我們已經為您整理了一系列乾貨資料,便於你了解最新趨勢以及MLOps實踐。這些資料包括書籍、文章、課程等。
MLOps書籍
1. 《Introducing MLOps》
《Introducing MLOps》是由MarkTreveil和Dataiku團隊撰寫的一本書。它介紹了MLOps的關鍵概念,展示了如何隨着時間的推移維護和改進機器學習模型,並提出了應對MLOps挑戰的解決方案。
這本書是專門為數據分析和IT運維團隊的經理編寫的——他們直接面臨生產中的大規模機器學習的任務。這本書是成功創建MLOps環境的指南,從組織到所涉及的技術挑戰。本書分為3個部分:
(1)第一部分是MLOps介紹,它是如何以及為什麼發展成為一門學科的,需要誰參與才能成功執行MLOps,以及需要哪些組件。
(2)第2部分遵循機器學習模型的生命周期,包括開發模型、準備生產、部署、監控和治理的章節。
(3)第3部分提供了市面上企業中MLOps的實際案例,以便讀者了解實踐中的設置及意義。
2. 《What Is MLOps?》
MarkTreveil和LynnHeidmann的《What Is MLOps ?》是一份詳盡的報告,面向希望了解並學習MLOps的商業領袖,這些商業領袖將MLOps作為一個產生長期價值同時降低數據科學、機器學習和人工智能項目相關風險的過程。以下是這份報告包括的內容:
(1)機器學習模型構建的詳細組件,包括業務洞察如何為技術團隊提供價值;
(2)人工智能項目生命周期中的監控和迭代步驟,以及業務在這兩個過程中扮演的角色;
(3)現代人工智能治理策略的組成部分如何與MLOps融合在一起;
(4)為了開始啟動MLOps所需要的協調人員、定義流程和組裝的技術指南。
3. 《Practical MLOps》
Noahgift和AlfredoDez所著《Practical MLOps》一書是一本富有洞察力的指南,它將帶您了解MLOps是什麼,它與DevOps的區別,並向您展示如何將其付諸實踐來操作您的機器學習模型。你將從書中學到:
(1)將DevOps的最佳實踐應用於機器學習;
(2)構建用於生產的機器學習系統並維護它們;
(3)監控、配置、負載測試和操作機器學習系統;
(4)為給定的機器學習任務選擇正確的MLOps工具;
(5)在各種平台和設備上運行機器學習模型,包括手機和專用硬件。
這是GitHub上的免費版本。(鏈接)該鏈接存儲了《Practical MLOps》一書的代碼示例。
4. 《Reliable Machine Learning》
無論您是小型初創公司還是全球大型企業,這本實用書都會向數據科學家、網站可靠性工程師和企業負責人展示如何在您的組織內可靠、有效和負責任地運行機器學習。您將深入了解以下所有內容:如何在生產中進行模型監控,如何在產品團隊中經營一個良好的模型開發團隊。
通過將網站可靠性工程師的思維方式應用於機器學習,作者和工程專業人士Cathy Chen、Kranti Parisa、Niall Richard Murphy、D.Sculley、Todd Underwood和特邀嘉賓向您展示了如何運行高效的機器學習系統。無論您是想增加收入、優化決策、解決問題,還是了解和影響客戶行為,您都將學到如何執行日常機器學習任務,同時牢記大局。
具體來說,您將學習到以下內容:
(1)什麼是機器學習:它如何運作以及它依賴於什麼?
(2)理解清楚機器學習工作流的概念框架。
(3)有效的「生產化」,以及如何使其易於監控、部署和操作。
(4)為什麼機器學習系統會使生產故障排除變得更加困難,以及如何繞過它們?
(5)機器學習、產品和生產團隊如何有效溝通?
5. 《Designing Machine Learning Systems》
機器學習系統既複雜又獨特。複雜是因為它們由許多不同的組件組成並涉及許多不同的利益相關者。獨特是因為它們依賴於數據,數據從一個用例到下一個用例變化很大。
在本書中,您將學習一種整體方法來設計可靠、可擴展、可維護並能適應不斷變化的環境和業務需求的機器學習系統。
ClaypotAI的聯合創始人Chip Huyen考慮了每個設計決策——例如為了幫助您的系統作為一個整體實現其目標,如何處理和創建訓練數據、使用哪些功能、重新訓練模型的頻率以及監控什麼。本書中的迭代框架使用的是由大量參考文獻支持的實際研究案例。
本書將有助於您處理以下場景:
(1)策劃處理數據並選擇正確的指標來解決業務問題;
(2)自動化持續開發、評估、部署和更新模型的過程;
(3)開發監控系統以快速檢測和解決模型在生產中可能遇到的問題;
(4)構建跨用例服務的機器學習平台;
(5)開發可靠的機器學習系統。
6. 《Machine Learning Engineering》
「如果你打算使用機器學習來大規模解決業務問題,我很高興你能接觸到這本書。」——谷歌首席決策科學家Cassie Kozyrkov。
這本書因其專註於實際機器學習中非常重要的主題而受到了幾位工業巨頭的引人注目的評價。它很好地討論並解決了以下問題:
l 概述了監控的重要性;
l 如何進行模型維護;
l 出現問題時該怎麼辦;
l 對於那些你無法預料的錯誤,如何考慮後備策略;
l 如何對付試圖利用你系統的對手;
l 如何管理用戶的期望。
它提供了對機器學習工程最佳實踐和設計模式的全面回顧,因此,如果您希望更好地安排自己的工作,或者尋找與可重複性、可擴展性和模型版本控制相關的解決方案,那麼這本書適合您。
MLOps課程
1. DeepLearning.AI的MLOps specialization課程
本課程由人工智能先驅Andrew NG(吳恩達)策劃的,他是世界上最有影響力的計算機科學家之一,與他人共同創立了Google Brain和Coursera,並在百度領導了人工智能研究,他的機器學習專業課程至仍然被認為是最適合初學者的商業課程。
The Machine Learning Engineering for Production(MLOps) Specialization專項課程涵蓋如何構思、構建和維護在生產中持續運行的集成系統。與標準機器學習建模形成鮮明對比的是,生產系統需要處理不斷變化的數據,此外,生產系統必須以最低成本不間斷運行,同時產生最高性能。在這個專項課程中:
(1)您將學習如何使用成熟的工具和方法有效地完成所有這些工作;
(2)您將熟悉機器學習工程在生產中的功能、挑戰和結果;
(3)最後,您將準備好運用新的生產就緒(production-ready)的技能參與前沿人工智能技術的開發,以解決現實世界的問題。
2. GoogleCloud提供的MLOps Fundamentals
如果您希望圍繞某個平台(例如Google Cloud Platform谷歌雲平台)建立您的MLOps專業知識,那麼這可能是適合您的課程。本課程向參與者介紹在谷歌雲上部署、評估、監控和操作生產機器學習系統的MLOps工具和最佳實踐。本課程主要受眾有:
(1)希望快速從用於生產的機器學習原型到產生商業影響的數據科學家;
(2)希望發展機器學習工程技能的軟件工程師;
(3)希望在其機器學習生產項目中採用谷歌雲的機器學習工程師。
您將學到:
(1)識別並使用可支持MLOps的核心技術;
(2)在機器學習系統環境中應用持續集成/持續部署的最佳實踐;
(3)為可靠且有效的MLOps環境配置谷歌雲架構;
(4)實施可靠且可重複的訓練和推理工作流程。
3. 斯坦福大學的MLSys研討會系列
斯坦福大學的MLSys研討會是一系列專註於機器學習和機器學習系統的研討會——關於工具和用於編程機器學習模型的所有技術。
該課程於2020年秋季開始,每個演講都在這個研討會系列中直播,美國時間每周四在油管上更新1-2節,你可以在實時聊天中提問。會談的視頻回放也可以在油管上找到。本課程的目標是協助整理機器學習系統中出色工作的課程,以幫助將研究重點引向有趣的問題上。
MLOps社區
1. Slack上的MLOps.community
這絕對是最好的MLOps社區(//mlops.community/)。幾乎10,000名從業者聚集在這個地方,提出問題、分享知識,並就MLOps的所有事情互相交談。
雖然MLOps與DevOps有很多共同點,但它們的不同之處與相似之處一樣大。我們需要一個專註於解決我們每天在構建生產人工智能/機器學習工作流時面臨的獨特挑戰的社區。加入這個對所有人開放的社區吧,與我們一起學習、分享知識、問問題、得到答案,一起解決那些挑戰。
2. CDF特別興趣小組–MLOps
為了應對機器學習中的持續集成/持續部署挑戰,由持續部署基金會管理的MLOps SIG已成立,其目標如下:
l MLOps定義和路線圖:為MLOps創建願景和路線圖,說明它的含義以及它在持續集成/持續部署生態系統中的作用。
l 參考架構和設計模式:為MLOps創建參考架構、設計模式、實現以及流程。
l AI治理和風險管理:圍繞族系跟蹤、元數據收集、實驗跟蹤、數據版本控制、ETL操作等定義架構和指南,在這裡典型的數據和機器學習管道應支持道德人工智能的可用性。
您可以在Slack社區上加入#sig-mlops頻道。
MLOps播客
1. Neptune.ai的MLOps直播
這是由Neptune.ai經營的節目/播客。它是一個雙周問答,一些在合理的規模下邀請機器學習的從業者回答其他機器學習從業者的問題。做這個節目的初衷是因為在與許多機器學習團隊交談後,意識到他們都想更多地了解像他們這樣的團隊如何解決他們的問題,而找到這種資源並不容易,所以節目組織者認為可以嘗試改變這一點。
Podcasts(播客)是一種非常實際的方式。為什麼不用PPT呢?當然,PPT很棒,但有時您幾乎想立即跳到問答部分,永遠沒有足夠的時間,對吧?這通常是談話中最有趣的部分。所以組織者決定讓整個事情成為現場問答。每一集都關注與生產機器學習相關的不同主題,並且充滿了有趣的內容,這些內容在博客文章中是找不到的,是只有從業者問同行才能得到的東西。
你可以在這裡登記註冊,關注這些問答活動,並且如果你想看以前的播客,你可以通過以下渠道:
l Spotify
l 蘋果播客
l 其他播客平台
2. MLOps.community播客
MLOps.community是由Demetrios Brinkmann主持的播客。它每周一次談話的所有內容都與DevOps應用於機器學習 (又名MLOps,Machine Learning Operations)有關。
這個播客中包括採訪、與有趣的人的對話、提示、關於挑戰與趨勢等的討論。
3. TWIML播客
This Week的播客是人工智能和機器學習領域的領軍話題,下載量超過700萬次,擁有大量用戶參與的社區。通過其播客,它旨在將來自機器學習和人工智能世界的頂尖思想和想法帶到一個由機器學習/人工智能研究人員、數據科學家、工程師以及精通技術的商業和IT領導者組成的廣泛而有影響力的社區。
TWIMLAI播客由廣受歡迎的行業分析師、演講者、評論員和思想領袖Sam Charrington主持。Sam的研究重點是機器學習和人工智能的商業和消費者應用,將人工智能驅動的產品推向市場,以及支持人工智能的技術平台。
4. ZenML的Pipeline Conversations ML播客
Pipeline Conversations是一個每兩周一次的播客,為您帶來與行業領導者、頂級技術專業人士和其他人的訪談和討論。它討論了機器學習、深度學習和人工智能的最新發展,特別關注MLOps以及如何在生產中使用經過訓練的模型。
它於2021年11月首次播出,迄今已播出15集,涵蓋從生產機器學習模型到監控模型的各種主題。
它可在許多平台上使用,例如亞馬遜音樂(鏈接)、谷歌播客(鏈接)、Overcast(鏈接)、Spotify(鏈接)和Stitcher(鏈接)。
MLOps會議
1. MLOps World
MLOps World是一個由實踐者組成的國際社區團體,旨在更好地了解將機器學習模型部署到實時生產環境中的科學性。該團體組織年度會議、活動和聚會,參與者有機會參與各種研討會,並聽取來自微軟、亞馬遜、Lyft等領先科技公司的機器學習高管的意見。
該計劃由多倫多機器學習學會(TMLS)創建,旨在團結和支持更廣泛的人工智能生態系統、公司、從業者、學者和開源社區的貢獻者。他們的活動包括但不限於:
l 定期舉行社交聚會;
l 知識共享和職業發展;
l 確定將模型部署到實時生產環境中的機會和有效實踐、方法和原則;
l 獨特的本地和全球合作夥伴關係;
l 招聘和人才培養;
l 多元化和包容性團隊的成長。
2. Tecton的apply()
「我們去年推出了apply()活動系列,以滿足在生產中部署機器學習的MLOps團隊對更多實用知識的需求」–Mike Del Balso,Tecton的CEO。
apply()是Tecton針對應用機器學習的數據工程計劃的一系列活動。這一系列活動中的最新活動是apply(conf),這是一個以從業者為中心的會議,討論機器學習工程師在構建和部署機器學習模型時面臨的挑戰,主題包括:
l 最佳實踐開發模式;
l 選擇的工具和基礎設施;
l 管理標籤工作流;
l 實時轉換和提供功能;
l 大規模服務。
他們的活動包括研討會和面對面的社交活動,以最大限度地提高學習和交流機會,您可以加入他們的slack社區,以跟蹤他們即將舉行的聚會和會議。
其他MLOps資源
1. ML-Ops.org和Awesome MLOps
ML-ops.org網站作為MLOps的指南,解釋了各種概念,例如其背後的原理、構成MLOps的組件、用於管理的各種工具和框架等等。憑藉高質量的圖形和精心策劃的內容,對於希望開始使用MLOps的任何人來說,它都是一個寶貴的資源。本網站上列出的大量參考文獻使其更加有用。
Awesome MLOps是由ml-ops.org背後的人創建的MLOps參考列表。它是指向眾多資源的鏈接列表,從書籍、文章、社區等等開始。總而言之,它包含您可能讀到的有關MLOps的所有信息。目錄包括:MLOps論文、關於MLOps的討論、現有的機器學習系統、機器學習、機器學習/人工智能的軟件工程產品管理、機器學習/人工智能的經濟學、模型治理、倫理、負責任的人工智能。
需要注意的是,如果您想瀏覽所有鏈接,這可能是一本艱難而漫長的閱讀,但如果您想了解有關MLOps的所有信息,它是最好的資源之一。
2. 谷歌雲
MLOps: Continuous delivery and automation pipelines in machine learning,這份資料是谷歌的一份文檔,其中「討論了用於機器學習(ML)系統的實現和自動化持續集成(CI)、持續交付(CD)和持續訓練(CT)的技術」。
如果您是MLOps的新手,本文檔可能是一個很好的知識來源,因為它涉及一些基本概念;如果您是MLOps資深人士,您也會發現刷新和鞏固您的知識很有幫助。它還可以幫助您可靠地大規模構建和運行機器學習系統。
3. Azure的MLOps
如果您希望開始使用Azure上的MLOps,這是一個很好的資源。它有點類似於谷歌雲提供的資源,但它不是一門課程,它更像是一個自己動手做的項目。該項目旨在:
(1) 讓您了解Azure提供的許多資產管理和編排服務,以幫助您管理模型訓練和部署工作流的生命周期;
(2) 關於使用Microsoft Azure訓練和操作模型的最佳實踐;
(3) 提供真實世界的示例以幫助您着手使用相同的示例。
4. MLOps論文
如果您喜歡直接從源代碼中閱讀任何內容,那麼這裡有一個對您非常有用的鏈接,它包含自2015年以來有關機器學習操作的所有學術屆和工業屆的研究論文,用正確的方式討論了從技術債務(technical debt)到工程整個機器學習系統的所有內容。