Introduction à l'intégration et à la livraison continues pour le Machine Learning

CI/CD pour le Machine Learning

Ravi Bhadauria

Machine Learning Engineer

Aperçu du SDLC

  • SDLC : Software Development Life Cycle
  • Approche systématique couvrant tout le cycle de développement logiciel
  • Le flux SDLC est la suite d'étapes pour atteindre des objectifs précis :
    • Build : compiler/packager le code, résoudre les dépendances
    • Test : garantir fonctionnalité, qualité et fiabilité du code
    • Deploy : rendre le logiciel disponible dans un environnement donné

  Diagramme des dépendances des étapes du flux SDLC. Build est la première étape, suivie de test et deploy.

CI/CD pour le Machine Learning

SDLC en Machine Learning

  • Le développement en Machine Learning est complexe et long
    • Le modèle est un algorithme qui évolue dynamiquement
    • L'ingénierie des données est clé
  • L'intégration/livraison continues réduisent les erreurs et accélèrent la livraison de logiciels ML de qualité
  • Indispensable pour un ML et une expérimentation efficaces
1 https://cloud.google.com/blog/products/ai-machine-learning/making-the-machine-the-machine-learning-lifecycle
CI/CD pour le Machine Learning

Qu'est-ce que CI/CD ?

  • Intégration continue (CI) : pratique consistant à construire, tester et fusionner fréquemment les changements de code dans un référentiel partagé
  • Permet de détecter tôt les problèmes d'intégration et de maintenir une base de code cohérente
  • Livraison continue (CD) : garantit que les changements de code peuvent être déployés en production à tout moment, avec approbation manuelle
  • Déploiement continu (CD) : déploie automatiquement les changements en production sans intervention manuelle
CI/CD pour le Machine Learning

CI/CD en Machine Learning

  • Dépendance aux données : stratégies de versionnage et de gestion des données
  • Expérimentation : automatisation du réglage des hyperparamètres
  • Versionnage des modèles : meilleure collaboration
  • Paradigme de test : va au-delà des tests unitaires et fonctionnels classiques
  • Défis du déploiement continu : complexités du serving, de la supervision et des mises à jour de modèles
CI/CD pour le Machine Learning

Périmètre de ce cours

Schéma des étapes d'un projet de Machine Learning, mettant l'accent sur Préparation des données, Développement du modèle, et Évaluation/Réglage du modèle.

CI/CD pour le Machine Learning

Récapitulatif

  • Le flux du cycle de développement logiciel comprend build, test et deploy
  • La CI assure des fusions fréquentes et une détection précoce des problèmes
  • La CD permet de déployer des changements avec approbation manuelle
  • Le déploiement continu automatise le déploiement sans intervention manuelle
  • CI/CD en Machine Learning permet :
    • Versionnage des données
    • Création de modèles et versionnage des modèles
    • Automatisation des expériences
    • Tests
    • Déploiement
CI/CD pour le Machine Learning

Passons à la pratique !

CI/CD pour le Machine Learning

Preparing Video For Download...