隨著機器學習應用日益普及,許多團隊在實踐中面臨諸多挑戰,例如模型佈署困難、實驗成功率低、繁瑣的手動工作以及複雜的程式碼。本章旨在提供一套有效的原則和實踐,幫助機器學習從業者應對這些挑戰,並成功交付機器學習解決方案。內容涵蓋產品思維、精益交付、工程實踐、團隊動態、自動化測試和持續交付等導向,並以實際案例和程式碼範例說明如何建構高效能的機器學習團隊和系統,最終實作快速、可靠且負責任地交付機器學習產品。

機器學習實踐的挑戰

機器學習(ML)在現實世界中的應用,往往面臨著許多挑戰。許多個體在開始學習機器學習時,可能會因為工具、技術、教程和社群的支援而感到信心十足,然而當他們嘗試將機器學習應用於真實世界的問題、複雜的資料和系統中時,卻常常遇到困難。

真實世界中的機器學習挑戰

在真實世界中,機器學習的實踐往往被手動工作、複雜的程式碼和令人沮喪的實驗所困擾。根據2019年的報告,87%的資料科學專案從未被佈署到生產環境。2021年,Algorithmia的一項調查發現,即使在成功佈署了機器學習模型的公司中,64%的受訪者表示佈署新模型需要超過一個月的時間。

機器學習實踐的痛點

機器學習實踐中的痛點包括:

  • 手動工作和複雜的程式碼
  • 佈署模型到生產環境的困難
  • 實驗的低成功率
  • 資料科學家花費太多時間在模型佈署上

解決方案

為瞭解決這些挑戰,需要採取全面的方法來建構機器學習系統。這包括建立各個子系統(例如產品、工程、資料、交付流程、團隊拓樸)之間的反饋迴圈,讓團隊能夠快速、安全地進行實驗和交付。

本章的目的

本章旨在分享作者的經驗,提煉出一套有效的原則和實踐,幫助機器學習從業者在真實世界中交付機器學習解決方案。這些實踐根據採取全面的方法來建構機器學習系統,超越了單純的機器學習,建立了各個子系統之間的必要反饋迴圈,讓團隊能夠快速、安全地進行實驗和交付。

目標讀者

本章適合所有機器學習從業者,無論您是學術界、企業、初創公司、擴張公司或顧問公司的從業者。本章旨在提供實用的建議和經驗,幫助您克服機器學習實踐中的挑戰,交付機器學習解決方案。

  graph LR
    A[機器學習挑戰] --> B[手動工作]
    A --> C[複雜程式碼]
    A --> D[實驗低成功率]
    B --> E[解決方案]
    C --> E
    D --> E
    E --> F[全面的方法]
    F --> G[建立反饋迴圈]
    G --> H[快速安全實驗]
    H --> I[交付機器學習解決方案]

圖表翻譯:

此圖表描述了機器學習實踐中的挑戰和解決方案。機器學習挑戰包括手動工作、複雜程式碼和實驗低成功率。解決方案是採取全面的方法,建立各個子系統之間的反饋迴圈,讓團隊能夠快速、安全地進行實驗和交付。最終,目的是交付機器學習解決方案。

資料科學與機器學習解決方案的交付

資料科學和機器學習(ML)在現代企業中的應用越來越廣泛,然而交付高品質的ML解決方案仍然是一個挑戰。這本章旨在為資料科學家、ML工程師、軟體工程師、產品經理等各種角色提供實用的,幫助他們更有效地交付ML解決方案。

資料科學家和ML工程師的角色演變

近年來,資料科學家的角色已經從單純的資料分析和建模擴充套件到包括資料整理、ML工程、MLOps和商業案例制定等多個方面。這本章將詳細介紹資料科學家和ML工程師在設計和交付ML解決方案時需要具備的能力。

軟體工程師、基礎設施和平臺工程師、架構師的參與

在ML專案中,軟體工程師、基礎設施和平臺工程師、架構師等角色也扮演著重要的角色。雖然他們從軟體世界中獲得的能力(如基礎設施即程式碼、佈署自動化、自動測試)是必要的,但仍不足以構建可靠的ML解決方案。為了處理ML所特有的挑戰,需要拓寬軟體的視野,考慮ML模型測試、雙軌交付、持續發現和ML治理等原則和實踐。

產品經理、交付經理、工程經理的角色

如果我們認為只需要資料科學家和ML工程師就能夠構建ML產品,那我們就會設定自己為失敗。事實上,具有跨功能性和多樣化能力的團隊(包括ML、資料、工程、產品和交付能力)才是最有效的。

