Validité d’un diagnostic : probabilités, sensibilité, spécificité et cas des IA

25 janvier 2020 Logiciel 3 commentaires

Tour d’horizon des notions statistiques utiles pour déterminer la pertinence d’un algorithme de diagnostic (qui détecte ici une maladie).

L’article vous présente les formules fondamentales, des calculateurs vous permettent de prendre en compte les données cliniques, un tableau vous permet d’associer des concepts statistiques à des annonces faites par la presse ou les fabricants.

Enfin : le cas des IA – utilisées seules ou en accompagnement d’un médecin – est analysé en fin d’article.

Le but étant de pouvoir correctement évaluer les performances des logiciels utilisés pour faire un diagnostic, à l’heure où l’on promet qu’ils remplaceront les médecins.

Contexte

  • Une personne peut être malade ou non-malade,
  • un test de dépistage de la maladie peut se montrer positif ou négatif,
  • selon son adéquation avec l’état de la personne le résultat du test sera vrai ou faux.

Un algo peut être caractérisé par :

  • sa probabilité à priori (le % de résultats vrais) mais surtout
  • sa sensibilité (il détecte correctement la maladie) et
  • sa spécificité (il détecte correctement l’absence de maladie).

Ces notions permettent de connaitre la probabilité post test : la probabilité qu’un patient soit malade en cas de test positif, en tenant compte de la probabilité que le patient soit malade avant de faire le test, possiblement différente de la prévalence de la maladie en général.

diagnostic et probabilités

La notion de filtre est introduite pour traiter le cas des IA médicales, selon qu’elles soient utilisées de manière massive (la probabilité que l’utilisateur soit malade vaut la prévalence de la maladie) ou ciblée (par exemple pour confirmer les soupçons d’un médecin, la probabilité sera alors plus élevée).

Mémo : Variables et Formules

État du patient
Malade 🤢
Non-malade 🙂
Résultat du test
Positif maladie diagnostiquée, à tort ou à raison 🔴
Négatif maladie non diagnostiquée, à tort ou à raison
Validité du test
Vrai L’algo a correctement identifié l’état du patient ✔️
Faux L’algo a correctement identifié l’état du patient
Vrai Positif (VP) Patient malade + test positif 🤢🔴
Faux Positif (FP) Patient non-malade + test positif 🙂🔴
Faux Négatif (FN) Patient malade + test négatif 🤢⚪
Vrai Négatif (VN) Patient non-malade + test négatif 🙂⚪
Calculs
🤢 Patients malades VP+FN 🤢🔴+🤢⚪
🙂 Patients non-malades FP+VN 🙂🔴+🙂⚪
🔴 Diagnostics positifs VP+FP 🤢🔴+🙂🔴
Diagnostics négatifs VN+FN 🙂⚪+🤢⚪
✔️ Résultats vrais VP+VN 🤢🔴+🙂⚪
Résultats faux FP+FN 🙂🔴+🤢⚪
1 patient, 1 diagnostic, 4 possibilités
🤢 🙂
🔴 Vrai Positif Faux Négatif
Faux Positif Vrai Négatif
Probabilité à priori
Probabilité à priori % vrais parmi tous les résultats (VP+VN) / (VP+VN+FP+FN) ✔️/(✔️+❌)
Sensibilité et spécificité
Sensibilité % positifs chez les malades VP / (VP+FN) 🤢🔴/🤢
(1-Sensibilité) % négatifs chez les non-malades FN / (VP+FN) 🤢⚪/🤢
Spécificité % négatifs chez les non-malades VN / (VN+FP) 🙂⚪/🙂
(1-Spécificité) % positifs chez les malades FP / (VN+FP) 🙂🔴/🙂
Indice de Youden Précision du diagnostic : [0 (inefficace); 1(parfait)] sensibilité+spécificité-1 🌡️
Validité prédictive
Valeur prédictive positive (Vpp) % vrais positifs parmi les positifs VP / (VP+FP) 🤢🔴/🔴
Valeur prédictive négative (Vpn) % vrais négatifs parmi les négatifs VN / (VN+FN) 🙂⚪/⚪
Rapport de vraisemblance
Rapport de vraisemblance d’un test positif (Rvtp) %positifs chez malades / %positifs chez non-malades sensibilité / (1-spécificité) (🤢🔴/🤢) / (🙂🔴/🙂)
Rapport de vraisemblance d’un test négatif (Rvtn) %négatif chez malades / %négatifs chez non-malades (1-sensibilité) / spécificité (🤢⚪/🤢) / (🙂⚪/🙂)
Conclusion pour le patient : probabilité post-test
P P d’être malade avant le test ( = prévalence de la maladie si dépistage “massif”)
P post-test positif (Pptp) P*sensi / (P*sensi + (1-P)*(1-spéci))
P post-test négatif (Pptn) P*(1-sensi) / (P*(1-sensi) + (1-P)*spéci)

