Data Version Control(DVC)提供一套系統化的方法來進行資料版本控制,而這往往是容易被忽略的關鍵面向。透過 DVC,你可以精準追蹤資料集的變更,確保結果可重現、利於協作,並讓疑難排解更容易。它能替你在與資料相關的挑戰前建立防護,讓以資料為核心的專案更值得信賴且更有效率。
在這個練習中,你會實作初始化一個 DVC 專案,並將一個資料集納入版本控制。此專案的 Git 已經初始化完成。
本練習屬於課程
將理論付諸實踐,立即體驗我們的互動練習
在本章中,你將探索 Continuous Integration/Continuous Delivery(CI/CD)與 YAML 的核心原則。你會掌握軟體開發生命週期,以及 build、test、deploy 等關鍵術語。進一步了解 Continuous Integration、Continuous Delivery 與 Continuous Deployment 的差異。此外,你也會探討 CI/CD 在機器學習與實驗中的重要性。
準備好探索 GitHub Actions(GHA)吧!這是用來執行 CI/CD 工作流程的強大平台。你將了解 GHA 的多種元件,包含 events、actions、jobs、steps、runners 與 context。你會學會建立在 push 與 pull request 等事件觸發的工作流程,並調整 runner 機器設定。透過實作,你將建立基本的 CI pipelines,並理解 GHA 日誌的重點。
在本章中,你將透過 Continuous Machine Learning GitHub Action,將機器學習模型訓練整合到 GitHub Action 的 pipeline。你會產生一份完整的 Markdown 報告,包含模型指標與圖表。你也會進一步學習機器學習中的資料版本控管,採用 Data Version Control(DVC)來追蹤資料變更。本章同時涵蓋設定 DVC 遠端與資料集傳輸。最後,你將探索 DVC pipelines,設定 DVC 的 YAML 檔來協調可重現的模型訓練。
當前練習
在本章中,你將專注於模型效能的分析與超參數的微調。你會學到如何在不同分支間比較指標與視覺化圖表,以評估模型效能的變化。你將使用 scikit-learn 的 GridSearchCV 進行超參數調校。此外,你也會進一步探討如何以最佳模型設定自動化建立 pull request。