###_Lean交付實踐和系統思考

本章將介紹如何應用_Lean交付實踐和系統思考來建立有利於團隊專注於客戶聲音、縮短反饋迴圈、快速可靠地進行實驗和迭代的結構。這些結構可以最佳化資訊流、減少浪費(如手工交付、依賴)和提高價值。

持續改進的思維方式

我們鼓勵讀者以持續改進的思維方式來對待這本章,而不是追求完美。沒有任何專案是完美的,總會有複雜性和挑戰,但是本章中的實踐可以幫助您更好地應對這些挑戰。透過試用這些實踐,您將能夠在實際專案中體驗到它們的價值。

# 示例:資料科學家和ML工程師的角色演變
from data_science import data_wrangling, ml_engineering, mlops
from software_engineering import infrastructure_as_code, deployment_automation, automated_testing

# 資料科學家和ML工程師的能力
data_scientist_capabilities = [data_wrangling, ml_engineering, mlops]
ml_engineer_capabilities = [ml_engineering, mlops]

# 軟體工程師、基礎設施和平臺工程師、架構師的能力
software_engineer_capabilities = [infrastructure_as_code, deployment_automation, automated_testing]

# 產品經理、交付經理、工程經理的能力
product_manager_capabilities = ["product_management"]
delivery_manager_capabilities = ["delivery_management"]
engineering_manager_capabilities = ["engineering_management"]

# 跨功能性團隊的能力
cross_functional_team_capabilities = data_scientist_capabilities + ml_engineer_capabilities + software_engineer_capabilities + product_manager_capabilities + delivery_manager_capabilities + engineering_manager_capabilities

圖表翻譯:

  graph LR
    A[資料科學家] --> B[ML工程師]
    B --> C[軟體工程師]
    C --> D[基礎設施和平臺工程師]
    D --> E[架構師]
    E --> F[產品經理]
    F --> G[交付經理]
    G --> H[工程經理]
    H --> I[跨功能性團隊]
    I --> J[持續改進]

機器學習解決方案的挑戰與最佳實踐

在實作機器學習(ML)解決方案的過程中,許多團隊都會面臨著各種挑戰。這些挑戰可能來自於高層次的戰略決策,或者是低層次的技術實作。為了克服這些挑戰,瞭解ML專案失敗的原因以及如何找到更可靠的實作路徑是非常重要的。

ML 專案失敗的原因

ML 專案失敗的原因多種多樣,包括但不限於:

  • 缺乏明確的專案目標和定義
  • 不足夠的資料品質和數量
  • 過度複雜的模型和演算法
  • 缺乏有效的專案管理和協調
  • 不足夠的計算資源和基礎設施

實作 ML 解決方案的最佳實踐

為了實作 ML 解決方案,以下幾個方面的最佳實踐是非常重要的:

  1. 產品思維和精益交付:這包括了產品發現、需求分析、優先順序排序等方面的實踐。透過這些實踐,可以確保 ML 專案與業務目標和使用者需求保持一致。
  2. 工程實踐:這包括了自動化測試、重構、程式碼編輯器使用等方面的實踐。透過這些實踐,可以確保 ML 程式碼的品質和可維護性。
  3. 團隊動態和協作:這包括了信任、分享進度、多樣性等方面的實踐。透過這些實踐,可以確保 ML 團隊的協作和溝通效率。

實作 ML 解決方案的框架

實作 ML 解決方案的框架可以分為以下幾個部分:

  1. 產品和交付:這部分包括了產品思維、精益交付等實踐。
  2. 工程:這部分包括了自動化測試、重構、程式碼編輯器使用等實踐。
  3. 團隊:這部分包括了信任、分享進度、多樣性等實踐。
內容解密:

上述內容簡要介紹了實作 ML 解決方案的挑戰和最佳實踐。透過瞭解 ML 專案失敗的原因和實作 ML 解決方案的最佳實踐,可以幫助團隊克服挑戰和實作業務目標。同時,建立一個合理的框架和流程可以幫助團隊更好地協作和溝通,從而實作更好的 ML 解決方案。

# 實作 ML 解決方案的框架
class ML_Solution_Framework:
    def __init__(self):
        self.product_and_delivery = []
        self.engineering = []
        self.team = []

    def add_product_and_delivery(self, practice):
        self.product_and_delivery.append(practice)

    def add_engineering(self, practice):
        self.engineering.append(practice)

    def add_team(self, practice):
        self.team.append(practice)

