Outil de génération de bases de données synthétiques et réalistes du SNIIRAM

GitLab

Lien vers le repo : GitLab

Objectifs de l’algorithme

Autre

L’objectif de cet outil est de générer des versions synthétiques, sans contrainte de diffusion, de la base de données du SNIIRAM. Il cherche à répondre aux besoins d’utilisation du SNIIRAM, tel que l’enseignement de son utilisation ou l’évaluation de solutions logicielles. Ces usages ne nécessitent pas de données réelles, mais seulement de données réalistes statistiquement ou sur certains aspects thématiques à évaluer - en particulier les parcours de soins individuels cohérents. 

 

L’outil est composé d’un moteur de génération de données synthétiques dont les paramètres d’entrées sont : 

  • D’une part, des distributions de population et de prestations ;
  • Et d’autre part, des descriptions de parcours de soins typiques (par exemple :  enchaînement d’actes délivrés aux patients, selon leurs conditions et avec des contraintes temporelles). 

 

Le moteur génère des données de patients synthétiques qui respectent ces parcours et ces distributions, leur donnant ainsi un caractère réaliste. Le moteur de génération concrétise les données sous la forme d’une base de données qui respecte le schéma du SNIIRAM. L’outil propose également une solution pour estimer les distributions qui ne nécessitent aucune donnée individuelle. La donnée synthétique qui en résulte est ainsi non-sensible et partageable immédiatement sans restriction.

 

Cet outil met à disposition trois scénarios de génération qui peuvent être utilisés directement : une population non-thématique, une base de données reproduisant la survenue de décès post-AVC et une base de données reproduisant les prises en charge de patientes atteintes de cancer du sein.

Auteur(s)

Organisme de recherche
Thomas Guyet

Domaine médical

Cancers
Maladies cardio-vasculaires
Diabète
Maladies neurodégénératives
Santé mentale et Psychiatrie
Périnatalité et Santé reproductive
Maladies respiratoires
Maladies infectieuses
Enfants et Pédiatrie
Personnes âgées et Gériatrie
Autre

Méthodologie

Le besoin de pouvoir évaluer efficacement des solutions logicielles sur le SNIIRAM ou encore de permettre de faire découvrir le contenu de cette base de données a conduit à développer un outil de génération de données synthétiques. 

 

D’un côté, la solution proposée par la Plateforme des données de santé (PDS) permet d’explorer les tables, mais celle-ci manque de réalisme. D’un autre côté, les solutions basées sur des méthodes d’apprentissage automatiques pour reproduire fidèlement des distributions contraignent les possibilités d’utilisation de leurs produits. 

 

La solution originale et intermédiaire que nous avons choisie est d’apporter du réalisme en utilisant des distributions de population et de prestation à partir de données agrégées en libre accès (non-individuelles) et de pouvoir les combiner avec des descriptions expertes, issues d’article de la littérature scientifique ou de certaines trajectoires de soins (par exemple : survie après AVC, traitement du cancer du sein). Notre outil augmente ainsi le réalisme des données sans avoir à gérer les contraintes de diffusion des bases synthétiques. 

 

Ces dimensions de réalisme sont insuffisantes pour être utilisées pour faire de l’évaluation médicale, mais elles permettent de répondre aux besoins d’évaluation technique des algorithmes ou à l’enseignement.

 

La modélisation statistique des populations est faite par la modèle bayésien relationnel. Les paramètres de ce modèle ont été choisis selon leur ajustement possible à partir de données en libre accès. Concernant la modélisation des parcours pour les patients, l’API du code définit des concepts de haut niveau pour définir des parcours.

 

Les limites actuelles de l’outil sont : 

  • Son champs d’application limité à la partie de description des soins du SNIIRAM (les aspects économiques n’ont pas été abordé) ; 
  • La génération est limitée à une période d’un an ; 
  • Il n’existe pas d’interface facilitant l’adaptation à un nouveau scénario (nécessite de coder un scénario en Python) ;
  • Le simulateur n’intègre pas d'erreurs usuelles rencontrées dans les données (par exemple : duplications d’informations, certaines incohérences constatées, etc.). 

 

Ces limites représentent des pistes potentielles pour des améliorations futures. 

Langage de programmation

Python

Données utilisées

Données d'application

Base principale

Les données utilisées pour l’estimation des distributions sont : 

  • Les données de l’OpenDAMIR ; 
  • La liste publique des structures et personnels de soins de l'assurance maladie ; 
  • Les données démographiques de l’INSEE ;
  • Les données publiques de l’ATIH sur l’activité hospitalière. 

Ces données ont été collectées pour l’année 2016.
Aucune de ces données n’a nécessité un accès préalable au SNIIRAM.

Validation

En cours de validation

La validation de cet outil a consisté à vérifier que le moteur générait des données qui respectaient effectivement les distributions théoriques qui étaient fournies en entrée. Ces validations ont été menées sur une population non thématique (Guyet et al., IAS 2021). Les évaluations sur le cas d’étude AVC ont permis de montrer que les données synthétiques reconstruisent les courbes de survie par catégories de patients identifiés dans l’étude 0939 de la DRESS (étude utilisée en référence pour générer les données). L’évaluation sur le cas d’étude du cancer du sein, basé sur l’étude FRESH, est en cours de soumission. 

Date de dernière mise à jour

Dernière version : janvier 2026

Maintenance

Ad-hoc (en fonction des remontées de problèmes, suggestions)

Maintenance de l’outil par Thomas Guyet. 

Comment installer l’algorithme ?

Toutes les instructions d’installation et d’usage sous disponibles dans le README du projet déposé sur GitLab. 

Deux options d’installation sont proposées : une version dockerisée pour des usages directs de l’outil et une installation complète pour l’adaptation de la génération de cohortes. 

Comment utiliser l’algorithme ?

Les instructions d’usage de l’outil de génération sont décrites dans le README du projet déposé sur GitLab. 

Les personnes souhaitant adapter la génération à d’autres cas d’usage peuvent prendre contact avec l’auteur pour une meilleure compréhension de son fonctionnement et pour conseil d’usage.

Contributions

Des contributions en open source sur l’outil sont possibles. Prendre contact avec l’auteur : thomas.guyet@inria.fr 

Crédits

Le cas d’application AVC a été développé en collaboration avec Aymeric Florac (Plateforme des données de santé, PDS). Le cas d’application Cancer du Sein a été développé en collaboration avec Marie Guyomard et Raquel Urena (SESSTIM/AMU).

Licence et conditions d’utilisation

GPL v3+

Autre

Pour citer la ressource, utiliser le DOI suivant : https://doi.org/10.5281/zenodo.18360794