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.
Déploiement continu de modèle de
Machine Learning
Loïc DIVAD
Loïc DIVAD
Data Engineer
@loicmdivad
CI/CD & Machine Learning
Un contexte
Prédiction du chiffre d’affaire des équipements
3
Un cadre de développement
CI/CD & Machine Learning
“the right tool for the right job”
VCS CI REPO
4
Un cadre de développement
CI/CD & Machine Learning
“the right tool for the right job”
VCS CI REPOEXPLO
5
CI/CD & Machine Learning
Le modèle, quésaco ?
Training
App
y
Modèle
6
CI/CD & Machine Learning
Le modèle, quésaco ?
Training
App
y
ỹ
Modèle
7
Predicting
APP
Modèle
CI/CD & Machine Learning
Entraînement d’un modèle
Création d’un modèle sérialisable
VCS CI REPOEXPLO /apps/<myapp>/model_v...
CI/CD & Machine Learning
Entraînement sur de nouvelles données
“With more data comes great generalization power”
VCS CI RE...
CI/CD & Machine Learning
Entraînement sur de nouvelles features
Develop, Deploy, Fit … Repeat
VCS CI REPOEXPLO
/apps/<myap...
11
CI/CD & Machine Learning
Intégration Continue de Modèles
DIY
12
Distribution
Features
extraction
Prediction
Source Ingestion
Source Ingestion
Source Ingestion
Model
Training
The Machine ...
Distribution
Features
extraction
Prediction
Source Ingestion
Source Ingestion
Source Ingestion
Model
Training
Release
The ...
Une release continue
DIY: Machine Learning Platform
ỹ model_id
@app-dt01-<ts>
@app-dt01-<ts>
▼ Chaque modèle est versionné...
Distribution
Features
extraction
Prediction
Source Ingestion
Source Ingestion
Source Ingestion
Model
Training
Release
Test...
Une évaluation automatisée
DIY: Machine Learning Platform
y ỹ model_id
@app-dt02-<ts>
@app-dt02-<ts>
@app-dt02-<ts>
L ( y ...
Distribution
Features
extraction
Prediction
Source Ingestion
Source Ingestion
Source Ingestion
Model
Training
Release
Repo...
Development
Release
Integration
Deployment
Séparation du code et du modèle
Entraînement du modèle sur les données de produ...
Conclusion
Machine Learning Platform
La machine learning plateforme, prochain outils de CI/CD
20
VCS CI REPOEXPLO
MERCI
21
22
ANNEXES ?
23
Parce qu’ils en parlent encore mieux
24
Déploiement continu de modèle de Machine Learning
Références
▼ Meet Michelangelo: ...
Distribution
Features
extraction
Prediction
Source Ingestion
Source Ingestion
Source Ingestion
Distribution
Model
Training...
DIY: Machine Learning Platform
Machine Learning Platform
La machine learning plateforme, prochain outils de CI/CD
26
VCS C...
DIY: Machine Learning Platform
Projet Bold Eagle
La machine learning plateforme, mon outils de CI/CD
27
VCS CI REPOEXPLO
S...
Serving
28
+10ms 5s - 1mins 1 day
RCP
Servers :
Tensorflow
Serving
Prediction
Servers:
AWS Lambda,
Cloud AI
Structured
Str...
Serving: un exemple pour du temps réel
29
Model serving architecture by Boris Lublinsky - from Serving Machine Learning Mo...
THE VERY END
30
XebiCon'17 : Déploiement continu de modèle de Machine Learning - Loïc Divad
Prochain SlideShare
Chargement dans…5
×

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

46 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

×