Domaine de validité – quels sont les indicateurs d’une IA de confiance ?

Cet article a été rédigé par Nicolas Girard, Philippe Neveux et Grégoire Martinon.
Dans de nombreux projets d’IA, les utilisateurs métiers ont besoin de prédictions fiables. Autrement, ils risquent de prendre des décisions aveugles ou de cesser d’utiliser le modèle en raison d’un manque de compréhension de son fonctionnement ainsi que de ses résultats. Par ailleurs, l’impressionnante capacité des algorithmes d’IA à prédire avec précision repose sur une phase d’apprentissage dans laquelle une grande quantité de données est utilisée. De fait, en l’absence de contrôles relatifs à la validité des données utilisées, cet atout peut soudainement devenir son talon d’Achille. Par conséquent, une IA digne de confiance devrait s’appuyer sur des algorithmes qui sont non seulement capables de fournir des prédictions précises, mais aussi explicables et fiables.
Dans cet article, nous présentons la notion de domaine de validité, qui regroupe une série de contrôles élémentaires et d’indicateurs de précaution pouvant guider la prise de décision d’un opérateur humain.
Comment définir le domaine de validité de l’IA ?
Tout cycle de vie d’un modèle de machine learning (ML) peut être résumé comme suit :
- Apprendre des tendances sur un jeu d’entraînement
- Mettre le modèle en production
- Prédire sur de nouvelles données
- Prendre une décision
- Attendre d’obtenir les labels véritables pour calculer les performances et enrichir le jeu d’entraînement
- Répéter tout depuis le début
Alors, où intervient le domaine de validité ?
Tout d’abord, à l’étape 3, il y a une question évidente :
« Comment s’assurer que les données d’entrée en production sont valides ? »
Autrement dit : comment s’assurer que l’hypothèse fondatrice i.i.d. (points de données indépendants et identiquement distribués) est vraiment satisfaite ?
Et puis à l’étape 4 :
« Comment faire confiance à la prédiction ? »
Figure 1 : Le domaine de validité dans le cycle de vie d’une IA. Deux questions se posent naturellement : « Comment s’assurer que les données d’entrée en production sont valides ? » et « Comment faire confiance à la prédiction ? ».
Le domaine de validité peut être abordé à travers trois concepts principaux :
- Auditabilité : décrire littéralement les données d’entraînement et les prédictions, comprendre et s’assurer de la reproductibilité de toutes les expériences, modèles entraînés et des prédictions obtenues.
- Validation métier : définir des critères d’acceptation métier pour les points de données et les prédictions des modèles.
- Validation technique : fournir des scores d’anomalie pour les points de données et des garanties mathématiques sur la précision de la prédiction.
Figure 2 : Principaux concepts du domaine de validité. Chacune des deux questions peut être abordée avec trois niveaux de réponse : auditabilité, validation métier et validation technique. Plusieurs logos illustrent les outils soutenant les réponses.
Dans la suite de cet article, nous détaillons les 3 briques permettant de répondre aux 2 questions de la figure 2. Pour cela nous nous sommes appuyés sur certains outils open-source :
- MLflow pour la reproductibilité et l’auditabilité
- Great Expectations pour la validation des données métier
- Scikit-learn pour la détection d’anomalie
- MAPIE pour la quantification de l’incertitudes
En exploitant ces outils, nous avons pu produire des indicateurs graphiques qui sont finalement rassemblés dans un dashboard dit d’aide à la décision. Toutes les figures présentées par la suite sont issues de ce dashboard.
Étape 1 – Auditabilité
Vous êtes-vous déjà demandé d’où provenaient les données collectées ? Avez-vous clairement documenté le processus d’échantillonnage des données ou encore, le type de modèle utilisé ? Sinon, comment pouvez-vous convaincre une personne extérieure au projet de croire profondément en votre méthodologie ? Comment pouvez-vous l’encourager à réutiliser votre processus ou la mettre en garde contre une utilisation hors du champ d’application ? La documentation est le premier pas vers le domaine de validité.
Répondre à une telle batterie de questions sur les données et les caractéristiques du modèle garantit que toute personne qui a contribué au projet d’une manière ou d’une autre peut comprendre correctement quelles sont les données utilisées, comment le modèle a été entraîné et validé, quelles mesures sont utilisées pour évaluer les performances des modèles, etc. Un élément clé d’une IA digne de confiance est la transparence. Précisément, la documentation permet d’être totalement transparent sur le processus de modélisation et de faciliter l’audit [1, 2].
Avez-vous déjà douté de pouvoir retrouver un ancien résultat de test ? La mise en place de la documentation et le suivi des expériences garantissent que vos résultats peuvent être facilement reproduits à tout moment, quel que soit l’environnement de développement utilisé. Le prétraitement et le nettoyage des données, l’entraînement, les prédictions, les mesures de performance ne devraient pas être des expériences magiques qui ne peuvent être systématiquement reproduites. Dans cette optique, nous pouvons suivre chaque traitement, jeu de données d’apprentissage, hyperparamètres avec certains outils de versioning comme MLFlow.
Figure 3 : Illustration de l’interface utilisateur MLflow. L’outil peut permettre la gestion des versions, la traçabilité et la reproductibilité de chaque expérience alimentant une conception de modèle, permettant aux auditeurs externes d’évaluer la validité de manière asynchrone.
Étape 2 – Validation métier
Validation de l’entrée
L’entraînement d’un algorithme d’IA nécessite de grandes quantités de données pour apprendre des tendances cachées. Mais finalement, comment peut-on s’assurer que les données d’entrée sont valides d’un point de vue métier ?
Pour répondre à cette question, nous pouvons utiliser Great Expectations, une bibliothèque open-source dédiée à la validation des données. Son fonctionnement est relativement simple, nous définissons un ensemble de règles attendues en matière de qualité des données – princ