L’IA est omniprésente dans les médias ces dernières semaines et suscite de nombreuses questions. Dans le domaine de la santé, elle est perçue à la fois comme une réponse potentielle à de nombreuses problématiques, mais également comme génératrice de nouveaux risques. Il s’avère nécessaire d’en comprendre le mode de fonctionnement. Introduit par Guillaume Bourdon, Etienne Cousein a animé un atelier interactif intitulé « Comment exploiter au mieux l’IA en pharmacie hospitalière ? » lors de l’édition 2023 d’Hopipharm à Strasbourg qui a eu lieu du 24 au 26 mai.
Etienne Cousein est à l’origine de PharmIA. C’est au sein de la pharmacie de l’hôpital de Valenciennes, dont il était chef de pôle avant de rejoindre le CHU de Lille, que le logiciel et toutes les fonctionnalités ont été développées par des pharmaciens cliniques. Ainsi qu’avec l’aide du CHU de Montpellier.
« L’IA, ce n’est que de la donnée. Tout commence par un jeu de données », a précisé d’emblée Etienne Cousein. Il s’est appuyé sur un exercice concret auquel a participé l’audience (entre 150 et 200 personnes !) pour expliquer comment, une fois le jeu de données constitué, il sera possible de l’exploiter.
À l’aide d’un QR code, il a été demandé au public de décrire à un ami aveugle deux tableaux : l’autoportrait de Van Gogh et la Jeune fille à la perle de Vermeer. Un nuage de mots apparaît pour chacun : bleu, homme, roux ; fille, femme, bleu, jeune, perle, bandeau…des termes reviennent souvent, d’autres moins (« clair, obscur »). « Chacun a sa manière décrire ces tableaux, c’est notre vérité, c’est ainsi qu’on le perçoit », commente le chef de pôle.
Il a ensuite invité le public à indiquer à quel artiste lui faisait penser une série d’images constituant un jeu de données « pixelisées », de présentation plus « mitigée ».
Il est alors entré dans le vif du sujet en expliquant comment créer un jeu de données et quelles étaient les approches possibles pour l’exploiter en utilisant de l’IA : par description, et par déduction.
I°] – Approche par description
L’exemple du nuage de mots décrit le tableau, en nous permettant de rédiger un « petit » algorithme qui fournit des conditions (« si », « et », « et/ou », etc.) : c’est en respectant l’ensemble de ces dernières qu’il sera possible d’attribuer tel tableau à tel peintre. Par exemple, avec les conditions « Présence d’une barbe ou non, ruban ou non, l’algorithme serait « si barbe et pas de ruban = Van Gogh ».
« Il s’agit d’une approche simple à élaborer, permettant d’écrire quelques phrases ou « règles » visant à distinguer les tableaux. Elle est applicable à toutes les situations descriptibles avec des variables ‘discrètes’ », poursuit Etienne Cousein. Cette méthode présente « assez vite » certaines limites qui dépendent de « revendications », terme utilisé à dessein puisque relatif au marquage CE nécessaire aux logiciels d’aide à la décision qui entrent dans le cadre règlementaire des dispositifs médicaux. Ces limites dépendent des objectifs fixés. « Par exemple : faire la différence entre ces deux tableaux de Van Gogh et Vermeer ne représente pas la même difficulté que d’identifier parmi toutes les œuvres de Vermeer celui de la jeune fille à la perle ».
II°] – Approche par déduction
Avec cette approche, il ne s’agit pas de décrire un tableau mais de renseigner un certain nombre de données avec un niveau de fiabilité varié. Intégrées au système, l’algorithme de ce dernier tente, à partir des échantillons présentés, de comprendre comment ledit tableau a été attribué à tel ou tel peintre. « Le logiciel procède en créant des images : chaque pixel de ces dernières permet de déduire une information. Puis, à chaque pixel est ajouté l’information du pixel précédent et de celui d’après. De même avec plusieurs crans/rangs de pixels. Le jeu de données obtenu est extrêmement important. Un ensemble de décisions est possible, non infini mais très important.
Ensuite nous présentons un tableau au système qui essaie de parcourir toutes les combinaisons possibles des données que nous avons entrées : ‘il faut que le premier pixel soit bleu, que celui d’à côté soit rouge etc.’ Si nous devions écrire cette somme de caractéristiques ce serait impossible. En revanche, le logiciel dispose des capacités de calcul indispensables et peut exécuter cette tâche. Après avoir testé toutes les combinaisons, le système va définir celle qui ‘colle’ le mieux à la réalité. Nous exposons ensuite le système à un tableau en sachant qu’il s’agit d’un Vermeer et demandons à l’algorithme de prédire à quel peintre il correspond. Si ce dernier indique Van Gogh nous l’informons de son erreur en lui indiquant de pondérer le chemin menant à ce résultat. S’il répond, à raison, qu’il s’agit d’un Vermeer, nous lui indiquons que sa réponse est correcte et le chemin emprunté est validé.
Puis, nous élaborons un système qui s’auto-entraîne et répète ces calculs un très grand nombre de fois de manière à mettre en place un algorithme qui va savoir par quel modèle de calcul au niveau des pixels il peut prédire la catégorie à laquelle le tableau est rattaché.
« Cette approche est dite ‘générative’ », souligne Etienne Cousein : nous pouvons essayer de prédire à quelle catégorie nous allons attribuer un tableau, mais nous pouvons également avoir une approche qui va être de prédire quel va être le pixel suivant si nous demandons au système de créer un Vermeer, explique-t-il.
Si notre requête est « Crée un Vermeer, le premier pixel est bleu », le système répond, en fonction des données présentées, que la probabilité la plus importante pour créer ce modèle-là est de « tant ». Il crée ainsi, pixel par pixel, l’image. C’est ainsi que fonctionne ChatGPT. En disposant dans sa banque de données d’un nombre de textes extraordinairement important qui vont être découpés en mots. Lorsque vous lui fournissez le premier mot, il va calculer quel est le premier mot suivant le plus probable selon la question posée : il ne cherche pas la réponse vraie mais la réponse la plus probable.
Cette méthode par déduction est une approche dite ‘supervisée’. Elle consiste à calculer la probabilité d’un résultat à partir de données d’entrée, des ‘inputs’, pour obtenir la réponse la plus probable. Elle requiert des compétences très spécialisées : celles des datascientists. Ainsi que des capacités de calcul très évoluées : pour faire tourner l’algorithme, la phase de préparation peut durer jusqu’à plusieurs jours. Elle est applicable selon les volumes et la dispersion des données », complète le chef de pôle.
En pharmacie hospitalière, quelle approche privilégier dans l’aide à l’analyse des prescriptions ?
Dans certaines situations cliniques, dont le périmètre est variable, nous nous appuyons sur un jeu de règles écrites par des pharmaciens. Ces dernières sont écrites localement pour correspondre à leurs descriptions et enclencher une alerte si telle dose médicamenteuse est dépassée par exemple. Il faut en rédiger un certain nombre pour balayer l’ensemble des situations, même si le jeu de règles initial ne pourra bien sûr pas être exhaustif. Nous pouvons, en complément des règles écrites localement par les pharmaciens, nous appuyer sur des règles d’origine externe à l’aide d’API [application programming interface]: nous interrogeons des bases [de données] qui fournissent également des données médicamenteuses et permettent alors d’élargir le système de détection. Cette démarche pourrait déjà être qualifiée d’IA. Nous appliquons ensuite des surcouches logicielles pour traiter des signaux dont on sait qu’ils sont des faux positifs.
Par exemple, si une alerte vous informe qu’en cas d’utilisation de tel médicament il existe un risque d’hyperkaliémie alors que le patient est en hypokaliémie, nous appliquons une surcouche pour traiter ce signal. Nous allons également appliquer un tri pour séparer les alarmes les plus critiques de celles qui le sont moins. Pour une situation clinique donnée, nous allons ainsi disposer d’un premier jeu de règles d’analyse d’ordonnances sur lesquelles nous allons débuter l’apprentissage.
Nous mettons en place le système que les pharmaciens commencent à réguler en réagissant sur les règles, en associant à une alarme une intervention pharmaceutique par exemple, ce qui marque l’intérêt clinique de cette alarme. Ou encore, celle d’une alarme ayant été déclenchée mais étant considérée comme moins intéressante et dont la prescription sera tout de même validée.
Chaque pharmacien peut directement renseigner son retour utilisateur et choix de règles, que nous mesurons. À cet instant, il ne s’agit pas encore d’apprentissage massif. Mais d’une première optimisation de règles qui peut s’appliquer au suivi patient par exemple.
Vous allez déterminer un paramètre biologique ou clinique d’intérêt et le seuil à partir duquel vous souhaitez qu’une alerte se déclenche. Cela permet d’intégrer nombre d’informations dans PharmIA : à partir de cela nous pouvons définir si ce paramètre, décrit par nombre d’entre vous comme d’intérêt, ne dispose pas d’une règle correspondante. Le cas échéant il faudra en créer une avec un feedback très explicite ce qui permettra très rapidement, sans jeu de données, de disposer d’une approche par description rapidement efficace. Puis vient un second temps, au fur et à mesure de l’évolution du jeu de données, en particulier de son augmentation en volume et de la dispersion des données. Dans les situations cliniques où il y aura suffisamment de données, nous pourrons élaborer des matrices de confusion [de différents sets].
Le but étant de quantifier le nombre de :
- vrai positif : une prescription a été l’objet d’une alerte et d’une intervention pharmaceutique, l’alerte a, a priori, correctement fonctionné et a détecté une situation réellement à risque iatrogène ;
- vrai négatif : il n’y a pas eu d’alerte ni d’intervention pharmaceutique : nous n’avons pas alerté à tort;
- faux positif : nous avons émis une alerte et pourtant nous n’avons pas fait d’intervention pharmaceutique : la prescription n’a pas été rejetée ;
- faux négatif : vous avez fait une intervention pharmaceutique, refusé une prescription, enclenché un suivi, une interaction quelconque avec le système indiquant que la prescription n’a pas été validée d’emblée et pourtant aucune alerte n’avait été envoyée.
Le ratio entre ces différents nombres va permettre de mesurer la sensibilité et la spécificité du jeu de règles couvrant une situation clinique donnée. Le but est d’obtenir le système le plus sensible possible, qui détecte efficacement les situations à risque, et le plus spécifique possible, qui n’émette d’alerte que s’il y a une situation à risque. Il faut donc diminuer au maximum les faux négatifs et les faux positifs.
Pour ces deux catégories, l’approche est d’abord biostatistique afin d’identifier des facteurs de risque de faux positifs ou faux négatifs, pour permettre aux pharmaciens de les rajouter ou non dans la règle. Si le volume et la dispersion des données sont suffisants, des approches dites non supervisées pourront être envisagées, afin d’identifier des clusters parmi les faux positifs et faux négatifs, pour toujours mieux comprendre et limiter ces évènements. Enfin, il sera peut-être ensuite possible de basculer vers des modèles de datascience supervisés afin de prédire la probabilité qu’une intervention pharmaceutique soit réalisée lors d’une situation clinique déterminée.
L’intervention d’Etienne Cousein a suscité de nombreuses questions au sein de l’audience :
Comment impliquez-vous les médecins dans la rédaction des règles ?
Nous préconisons que les équipes pharmaceutiques les impliquent au niveau local. Nous conseillons d’effectuer une relecture avec les médecins. Au sein de chaque hôpital, nous essayons de nous greffer sur la gouvernance existante. Le moment d’écriture des règles est intéressant, ainsi que le feedback lorsqu’elles ont déjà vécu un mois ou deux. Nous espérons qu’au bout d’un certain moment, à force de les optimiser, certains jeux de règles approcheront de 100% en sensibilité et spécificité, et les alertes pourront alors être déclenchées directement à la prescription.
Quelle est la différence de votre modèle et celui de PharmaClass ?
Le point de départ est identique : nous partons sur des alertes par description. Avec cette approche, nous écrivons les règles, mais assez vite, sans outils ou stratégie d’optimisation, il y aura beaucoup de faux négatifs. Mais également probablement encore des situations non décrites. Il peut se passer des années avant que tout le monde ait partagé ses règles et soit d’accord.
À partir d’un certain nombre de règles, PharmIA vous propose en interne des moyens rapides pour optimiser ces règles puis, lorsque vous disposerez d’assez de données, c’est l’aspect datascience qui interviendra. La matrice de confusion sera implantée dans le système pour cette optimisation.
Sur l’affichage des paramètres contextuels, nous avons aussi des approches de datascience : PharmIA est élaboré pour alléger la ‘charge mentale’ des pharmaciens hospitaliers. Toutes les informations sont centralisées sur le même écran. Plus besoin de disposer de plusieurs onglets ouverts relatifs à telle base de données, telle ordonnance, etc.
Si nous souhaitons pouvoir optimiser les jeux de règles avec de l’IA, il faut beaucoup de données, y compris celles générées par les utilisateurs mêmes. Il est donc nécessaire d’appliquer le principe des trois « U » : il faut que cela soit utile, utilisable et utilisé.
Dans combien de temps pensez-vous parvenir à remplacer le pharmacien pour la validation ?
Il est plutôt probable que ce sera le pharmacien qui utilise l’IA qui remplacera celui qui ne l’utilise pas.
ChatGPT, dont on entend beaucoup parler en ce moment, donne une illusion d’intelligence. Mais les réponses qu’il donne à une question sont les réponses les plus probables. Pas la meilleure. Dans certains domaines où il n’existe pas de bonne réponse, c’est tout à fait bluffant (écrire une poésie par exemple), ou quand il n’y a qu’une seule bonne réponse (écrire un code informatique par exemple). Nous rencontrons rarement ces situations en médecine. Il faut donc élaborer collectivement des stratégies de développement d’implantation et de recherche. Cela relève du domaine du règlementaire du dispositif médical. Il faut multiplier les études d’efficacité et de sécurité pour montrer quelles sont les limites. La pratique pharmaceutique peut être profondément modifiée par ces outils-là : lorsque vous ne validez plus des vitamines B1-B6, des Kardegic à foison chez des patients de 35 ans ayant fait un AIT [Accident Ischémique Transitoire] en neurovasculaire, mais que l’on vous hiérarchise uniquement ce qui est intéressant, votre activité s’en retrouve profondément modifiée. Cela ne remplacera pas les pharmaciens.
Pourquoi ChatGPT ne remplacerait pas ce type d’outils ?
Parce-que c’est un modèle probabiliste. Sur internet, nombre de personnes indiquent lui avoir posé une question et avoir reçu une mauvaise réponse. C’est parce-que ChatGPT ne donne pas la bonne réponse, mais la plus probable, ce qui peut avoir de la valeur. Si les données disponibles sont assez divergentes, il peut se tromper. Cet effet boîte noire le rend assez peu applicable dans notre domaine.
Dans PharmIA, la première approche très descriptive permet de palier cet effet boîte noire, même lorsque les moteurs analytiques auront démarré : lorsque nous sommes sur du probabiliste : nous pourrons donner une cause (la règle qui a déclenché l’alerte), nous pourrons donner un indice de confiance, mais nous ne vous indiquerons pas la bonne réponse « il faut valider la prescription » ou « non ».
Cela ne signifie pas que nous n’aurons jamais d’approche générative. Sur la production de règles, la rédaction des idées, un système de type ChatGPT sera utilisable. Des bribes de cette approche-là pourraient être intégrées dans un outil comme PharmIA.
PharmIA peut-il être utilisé dans d’autres endroits de la pharmacie hospitalière ?
Cette stratégie-là oui. Dans le domaine de la logistique, c’est un échelon très prometteur. La donnée médicale a beaucoup d’inconvénients : accès règlementaire, RGPD et est en plus parfois assez floue : l’hypoglycémie correspond-elle à 0,58 ou 0,62 ? Et en plus, peut être assez fausse. Le résultat saisi par l’infirmière avec une virgule ou un point ? Cela nécessite beaucoup de retraitement. En revanche, en logistique on pourrait utiliser des outils assez proches de catgut qui pourrait prédire l’enchaînement : après tel mouvement de stock, le prochain sera « X », comme il prédit le mot suivant d’une phrase ou le pixel suivant d’un tableau etc.
Des données massives très contextualisées générées par des systèmes qui sont souvent automatisés par des robots (vérification de la facturation) se retrouvent au sein de nombre d’interfaces qui traitent la donnée de manière fiable et sûre. Ces approches seraient très pertinentes sur la logistique.