Introduction à l'intégration et à la distribution 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
  • Démarche systématique couvrant tout le cycle de développement logiciel
  • Le flux SDLC désigne la séquence d'étapes pour atteindre des objectifs précis :
    • Build : compilation et/ou empaquetage du code, résolution des dépendances
    • Test : assurer la fonctionnalité, la qualité et la fiabilité de la base de code
    • Deploy : rendre le logiciel disponible dans un environnement donné

  Schéma de 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 peut être complexe et long
    • Le modèle est un algorithme qui évolue dynamiquement
    • L'ingénierie des données est clé
  • L'intégration et la distribution continues réduisent les erreurs et accélèrent la livraison d'un logiciel ML de qualité
  • Essentielles pour un Machine Learning 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 dépôt partagé
  • Permet de détecter tôt les problèmes d'intégration et de garder une base de code cohérente
  • Distribution continue (CD) : permet de déployer les changements en production en tout temps, avec approbation manuelle
  • Déploiement continu (CD) : déploie automatiquement en production sans intervention manuelle
CI/CD pour le Machine Learning

CI/CD en Machine Learning

  • Dépendance aux données : stratégies de gestion et de versionnage des données
  • Expérimentation : automatisation de l'ajustement d'hyperparamètres
  • Versionnage de modèles : améliorer la collaboration
  • Paradisgme d'essais : au‑delà des tests fonctionnels et unitaires classiques
  • Défis du déploiement continu : complexités du service de modèles, de la surveillance et des mises à jour
CI/CD pour le Machine Learning

Portée de ce cours

Schéma des étapes d'un projet de Machine Learning, mettant l'accent sur la préparation des données, le développement du modèle, puis l'évaluation et l'ajustement du modèle.

CI/CD pour le Machine Learning

Résumé

  • Le flux du cycle de vie du développement logiciel comprend la création, les essais et le déploiement du code
  • L'intégration continue (CI) favorise des fusions fréquentes et la détection précoce des problèmes
  • La distribution continue (CD) permet le déploiement avec approbation manuelle
  • Le déploiement continu (CD) automatise le déploiement sans intervention manuelle
  • CI/CD en Machine Learning permet :
    • Versionnage des données
    • Création de modèles et versionnage de modèles
    • Automatisation des expériences
    • Essais
    • Déploiement
CI/CD pour le Machine Learning

Passons à la pratique !

CI/CD pour le Machine Learning

Preparing Video For Download...