Versionnage des données et des modèles

Déployer des modèles de Machine Learning en production

Sinan Ozdemir

Data Scientist, Entrepreneur, and Author

Versionnage majeur et mineur

Deux types de versionnage : majeur et mineur

  • Le versionnage majeur indique un grand changement dans les données ou le modèle

  • Le versionnage mineur indique un petit changement

Avec des versions majeures/mineures, on voit quels changements ont été faits aux données ou au modèle

Déployer des modèles de Machine Learning en production

Versionnage des données d'entraînement

  • Étiquettes majeures/mineures uniques ou horodatages
  • Assurer la reproductibilité et la traçabilité des expériences
  • Revenir facilement à une version antérieure des données
  • Voir l'évolution des données dans le temps

Exemple :

  1. Data V 1.0 était notre jeu de données initial
  2. Data V 1.1 incluait des transformations de caractéristiques supplémentaires
  3. Data V 1.2 a ajouté une méthode de sélection de caractéristiques
  4. Data V 2.0 inclut une toute nouvelle source de données
Déployer des modèles de Machine Learning en production

Magasins de caractéristiques (feature stores)

  • Dépôt central pour stocker et gérer différentes versions de caractéristiques
  • Suivi facile des versions de caractéristiques
  • Utiliser des caractéristiques pour différents essais
  • Améliorer la collaboration et l'intégrité des expérimentations
  • Réduire le dédoublement du travail
Déployer des modèles de Machine Learning en production

Versionnage des modèles de Machine Learning

  • Suivre différentes versions de modèles de Machine Learning
  • Assurer la reproductibilité et la traçabilité des expériences
  • Rétrograder facilement vers une version antérieure du modèle
  • Correspond généralement à la version des données d'entraînement, mais pas toujours

Exemple :

  1. Model V 1.0 est notre modèle initial (Random Forest)
  2. Model V 1.1 est le même modèle ajusté finement sur Data V 1.1
  3. Model V 2.0 est maintenant un modèle XGBoost ajusté finement sur Data V 1.2
  4. Model V 2.1 est le modèle XGBoost ajusté finement sur Data V 2.0
Déployer des modèles de Machine Learning en production

Magasins de modèles

  • Dépôt central pour stocker et gérer différentes versions de modèles
  • Suivi facile des versions de modèles
  • Rétrograder vers des versions antérieures
Déployer des modèles de Machine Learning en production

Exemple de versionnage de modèle avec MLflow

import mlflow

# Start a new mlflow run
with mlflow.start_run() as run:
    # Log model version as a parameter
    mlflow.log_param("model_version", "1.0")

    # Train and save the model
    model = train_model()
    mlflow.sklearn.log_model(model, "model")
Déployer des modèles de Machine Learning en production

Passons à la pratique !

Déployer des modèles de Machine Learning en production

Preparing Video For Download...