Motivazione del versioning dei dati

Introduzione al versionamento dei dati con DVC

Ravi Bhadauria

Machine Learning Engineer

Cos'è il versioning dei dati?

  • Definizione
    • Monitora i cambiamenti dei dati nel tempo
    • Crea snapshot dei dati tra le iterazioni
    • Simile al versioning del codice
  • Benefici
    • Recupero e verifica
    • Coerenza, responsabilità e lineage dei dati
  • Applicazioni
    • Data Science e Machine Learning
    • Data Engineering
    • Analisi finanziaria, audit e compliance
Introduzione al versionamento dei dati con DVC

Versioning di dati vs codice

Versioning del codice

  • Ben noto nello sviluppo software
  • Usa strumenti come Git per il controllo versione decentralizzato
  • Più facile da gestire perché le codebase sono piccole

Versioning dei dati

  • Relativamente nuovo (SciDB proposto nel 2012)
  • Toolchain come DVC usate insieme a Git
  • Più difficile da gestire per la grandezza dei dataset
1 doi: 10.1109/ICDE.2012.102
Introduzione al versionamento dei dati con DVC

Perché il versioning dei dati in ML?

Immagine della composizione di un modello ML: codice, iperparametri e dati

Introduzione al versionamento dei dati con DVC

Influenza del dataset

Dataset A Immagine dell'head del dataframe del dataset A

Dataset B Immagine dell'head del dataframe del dataset B

Introduzione al versionamento dei dati con DVC

Influenza del dataset

 

Iperparametri invariati, dataset cambiato

 

Metrica Dataset A Dataset B
Precisione 0.78 0.79
Recall 0.54 0.57
F1-score 0.64 0.66
Accuratezza 0.80 0.81
Introduzione al versionamento dei dati con DVC

Influenza degli iperparametri

 

Dataset invariato, iperparametri cambiati

 

Metrica n_estimators=5 n_estimators=10
Precisione 0.78 0.85
Recall 0.54 0.52
F1-score 0.64 0.65
Accuratezza 0.80 0.81
Introduzione al versionamento dei dati con DVC

Layout degli esercizi in editor

Immagine annotata del layout dell'esercizio in editor con cartelle, file e terminale.

Introduzione al versionamento dei dati con DVC

Passiamo alla pratica!

Introduzione al versionamento dei dati con DVC

Preparing Video For Download...