// projet de fin d'études · conecsio · 2025-2026 · binôme
Conecsio.
Moteur de clustering hybride pour la découverte automatique de cohortes de patients à partir de données FHIR — IA explicable + enrichissement sémantique.
// Contexte
PFE réalisé chez Conecsio, entreprise spécialisée dans l'interopérabilité de données de santé via le standard FHIR. La problématique : les entrepôts hospitaliers contiennent des millions de dossiers patients non étiquetés. Comment segmenter automatiquement des populations cliniquement similaires sans règles manuelles ?
Le « paradoxe FHIR » : excellent pour les échanges transactionnels (dossier d'un patient), mais faible pour l'analyse populationnelle. Notre solution : un moteur hybride combinant clustering statistique et enrichissement sémantique via les ontologies médicales.
// Architecture
Pipeline ETL modulaire : ingestion FHIR → enrichissement sémantique (roll-up) → vectorisation TF-IDF → réduction dimensionnelle (Truncated SVD) → clustering (HDBSCAN) → visualisation (UMAP) → export DCAT-AP.
flowchart LR
F["Données FHIR (JSON bundles)\nPatient · Condition · Observation · RxNorm"]
F --> TL["Terminology Layer (Roll-up sémantique)\nSNOMED CT + LOINC → codes parents\nStop-list (GENERIC_ROOTS)"]
TL --> TF["Vectorisation TF-IDF + Pondération\nConditions 1.5 > Medications 1.0 > Observations 0.8"]
TF --> SVD["Truncated SVD (50 dim, 85% variance)\n+ MinMaxScaler (âge normalisé 0-1)"]
SVD --> HDB["HDBSCAN (clusters)"]
SVD --> KM["K-Means (comparatif)"]
SVD --> UMAP["UMAP (viz) Biplot"]
HDB --> LLM["LLM (Qwen / Ollama)\ndescription narrative\n+ Export DCAT-AP (RDF/Turtle, FAIR)"]
// Projection UMAP + HDBSCAN
Projection UMAP — îlots de patients colorés par cluster HDBSCAN, bruit isolé en gris
UMAP préserve la structure topologique locale contrairement à la SVD (linéaire). Les patients partageant des trajectoires cliniques similaires forment des îlots denses et distincts. HDBSCAN identifie ces îlots naturellement et isole le bruit clinique (outliers) sans forcer l'appartenance.
// Export RDF / DCAT-AP
Graphe de métadonnées RDF (DCAT-AP) — cohorte décrite comme ressource interopérable
Chaque cohorte découverte est exportée au format Health DCAT-AP (RDF/Turtle) via RDFLib, décrivant la provenance, les algorithmes utilisés et les caractéristiques cliniques. Cela transforme le résultat du clustering en un objet numérique standardisé, publiable sur des portails Open Data.
// HDBSCAN vs K-Means
// HDBSCAN — retenu
Densité variable, isole le bruit, clusters de forme arbitraire. Stabilité ARI > 0.90 sur 50 itérations de bootstrap. Idéal pour les données médicales hétérogènes.
// K-Means — comparatif
Partitions sphériques, force l'appartenance de chaque point. ARI > 0.80 mais plus dispersé. Utile pour une segmentation macro mais sensible aux outliers.
// MVP Web + LLM
Application web full-stack conteneurisée (Docker) : backend FastAPI asynchrone pour lancer les clusters en arrière-plan, frontend React/Vite/Tailwind avec visualisations interactives. Un LLM (Qwen via Ollama, inférence locale) génère une synthèse narrative de chaque cluster (ex: « groupe gériatrique avec comorbidités cardiovasculaires »).
// IA explicable
Biplot + Top Codes pour retracer pourquoi un patient est assigné à un cluster. Pas de boîte noire.
// Éco-conception
Images Docker réduites de 95% (multi-stage builds). SVD sur CPU, GPU réservé au LLM ponctuel.