Si les entreprises puisent largement dans l’open source pour leurs développements logiciels, certaines d’entre elles y reversent aussi régulièrement des codes sources susceptibles d’intéresser au-delà de leurs propres besoins. C’est le cas de la Maif qui réunit à l’adresse maif.github.io un éventail de solutions et outils de différentes natures, dont Otoroshi et Izanami, deux projets conçus pour les architectures de micro-services pour lesquels les équipes OSS de la mutuelle d’assurance ont été distinguées en 2018 par le CNLL. La dernière contribution en date de la Maif remonte à ce début d’année. Avec la solution Shapash, le groupe mutualiste cherche cette fois à rendre les modèles d’apprentissage machine compréhensibles par tous. Cette bibliothèque Python fournit plusieurs types de visualisation qui affichent des informations explicites pour chaque fonctionnalité et chaque valeur.
Au sein de la Maif, Shapash permet de faciliter le dialogue entre les data scientists et d’autres intervenants non spécialistes de la donnée. De façon plus générale, il doit aider les data scientists à mieux comprendre le fonctionnement des modèles qu’ils développent. « Concrètement, il s’agit d’une surcouche à d’autres librairies d’intelligibilité (Shap, Lime) », décrit dans un billet sur Medium Yann Golhen, lead data scientist à la Maif. Il y explique que la mutuelle porte un intérêt tout particulier à une utilisation éthique des données dont elle fait elle-même un usage historique pour maîtriser ses risques et proposer des conseils personnalisés à ses sociétaires. Son billet propose une démonstration des visualisations que l’on peut obtenir. Une interface permet d’explorer les différentes fonctionnalités d’un modèle et de naviguer entre explicabilité globale et locale. Yann Golhen souligne l’intérêt de pouvoir l’utiliser pour répondre à des utilisateurs métiers sur le fonctionnement des modèles de machine learning. Une démonstration de la webapp Shapash Monitor aide à se rendre compte de la façon de naviguer entre l’explicabilité globale et locale et à comprendre comment les différentes fonctionnalités y contribuent. Cette solution cherchant à apporter plus de transparence aux modèles d'intelligence artificielle est compatible avec de nombreuses bibliothèques de ML.
Classification d'emails et conformité au RGPD
Shapash vient donc s’ajouter aux autres contributions de Maif à l’open source dont Otoroshi et Izanami déjà cités. Otoroshi est une couche de gestion d’API légère placée au-dessus d’un reverse proxy, écrite en Scala et conçue pour prendre en charge les appels entre micro-services. Il se complète de Daikoku, un portail développeurs pour gérer les API dans le cadre d’un usage en self-service. Le projet Izanami est un service de configuration partagée, d’activation/désactivation de fonctionnalités et d’AB testing, également destiné aux architectures de micro-services. Parmi les projets versés figurent aussi Melusine, une bibliothèque de haut niveau pour la classification d’emails et Nio, une boîte à outils pour gérer la conformité avec le RGPD (gestion du consentement, accès aux données, portabilité et suppression des données). Nio fournit un système de gestion des enregistrements (record management). Enfin, le projet Let’s Automate automatise l’émission, le renouvellement et la synchronisation des certificats Let’s Encrypt avec le PaaS Clever Cloud ou avec un autre service d’hébergement piloté par API.
En dehors de cette contribution formelle à l’open source, l’équipe de développeurs de Maif fait aussi partager ses réflexions sur l’utilisation d’outils. Dans un récent billet, l’un d’eux décrit par exemple une façon de déployer un package Python en recourant au service de CI/CD Github Actions qui permet d’automatiser ses tâches pour la production.