Predizione Malattie con Graph Machine Learning
Graph ML

Predizione Malattie con Graph Machine Learning

Applicare la network science per arricchire la predizione di malattie dai sintomi

Le metriche di grafo svelano la struttura dei sintomi e permettono diagnosi più leggere ma accurate.

Home/Ricerca/Predizione Malattie con Graph Machine Learning

Informazioni Progetto

Corso
Data Science Finanziaria
Autori
Andrea Alberti, Davide Ligari, Cristian Andreoli, Matteo Scardovi
Data
dicembre 2023
Pagine
23
Visualizza Codice

Tecnologie

PythonNetworkXScikit-learnNumPyPandasMatplotlibSeaborn

Abstract

Rappresentate 773 malattie e 377 sintomi in una rete bipartita per ingegnerizzare feature grafo-aware utili alla diagnosi. Method of Reflections, indici di Influenza di malattia/sintomo, rilevamento di comunità e betweenness centrality generano nuovi descrittori a complemento del one-hot dei sintomi. Sono stati confrontati modelli di Regressione Logistica, Random Forest e MLP; il modello logistico migliore eguaglia la baseline basata sui soli sintomi usando meno input e fornendo insight sull’accuratezza per classe.

Informazioni

Il progetto realizza una pipeline completa: costruzione del grafo bipartito da 246 mila casi clinici sintetici, calcolo delle iterazioni del Method of Reflections per ricavare gli indici di Influenza di sintomi (SI) e malattie (DI), estrazione di comunità tipo Louvain, betweenness centrality e confronto con null model. I descrittori di rete vengono fusi con il one-hot dei sintomi e scremati tramite forward stepwise selection per contenere la dimensionalità. Regressione logistica, Random Forest e MLP sono ottimizzati con grid search; il modello logistico arricchito con feature di rete eguaglia l’accuratezza della baseline sui soli sintomi mantenendo l’overfitting contenuto. Un’analisi a valle dettaglia l’accuratezza per malattia, mette in luce le confusioni su patologie sovrapposte (es. cancro alla vescica vs diabete insipido) e studia l’impatto del taglio delle feature su accuratezza e tempi di training.

Risultati Chiave

Logistic Regression
Best Model
28%
Feature Reduction
1.5%
Accuracy Drop
9.4%
Training Time Reduction

Scoperte Principali

  • Un dataset sintetico da 246 mila casi è stato modellato come grafo bipartito sintomo–malattia generando indici SI/DI, identificatori di comunità e metriche di betweenness da affiancare al one-hot dei sintomi.
  • La selezione stepwise ha isolato la combinazione più informativa di feature di grafo e sintomo mantenendo l’accuratezza della baseline logistica e riducendo dimensionalità e costi computazionali.
  • Le analisi per malattia hanno messo in luce classi con richiamo perfetto (insufficienza mitralica, broncospasmo acuto) e spiegato perché il cancro alla vescica resta critico a causa di sintomi sovrapposti.

Metodologia

Built a 773×377 symptom–disease bipartite graph (246k cases), derived Method of Reflections SI/DI metrics, communities and betweenness features, fused them with one-hot symptoms, then applied forward stepwise selection before benchmarking Logistic Regression, Random Forest and MLP classifiers.
Predizione Malattie con Graph Machine Learning | Andrea Alberti | Andrea Alberti