Extrayez des données non PHI d'Amazon HealthLake, réduisez la complexité et augmentez la rentabilité avec Amazon Athena et Amazon SageMaker Canvas

Extrayez des données non PHI d'Amazon HealthLake, réduisez la complexité et augmentez la rentabilité avec Amazon Athena et Amazon SageMaker Canvas

Dans le marché hautement concurrentiel d'aujourd'hui, effectuer des analyses de données à l'aide de modèles d'apprentissage automatique (ML) est devenu une nécessité pour les organisations. Cela leur permet de libérer la valeur de leurs données, d'identifier les tendances, les modèles et les prévisions, et de se différencier de leurs concurrents. Par exemple, dans le secteur de la santé, l'analyse basée sur le ML peut être utilisée pour l'assistance au diagnostic et la médecine personnalisée, tandis que dans l'assurance maladie, elle peut être utilisée pour la gestion prédictive des soins.

Cependant, les organisations et les utilisateurs des secteurs où il existe des données de santé potentielles, comme les soins de santé ou l'assurance maladie, doivent donner la priorité à la protection de la vie privée des personnes et se conformer aux réglementations. Ils sont également confrontés à des défis dans l'utilisation d'analyses basées sur le ML pour un nombre croissant de cas d'utilisation. Ces défis incluent un nombre limité d'experts en science des données, la complexité du ML et le faible volume de données en raison de la limitation des informations de santé protégées (PHI) et de la capacité de l'infrastructure.

Les organisations des secteurs de la santé, de la clinique et des sciences de la vie sont confrontées à plusieurs défis dans l'utilisation du ML pour l'analyse de données :

  • Faible volume de données – En raison des restrictions sur les informations de santé privées, protégées et sensibles, le volume de données utilisables est souvent limité, ce qui réduit la précision des modèles ML
  • Talents limités - Embaucher des talents ML est déjà assez difficile, mais embaucher des talents qui ont non seulement une expérience ML mais aussi des connaissances médicales approfondies est encore plus difficile
  • Gestion de l'infrastructure – L'approvisionnement d'une infrastructure spécialisée pour le ML est une tâche difficile et chronophage, et les entreprises préfèrent se concentrer sur leurs compétences de base plutôt que de gérer une infrastructure technique complexe
  • Prédiction des problèmes multimodaux – Lors de la prédiction de la probabilité d'événements médicaux à multiples facettes, comme un accident vasculaire cérébral, différents facteurs tels que les antécédents médicaux, le mode de vie et les informations démographiques doivent être combinés

Un scénario possible est que vous êtes une entreprise de technologie de la santé avec une équipe de 30 médecins non cliniciens qui recherchent et enquêtent sur des cas médicaux. Cette équipe possède les connaissances et l'intuition dans le domaine de la santé, mais pas les compétences en ML pour créer des modèles et générer des prédictions. Comment déployer un environnement en libre-service permettant à ces cliniciens de générer eux-mêmes des prédictions pour des questions multivariées telles que "Comment puis-je accéder à des données utiles tout en respectant les réglementations sanitaires et sans compromettre la confidentialité ?" Et comment pouvez-vous faire cela sans exploser le nombre de serveurs que les gens SysOps doivent gérer ?

Cet article aborde tous ces problèmes simultanément dans une seule solution. Tout d'abord, il anonymise automatiquement les données de Amazon Health Lake. Ensuite, il utilise ces données avec des composants sans serveur et des solutions en libre-service sans code comme Toile Amazon SageMaker pour éliminer la complexité de la modélisation ML et faire abstraction de l'infrastructure sous-jacente.

Une stratégie de données moderne vous offre un plan complet pour gérer, accéder, analyser et agir sur les données. AWS fournit l'ensemble de services le plus complet pour l'ensemble du parcours de données de bout en bout pour toutes les charges de travail, tous les types de données et tous les résultats commerciaux souhaités.

Vue d'ensemble de la solution

