資料版本控管的動機

使用 DVC 進行資料版本控管入門

Ravi Bhadauria

Machine Learning Engineer

什麼是資料版本控管?

  • 定義
    • 監控資料隨時間的變化
    • 為各次迭代建立快照
    • 類似程式碼版本控管
  • 好處
    • 可回溯、可審查
    • 資料一致性、可追責與譜系
  • 應用
    • Data Science 與 Machine Learning
    • 資料工程
    • 財務分析、稽核與法遵
使用 DVC 進行資料版本控管入門

資料 vs 程式碼版本控管

程式碼版本控管

  • 在軟體開發中已相當普及
  • 使用 Git 等工具進行去中心化版本控管
  • 較易管理,因為程式碼基礎較小

資料版本控管

  • 相對較新(2012 年提出 SciDB)
  • DVC 搭配 Git 的工具鏈
  • 因資料集龐大而較難管理
1 doi: 10.1109/ICDE.2012.102
使用 DVC 進行資料版本控管入門

為何在 ML 要做資料版本控管?

ML 模型由程式碼、超參數與資料構成的示意圖

使用 DVC 進行資料版本控管入門

資料集的影響

資料集 A 資料集 A 的 dataframe 前幾列畫面

資料集 B 資料集 B 的 dataframe 前幾列畫面

使用 DVC 進行資料版本控管入門

資料集的影響

 

超參數固定、變動資料集

 

指標 資料集 A 資料集 B
Precision 0.78 0.79
Recall 0.54 0.57
F1 Score 0.64 0.66
Accuracy 0.80 0.81
使用 DVC 進行資料版本控管入門

超參數的影響

 

資料集固定、變動超參數

 

指標 n_estimators=5 n_estimators=10
Precision 0.78 0.85
Recall 0.54 0.52
F1 Score 0.64 0.65
Accuracy 0.80 0.81
使用 DVC 進行資料版本控管入門

編輯器練習介面配置

帶標註的編輯器練習介面,顯示資料夾、檔案與終端區域。

使用 DVC 進行資料版本控管入門

一起來練習吧!

使用 DVC 進行資料版本控管入門

Preparing Video For Download...