En poursuivant votre navigation sur ce site, vous acceptez l’utilisation de cookies pour vous proposer des contenus et services adaptés à vos centres d’intérêts. En savoir plus et gérer ces paramètres. OK X
 
 

 

 

Actualité des entreprises

Red Hat : Découvrir TrustyAI

Publication: 27 novembre

Partagez sur
 
TrustyAI est une communauté open source qui s’efforce de proposer un ensemble d’outils variés destinés à favoriser le développement et le déploiement de l’intelligence artificielle (IA) responsable...
 

Elle a été fondée en 2019 dans le cadre de Kogito, une communauté open source dédiée à l’automatisation en entreprise, en réponse à la demande croissante des utilisateurs issus de secteurs d’activité fortement réglementés, tels que les services financiers ou la santé.

En raison de l’évolution de la réglementation concernant les technologies d’IA, les outils qui favorisent l’IA responsable constituent un atout inestimable et essentiel pour toutes les plateformes MLOps. Depuis 2021, TrustyAI s’est affranchie de Kogito et a gagné en taille et en portée en raison du récent boom de l’IA. En tant que contributeur majeur de TrustyAI, Red Hat s’engage à aider la communauté à poursuivre sa croissance et son évolution.

Parce qu’il s’agit d’une communauté open source, TrustyAI occupe une position unique au sein de l’espace de l’IA responsable. La communauté TrustyAI est convaincue qu’il est essentiel de démocratiser la conception et la recherche en matière d’outils d’IA responsable via un modèle open source, pour permettre à ceux qui sont confrontés aux conséquences des décisions relatives à l’IA, ce qui inclut presque tout le monde, aujourd’hui, d’avoir leur mot à dire sur ce que doit être une IA responsable.

Cas d’usage de TrustyAI

La communauté TrustyAI développe plusieurs projets d’IA responsable, centrés autour de l’explicabilité, du monitoring, du déploiement et de l’intégration responsable de modèles. Afin de comprendre la valeur ajoutée de ces projets, il suffit de se pencher sur deux cas d’usage : le premier concerne un modèle de machine learning « traditionnel » qui prédit l’acceptation de sinistres dans le domaine de l’assurance ; le second concerne le déploiement d’un modèle d’IA générative destiné à servir de tuteur dans le domaine de l’algèbre.

Modèle prédictif : l’acceptation des sinistres par les assurances

Pour ce scénario, il faut imaginer qu’une compagnie d’assurance souhaite faire appel à un modèle de machine learning pour faciliter le traitement des sinistres ; ce modèle pourrait donner une estimation de la probabilité d’approbation d’un sinistre et permettre ainsi l’acceptation automatique des sinistres présentant une forte probabilité de validation.

En premier lieu, il convient d’étudier de manière granulaire le modèle prédictif en examinant une demande de sinistre spécifique que le modèle juge susceptible d’être rejetée. À l’aide d’un algorithme d’explicabilité, il est possible d’étudier la liste des éléments essentiels de l’application qui ont mené à ce rejet. Si des facteurs discriminatoires, fondés par exemple sur le genre ou l’origine ethnique du demandeur, sont entrés en ligne de compte dans le raisonnement du modèle, cela permettrait de signaler cette décision spécifique afin qu’elle soit réexaminée manuellement.

Ensuite, il est possible d’avoir recours à un algorithme de détection pour vérifier que le modèle a été correctement entraîné afin de traiter ce sinistre avec précision. Si le sinistre diffère radicalement des données d’entraînement du modèle, il est peu probable que celui-ci produise des résultats d’analyse fiables, justifiant ainsi de réexaminer manuellement cette décision.

Dans le cas où ces deux étapes de vérification confirment la justesse et la fiabilité de la prédiction, il est alors possible de faire appel à un algorithme fondé sur le raisonnement contrefactuel. Cela conduira à produire un rapport qui décrit comment le demandeur aurait pu agir différemment afin que sa requête soit approuvée. À partir de là, il est possible de lui faire un retour qui aboutisse à une action concernant sa demande.

Il est ensuite intéressant d’observer ce modèle à plus grande échelle afin de comprendre les schémas plus larges qui se dégagent dans sa manière de traiter les utilisateurs. Pour cela, il est possible de s’appuyer sur un algorithme destiné à mettre en évidence les biais du modèle, qui détecte les disparités dans la manière dont le modèle traite différents groupes démographiques et dont cela pourrait évoluer dans le temps. Il est notamment souhaitable de contrôler le taux d’acceptation des sinistres concernant différents groupes, en fonction de leur origine ethnique ou géographique parmi les demandeurs et de s’assurer que ces taux ne diffèrent pas de manière drastique sur le plan statistique. Si cette analyse révèle des divergences entre les taux, cela signifie qu’il faudra probablement réentraîner le modèle ou repenser l’architecture.

Cette analyse peut être complétée par un algorithme dédié à la dérive des données, qui analyse les données entrantes et veille à ce que la distribution générale des données au sein du modèle soit alignée avec les données à partir desquelles il a été entraîné. Il est par exemple possible de remarquer que la distribution des utilisateurs en fonction de leur âge diffère radicalement de celle des données d’entraînement. Par conséquent, il est peu probable que les prédictions du modèle soient fiables ; il faut alors les réentraîner à l’aide de données plus représentatives. Ces analyses pourraient être rattachées à un pipeline de déploiement automatisé des modèles, afin que tous les indicateurs préoccupants soient immédiatement mis en évidence et que cela déclenche différents protocoles de remédiation.

IA générative : tuteur d’algèbre

