DataDome

DataDome publie en open source son premier package d’apprentissage automatique : Sliceline

Table des matières

L’équipe de data science de DataDome est fière d’annoncer la mise en open-source de Sliceline, un package d’apprentissage automatique pour le débogage de modèles.

Sliceline

Ce package est une implémentation Python de SliceLine : Fast, Linear-Algebra-based Slice Finding for ML Model Debugging, présenté lors de la conférence SIGMOD 2021 par Svetlana Sagadeeva et Matthias Boehm de l’Université de Technologie de Graz.

Sliceline est conçu pour identifier rapidement des sous-populations (ou « slices ») là où un modèle d’apprentissage automatique (ML, machine learning) formé est nettement moins performant. Sliceline génère des règles, ou « filtres », pour isoler ces sous-populations au sein d’un jeu de données, afin de comprendre les difficultés du modèle et d’identifier des pistes d’amélioration.

Sliceline est un nouveau composant disponible pour vos stacks MLOps et/ou Explainability.

Les techniques d’énumération et d’élagage des slices s’appuient sur l’algèbre linéaire sparse, et les slices sont évalués par l’algorithme selon divers critères, notamment :

  • la taille du slice (le nombre d’éléments inclus) ;
  • les erreurs du slice (les erreurs commises par le modèle sur ce slice).

Chez DataDome, nous utilisons Sliceline de deux manières :

  1. En tant qu’outil de debogage de modèles ML.
  2. En tant qu’algorithme d’apprentissage de contrast set, pour générer des modèles de blocage dynamiques dans certains contextes.

Nous présenterons prochainement une application de Sliceline sur le dataset open-source Titanic.

 Open Source – Titanic Departing Southampton

Titanic quittant Southampton le 10 avril 1912.

Contribution

Nous sommes heureux de pouvoir contribuer aux connaissances globales de la communauté grâce à l’open source. Sliceline a été publié sous la licence BSD-3-Clause.

N’hésitez pas à contribuer comme vous le souhaitez. Nous sommes toujours ouverts aux nouvelles idées et approches.

  • Ouvrez une discussion si vous avez des questions ou des demandes. Il est toujours préférable de poser vos questions publiquement plutôt que par e-mail privé. Nous encourageons également à ouvrir une discussion avant de contribuer, afin que tout le monde soit sur la même longueur d’onde et éviter tout travail superflu.
  • N’hésitez pas à ouvrir un ticket si vous pensez avoir détecté un bug ou un problème de performance.

Veuillez consulter les directives de contribution si vous souhaitez apporter des modifications au code source.