Note sur les rapports de vraisemblance :

RVP RVN Apport du test
[10,inf[ ]0,0.1] Très fort
[5,10] [0.1,0.2] Fort
[2,5] [0.2,0.5] Moyen
[1,2] [0.5,1] Faible
1 1 Nul

Ces rapports permettent le calcul de la probabilité après test différents.

Les présents calculateurs utilisent la sensibilité et la spécificité, merci au théorème de Bayes.

Calculateurs

Calculs à partir des données brutes

Ce calculateur prend en données d’entrées le nombre de patients par type de résultat (VP, FP, VN, FN).

Données
VP 🤢🔴
FP 🙂🔴
FN 🤢⚪
VN 🙂⚪
Calculs détaillés
Malades 🤢🔴+🤢⚪
Non-malades 🙂🔴+🙂⚪
Participants 🙂+🤢
% malades 🤢/(🙂+🤢)
Tests positifs 🤢🔴+🙂🔴
Tests négatifs 🙂⚪+🤢⚪
Tests vrais 🤢🔴+🙂⚪
Tests faux 🙂🔴+🤢⚪
Probabilité à priori ✔️/(✔️+❌)
Sensibilité 🤢🔴/🤢
Spécificité 🙂⚪/🙂
Indice de Youden (Précision) 🌡️
Vpp 🤢🔴/🔴
Vpn 🙂⚪/⚪
Rvpt (🤢🔴/🤢) / (🙂🔴/🙂)
Rvpn (🤢⚪/🤢) / (🙂⚪/🙂)
P pour un patient
P(%) d’être malade P🤢
Pptp P🤢@🔴
Pptn P🤢@⚪

Calculs à partir de la sensibilité et de la spécificité

Données
Sensibilité (%) 🤢🔴/🤢
Spécificité (%) 🙂⚪/🙂
Indice de Youden (précision)
P pour un patient
P(%) d’être malade P🤢
Pptp P🤢@🔴
Pptn P🤢@⚪

Dépistage massif vs Aide aux médecins

Les performances de bon nombre d’IA et leur analyse statistique montrent qu’un recours massif (dépistage de tous) n’est pas souhaitable si les performances ne sont pas très bonnes.

Par contre, l’intérêt augmente lorsqu’elles sont utilisées pour compléter l’avis d’un médecin, en considérant que la probabilité avant test est plus grande après un premier diagnostic humain que pour une personne au hasard.

L’exemple ci-dessous reprend les chiffres, partiels, de l’étude “Apple Heart”.

Utilisation massive
P avant test P après test
1.5% 33%
Utilisation ciblée
P avant test P après test
5% 63%
10% 79%
20% 89%
50% 97%
90% 99.7%

Bonus : Traduction Langage courant / Statistique

Toutes les expressions listées sont issues de communication de fabricant, de la presse ou de publications scientifiques.

Notez qu’il est nécessaire d’avoir des informations sur la sensibilité et la spécificité pour être capable d’évaluer les performances d’un test.

Info Sensibilité Spécificité Remarque
Les radiologues ont échoué à identifier 5% des malades 95% ?
Les médecins ont diagnostiqué à tort 11% de cancers en plus que le logiciel ? ? +11% de faux positifs chez les médecins
Une intelligence artificielle capable de prédire les morts et crises cardiaques dans 90% des cas 90% ?
82 % de détection des personnes non atteintes et 100 % détection des patients atteints 100% 82% RVP=5.5, RVN=0 : l’apport au diagnostic est fort
le taux de réussite pour la détection de la maladie a été de 98 % 98% ?
L’IA a correctement identifié 92 % des patients qui ont développé la maladie 92% ?
L’IA a donné un taux de bon diagnostic de 100 % 100% 100% Cas parfait