# 實作 ML 解決方案的最佳實踐
class ML_Solution_Practice:
    def __init__(self, name):
        self.name = name

    def execute(self):
        print(f"Executing {self.name} practice")

# 示例使用
framework = ML_Solution_Framework()
product_practice = ML_Solution_Practice("Product Thinking")
engineering_practice = ML_Solution_Practice("Automated Testing")
team_practice = ML_Solution_Practice("Trust and Shared Progress")

framework.add_product_and_delivery(product_practice)
framework.add_engineering(engineering_practice)
framework.add_team(team_practice)

for practice in framework.product_and_delivery:
    practice.execute()

for practice in framework.engineering:
    practice.execute()

for practice in framework.team:
    practice.execute()

圖表翻譯:

以下是實作 ML 解決方案的框架圖表:

  flowchart TD
    A[產品和交付] --> B[工程]
    B --> C[團隊]
    C --> D[實作 ML 解決方案]
    style A fill:#f9f,stroke:#333,stroke-width:4px
    style B fill:#f9f,stroke:#333,stroke-width:4px
    style C fill:#f9f,stroke:#333,stroke-width:4px
    style D fill:#f9f,stroke:#333,stroke-width:4px

這個圖表展示了實作 ML 解決方案的框架,包括產品和交付、工程和團隊三個部分。每個部分都包含了相關的最佳實踐和流程,以幫助團隊實作 ML 解決方案。

如何實作自動化測試和持續交付以提升機器學習專案的效率

在機器學習(ML)專案中,自動化測試和持續交付(Continuous Delivery,CD)是確保專案成功的關鍵要素。這些實踐不僅可以幫助您加快反饋迴圈和減少手動測試的辛勞,而且還可以提高您的程式碼品質和可維護性。

自動化測試的重要性

自動化測試是指使用程式碼自動執行測試的過程。這種方法可以幫助您快速地發現和修復錯誤,從而減少手動測試的時間和成本。在機器學習專案中,自動化測試尤為重要,因為模型的複雜性和資料的變化性使得手動測試變得困難。

持續交付的概念

持續交付(CD)是一種軟體工程實踐,旨在使軟體的交付更加快速和可靠。它涉及自動化測試、構建和佈署的過程,以確保軟體始終處於可交付的狀態。在機器學習專案中,持續交付可以幫助您快速地佈署模型和更新,從而提高專案的迭代速度和效率。

實作自動化測試和持續交付的步驟

要實作自動化測試和持續交付,以下是幾個步驟:

  1. 選擇合適的測試框架:選擇一個適合您的專案需求的測試框架,例如 Pytest 或 Unittest。
  2. 編寫測試使用案例:編寫測試使用案例以覆寫您的程式碼的各個方面,包括模型的訓練、預測和評估。
  3. 自動化測試:使用測試框架自動化測試的過程,包括執行測試和報告結果。
  4. 設定持續交付管道:設定一個持續交付管道,以自動化構建、測試和佈署的過程。
  5. 監控和最佳化:監控您的專案的效能和效率,最佳化持續交付管道以提高專案的品質和速度。

實作自動化測試和持續交付的工具

以下是幾個實作自動化測試和持續交付的工具:

  • Jenkins:一個流行的持續交付工具,支援自動化測試和佈署。
  • Travis CI:一個根據雲端的持續交付工具,支援自動化測試和佈署。
  • CircleCI:一個根據雲端的持續交付工具,支援自動化測試和佈署。
  • Pytest:一個流行的測試框架,支援自動化測試。
  • Unittest:一個流行的測試框架,支援自動化測試。

建立可靠的機器學習解決方案

要建立可靠的機器學習(ML)解決方案,需要一個全面的藍圖,以確保您的團隊可以專注於高價值問題,而不是重複和低價值的工作。這個藍圖應該包括一個風險控制機制,以幫助團隊維護ML治理和負責任AI的標準。

ML團隊的構建

建立有效的ML團隊需要超越技術層面,關注人際因素。這包括建立信任、溝通、分享目標、有意義的進展和團隊多樣性。同時,需要注意反模式和培養合作、有效交付和學習的文化。

ML組織的構建

在構建ML組織時,需要考慮不同的團隊形態和挑戰。這包括團隊之間的協作、工作流程的平衡和專業知識的集中。需要評估不同的組織結構的優點和侷限性,並提供指導以滿足組織的需求。

模型驅動的組織

