Home
>
Blog
>
Les algorithmes de Posos capables d’intégrer et mettre à jour continuellement  +100 000 documents médicaux bruts en réponses aux questions des médecins

Les algorithmes de Posos capables d’intégrer et mettre à jour continuellement  +100 000 documents médicaux bruts en réponses aux questions des médecins

Intégrer, structurer et mettre à jour en permanence les données venant de plus de 200 sources et formats différents, était indispensable pour construire le premier véritable outil d’aide à la décision. Notre outil est ainsi capable de proposer aux professionnels de santé des solutions thérapeutiques en fonction des dernières données médicales françaises et étrangères.

Au quotidien, un professionnel de santé a besoin de valider ses décisions à partir de nombreuses sources de confiance pour s’assurer d’apporter des solutions adaptées à son  patient. 

C’est un processus long et compliqué pour trois raisons principales:

  • Le praticien doit trier les résultats de moteurs de recherche “classiques” comme Google qui proposent des sites grands publics ou des sites mettant en avant de la pseudo-science qui n’est plus toujours d’actualité.
  • D’autre part, le praticien doit souvent ouvrir plusieurs pages pour trouver un document contenant l’information qu’il cherche. 
  • Enfin, il doit naviguer dans les documents et filtrer les informations non pertinentes pour trouver sa réponse..

Ces différents processus sont ressentis comme d’autant plus long par le soignant qu’il a majoritairement lieu en présence du patient.

Comment automatiser l’intégration et l’actualisation de près de 100 000 documents de format variés issus de 200 sources

Afin de tenir à jour cette masse considérable de données “brutes” dispersées sur différents sites et bases différentes, nous avons conçu des algorithmes permettant d’automatiser la collecte, la transformation et la mise à jour des données. La robustesse de cette solution permet à Posos d’automatiser de manière fiable un volume en constante augmentation de données thérapeutiques françaises et internationales.

Comment ça marche ? Pour chaque source d’information, une série de tâches est effectuée séquentiellement : c’est ce qu’on appelle le pipeline de données.

