Ce diaporama a bien été signalé.
Nous utilisons votre profil LinkedIn et vos données d’activité pour vous proposer des publicités personnalisées et pertinentes. Vous pouvez changer vos préférences de publicités à tout moment.

XebiCon'17 : Déploiement continu de modèle de Machine Learning - Loïc Divad

141 vues

Publié le

De plus en plus d’initiatives Data Science sont rendues possibles grâce à la mise en place de DataLakes. Les modèles de Machine Learning inclus dans ces projets sont, comme toute application, sujets à évolutions. Le suivi de ces évolutions peut-il être automatisé ? Les standards de déploiement pour ces applications sont-ils toujours de rigueur ?
Lors de ce slot nous présenterons différentes pistes pour réconcilier Continuous Delivery et Machine Learning.

Publié dans : Technologie
  • Soyez le premier à commenter

  • Soyez le premier à aimer ceci

XebiCon'17 : Déploiement continu de modèle de Machine Learning - Loïc Divad

  1. 1. Déploiement continu de modèle de Machine Learning Loïc DIVAD
  2. 2. Loïc DIVAD Data Engineer @loicmdivad
  3. 3. CI/CD & Machine Learning Un contexte Prédiction du chiffre d’affaire des équipements 3
  4. 4. Un cadre de développement CI/CD & Machine Learning “the right tool for the right job” VCS CI REPO 4
  5. 5. Un cadre de développement CI/CD & Machine Learning “the right tool for the right job” VCS CI REPOEXPLO 5
  6. 6. CI/CD & Machine Learning Le modèle, quésaco ? Training App y Modèle 6
  7. 7. CI/CD & Machine Learning Le modèle, quésaco ? Training App y ỹ Modèle 7 Predicting APP Modèle
  8. 8. CI/CD & Machine Learning Entraînement d’un modèle Création d’un modèle sérialisable VCS CI REPOEXPLO /apps/<myapp>/model_v1 8
  9. 9. CI/CD & Machine Learning Entraînement sur de nouvelles données “With more data comes great generalization power” VCS CI REPOEXPLO /apps/<myapp>/model_v1 /apps/<myapp>/model_v2 /apps/<myapp>/model_v3 … /apps/<myapp>/model_v? ▼ Les notions de modèle en Production et de modèle Courant doivent être dissociées ▼ Les évolutions entre ces modèles doivent être traçables ▼ Les datasets utilisés doivent être identifiés 9
  10. 10. CI/CD & Machine Learning Entraînement sur de nouvelles features Develop, Deploy, Fit … Repeat VCS CI REPOEXPLO /apps/<myapp>/model_v1 /apps/<myapp>/model_v2 /apps/<myapp>/model_v3 … /apps/<myapp>/model_v? VCS CI REPOEXPLO /apps/<myapp>/model_v41 /apps/<myapp>/model_v42 /apps/<myapp>/model_v43 … /apps/<myapp>/model_v4? Sprint N+1 10
  11. 11. 11 CI/CD & Machine Learning
  12. 12. Intégration Continue de Modèles DIY 12
  13. 13. Distribution Features extraction Prediction Source Ingestion Source Ingestion Source Ingestion Model Training The Machine Learning Pipeline 13 DIY: Machine Learning Platform
  14. 14. Distribution Features extraction Prediction Source Ingestion Source Ingestion Source Ingestion Model Training Release The Machine Learning Pipeline 14 DIY: Machine Learning Platform
  15. 15. Une release continue DIY: Machine Learning Platform ỹ model_id @app-dt01-<ts> @app-dt01-<ts> ▼ Chaque modèle est versionné ▼ Des tags latest et current permettent de comparer le dernier modèle et celui en ligne ▼ Les prédictions s’accompagnent de la version du modèle App Modèle 15 @app-dt02-<ts>
  16. 16. Distribution Features extraction Prediction Source Ingestion Source Ingestion Source Ingestion Model Training Release Test The Machine Learning Pipeline 16 DIY: Machine Learning Platform
  17. 17. Une évaluation automatisée DIY: Machine Learning Platform y ỹ model_id @app-dt02-<ts> @app-dt02-<ts> @app-dt02-<ts> L ( y , ỹ ) ↦ Score nouveau score 17 modèle n-2 modèle n-1
  18. 18. Distribution Features extraction Prediction Source Ingestion Source Ingestion Source Ingestion Model Training Release Report Test The Machine Learning Pipeline 18 DIY: Machine Learning Platform
  19. 19. Development Release Integration Deployment Séparation du code et du modèle Entraînement du modèle sur les données de productions Historisation des versions et jeux de données utilisés. Evaluation des performances. Tests de performance et comparaisons. Extraction de l’importance des features et hyperparamètres Mise en service d’un nouveau modèle Conclusion
  20. 20. Conclusion Machine Learning Platform La machine learning plateforme, prochain outils de CI/CD 20 VCS CI REPOEXPLO
  21. 21. MERCI 21
  22. 22. 22
  23. 23. ANNEXES ? 23
  24. 24. Parce qu’ils en parlent encore mieux 24 Déploiement continu de modèle de Machine Learning Références ▼ Meet Michelangelo: Uber’s Machine Learning Platform ▼ Serving Machine Learning Models ▼ TFX: A TensorFlow-Based Machine Learning Platform ▼ Hidden Technical Debt in Machine Learning Systems
  25. 25. Distribution Features extraction Prediction Source Ingestion Source Ingestion Source Ingestion Distribution Model Training Release Report Test The Machine Learning Pipeline 25 DIY: Machine Learning Platform
  26. 26. DIY: Machine Learning Platform Machine Learning Platform La machine learning plateforme, prochain outils de CI/CD 26 VCS CI REPOEXPLO
  27. 27. DIY: Machine Learning Platform Projet Bold Eagle La machine learning plateforme, mon outils de CI/CD 27 VCS CI REPOEXPLO Services API
  28. 28. Serving 28 +10ms 5s - 1mins 1 day RCP Servers : Tensorflow Serving Prediction Servers: AWS Lambda, Cloud AI Structured Streaming - Kafka Based Prediction Batch Predictions
  29. 29. Serving: un exemple pour du temps réel 29 Model serving architecture by Boris Lublinsky - from Serving Machine Learning Models Data Source Model Source Model Storage Current Model Processing Prediction Stream Processor
  30. 30. THE VERY END 30

×