Cet article montre qu'en anonymisant les données sensibles d'Amazon HealthLake et en les mettant à la disposition de SageMaker Canvas, les organisations peuvent permettre à davantage de parties prenantes d'utiliser des modèles ML capables de générer des prédictions pour des problèmes multimodaux, tels que la prédiction des accidents vasculaires cérébraux, sans écrire de code ML, tout en limitant accès aux données sensibles. Et nous voulons automatiser cette anonymisation pour la rendre aussi évolutive et se prêter au libre-service que possible. L'automatisation vous permet également d'itérer la logique d'anonymisation pour répondre à vos exigences de conformité et offre la possibilité de réexécuter le pipeline à mesure que les données de santé de votre population changent.

Le jeu de données utilisé dans cette solution est généré par Synthéa™, un simulateur synthétique de population de patients et un projet open source sous la Licence Apache 2.0.

Le flux de travail comprend un transfert entre les ingénieurs cloud et les experts du domaine. Le premier peut déployer le pipeline. Ce dernier peut vérifier si le pipeline anonymise correctement les données, puis générer des prédictions sans code. À la fin de l'article, nous examinerons des services supplémentaires pour vérifier l'anonymisation.

Les étapes de haut niveau impliquées dans la solution sont les suivantes :

  1. Utilisez Fonctions d'étape AWS pour orchestrer le pipeline d'anonymisation des données de santé.
  2. Utilisez Amazone Athéna requêtes pour les éléments suivants :
    1. Extrayez des données structurées non sensibles d'Amazon HealthLake.
    2. Utilisez le traitement du langage naturel (NLP) dans Amazon HealthLake pour extraire des données non sensibles de blobs non structurés.
  3. Effectuez un encodage à chaud avec Gestionnaire de données Amazon SageMaker.
  4. Utilisez SageMaker Canvas pour les analyses et les prédictions.

Le diagramme suivant illustre l'architecture de la solution.

Schéma d'architecture

Préparer les données

Tout d'abord, nous générons une population de patients fictifs à l'aide de Synthea™ et importons ces données dans un magasin de données Amazon HealthLake nouvellement créé. Le résultat est une simulation du point de départ à partir duquel une entreprise de technologie de la santé pourrait exécuter le pipeline et la solution décrits dans cet article.

Lorsqu'Amazon HealthLake ingère des données, il extrait automatiquement le sens des données non structurées, telles que les notes des médecins, dans des champs structurés distincts, tels que les noms des patients et les conditions médicales. Pour ce faire sur les données non structurées dans DocumentReference Ressources FHIR, déclencheurs transparents d'Amazon HealthLake Amazon Comprehend Medical, où les entités, les ontologies et leurs relations sont extraites et rajoutées à Amazon HealthLake en tant que données discrètes dans le segment d'extension des enregistrements.

We peut utiliser les fonctions pas à pas rationaliser la collecte et la préparation des données. L'ensemble du flux de travail est visible en un seul endroit, avec toutes les erreurs ou exceptions mises en évidence, permettant un processus reproductible, auditable et extensible.

Interroger les données à l'aide d'Athena

En exécutant des requêtes Athena SQL directement sur Amazon HealthLake, nous sommes en mesure de sélectionner uniquement les champs qui ne nous identifient pas personnellement ; par exemple, ne pas sélectionner le nom et l'ID du patient et réduire la date de naissance à l'année de naissance. Et en utilisant Amazon HealthLake, nos données non structurées (le champ de texte dans DocumentReference) est automatiquement fourni avec une liste des PHI détectés, que nous pouvons utiliser pour masquer les PHI dans les données non structurées. De plus, étant donné que les tables Amazon HealthLake générées sont intégrées à Formation AWS Lake, vous pouvez contrôler qui obtient l'accès jusqu'au niveau du champ.

Ce qui suit est un extrait d'un exemple de données non structurées trouvées dans un DocumentReference record:

# Histoire de la maladie actuelle
Marquis
est un homme de 45 ans. Le patient a des antécédents d'hypertension, de sinusite virale (trouble), de bronchite chronique obstructive (trouble), de stress (découverte), d'isolement social (découverte).
# Histoire sociale
Le patient est marié. Le patient a arrêté de fumer à 16 ans.
Le patient a actuellement UnitedHealthcare.
# Allergies
Aucune allergie connue.
# Médicaments
solution pour inhalation d'albutérol 5 mg/ml; amlodipine 2.5 mg comprimé oral ; 60 actuat propionate de fluticasone 0.25 mg/actuat / salmétérol 0.05 mg/actuat inhalateur de poudre sèche
# Bilan et Plan
Le patient présente un AVC.

Nous pouvons voir qu'Amazon HeathLake NLP interprète cela comme contenant la condition "AVC" en recherchant l'enregistrement de condition qui a le même ID de patient et affiche "AVC". Et nous pouvons profiter du fait que les entités trouvées dans DocumentReference sont automatiquement étiquetées SYSTEM_GENERATED:

SELECT code.coding[1].code, code.coding[1].display
FROM condition
WHERE split(subject.reference, '/')[2] = 'fbfe46b4-70b1-8f61-c343-d241538ebb9b'
AND meta.tag[1].display = 'SYSTEM_GENERATED'
AND regexp_like(code.coding[1].display, 'Cerebellar stroke syndrome')

Le résultat est le suivant:

G46.4, Cerebellar stroke syndrome

Les données collectées dans Amazon HealthLake peuvent désormais être utilisées efficacement à des fins d'analyse grâce à la possibilité de sélectionner des codes de condition spécifiques, tels que G46.4, plutôt que d'avoir à interpréter des notes entières. Ces données sont ensuite stockées sous forme de fichier CSV dans Service de stockage simple Amazon (Amazon S3).

Remarque: Lors de la mise en œuvre de cette solution, veuillez suivre les instructions sur l'activation de la fonction NLP intégrée de HealthLake via un cas de support avant d'ingérer des données dans votre magasin de données HealthLake.

Effectuer un encodage à chaud

Pour libérer tout le potentiel des données, nous utilisons une technique appelée encodage à chaud pour convertir les colonnes catégorielles, comme la colonne de condition, en données numériques.

L'un des défis liés au travail avec des données catégorielles est qu'elles ne se prêtent pas aussi bien à une utilisation dans de nombreux algorithmes d'apprentissage automatique. Pour surmonter cela, nous utilisons un codage à chaud, qui convertit chaque catégorie d'une colonne en une colonne binaire distincte, ce qui rend les données adaptées à une plus large gamme d'algorithmes. Cela se fait à l'aide de Data Wrangler, qui a des fonctions intégrées pour ça:

La fonction intégrée pour l'encodage à chaud dans SageMaker Data Wrangler

La fonction intégrée pour l'encodage à chaud dans SageMaker Data Wrangler

L'encodage à chaud transforme chaque valeur unique de la colonne catégorielle en une représentation binaire, ce qui donne un nouvel ensemble de colonnes pour chaque valeur unique. Dans l'exemple ci-dessous, la colonne de condition est transformée en six colonnes, chacune représentant une valeur unique. Après un encodage à chaud, les mêmes lignes se transformeraient en une représentation binaire.

Avant_et_After_One-hot_encoding_tables

Une fois les données encodées, nous pouvons passer à l'utilisation de SageMaker Canvas pour les analyses et les prédictions.

Utilisez SageMaker Canvas pour les analyses et les prévisions

Le fichier CSV final devient alors l'entrée de SageMaker Canvas, que les analystes de la santé (utilisateurs professionnels) peuvent utiliser pour générer des prédictions pour des problèmes multivariés comme la prédiction d'AVC sans avoir besoin d'avoir une expertise en ML. Aucune autorisation spéciale n'est requise car les données ne contiennent aucune information sensible.

Dans l'exemple de la prédiction des accidents vasculaires cérébraux, SageMaker Canvas a pu atteindre un taux de précision de 99.829 % grâce à l'utilisation de modèles ML avancés, comme le montre la capture d'écran suivante.

L'écran d'analyse dans SageMaker Canvas indiquant 99.829 % de la fréquence à laquelle le modèle prédit correctement l'AVC

Dans la capture d'écran suivante, vous pouvez voir que, selon la prédiction du modèle, ce patient a 53 % de chances de ne pas avoir d'AVC.

