Funkce a případy použití DVC

Úvod do verzování dat s DVC

Ravi Bhadauria

Machine Learning Engineer

Funkce a případy použití DVC

Probíraná témata

  • Verzování dat a modelů
  • DVC Pipelines
  • Sledování metrik a grafů

Pokročilá témata (neprobírána)

  • Sledování experimentů
  • CI/CD pro strojové učení
  • Datový registr
Úvod do verzování dat s DVC

Verzování dat a modelů

Schéma verzování dat a modelu s vazbou na konkrétní Git commity

1 https://dvc.org/doc/use-cases/versioning-data-and-models
Úvod do verzování dat s DVC

Pipelines

Schéma pipeline kroku trénování modelu

  • Definice pipeline v dvc.yaml
stages:
  train:
    cmd: python train.py

deps: - code/train.py - data/input_data.csv - params/params.json
outs: - model_output/model.pkl
  • Spuštění pomocí dvc repro.
Úvod do verzování dat s DVC

Sledování metrik a grafů

$ 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

Porovnání metrik AUC napříč experimenty ML pomocí DVC plots

1 https://dvc.org/doc/command-reference/plots/diff
Úvod do verzování dat s DVC

Sledování experimentů

  • Spuštění experimentu a zaznamenání metrik
    • dvc repro
    • dvc exp save
  • Alternativně oba kroky sloučí dvc exp run
  • Experimenty jsou vlastní reference Gitu
    • Zabraňují nadměrnému nárůstu commitů
    • Explicitní uložení lze provést pomocí dvc exp save
  • Vizualizace pomocí dvc exp show
Úvod do verzování dat s DVC

CI/CD pro strojové učení

Ilustrace použití DVC a CML pro CI/CD

1 Picture credits: https://dvc.org/doc/use-cases/ci-cd-for-machine-learning
Úvod do verzování dat s DVC

Datový registr

Ilustrace použití DVC jako datového registru

1 Picture credits: https://dvc.org/doc/use-cases/data-registry
Úvod do verzování dat s DVC

Pojďme si procvičit!

Úvod do verzování dat s DVC

Preparing Video For Download...