DVC-functies en use cases

Introductie tot dataversiebeheer met DVC

Ravi Bhadauria

Machine Learning Engineer

DVC-functies en use cases

Onderwerpen

  • Versiebeheer voor data en modellen
  • DVC-pipelines
  • Metrics en plots bijhouden

Geavanceerde onderwerpen (niet behandeld)

  • Experiment tracking
  • CI/CD voor machine learning
  • Dataregister
Introductie tot dataversiebeheer met DVC

Versiebeheer voor data en modellen

Schematisch: data en model versies koppelen aan specifieke Git-commits

1 https://dvc.org/doc/use-cases/versioning-data-and-models
Introductie tot dataversiebeheer met DVC

Pipelines

Schematische pipeline van de model-trainingsstap

  • Definieer pipeline in dvc.yaml
stages:
  train:
    cmd: python train.py

deps: - code/train.py - data/input_data.csv - params/params.json
outs: - model_output/model.pkl
  • Run met dvc repro.
Introductie tot dataversiebeheer met DVC

Metrics en plots bijhouden

$ dvc metrics diff
Path                  Metric    HEAD     workspace    Change
dvclive/metrics.json  AUC       0.78912  0.18114      -0.60798
dvclive/metrics.json  TP        215      768          553

AUC-metrics vergelijken tussen ML-experimenten met DVC-plots

1 https://dvc.org/doc/command-reference/plots/diff
Introductie tot dataversiebeheer met DVC

Experiment tracking

  • Run experiment en log metrics
    • dvc repro
    • dvc exp save
  • Of combineer beide: dvc exp run
  • Experiments zijn custom Git-references
    • Voorkomt opgeblazen Git-commits
    • Expliciet opslaan kan met dvc exp save
  • Visualiseer met dvc exp show
Introductie tot dataversiebeheer met DVC

CI/CD voor machine learning

Conceptafbeelding van DVC en CML voor CI/CD

1 Picture credits: https://dvc.org/doc/use-cases/ci-cd-for-machine-learning
Introductie tot dataversiebeheer met DVC

Dataregister

Afbeelding van DVC als dataregister

1 Picture credits: https://dvc.org/doc/use-cases/data-registry
Introductie tot dataversiebeheer met DVC

Laten we oefenen!

Introductie tot dataversiebeheer met DVC

Preparing Video For Download...