Écran SageMaker Canvas Predict indiquant que la prédiction est Aucun accident vasculaire cérébral en fonction de l'entrée de l'absence de main-d'œuvre parmi d'autres entrées.

Vous pouvez supposer que vous pouvez créer cette prédiction à l'aide d'une logique basée sur des règles dans une feuille de calcul. Mais ces règles vous indiquent-elles l'importance de la caractéristique - par exemple, que 4.9 % de la prédiction est basée sur le fait qu'ils ont déjà fumé ou non du tabac ? Et si, en plus des colonnes actuelles comme le statut tabagique et la tension artérielle, vous ajoutiez 900 colonnes supplémentaires (caractéristiques) ? Seriez-vous toujours capable d'utiliser une feuille de calcul pour maintenir et gérer les combinaisons de toutes ces dimensions ? Les scénarios réels conduisent à de nombreuses combinaisons, et le défi consiste à gérer cela à grande échelle avec le bon niveau d'effort.

Maintenant que nous avons ce modèle, nous pouvons commencer à faire des prédictions par lots ou uniques, en posant des questions hypothétiques. Par exemple, que se passe-t-il si cette personne garde toutes les variables identiques mais, lors des deux rencontres précédentes avec le système médical, est classée comme Emploi à temps plein au lieu de Pas dans la population active?

Selon notre modèle, et les données synthétiques que nous lui avons fournies depuis Synthea, la personne a 62 % de risque de faire un AVC.

Écran de prédiction SageMaker Canvas affichant Oui comme prédiction et emploi à temps plein comme entrée.

Comme nous pouvons le constater d'après les 12 % et 10 % encerclés, l'importance des conditions des deux dernières rencontres avec le système médical, qu'ils soient employés à temps plein ou non, a un impact important sur leur risque d'AVC. Au-delà des résultats de ce modèle, il existe des recherches qui démontrent un lien similaire :

Ces études ont utilisé de grands échantillons basés sur la population et ont contrôlé d'autres facteurs de risque, mais il est important de noter qu'elles sont de nature observationnelle et n'établissent pas de causalité. Des recherches supplémentaires sont nécessaires pour bien comprendre la relation entre l'emploi à temps plein et le risque d'AVC.

Améliorations et méthodes alternatives

Pour valider davantage la conformité, nous pouvons utiliser des services tels que Amazone Macie, qui analysera les fichiers CSV dans le compartiment S3 et nous alertera s'il y a des données sensibles. Cela permet d'augmenter le niveau de confiance des données anonymisées.

Dans cet article, nous avons utilisé Amazon S3 comme source de données d'entrée pour SageMaker Canvas. Cependant, nous pouvons également importer des données dans SageMaker Canvas directement depuis Amazon RedShift et Snowflake, des services d'entrepôt de données d'entreprise populaires utilisés par de nombreux clients pour organiser leurs données et des solutions tierces populaires. Ceci est particulièrement important pour les clients dont les données dans Snowflake ou Amazon Redshift sont déjà utilisées pour d'autres analyses BI.

En utilisant Step Functions pour orchestrer la solution, la solution est plus extensible. Au lieu d'un déclencheur séparé pour appeler Macie, vous pouvez ajouter une autre étape à la fin du pipeline pour appeler Macie afin de revérifier les PHI. Si vous souhaitez ajouter des règles pour surveiller la qualité de votre pipeline de données au fil du temps, vous pouvez ajouter une étape pour Qualité des données AWS Glue.

Et si vous souhaitez ajouter plus d'intégrations sur mesure, Step Functions vous permet de gérer autant de données ou aussi peu de données que vous en avez besoin en parallèle et de ne payer que ce que vous utilisez. L'aspect parallélisation est utile lorsque vous traitez des centaines de Go de données, car vous ne voulez pas essayer de tout regrouper en une seule fonction. Au lieu de cela, vous voulez le décomposer et l'exécuter en parallèle afin de ne pas attendre qu'il soit traité dans une seule file d'attente. Ceci est similaire à une ligne de paiement au magasin - vous ne voulez pas avoir un seul caissier.