模型驅動的組織需要一個全面的框架,以確保ML模型的開發、佈署和維護。這包括自動化測試、依賴管理和程式碼編輯器的生產力。同時,需要關注產品和交付的實踐,以確保ML模型的有效性和可靠性。

其他思考

在建立ML解決方案時,需要考慮以下幾點:

  1. ML不僅僅是監督學習和大語言模型(LLM)。還可以使用其他最佳化技術,例如強化學習、運籌學和模擬,來解決資料密集型和資料匱乏的問題。
  2. ML不是萬能的,某些問題可以不使用ML來解決。
  3. 即使使用監督學習問題作為例子,書中概述的原則和實踐也可以應用於其他ML領域,例如強化學習。
  4. 生成AI和LLM的出現為ML開發帶來了新的機會和挑戰。需要關注模型的引導和約束,以確保其功能的可靠性和有效性。
內容解密:

本章節關注建立可靠的ML解決方案,包括技術和人際因素。需要建立信任、溝通和合作的文化,並提供指導以滿足組織的需求。同時,需要關注模型的開發、佈署和維護,以確保其功能的可靠性和有效性。

  flowchart TD
    A[建立ML解決方案] --> B[技術因素]
    B --> C[人際因素]
    C --> D[建立信任和溝通]
    D --> E[合作和交付]
    E --> F[模型開發和佈署]
    F --> G[模型維護和最佳化]

圖表翻譯:

本圖表展示了建立ML解決方案的流程,包括技術和人際因素。需要建立信任和溝通,然後進行合作和交付。接下來,需要進行模型開發和佈署,最後進行模型維護和最佳化。這個流程可以幫助建立一個模型驅動的組織,實作ML的價值和潛力。

效能機器學習團隊的核心原則

在探討機器學習(ML)團隊的效能時,需要關注數個核心原則。首先,精益產品交付和工程的基本原則仍然適用。這些基本工具和技術幫助我們在早期階段測試假設、快速迭代和可靠地交付產品。

其次,文化在ML的有效性和實踐中扮演著重要角色。這本章的名稱《效能機器學習團隊》強調了團隊合作的重要性。個別成員不能單獨完成所有任務,例如撰寫測試程式。只有當團隊、部門,甚至整個組織達成文化上的協調時,精益和敏捷的實踐才能真正發揮作用。這並不意味著需要對整個組織進行全面性的變革;相反,個人只有在團隊中才能發揮最大的效能。

最後,這本章關注的是如何快速、可靠、負責地建構正確的產品,而不是僅僅追求生產力(交付盡可能多的功能、故事或程式碼)或效率(以最快的速度交付功能、故事或程式碼)。這本章旨在透過運動和有效的方式找到平衡。

書籍內容和風格

本章使用以下排版慣例:

  • 斜體 表示新術語、URL、電子郵件地址、檔案名稱和檔案副檔名。
  • 等寬字型 用於程式清單,以及在段落中參考程式元素,如變數或函式名稱、資料函式庫、資料型別、環境變數、陳述式和關鍵字。
  • 等寬字型粗體 用於在程式碼區塊中吸引注意力。

注意事項和警告

本章中使用以下元素:

  • NOTE:表示一般注意事項。
  • WARNING:表示警告或注意事項。

這些慣例和元素的使用旨在提供清晰、易於理解的內容,幫助讀者掌握效能機器學習團隊的核心原則和實踐。

使用程式碼範例

在實際應用中,程式碼範例可以作為學習和開發的重要補充。這些範例可以幫助開發者更好地理解程式設計的概念和實踐。

範例使用許可權

一般而言,範例程式碼可以在開發者的程式和檔案中使用,不需要事先取得許可。然而,如果您要重製或分發大量的範例程式碼,則需要取得許可。

例子

例如,若您正在開發一個使用多個程式碼片段的程式,則不需要取得許可。然而,若您要將範例程式碼作為產品檔案的一部分,或者將其作為商業用途,則需要取得許可。

致謝

我們感謝您對我們的作品的支援和認可。您的肯定是對我們工作的最好獎勵。

聯絡方式

若您有任何技術問題或需要進一步的協助,請不要猶豫地聯絡我們。我們的聯絡方式如下:

資源

我們提供了豐富的資源,包括書籍、文章和線上學習平臺,來幫助您學習和成長。您可以存取我們的網站,瀏覽我們的資源,找到您需要的知識和技能。

結語

最後,我們希望這些資源能夠對您有所幫助,助您在程式設計的道路上取得成功。若您有任何問題或需要進一步的協助,請不要猶豫地聯絡我們。

