機器學習開發階段

機器學習專案會分階段進行,每個階段都有特定目標、工作和成果。清楚瞭解機器學習開發階段有助於確立工程責任、管理利害關係人期望,以及有效分配資源。

成功完成各階段 (通常是反覆進行) 是設計、組裝及建構機器學習模型的基礎,有助於長期解決業務問題。

大致來說,實作機器學習解決方案包含下列階段:

  1. 構思和規劃
  2. 實驗
  3. 建立管道
  4. 正式版

構思和規劃

在發想和規劃階段,您會以機器學習解決方案的角度來定義問題,並估算專案的可行性。

  • 目標:判斷機器學習是否為解決問題的最佳方法。
  • 工作:分析業務問題,瞭解專案的限制。
  • 結果:設計文件,說明如何運用 ML 解決方案解決問題。

實驗

實驗是機器學習的核心。在這個階段,您會驗證機器學習解決方案是否可行。尋找解決方案是疊代程序。在找到合適的特徵超參數和模型架構組合來解決問題之前,嘗試數百項實驗並不罕見。

  • 目標:建構可解決業務問題的模型。
  • 工作:實驗功能、超參數和模型架構。
  • 結果:品質足以投入生產的模型。

管道建構和生產化

管道建構和生產化階段,您會建構管道來處理資料、訓練模型,以及提供預測結果。接著,您會將模型和管道部署到正式環境,並提供必要的監控和記錄基礎架構。

  • 目標:建構及實作基礎架構,以便在正式環境中調度資源、監控及維護模型。
  • 工作:建立管道,自動執行多項工作,確保正式環境中的模型維持最新狀態。
  • 成果:經過驗證的機器學習管道。

端對端機器學習工作流程

下圖說明完整的端對端機器學習工作流程,列出每個階段及其工作和結果:

端對端機器學習工作流程。

圖 1. 機器學習工作流程的四個主要階段。

注意事項

每個階段都有多項挑戰。如果沒有意識到這些問題並做好規劃,可能會導致錯過期限、工程師感到沮喪,以及專案失敗。

隨堂測驗

您剛才閱讀了幾項可能對產品有益的機器學習技術。接下來該怎麼做?
在花時間撰寫設計文件或程式碼之前,請先確認機器學習是否為解決問題的正確方法。
沒錯。在花時間撰寫設計文件或程式碼之前,請先確認機器學習是解決問題的正確方法。
草擬設計文件,說明機器學習用途和實作所需的基礎架構。
撰寫設計文件前,請先確認 ML 是否為解決問題的合適方案。
尋找程式碼範例並開始實驗,判斷模型是否能做出準確預測。
在編寫任何程式碼之前,請先確認機器學習是解決問題的正確方法。