Pour chaque source il faut ainsi réaliser deux étapes :

  • L’identification et la collecte des données ( liste des fichiers/pages web à récupérer, par exemple tous les avis de la commission de transparence de la HAS)
  • L’interprétation des données (c'est-à-dire l’extraction du contenu médical qui sera utilisé pour les recherches sur Posos). 

Ces étapes sont validées par des pharmaciens chez Posos.

Le pipeline de données nous permet d’effectuer régulièrement (chaque jour, chaque semaine ou chaque mois selon la fréquence de mise à jour de la source) la collecte et l’interprétation des données. Notre moteur de recherche peut donc utiliser des données à jour et les plus pertinentes possibles pour les professionnels de santé.

Voici les détails techniques  de ces deux étapes: 

De puissants algorithmes pour la collecte automatique des données

La première étape du pipeline consiste à repérer et récupérer automatiquement et régulièrement les fichiers qui contiennent uniquement de l’information médicale. Grâce à cette étape, seules les informations médicales pertinentes dans le contexte d’une prise en charge d’un patient sont récupérées.

Par exemple, nous ne récupérons pas les pages presse du site de la Haute Autorité de Santé (HAS). Par contre, nous collectons les recommandations sur les différentes pathologies et les avis de la commission de transparence.

Cette logique permet de gérer l’apparition, la disparition ou la modification d’articles et de pages dans les catégories contenant de l’information médicale.

Comment les algorithmes nettoient et structurent automatiquement les données des fichiers ?

Cette étape vise premièrement à extraire le contenu médical pertinent. Par exemple, les publicités et notes de bas de page sont automatiquement ignorées.

Deuxièmement, il s’agit de reproduire le plus fidèlement possible l’organisation des paragraphes et des sections. Les documents médicaux étant souvent complexes et longs, identifier et séparer les sections permet au moteur de recherche de répondre plus précisément aux requêtes des professionnels de santé.

Par exemple, les résumés des caractéristiques des produits (notices à destination des professionnels de santé) sont constitués de nombreuses sections, telles que la posologie ou les effets indésirables.

Notre système interprète au quotidien deux types de fichiers: les pages web (HTML) et les documents PDF.

Des algorithmes spécifiques pour interpréter des pages web

Ce type de fichier est naturellement structuré, il est constitué de différents blocs de textes, d’éléments actionnables, d’images et de vidéos. Un bloc de texte est, quant à lui, constitué de balises définissant leurs usages.

La balise <h1> indique, a priori, un titre de premier niveau, <p> un paragraphe, <table> un tableau.

Cependant les pages web contiennent beaucoup de balises servant à la navigation, à la publicité ou aux informations annexes (commentaires, bas de page de site). Pour fournir l’information la plus pertinente possible aux professionnels de santé il faut donc filtrer ces éléments n’apportant pas de valeur aux utilisateurs et n’afficher que l’information médicale contenue dans la page.

Figure 1. L’interprétation d’une page HTML (traitant de la dengue sur www.pasteur.fr/fr). A gauche la page web, au milieu le code HTML de la page web, à droite le résultat structuré sur Posos. Les contenus jugés non pertinents (ex: la newsletter au bas de la page) ne sont pas collectés.

Le machine learning pour résoudre les problématiques liées à l’interprétation des fichiers PDF

Un fichier PDF n’est pas structuré de la même manière qu’une page web. Cela complexifie grandement l’interprétation ainsi que l’affichage de ces documents dans le moteur de recherche.

Parce que nous avons appris à lire et à écrire, nous comprenons la mise en page des documents, à partir de laquelle les lettres forment des mots, les mots forment des phrases, les phrases forment des paragraphes, etc. Nous savons également quelles phrases sont des titres, et comment les titres sont hiérarchisés.

Mais pour un ordinateur, un fichier PDF est simplement une liste de caractères, qui ne sont pas toujours ordonnés, comme un puzzle où les lettres sont des pièces. Assembler des caractères entre eux pour créer des phrases devient délicat lorsqu'il s'agit de pages composées de plusieurs colonnes de texte.

Nous avons conçu un algorithme permettant d’identifier les différentes zones de texte et leur ordre de lecture. A partir des zones de texte on peut effectuer la structuration qui se fait en 3 étapes:

  • la segmentation : assembler une ou plusieurs lignes en un bloc de texte ;
  • la classification : déterminer si un bloc de texte est un titre ou non ;
  • la hiérarchisation : définir le niveau hiérarchique des blocs entre eux (par exemple tel paragraphe appartient à la section 4.8 qui appartient à la section 4 qui est à la racine du document).
Figure 2. Exemple de détection des différentes zones de texte et leurs ordre de lecture.

Les fichiers PDF étant différents les uns des autres, nous avons développé des modèles d’apprentissage automatique (machine leaning) permettant d’apprendre à reconnaître leur structure propre. Ces modèles vont permettre de comprendre et d’organiser le puzzle pour le résoudre et sont conçus pour s’adapter aux spécificités de chaque PDF.

Par exemple, le modèle de classification va apprendre qu’un bloc de texte en gras commençant par un chiffre (ex: “1. Introduction”) est très probablement un titre. De la même manière deux lignes très éloignées les unes des autres n’appartiennent a priori pas au même bloc de texte.

Figure 3. A gauche le moteur de recherche de Posos. A droite le document orignal (RCP de l’EMA).

Nous avons aussi publié un article expliquant en détail notre travail ici

Des algorithmes efficaces pour automatiser l’ajout et la structuration des données médicales

Le pipeline de données développé par Posos a prouvé son efficacité pour collecter régulièrement les documents des sources de références afin de  les utiliser dans notre moteur de recherche. L’utilisation des toutes dernières technologies d’interprétation de fichiers textes assure des résultats pertinents aux réponses de nos utilisateurs.

Le pipeline traite un nombre de sources en constante augmentation pour répondre à des situations cliniques toujours plus précises. En 2021, ce sont plus de 100 sources médicales qui ont été ajoutées.

Deux avancées majeures vont permettre à Posos de répondre encore plus finement aux questions des professionnels de santé :

  • L’utilisation de modèles de deep learning (computer vision) pour extraire de nouveaux types de contenus complexes à cibler, par exemple des schémas, tableaux et infographies
  • Le développement de modèle de sequence labeling pour améliorer la hiérarchisation des paragraphes et traiter des documents PDF plus longs et plus complexes.

Baptiste Charnier
Data Engineer

Autres articles

Essayez Posos gratuitement

Après testé Posos Premium pendant 60 jours, profitez de la version gratuite de Posos, pour toujours
Pour vous renseigner sur nos solutions pour l'hôpital, cliquez ici