Il progetto mira allo sviluppo di un sistema diagnostico per identificare e classificare tumori cerebrali attraverso immagini di risonanza magnetica. Questa innovazione potrebbe estendersi a modelli più avanzati, assistendo professionisti non solo nella diagnosi delle malattie più comuni, ma anche delle malattie più rare e complicate da diagnosticare. L'intelligenza artificiale offre un potenziale significativo nell'ambito medico, migliorando la precisione diagnostica e supportando il trattamento.
Il report finale è consultabile a questo link. Si può reperire il dataset originale qui. È inoltre possibile scaricare direttamente i pesi dell'EfficientNetV2S Fine Tuning a questo link. Tutti i riferimenti a siti, documenti e/o persone sono riportati alla fine del report finale.
Requisiti:
- Un account www.kaggle.com.
- Un account Google per poter accedere a Google Colab.
Seguire i seguenti passaggi:
- Andare su Kaggle, effettuare il login e recarsi nelle impostazioni cliccando l'immagine in alto a destra e poi su
settings
; - Nella sezione API cliccare su
Create New Token
e si avvierà il download di un file chiamato "kaggle.json"; - Scaricare i Notebook da GitHub e caricarli tutti sulla stessa cartella su Google Drive;
NOTA: È fortemente consigliato di creare la cartella del progetto nella propria home su Google Drive. Qualora si voglia comunque utilizzare una cartella differente sarà necessario aggiornare il percorso della cartella su ogni notebook. - Una volta caricati su Google Drive in una cartella comune, aprire il file chiamato
Dataset (Download + Pre-Processing).ipynb
ed eseguire le prime istruzioni; - Quando verrà chiesto di caricare il file kaggle.json, inserire il file scariato al punto n°2;
- Dopo che opendatasets avrà ricevuto il file json avvierà il download del dataset. Ora è possibile pre-processarlo a propria scelta e salvarlo su Google Drive, in modo che sia facilmente accessibile agli altri notebook;
NOTA: A causa di limitazioni di Google Drive, potrebbero essere necessari diversi minuti affinché il dataset salvato risulti visibile e accessibile dai notebook! - Una volta salvato uno o più datasets, questi saranno facilmente importabili negli altri notebook e utilizzabili con i vari modelli.
Il progetto è stato organizzato in più notebook in base ai modelli e alle operazioni da effettuare:
Nome File | Operazioni effettuabili |
---|---|
Dataset (Download + Pre-Processing).ipynb | Permette di scaricare il dataset, analizzarlo ed eseguire diversi tipi di pre-processing |
Modello Dense.ipynb | Permette di addestrare un modello Dense e verificarne le prestazioni |
Modello Convolutivo.ipynb | Permette di addestrare un modello Convolutivo e verificarne le prestazioni |
Modello EfficientNetV2S.ipynb | Permette di osservare le prestazioni dell'EfficientNetV2 con e senza Fine Tuning |
Analisi dei risultati.ipynb | Permette di mettere a confronto i vari modelli e le loro performance |
All'interno dei notebook sono state utilizzate le seguenti librerie:
Nome Libreria | Utilizzo |
---|---|
Tensorflow e Keras |
Per utilizzare i modelli, i layer e i tensori |
OpenDatasets |
Per il download del dataset da kaggle |
Numpy e Pandas |
Per operazioni di processing |
MatPlotLib |
Per visualizzare i dati graficamente |
os e shutil |
Per gestire file e cartelle |
scikitlearn |
Per le matrici di confusione |
PIL |
Per manipolazione e salvataggio delle immagini |