Le second scénario imagine l’obtention d’un modèle d’IA générative destiné à faire office de tuteur d’algèbre. Pour s’en assurer, il serait préférable de vérifier que ce modèle possède de bonnes connaissances spécifiques en la matière et de cantonner les interactions avec les utilisateurs à ce domaine précis.

Afin de contrôler les capacités du modèle en matière d’algèbre, il est possible d’effectuer des évaluations à l’aide du service Language Model Évaluation de TrustyAI. Celui-ci s’appuie sur lm-evaluation-harness, la bibliothèque en amont plébiscitée d’EleutherAI, et effectue une suite d’évaluations automatisées afin de mesurer un large panel d’aspects liés à la performance du modèle. Celles-ci vont des évaluations généralistes qui mesurent le niveau de connaissances général du modèle, sa compréhension du langage ou sa tendance aux préjugés fondés sur l’origine ethnique, aux évaluations plus ciblées destinées à mesurer le niveau de connaissances spécifiques dans des domaines comme la médecine ou la physique. Dans le cas qui nous intéresse, il suffit de sélectionner trois sous-ensembles de l’évaluation Massive Multitask Language Understanding : l’algèbre abstraite, les mathématiques dans l’enseignement supérieur et les mathématiques dans l’enseignement secondaire. Si le modèle obtient un bon score lors de ces examens, cela renforcera la confiance dans le fait qu’il s’agit d’un outil adapté afin de servir de tuteur fiable en algèbre.

Une fois que les performances du modèle dans le domaine souhaité sont jugées satisfaisantes, il est possible de mettre en place un déploiement limité à l’aide de TrustyAI Guardrails. Ces garde-fous permettent de filtrer le contenu envoyé depuis et vers les modèles ; cela limite les possibilités d’interactions entre les utilisateurs et le modèle à celles pour lesquelles ceux-ci ont été conçus. Dans le cas qui nous intéresse, il est possible d’appliquer des garde-fous à l’entrée et à la sortie qui vérifient que le contenu et la conversation concernent les mathématiques. Ainsi, à mesure que l’application dans son ensemble est conçue autour du modèle, il est possible de considérer les violations des garde-fous comme des avertissements qu’il faut inciter l’utilisateur à retourner vers le sujet concerné. Cela permet d’éviter les comportements inattendus lors de parcours d’interaction imprévus, qui pourraient exposer à des dangers imprévisibles.

Projets communautaires TrustyAI

La communauté TrustyAI fournit des outils qui permettent à un grand nombre de profils utilisateurs différents de mettre en œuvre ces workflows. Pour les développeurs Java, elle propose la TrustyAI Java library, le plus ancien projet encore actif au sein de la communauté. Son objectif est de permettre la mise en place d’un workflow d’IA responsable au sein des applications Java, ce qui en faisait la seule bibliothèque de ce type au sein de l’écosystème Java au moment où elle a été développée. Même si Java n’est pas communément utilisé pour les tâches d’apprentissage automatique, sa nature en tant que langage compilé s’accompagne de gains de vitesse impressionnants comparés à Python, la lingua franca habituellement utilisée pour le machine learning.

Pour les data scientists et les développeurs qui utilisent Python, TrustyAI met à disposition sa bibliothèque Java via la TrustyAI Python library, qui associe la vitesse de Java à la familiarité avec Python. Dans ce cas, les algorithmes de TrustyAI sont intégrés avec des librairies communes de data science, telles que Numpy ou Pandas. Il est prévu d’ajouter des algorithmes Python natifs à la bibliothèque, ce qui étendra la compatibilité de TrustyAI en l’intégrant avec des bibliothèques comme PyTorch ou TensorFlow. Un exemple d’un tel projet est trustyai-detoxify, un module intégré à la bibliothèque TrustyAI Python qui propose des garde-fous, la détection du langage toxique et de capacités de reformulations pour un usage avec des LLM.

Pour les grandes entreprises et les cas d’usage de MLOps, TrustyAI fournit le TrustyAI Kubernetes Service and Operator, qui inclut les algorithmes de TrustyAI dédiés à la détection des biais, à l’explicabilité et à la dérive au sein d’un environnement cloud, tout en proposant des interfaces pour les fonctionnalités Language Model Évaluation et Guardrails. Le service et l’opérateur sont tous deux intégrés au sein de Open Data Hub et Red Hat OpenShift AI afin de faciliter la coordination entre les fournisseurs de modèles et TrustyAI, en offrant aux utilisateurs des deux plateformes un accès facile à un ensemble d’outils d’IA responsable. Actuellement, le service Kubernetes de TrustyAI prend en charge les modèles tabulaires fournis dans KServe ou ModelMesh.

L’avenir de TrustyAI

En tant que principal contributeur de TrustyAI, Red Hat est convaincu que, à mesure que l’influence de l’IA continuera de grandir, il est indispensable qu’une communauté composée de contributeurs variés, avec des perspectives et des expériences différentes, définisse ce qu’est l’IA responsable. Alors que nous continuons à faire évoluer le travail de la communauté TrustyAI, nous devons également collaborer et nous intégrer avec d’autres communautés open source, telles que KubeFlow et EleutherAI, afin de favoriser la croissance et l’expansion de tous.

Le paysage de l’IA se transforme continuellement et TrustyAI doit évoluer perpétuellement pour rester pertinente.

https://www.redhat.com/

Suivez MtoM Mag sur le Web

 

Newsletter

Inscrivez-vous a la newsletter d'MtoM Mag pour recevoir, régulièrement, des nouvelles du site par courrier électronique.

Email: