Fonctionnalités DVC et cas d'usage

Introduction au versionnage des données avec DVC

Ravi Bhadauria

Machine Learning Engineer

Fonctionnalités DVC et cas d'usage

Sujets abordés

  • Versionner données et modèles
  • Pipelines DVC
  • Suivi des métriques et des graphiques

Sujets avancés (hors périmètre)

  • Suivi des expériences
  • CI/CD pour Machine Learning
  • Registre de données
Introduction au versionnage des données avec DVC

Versionner données et modèles

Schéma : versionner les données avec le modèle en les reliant à des commits Git précis

1 https://dvc.org/doc/use-cases/versioning-data-and-models
Introduction au versionnage des données avec DVC

Pipelines

Schéma du pipeline de l'étape d'entraînement du modèle

  • Définir le pipeline dans dvc.yaml
stages:
  train:
    cmd: python train.py

deps: - code/train.py - data/input_data.csv - params/params.json
outs: - model_output/model.pkl
  • Exécuter avec dvc repro.
Introduction au versionnage des données avec DVC

Suivre les métriques et les graphiques

$ 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

Comparer les métriques AUC entre expériences ML avec les graphiques DVC

1 https://dvc.org/doc/command-reference/plots/diff
Introduction au versionnage des données avec DVC

Suivi des expériences

  • Lancer une expérience et consigner les métriques
    • dvc repro
    • dvc exp save
  • Sinon, combiner les deux : dvc exp run
  • Les expériences sont des références Git dédiées
    • Évite d'encombrer l'historique Git
    • Des sauvegardes explicites sont possibles avec dvc exp save
  • Visualiser avec dvc exp show
Introduction au versionnage des données avec DVC

CI/CD pour Machine Learning

Image conceptuelle de DVC et CML utilisés pour la CI/CD

1 Crédits image : https://dvc.org/doc/use-cases/ci-cd-for-machine-learning
Introduction au versionnage des données avec DVC

Registre de données

Image de DVC utilisé comme registre de données

1 Crédits image : https://dvc.org/doc/use-cases/data-registry
Introduction au versionnage des données avec DVC

Passons à la pratique !

Introduction au versionnage des données avec DVC

Preparing Video For Download...