L’explicabilité des modèles d’apprentissage automatique (ML) utilisés dans le domaine médical devient de plus en plus importante car les modèles doivent être expliqués sous plusieurs angles afin d’être adoptés. Ces perspectives vont du point de vue médical, technologique, juridique et le point de vue le plus important : celui du patient. Les modèles développés à partir de textes dans le domaine médical sont devenus statistiquement précis, mais les cliniciens sont tenus, sur le plan éthique, d'évaluer les points faibles liés à ces prédictions afin de fournir les meilleurs soins à chaque patient. L’explicabilité de ces prédictions est nécessaire pour que les cliniciens puissent faire les bons choix patient par patient.
Dans cet article, nous montrons comment améliorer l'explicabilité du modèle en milieu clinique à l'aide de Amazon SageMaker Clarifier.
Contexte
Une application spécifique des algorithmes ML dans le domaine médical, qui utilise de grands volumes de texte, concerne les systèmes d’aide à la décision clinique (CDSS) pour le triage. Au quotidien, des patients sont admis à l'hôpital et des notes d'admission sont prises. Une fois ces notes prises, le processus de triage est lancé et les modèles ML peuvent aider les cliniciens à estimer les résultats cliniques. Cela peut contribuer à réduire les frais généraux opérationnels et à fournir des soins optimaux aux patients. Comprendre pourquoi ces décisions sont suggérées par les modèles ML est extrêmement important pour la prise de décision liée aux patients individuels.
Le but de cet article est de décrire comment déployer des modèles prédictifs avec Amazon Sage Maker à des fins de triage en milieu hospitalier et utilisez SageMaker Clarify pour expliquer ces prédictions. L’objectif est d’offrir une voie accélérée vers l’adoption de techniques prédictives au sein des CDSS pour de nombreux organismes de santé.
Le cahier et le code de cet article sont disponibles sur GitHub. Pour l'exécuter vous-même, clonez le référentiel GitHub et ouvrez le fichier du notebook Jupyter.
Contexte technique
Les notes cliniques constituent un atout majeur pour toute organisation de soins de santé aiguë. Au moment de l'admission au sein d'un hôpital, des notes d'admission sont prises. Un certain nombre d'études récentes ont montré la prévisibilité d'indicateurs clés tels que les diagnostics, les procédures, la durée du séjour et la mortalité hospitalière. Leurs prédictions sont désormais hautement réalisables à partir des seules notes d'admission, grâce à l'utilisation d'algorithmes de traitement du langage naturel (NLP) [1].
Les progrès des modèles PNL, tels que les représentations d'encodeurs bidirectionnels à partir de transformateurs (BERT), ont permis des prédictions très précises sur un corpus de texte, tel que les notes d'admission, dont il était auparavant difficile d'obtenir de la valeur. Leur prédiction des indicateurs cliniques est hautement applicable pour une utilisation dans un CDSS.
Cependant, afin d’utiliser efficacement les nouvelles prédictions, il reste encore à expliquer comment ces modèles BERT précis réalisent leurs prédictions. Il existe plusieurs techniques pour expliquer les prédictions de tels modèles. L'une de ces techniques est SHAP (SHapley Additive exPlanations), qui est une technique indépendante du modèle pour expliquer la sortie des modèles ML.
Qu'est-ce que SHAP
Les valeurs SHAP sont une technique pour expliquer la sortie des modèles ML. Il fournit un moyen de décomposer la prédiction d'un modèle ML et de comprendre dans quelle mesure chaque fonctionnalité d'entrée contribue à la prédiction finale.
Les valeurs SHAP sont basées sur la théorie des jeux, en particulier le concept des valeurs de Shapley, qui ont été initialement proposées pour répartir les gains d'un jeu coopératif entre ses joueurs [2]. Dans le contexte du ML, chaque fonctionnalité de l’espace d’entrée est considérée comme un joueur dans un jeu coopératif, et la prédiction du modèle est le paiement. Les valeurs SHAP sont calculées en examinant la contribution de chaque fonctionnalité à la prédiction du modèle pour chaque combinaison possible de fonctionnalités. La contribution moyenne de chaque fonctionnalité sur toutes les combinaisons de fonctionnalités possibles est ensuite calculée, et cela devient la valeur SHAP pour cette fonctionnalité.
SHAP permet aux modèles d'expliquer les prédictions sans comprendre le fonctionnement interne du modèle. De plus, il existe des techniques pour afficher ces explications SHAP sous forme de texte, afin que les points de vue du médecin et du patient puissent tous avoir une visibilité intuitive sur la manière dont les algorithmes parviennent à leurs prédictions.
Avec de nouveaux ajouts à SageMaker Clarify et l'utilisation de modèles pré-entraînés de Étreindre le visage qui sont facilement utilisés et implémentés dans SageMaker, la formation et l'explicabilité des modèles peuvent toutes être facilement réalisées dans AWS.
Dans le but d'un exemple de bout en bout, nous prenons le résultat clinique de la mortalité à l'hôpital et montrons comment ce processus peut être facilement implémenté dans AWS à l'aide d'un modèle Hugging Face BERT pré-entraîné, et les prédictions seront expliquées à l'aide de SageMaker clarifier.
Choix du modèle de visage câlin
Hugging Face propose une variété de modèles BERT pré-entraînés qui ont été spécialisés pour être utilisés sur des notes cliniques. Pour cet article, nous utilisons le bigbird-base-mimic-mortalité modèle. Ce modèle est une version affinée du modèle BigBird de Google, spécifiquement adapté pour prédire la mortalité à l'aide des notes d'admission MIMIC ICU. La tâche du modèle est de déterminer la probabilité qu'un patient ne survive pas à un séjour particulier en soins intensifs sur la base des notes d'admission. L'un des avantages significatifs de l'utilisation de ce modèle BigBird est sa capacité à traiter des longueurs de contexte plus grandes, ce qui signifie que nous pouvons saisir les notes d'admission complètes sans avoir besoin de troncature.
Nos étapes consistent à déployer ce modèle affiné sur SageMaker. Nous intégrons ensuite ce modèle dans une configuration permettant une explication en temps réel de ses prédictions. Pour atteindre ce niveau d'explicabilité, nous utilisons SageMaker Clarify.
Vue d'ensemble de la solution
SageMaker Clarify fournit aux développeurs ML des outils spécialement conçus pour mieux comprendre leurs données et modèles de formation ML. SageMaker Clarify explique les prédictions globales et locales et explique les décisions prises par la vision par ordinateur (CV) et les modèles NLP.
Le diagramme suivant montre l'architecture SageMaker pour héberger un point de terminaison qui répond aux demandes d'explicabilité. Il inclut les interactions entre un point de terminaison, le conteneur de modèle et l'explicateur SageMaker Clarify.
Dans l'exemple de code, nous utilisons un notebook Jupyter pour présenter la fonctionnalité. Cependant, dans un cas d'utilisation réel, les dossiers de santé électroniques (DSE) ou d'autres applications de soins hospitaliers appelleraient directement le point de terminaison SageMaker pour obtenir la même réponse. Dans le notebook Jupyter, nous déployons un conteneur de modèle Hugging Face sur un point de terminaison SageMaker. Ensuite, nous utilisons SageMaker Clarify pour expliquer les résultats que nous obtenons du modèle déployé.
Pré-requis
Vous avez besoin des prérequis suivants :
Accédez au code depuis le GitHub référentiel et téléchargez-le sur votre instance de notebook. Vous pouvez également exécuter le notebook dans un Amazon SageMakerStudio environnement, qui est un environnement de développement intégré (IDE) pour le développement ML. Nous recommandons d'utiliser un noyau Python 3 (Data Science) sur Studio SageMaker ou un noyau conda_python3 sur une instance de notebook SageMaker.
Déployer le modèle avec SageMaker Clarify activé
Dans un premier temps, téléchargez le modèle depuis Hugging Face et téléchargez-le sur un Service de stockage simple Amazon (Amazon S3). Créez ensuite un objet modèle à l'aide de la classe HuggingFaceModel. Cela utilise un conteneur prédéfini pour simplifier le processus de déploiement des modèles Hugging Face sur SageMaker. Vous utilisez également un script d'inférence personnalisé pour effectuer les prédictions dans le conteneur. Le code suivant illustre le script passé en argument à la classe HuggingFaceModel :
Vous pouvez ensuite définir le type d'instance sur lequel vous déployez ce modèle :
Nous remplissons ensuite ExecutionRoleArn
, ModelName
ainsi que le PrimaryContainer
champs pour créer un modèle.
Ensuite, créez une configuration de point de terminaison en appelant le create_endpoint_config
API. Ici, vous fournissez la même chose model_name
Utilisé dans le create_model
Appel API. Le create_endpoint_config
prend désormais en charge le paramètre supplémentaire ClarifyExplainerConfig
pour activer l'explication SageMaker Clarify. La référence SHAP est obligatoire ; vous pouvez le fournir soit sous forme de données de base en ligne (le paramètre ShapBaseline), soit via un fichier de base S3 (le paramètre ShapBaselineUri). Pour les paramètres facultatifs, voir le guide du développeur.
Dans le code suivant, nous utilisons un jeton spécial comme référence :
TextConfig est configuré avec une granularité au niveau des phrases (chaque phrase est une fonctionnalité, et nous avons besoin de quelques phrases par révision pour une bonne visualisation) et la langue est l'anglais :
Enfin, une fois que la configuration du modèle et du point de terminaison est prête, utilisez le create_endpoint
API pour créer votre point de terminaison. Le endpoint_name
doit être unique dans une région de votre compte AWS. Le create_endpoint
L'API est de nature synchrone et renvoie une réponse immédiate, le statut du point de terminaison étant à l'état Création.
Expliquez la prédiction
Maintenant que vous avez déployé le point de terminaison avec l'explicabilité en ligne activée, vous pouvez essayer quelques exemples. Vous pouvez appeler le point de terminaison en temps réel à l'aide du invoke_endpoint
méthode en fournissant la charge utile sérialisée, qui dans ce cas est quelques exemples de notes d'admission :
Dans le premier scénario, supposons que la note d'admission médicale suivante ait été prise par un professionnel de la santé :
La capture d'écran suivante montre les résultats du modèle.
Une fois que cela a été transmis au point final SageMaker, l'étiquette a été prédite comme étant 0, ce qui indique que le risque de mortalité est faible. En d’autres termes, 0 implique que le patient admis est dans un état non aigu selon le modèle. Cependant, nous avons besoin du raisonnement qui sous-tend cette prédiction. Pour cela, vous pouvez utiliser les valeurs SHAP comme réponse. La réponse comprend les valeurs SHAP correspondant aux phrases de la note d'entrée, qui peuvent en outre être codées par couleur en vert ou en rouge en fonction de la façon dont les valeurs SHAP contribuent à la prédiction. Dans ce cas, nous voyons plus de phrases en vert, telles que « Le patient ne signale aucun antécédent de douleur thoracique » et « L'ECG montre une tachycardie sinusale sans élévation ni dépression du segment ST », par opposition au rouge, ce qui correspond à la prévision de mortalité de 0. .
Dans le deuxième scénario, supposons que la note d'admission médicale suivante ait été prise par un professionnel de la santé :
La capture d'écran suivante montre nos résultats.
Une fois que cela a été transmis au point final SageMaker, l'étiquette a été prédite à 1, ce qui indique que le risque de mortalité est élevé. Cela implique que le patient admis est dans un état aigu selon le modèle. Cependant, nous avons besoin du raisonnement qui sous-tend cette prédiction. Encore une fois, vous pouvez utiliser les valeurs SHAP comme réponse. La réponse comprend les valeurs SHAP correspondant aux phrases de la note d'entrée, qui peuvent être en outre codées par couleur. Dans ce cas, nous voyons plus de phrases en rouge, telles que « Le patient signale de la fièvre, des frissons et une faiblesse au cours des 3 derniers jours, ainsi qu'une diminution du débit urinaire et de la confusion » et « Le patient est une femme de 72 ans avec une plainte principale de choc septique sévère », par opposition au vert, ce qui correspond à la prévision de mortalité de 1.
L'équipe de soins cliniques peut utiliser ces explications pour l'aider à prendre des décisions sur le processus de soins pour chaque patient.
Nettoyer
Pour nettoyer les ressources créées dans le cadre de cette solution, exécutez les instructions suivantes :
Conclusion
Cet article vous a montré comment utiliser SageMaker Clarify pour expliquer les décisions dans un cas d'utilisation de soins de santé sur la base des notes médicales capturées au cours des différentes étapes du processus de triage. Cette solution peut être intégrée aux systèmes d'aide à la décision existants pour fournir un autre point de données aux cliniciens lors de l'évaluation des patients en vue de leur admission à l'USI. Pour en savoir plus sur l'utilisation des services AWS dans le secteur de la santé, consultez les articles de blog suivants :
Bibliographie
https://aclanthology.org/2021.eacl-main.75/
https://arxiv.org/pdf/1705.07874.pdf
À propos des auteurs
Shamika Ariyawansa, en tant qu'architecte principal de solutions IA/ML au sein de la division mondiale de la santé et des sciences de la vie d'Amazon Web Services (AWS), se concentre particulièrement sur l'IA générative. Il aide les clients à intégrer l'IA générative dans leurs projets, en soulignant l'importance de l'explicabilité au sein de leurs initiatives basées sur l'IA. Au-delà de ses engagements professionnels, Shamika poursuit avec passion les aventures de ski et de tout-terrain.
Ted SpenceR est un architecte de solutions expérimenté possédant une vaste expérience en matière de soins de santé aigus. Il est passionné par l'application de l'apprentissage automatique pour résoudre de nouveaux cas d'utilisation et élabore des solutions en tenant compte à la fois du consommateur final et de son contexte commercial/clinique. Il vit à Toronto, Ontario, Canada, et aime voyager avec sa famille et s'entraîner aux triathlons lorsque le temps le permet.
Ram Pathangi est architecte de solutions chez AWS qui soutient les clients des soins de santé et des sciences de la vie dans la région de la baie de San Francisco. Il a aidé des clients des secteurs verticaux de la finance, de la santé, des sciences de la vie et de la haute technologie à gérer avec succès leur entreprise sur le cloud AWS. Il se spécialise dans les bases de données, l'analyse et l'apprentissage automatique.
- Contenu propulsé par le référencement et distribution de relations publiques. Soyez amplifié aujourd'hui.
- PlatoData.Network Ai générative verticale. Autonomisez-vous. Accéder ici.
- PlatoAiStream. Intelligence Web3. Connaissance Amplifiée. Accéder ici.
- PlatonESG. Automobile / VE, Carbone, Technologie propre, Énergie, Environnement, Solaire, La gestion des déchets. Accéder ici.
- PlatoHealth. Veille biotechnologique et essais cliniques. Accéder ici.
- GraphiquePrime. Élevez votre jeu de trading avec ChartPrime. Accéder ici.
- Décalages de bloc. Modernisation de la propriété des compensations environnementales. Accéder ici.
- La source: https://aws.amazon.com/blogs/machine-learning/explain-medical-decisions-in-clinical-settings-using-amazon-sagemaker-clarify/
- :possède
- :est
- :ne pas
- $UP
- 1
- 10
- 100
- 11
- 13
- 15%
- 16
- 22
- 30
- 7
- 8
- a
- Qui sommes-nous
- accéléré
- Selon
- Compte
- Avec cette connaissance vient le pouvoir de prendre
- atteindre
- la réalisation de
- à travers
- ajout
- Supplémentaire
- ajouts
- admis
- Adoption
- avantages
- Après
- encore
- AI
- AI / ML
- Transport Aérien
- algorithmes
- aligner
- Tous
- allouer
- permis
- permet
- seul
- aussi
- modifié
- Amazon
- Amazon Sage Maker
- Amazon Web Services
- Amazon Web Services (AWS)
- parmi
- an
- analytique
- ainsi que le
- Une autre
- tous
- api
- en vigueur
- Application
- applications
- Application
- approprié
- architecture
- SONT
- Réservé
- domaines
- argument
- AS
- atout
- aider
- aide
- assumer
- At
- disponibles
- moyen
- AWS
- basé
- Baseline
- base
- baie
- BE
- car
- devenez
- devient
- devenir
- était
- a commencé
- derrière
- va
- LES MEILLEURS
- jusqu'à XNUMX fois
- Au-delà
- Blog
- Blogue
- sang
- Tension artérielle
- corps
- tous les deux
- Pause
- Souffle
- la performance des entreprises
- by
- calculé
- Appelez-nous
- appel
- CAN
- Canada
- aptitude
- capturé
- les soins
- maisons
- cas
- vérifier
- chef
- choix
- classe
- clair
- Infos sur les
- cliniciens
- le cloud
- code
- combinaison
- комбинации
- comment
- engagements
- plainte
- complet
- ordinateur
- Vision par ordinateur
- concept
- condition
- configuration
- configurée
- confusion
- considéré
- constant
- consommateur
- Contenant
- contexte
- contribuer
- contribue
- contribution
- coopérative
- correct
- Correspondant
- Costs
- couverture
- engendrent
- créée
- La création
- Customiser
- Clients
- Tous les jours
- données
- science des données
- bases de données
- jours
- décision
- La prise de décision
- décisions
- Vous permet de définir
- déployer
- déployé
- déployer
- Déterminer
- développé
- Développeur
- mobiles
- Développement
- difficile
- directement
- Maladie
- Commande
- Division
- do
- domaine
- fait
- down
- download
- pendant
- chacun
- même
- de manière efficace
- non plus
- Electronique
- Dossiers de santé électroniques
- mettant l'accent
- permettre
- activé
- fin
- end-to-end
- Endpoint
- Anglais
- Environment
- évaluer
- Examiner
- exemple
- exemples
- existant
- d'experience
- expérimenté
- Expliquer
- expliqué
- expliquant
- Explique
- explication
- les
- extrêmement
- Visage
- famille
- Fonctionnalité
- Fonctionnalités:
- femelle
- few
- Des champs
- Déposez votre dernière attestation
- finale
- finance
- résultats
- Prénom
- Focus
- Abonnement
- suit
- Pour
- Francisco
- De
- plus
- Gain
- jeu
- génératif
- IA générative
- obtenez
- GitHub
- Global
- Bien
- plus grand
- Vert
- Vous avez
- he
- Santé
- la médecine
- secteur de la santé
- Cœur
- vous aider
- a aidé
- ici
- haute-technologie
- Haute
- très
- sa
- Histoire
- les hôpitaux
- hébergement
- Comment
- How To
- Cependant
- HTML
- http
- HTTPS
- Étreindre
- illustre
- Immédiat
- mis en œuvre
- importer
- importance
- important
- améliorer
- in
- Dans d'autres
- inclut
- intégrer
- de plus en plus
- indique
- Indicateurs
- individuel
- industrie
- initié
- les initiatives
- contribution
- idées.
- instance
- des services
- Intégration
- intention
- interactions
- développement
- intuitif
- impliquer
- IT
- SES
- jpg
- Vif
- ACTIVITES
- Libellé
- langue
- gros
- plus importantes
- APPRENTISSAGE
- apprentissage
- Légal
- Longueur
- Niveau
- VIE
- Life Sciences
- probabilité
- Vit
- locales
- Faible
- baisser
- click
- machine learning
- LES PLANTES
- a prendre une
- obligatoire
- de nombreuses
- veux dire
- médical
- mental
- méthode
- l'esprit
- minute
- ML
- modèle
- numériques jumeaux (digital twin models)
- PLUS
- (en fait, presque toutes)
- beaucoup
- must
- nasale
- Nature
- Traitement du langage naturel
- Nature
- Besoin
- Besoins
- Nouveauté
- nlp
- aucune
- cahier
- Notes
- maintenant
- nombre
- objet
- obtenir
- of
- code
- Offres Speciales
- on
- ONE
- en ligne
- Ontario
- ouvert
- opérationnel
- opposé
- optimaux
- or
- de commander
- organisation
- organisations
- initialement
- Autre
- nos
- ande
- Résultat
- les résultats
- contour
- sortie
- plus de
- Oxygène
- Pain
- paramètre
- paramètres
- partie
- particulier
- passé
- passionné
- passé
- chemin
- patientforward
- patients
- /
- perspectives
- les expressions clés
- Physique
- Platon
- Intelligence des données Platon
- PlatonDonnées
- joueur
- joueurs
- pneumonie
- Point
- positif
- possible
- Post
- Poteaux
- prédit
- prévoir
- prédiction
- Prédictions
- Predictor
- conditions préalables
- la parfaite pression
- précédent
- précédemment
- procédures
- processus
- traitement
- professionels
- projets
- proposé
- fournir
- fournit
- aportando
- but
- des fins
- poursuit
- Python
- gamme
- Tarif
- Tarifs
- solutions
- monde réel
- en temps réel
- récent
- recommander
- Articles
- Rouge
- réduire
- région
- en relation
- Rapports
- dépôt
- demandes
- conditions
- Resources
- réponse
- résultat
- Résultats
- Retours
- Révèle
- Avis
- Analyse
- Salle
- tours
- Courir
- sagemaker
- même
- San
- San Francisco
- scénario
- Sciences
- STARFLEET SCIENCES
- Deuxièmement
- sur le lien
- supérieur
- phrase
- État septique
- sert
- Services
- service
- Paramétres
- installation
- plusieurs
- sévère
- montrer
- vitrine
- montré
- montré
- Spectacles
- significative
- Signes
- étapes
- simplifier
- depuis
- So
- sur mesure
- Solutions
- RÉSOUDRE
- quelques
- Space
- spécial
- spécialisé
- spécialise
- groupe de neurones
- spécifiquement
- étapes
- j'ai commencé
- Région
- déclarations
- Statut
- rester
- étapes
- Étapes
- Encore
- storage
- études
- Avec succès
- tel
- la quantité
- Support
- Systèmes de support
- Appuyer
- Les soutiens
- Système
- Prenez
- tâches
- Tâche
- équipe
- techniques
- technologique
- qui
- Les
- leur
- puis
- théorie
- Là.
- Ces
- l'ont
- this
- Avec
- fiable
- à
- jeton
- les outils
- toronto
- Formation
- transformateurs
- Voyages
- troncature
- Essai
- type
- comprendre
- compréhension
- expérience unique et authentique
- utilisé
- cas d'utilisation
- d'utiliser
- Usages
- en utilisant
- Plus-value
- Valeurs
- variété
- divers
- version
- verticales
- via
- définition
- vision
- visualisation
- vital
- volumes
- chaleur
- était
- Façon..
- we
- faiblesse
- web
- services Web
- WELL
- ont été
- qui
- tout en
- why
- sera
- comprenant
- dans les
- sans
- des mots
- activités principales
- travailleur
- fonctionnement
- pourra
- encore
- Vous n'avez
- Votre
- vous-même
- zéphyrnet