機器學習系統開發

在機器學習(ML)領域,建造高效且有效的系統是一項具有挑戰性的任務。經過多年的實踐和研究,我們整理了一系列的最佳實踐和技術,旨在提升ML團隊的工作效率和成果。這些經驗和知識的匯總,最終形成了一份全面性的,旨在改變ML團隊對於系統開發的方法和思路。

致謝

在這份的編寫過程中,我們得到了許多人的支援和幫助。首先,我們要感謝那些在幕後付出努力的同事和朋友,包括Nicole Butterfield、Melissa Potter、Gregory Hyman、Kristen Brown、Nicole Taché、Judith McConville、David Futato、Karen Montgomery、Kate Dullea等。同時,我們也要感謝那些技術評審,他們花費了大量時間和精力,仔細閱讀和評估了本章的內容,包括Hannes Hapke、Harmeet Kaur Sokhi、Mat Kelcey、Vishwesh Ravi Shrimali等。

個人感言

在編寫這份的過程中,我們也得到了家人和朋友的支援和鼓勵。特別是David Tan,他要感謝他的家人,尤其是Nhung,感謝她的耐心和支援。同時,他也要感謝他的同事和朋友,包括Sue Visic、Dave Colls、Peter Barnes等,感謝他們的鼓勵和支援。

團隊合作

本章的編寫是一個團隊合作的成果。Ada Leung、David Tan和Dave共同努力,匯集了他們的經驗和知識,形成了一份全面性的。這份不僅涵蓋了ML系統開發的技術方面,也包括了團隊合作和溝通的重要性。

圖表翻譯:

  graph LR
    A[ML系統開發] --> B[團隊合作]
    B --> C[技術實踐]
    C --> D[溝通和協作]
    D --> E[成果和評估]

圖表解說:

這個圖表展示了ML系統開發的過程,從團隊合作到技術實踐,然後到溝通和協作,最終到成果和評估。這個過程強調了團隊合作和溝通的重要性,在ML系統開發中。

機器學習解決方案的挑戰與最佳實踐

在機器學習(ML)的世界中,許多組織和個人都懷著高昂的期望開始了他們的旅程,但現實的情況往往是,這段旅程充滿了陷阱、迂迴和甚至不可逾越的障礙。當我們剝去外表的噱頭和資料科學是21世紀最性感的工作的宣稱時,我們常常看到機器學習從業者被困在生產環境中的火災現場、團隊孤立以及笨重、脆弱和複雜的解決方案中。

這些問題不僅阻礙了團隊為客戶提供價值,也令組織在人工智慧方面的投資和雄心壯志受挫。就像炒作週期一樣,許多人都會經歷過期望的高峰,然後墜入失望的深淵。有些人可能會看到一些高調的成功案例,但更多的人則會面臨著實作機器學習價值的挑戰。

挑戰的根源

那麼,什麼是導致這些挑戰的根源呢?首先,機器學習專案往往缺乏清晰的目標和定義。沒有明確的目標,團隊很容易陷入無休止的實驗和迭代中,無法提供明確的價值。其次,團隊之間的溝通和協作往往不夠。資料科學家、工程師和業務團隊之間的隔閡可能會導致解決方案的不匹配和不一致。

此外,機器學習模型的複雜性和脆弱性也是挑戰的源頭。模型的訓練和佈署需要大量的資料和計算資源,但如果模型不夠健壯和可靠,就會導致預測的不準確和系統的當機。最後,機器學習專案的評估和監控往往不夠。沒有明確的評估指標和監控機制,團隊很難衡量專案的成功和進展。

最佳實踐

那麼,如何克服這些挑戰並實作機器學習的價值呢?首先,需要明確的目標和定義。團隊需要確定機器學習專案的目標和範圍,然後根據這些目標來設計和實施解決方案。其次,需要加強團隊之間的溝通和協作。資料科學家、工程師和業務團隊需要共同合作,確保解決方案的匹配和一致。

此外,需要注重機器學習模型的健壯性和可靠性。模型需要經過嚴格的測試和驗證,才能確保其準確性和可靠性。最後,需要建立明確的評估指標和監控機制。團隊需要定期評估和監控機器學習專案的進展和成功,才能及時發現和糾正問題。

透過這些最佳實踐,組織可以克服機器學習的挑戰,實作機器學習的價值,為業務的成功做出貢獻。機器學習的旅程可能充滿挑戰,但只要有明確的目標、團隊的協作、模型的健壯性和評估的監控,就可以成功地克服這些挑戰,實作機器學習的價值。