Nettoyer

Pour éviter d'encourir des frais de session futurs, déconnectez-vous de SageMaker Canvas.

Bouton de déconnexion dans SageMaker Canvas

Conclusion

Dans cet article, nous avons montré que les prédictions pour les problèmes de santé critiques comme les accidents vasculaires cérébraux peuvent être effectuées par des professionnels de la santé à l'aide de modèles ML complexes, mais sans avoir besoin de codage. Cela augmentera considérablement le pool de ressources en incluant des personnes ayant des connaissances spécialisées dans le domaine mais aucune expérience en ML. De plus, l'utilisation de services sans serveur et gérés permet aux informaticiens existants de gérer les défis d'infrastructure tels que la disponibilité, la résilience et l'évolutivité avec moins d'effort.

Vous pouvez utiliser cet article comme point de départ pour étudier d'autres prédictions multimodales complexes, qui sont essentielles pour guider l'industrie de la santé vers de meilleurs soins aux patients. Bientôt, nous aurons un référentiel GitHub pour aider les ingénieurs à lancer plus rapidement le type d'idées que nous avons présentées dans cet article.

Découvrez dès aujourd'hui la puissance de SageMaker Canvas et créez vos modèles à l'aide d'une interface graphique conviviale, avec l'offre gratuite de 2 mois que propose SageMaker Canvas. Vous n'avez besoin d'aucune connaissance en codage pour commencer, et vous pouvez expérimenter différentes options pour voir comment vos modèles fonctionnent.

Resources

Pour en savoir plus sur SageMaker Canvas, reportez-vous aux éléments suivants :

Pour en savoir plus sur les autres cas d'utilisation que vous pouvez résoudre avec SageMaker Canvas, consultez les éléments suivants :

Pour en savoir plus sur Amazon HealthLake, reportez-vous aux éléments suivants :


À propos des auteurs

Portrait de Yann Stoneman - homme blanc dans la trentaine avec une légère barbe et des lunettes souriantYann Pierreman est un architecte de solutions chez AWS basé à Boston, MA et est membre de la communauté de terrain technique AI/ML (TFC). Yann a obtenu son baccalauréat à la Juilliard School. Lorsqu'il ne modernise pas les charges de travail pour les entreprises mondiales, Yann joue du piano, bricole dans React et Python, et diffuse régulièrement sur YouTube son parcours dans le cloud.

Tir à la tête de Ramesh DwarakanathRamesh Dwarakanath est architecte principal de solutions chez AWS basé à Boston, MA. Il travaille avec des entreprises de la région du Nord-Est sur leur parcours Cloud. Ses domaines d'intérêt sont les conteneurs et le DevOps. Dans ses temps libres, Ramesh aime le tennis, le racquetball.

Portrait de Bakha Nurzhanov aux cheveux noirs et légèrement souriantBakha Nourjanov est architecte de solutions d'interopérabilité chez AWS et membre de la communauté de terrain technique des soins de santé et des sciences de la vie chez AWS. Bakha a obtenu sa maîtrise en informatique de l'Université de Washington et dans ses temps libres, Bakha aime passer du temps avec sa famille, lire, faire du vélo et explorer de nouveaux endroits.

Le portrait de Scott SchreckengaustScott Schreckengaust est diplômé en génie biomédical et invente des dispositifs aux côtés de scientifiques sur le banc depuis le début de sa carrière. Il aime la science, la technologie et l'ingénierie avec des décennies d'expérience dans des startups et de grandes organisations multinationales dans le domaine de la santé et des sciences de la vie. Scott est à l'aise pour créer des scripts de manipulateurs de liquides robotiques, programmer des instruments, intégrer des systèmes locaux dans des systèmes d'entreprise et développer des déploiements de logiciels complets à partir de zéro dans des environnements réglementaires. En plus d'aider les gens, il s'épanouit dans la construction - appréciant le voyage de hachage des flux de travail scientifiques des clients et de leurs problèmes, puis les convertissant en solutions viables.

Horodatage:

Plus de Apprentissage automatique AWS