Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Meetup Crafting Data Science #3 (mars 2020)

Meetup Crafting Data Science #3 (mars 2020)

Après la mise en production d'un système de Data science, il y a le ré-entraînement, l'interprétabilité, les évolutions... mais aussi le monitoring ! Rarement prioritaire et souvent oublié, il est pourtant nécessaire pour s'assurer que notre système fonctionne comme prévu.

Vue pragmatique et rationnelle du monitoring des systèmes de data science, accompagné d'un retour d'expérience ! #BeforeMLOpsWasCool

* Speakers : Emmanuel-Lin Toulemonde et Mehdi Houacine, consultants data @ OCTO Technology
* Evénement : https://www.meetup.com/crafting-datascience/events/266808362/
* Lieu : 34 avenue de l'Opéra, Paris, locaux OCTO Technology

Mehdi Houacine

November 28, 2024
Tweet

More Decks by Mehdi Houacine

Other Decks in Programming

Transcript

  1. OCTO Part of Accenture Digital © 2020 - All rights

    reserved 2 Qui est-on ? Mehdi HOUACINE Consultant Data Emmanuel-Lin TOULEMONDE Consultant Data
  2. OCTO Part of Accenture Digital © 2020 - All rights

    reserved ◉ Vous êtes une association qui cherche à aider les patients épileptiques. ◉ Votre mission : prédire l’arrivée d’une crise d’ épilepsie 5 minutes avant! ◉ Les patients portent des capteurs qui remontent des constantes utiles pour la prédiction. ◉ Le patient met ses capteurs au lever et les retire le soir. 3 Votre mission si vous l’acceptez... Activité dermale Rythme cardiaque Respiration
  3. OCTO Part of Accenture Digital © 2020 - All rights

    reserved Nous avons : ◉ Construit le prototype ◉ Validé l’utilité ◉ Tiré les flux ◉ … Nos patients se servent de la solution 4 … nous sommes en production …
  4. OCTO Part of Accenture Digital © 2020 - All rights

    reserved 5 ... Mais de nombreux challenges nous attendent encore SPONSOR “J’ai investi des millions d’euros dans ce système. Est-ce que ça marche ? ” RÉGULATEUR “Je veux m’assurer que le modèle n’est pas biaisé envers certaines populations” UTILISATEUR “Je souhaite recevoir 1 prédiction avec au moins 5 minutes d’avance” DATA SCIENTIST “Je dois savoir si le modèle de machine Learning fonctionne bien en production”
  5. OCTO Part of Accenture Digital © 2020 - All rights

    reserved 6 Ces challenges ne peuvent être adressés directement Le comportement de notre système de data science doit être observé et suivi dans la durée pour cela Nous avons besoin de monitorer notre système (pas juste le modèle) !
  6. OCTO Part of Accenture Digital © 2020 - All rights

    reserved 7 L’intuition du data scientist … Traitement 1 Traitement 2 Traitement 3 Prédiction Moyenne Ecart-type 𝝙 Min Max 𝜎
  7. OCTO Part of Accenture Digital © 2020 - All rights

    reserved 8 Le monitoring de distributions donne un dashboard illisible Nous sommes convaincu que le monitoring de distributions dans tous les sens est inefficace et coûteux
  8. OCTO Part of Accenture Digital © 2020 - All rights

    reserved 10 On peut le monitorer “À FROID” On peut le monitorer “À CHAUD” Investigation en temps réel Indicateurs exposés immédiatement Information historisée Investigation a posteriori
  9. OCTO Part of Accenture Digital © 2020 - All rights

    reserved 11 Le système peut se comporter de façon déterministe mais aussi de façon non-déterministe
  10. OCTO Part of Accenture Digital © 2020 - All rights

    reserved 12 Le monitoring apporte du feedback à différentes vitesses Technique Données ROI SLA / SLO
  11. OCTO Part of Accenture Digital © 2020 - All rights

    reserved 13 Le système peut être monitoré de façon technique Santé de la carte graphique (GPU) Consommation de la RAM
  12. OCTO Part of Accenture Digital © 2020 - All rights

    reserved Comprendre ce que les utilisateurs attendent réellement du service afin d’ éviter les insatisfactions puis le monitorer. Service Licence Agreement | Objective Monitoring de service CONTRAT
  13. OCTO Part of Accenture Digital © 2020 - All rights

    reserved 15 On peut le monitorer par le prisme du coût ou du gain (financier)
  14. OCTO Part of Accenture Digital © 2020 - All rights

    reserved 16 Le monitoring des coûts / profits CONTRAINTES : 1. Récupérer la vérité 2. Être capable de valoriser une bonne prédiction SOLUTIONS : 1. Il faut toujours récupérer la vérité ! Cela peut-être long, mais il faut ! 1. Il est possible de prendre : ⦿ Des hypothèses ⦿ Des proxys : métrique data science, métrique métier
  15. OCTO Part of Accenture Digital © 2020 - All rights

    reserved 17 On peut le monitorer par le prisme de la donnée
  16. OCTO Part of Accenture Digital © 2020 - All rights

    reserved 19 1ère étape : Tracer le pipeline Stockage Annotation des crises Réentrainement Exposition On / Off Capture de signal Pre- processing Prédiction Amélioration Inférence
  17. OCTO Part of Accenture Digital © 2020 - All rights

    reserved 20 2ème étape : Identifier les sources de non-déterminisme Stockage Annotation des crises Réentrainement Amélioration Inférence Sources de non-déterminisme Exposition On / Off Capture de signal Pre- processing Prédiction
  18. OCTO Part of Accenture Digital © 2020 - All rights

    reserved Non-déterministe car : ◉ Le bouton On / Off est à la main du patient Propriété attendue : ◉ Les capteurs sont allumés de 7h15 à 22h30 > Car ce sont les heures indiquées par le patient Sonde proposée : ◉ Créneaux horaires où les capteurs sont allumés 21 Le On / Off
  19. OCTO Part of Accenture Digital © 2020 - All rights

    reserved 22 Prise de signal Non-déterministe car : ◉ Le contenu du signal n’est pas maîtrisé par le système Propriété attendue : ◉ Il doit y avoir un rythme cardiaque entre 50 et 180 bpm Sonde proposée : ◉ Rythme cardiaque moyen par fenêtre glissantes de 60 sec
  20. OCTO Part of Accenture Digital © 2020 - All rights

    reserved 23 Annotation des signaux Non-déterministe car : ◉ Des annotateurs peuvent avoir des avis divergents ◉ Les annotateurs peuvent changer Propriété attendue : ◉ Les signaux sont annotés par plusieurs annotateurs de manière similaire Sonde proposée : ◉ Mesure de la variance d’annotation entre deux experts (ex : via Intersection over Union) IoU : 20% BAD t IoU : 75% GOOD t IoU : 97% EXCELLENT ! t
  21. OCTO Part of Accenture Digital © 2020 - All rights

    reserved 24 Réentrainement Non-déterministe car : ◉ L’aléa est au cœur des algorithmes d’apprentissages Propriété attendue : ◉ Performance au moins équivalente sinon meilleure au modèle déjà en production Méthode pour les monitorer : ◉ Shadow production pour comparer les performances des modèles candidats par rapport au modèle déployé en production
  22. OCTO Part of Accenture Digital © 2020 - All rights

    reserved Non-déterministe car : Propriétés attendues : Méthode pour les monitorer : Il existe des problèmes ◉ que l’on à pas réussi à formaliser, ◉ que l’on a estimé peu probables, ◉ ou que l’on a simplement pas identifié ◉ La distribution des prédictions est stable dans le temps ◉ Suivre la distribution des prédictions, en bout de pipeline 25 Une distribution monitorée par défaut : La voiture balais
  23. OCTO Part of Accenture Digital © 2020 - All rights

    reserved 27 Positionnement de la sonde Stockage Annotation des crises Réentrainement Exposition On / Off Capture de signal Pre- processing Prédiction Plus une sonde est loin dans le pipeline, plus elle est générique La prédiction n’est pas assez performante à cause de la prise de signal La prédiction n’est pas assez performante
  24. OCTO Part of Accenture Digital © 2020 - All rights

    reserved 28 Cohérence entre les sondes Stockage Annotation des crises Réentrainement Exposition On / Off Capture de signal Pre- processing Prédiction Lorsqu’une sonde lève une erreur à l’étape N mais qu’il n’y a pas de problèmes après : cette sonde mérite d’être challengée
  25. OCTO Part of Accenture Digital © 2020 - All rights

    reserved 29 Monitoring et temps de calculs Stockage Annotation des crises Réentrainement Exposition On / Off Capture de signal Pre- processing Prédiction Une sonde ne doit pas casser les SLA !
  26. OCTO Part of Accenture Digital © 2020 - All rights

    reserved 30 Critères de choix des sondes Stockage Annotation des crises Réentrainement Exposition On / Off Capture de signal Pre- processing Prédiction Seuls les aléas anticipables et probables méritent des sondes
  27. OCTO Part of Accenture Digital © 2020 - All rights

    reserved 31 Monitoring ou feature ? Stockage Annotation des crises Réentrainement Exposition 3 Capteurs ? Capture de signal Pre- processing Prédiction On / Off Si le besoin est critique, la sonde doit faire partie de l’application
  28. OCTO Part of Accenture Digital © 2020 - All rights

    reserved 33 Notre dashboard final 85% Bonnes prédictions ON / OFF Rythme cardiaque Nombre de crises prédites IoU Shadow production
  29. OCTO Part of Accenture Digital © 2020 - All rights

    reserved 34 Take away 01 03 02 04 Tracer le pipeline Poser des sondes Challenger ces sondes Itérer ! ◉ Une fois en production, il faudra monitorer ◉ Il y a 4 prismes de monitoring > Technique, SLA & SLO, data et ROI ◉ La nouveauté, c’est le monitoring sur les données ◉ Monitorer des distributions dans tous les sens est COÛTEUX ET INEFFICACE
  30. OCTO Part of Accenture Digital © 2020 - All rights

    reserved 35 Quelques pistes pour alimenter le backlog Et d’autres pistes pour aller plus loin Faire un atelier monitoring de systèmes de data science Mesurer et historiser les métriques identifiées Construire un Dashboard pour visualiser les sondes Donner accès au Dashboard aux parties prenantes Récolter du feedback ... POUR ALLER PLUS LOIN Se pencher sur l’alerting S’intéresser aux 3 piliers de l’observabilité …
  31. OCTO Part of Accenture Digital © 2020 - All rights

    reserved 37 Vous êtes peut-être comme nous... Votre système de data science est en production ! Vous déployez du ML en continu Vous avez des utilisateurs Vous avez une usine de développement Vous avez tiré des flux de données Vous avez une infrastructure Ce n’a pas été facile mais on y est arrivé ! BRAVO !
  32. OCTO Part of Accenture Digital © 2020 - All rights

    reserved 38 ... Mais de nombreux challenges nous attendent encore Flux d’Annotations Interprétabilité Expérience utilisateur Auditabilité Éviter les biais Ré-entraînement