內容解密:

上述內容主要講述了機器學習解決方案的挑戰和最佳實踐。首先,提到了機器學習專案的挑戰,包括缺乏明確的目標和定義、團隊之間的溝通和協作不夠、模型的複雜性和脆弱性以及評估和監控不夠。然後,提到了最佳實踐,包括明確的目標和定義、團隊之間的溝通和協作、模型的健壯性和可靠性以及評估和監控。最後,總結了機器學習的挑戰和最佳實踐,強調了明確的目標、團隊的協作、模型的健壯性和評估的監控的重要性。

  flowchart TD
    A[機器學習挑戰] --> B[缺乏明確的目標和定義]
    A --> C[團隊之間的溝通和協作不夠]
    A --> D[模型的複雜性和脆弱性]
    A --> E[評估和監控不夠]
    B --> F[明確的目標和定義]
    C --> G[團隊之間的溝通和協作]
    D --> H[模型的健壯性和可靠性]
    E --> I[評估和監控]
    F --> J[成功的機器學習專案]
    G --> J
    H --> J
    I --> J

圖表翻譯:

上述圖表展示了機器學習挑戰和最佳實踐之間的關係。圖表從機器學習挑戰開始,分別指向缺乏明確的目標和定義、團隊之間的溝通和協作不夠、模型的複雜性和脆弱性以及評估和監控不夠。然後,圖表展示了最佳實踐,包括明確的目標和定義、團隊之間的溝通和協作、模型的健壯性和可靠性以及評估和監控。最後,圖表指向成功的機器學習專案,強調了明確的目標、團隊的協作、模型的健壯性和評估的監控的重要性。

機器學習團隊的挑戰

許多機器學習(ML)團隊在嘗試將其專案付諸實踐時,往往會遇到各種挑戰和困難。這些挑戰可能來自於學術、資料科學、ML工程、產品管理、軟體工程等各個領域。無論您的背景如何,如果您正在構建涉及ML的產品或系統,您都可能會遇到本章中描述的挑戰。

本章是我們試圖總結我們和其他人在構建和交付ML啟用的產品方面的經驗。希望這些原則和實踐能夠幫助您避免不必要的陷阱,找到一條更可靠的路徑來實作您的目標。

機器學習的承諾和失望

在本節中,我們將研究機器學習投資和興趣的持續增長的證據,然後深入探討工程、產品和交付瓶頸,這些瓶頸阻礙了這些投資的回報。

機器學習的持續增長

如果我們暫時放下炒作和個人在炒作週期中的位置,機器學習仍然是一個快速發展的領域,提供了許多技術來解決現實世界的問題。斯坦福大學的「AI Index Report 2022」發現,2021年,全球私人投資於人工智慧的總額約為940億美元,這比2019年前COVID-19疫情爆發前的總私人投資增加了一倍以上。麥肯錫的「2021年人工智慧狀態」調查表明,人工智慧的採用率正在穩步上升:56%的受訪者報告說至少有一個部門正在使用人工智慧,高於2020年的50%。

斯坦福報告還發現,公司們繼續投資於應用多種多樣的機器學習技術,例如自然語言理解、電腦視覺、強化學習,跨越多個領域,如醫療保健、零售、製造和金融服務。從工作和技能的角度來看,斯坦福對2010年以來數百萬個工作職位的分析顯示,對機器學習能力的需求在過去十年中每年都在穩步增長,甚至在COVID-19疫情期間和之後也如此。

機器學習的應用正經歷爆炸式成長,從斯坦福大學的AI指數報告到麥肯錫的調查,都顯示出企業對機器學習的投資力度持續加大。然而,從概念驗證到實際佈署的過程中,許多團隊卻面臨著嚴峻挑戰。本章深入剖析了機器學習實踐的痛點,從團隊協作、工程實踐到產品交付,都提出了系統性的解決方案。技術限制深析顯示,缺乏清晰的目標定義、團隊溝通隔閡以及模型的複雜性和脆弱性是阻礙機器學習專案成功的關鍵因素。本章提供的最佳實踐,包括精益產品交付、自動化測試和持續交付,以及建立信任和分享進度的團隊文化,都為構建高效能機器學習團隊提供了實務落地方案。玄貓認為,本章提出的全方位框架,涵蓋產品思維、工程實踐和團隊動態,將有效協助機器學習團隊應對挑戰,並在快速發展的技術浪潮中取得成功。