|
ELISA FICARRA
Professore Ordinario Dipartimento di Ingegneria "Enzo Ferrari"
|
Insegnamento: AI for Bioinformatics
Ingegneria informatica (Offerta formativa 2023)
Obiettivi formativi
Il corso si propone di studiare soluzioni software per l'analisi di immagini biomediche e di dati genetici e molecolari. Attraverso il corso, gli studenti apprenderanno modelli AI avanzati e problemi relativi alle generiche applicazioni AI, oltre a quelli specifici dell'Intelligenza Artificiale applicata alla medicina e alla salute. Infatti, durante il corso, gli studenti impareranno ad affrontare problemi quali, ad esempio:
1) la scarsità di etichette e annotazioni
2) l'affidabilità e l'equità dei modelli di IA (cioè, come correggere i bias algoritmici nei processi decisionali automatizzati)
3) l'integrazione di diverse fonti di informazione
4) l'aggiornamento continuo della conoscenza
Attraverso numerosi esempi pratici e sessioni di laboratorio, gli studenti apprenderanno le tecniche per:
- Multiple-instance learning (MIL)
- Risolvere i bias attraverso opportuni modelli AI
- Multimodal learning e Multimodal Co-learning (integrazione di diversi tipi di dato anche con modalità mancanti o rumorose).
- Metodi statistici per la valutazione delle prestazione del modello AI e per l'analisi dei dati
- Segmentazione 2D e 3D (ad es. tramite architetture UNet e Visual Transformers)
Inoltre, argomenti specifici saranno affrontati in seminari tematici, come ad esempio su Continual learning, apprendimento neuro-simbolico, ecc.
Questi argomenti saranno organizzati in moduli, ciascuno composto da lezioni teoriche seguite da sessioni di laboratorio. In un primo momento verranno forniti esempi comunemente utilizzati di applicazione AI generiche; successivamente verranno presentate applicazioni biologiche e biomediche per imparare ad adattare le soluzioni teoriche e generiche a sistemi complessi, quali sono i sistemi biologici.
Relativamente poi a questi, verranno esplorate fonti di dati eterogenee, che vanno dai dati di sequenziamento del DNA/RNA alle immagini istologiche e mediche. Durante il corso verranno studiati i problemi e alcune soluzioni innovative per analisi genetiche e per modelli predittivi affidabili per applicazioni mediche. Verranno illustrate e utilizzate tecnologie deep learning quali: Graph Neural Networks, Transformers, Vision Transformers, Bayesian neural networks, ecc.
Lo scopo del corso è quindi duplice. In primo luogo, esso formerà gli studenti nelle più avanzate tecnologie di AI per la salute. In secondo luogo, il corso offrirà un'ampia gamma di problemi e tecnologie AI che consentiranno agli studenti di affrontare problemi generali di Intelligenza Artificiale che trascendono le applicazioni genetiche e mediche, come quelli già menzionati precedentemente (MIL, algoritmi di debiasing per l'apprendimento automatico fair e trustable, multimodal learning e multimodal co-learning, segmentazione 2D e 3D, statistica) e, inoltre, self-supervised learning, modelli multi-risoluzione, continual learning, ecc.
Prerequisiti
È richiesta una solida base di informatica, compresi algoritmi, strutture di dati e programmazione (ad esempio, python, C, C++ o Java).
E' raccomandabile aver seguito il corso MACHINE LEARNING AND DEEP LEARNING (anche senza superamento) o comunque avere concetti di base di machine e deep learning.
Gli studenti che non frequentano questi corsi riceveranno spiegazioni e materiale off-line per comprendere le basi del corso.
Programma del corso
Introduzione al corso (0.5 CFU):
• Obiettivi del corso
• Struttura del corso e Regole per l'Esame
• Set-up per le sessioni di laboratorio
• Introduzione alla Bioinformatica:
- definitione
- problemi rilevanti e opportunità nella ricerca, nell'industria e nell'economia
- problemi computazionali e requirement dei modelli AI
Introduzione al Biomedical Imaging (1 CFUs):
- Introduzione alle immagini biomediche (e.g., WSI Gigapixels images); focus sui topic di ricerca rilevanti e sulle sfide nella progettazione dei modelli e sistemi AI, come:
o dimensionalità dei dati
o scarsità di annotazioni e label
o incertezza nelle annotazioni e nelle label
o dati contenenti diverse annotazioni e label (i.e., multi-labels)
o dati a diverse risoluzioni
o bias nei dati
o conoscenza progressiva, e quindi apprendimento continuo
- Introduzione ai topic AI che affrontano i problemi sopra menzionati (da approfondire nella seconda parte del corso)
Deep learning architectures (2.5 CFUs):
- Graph Neural networks (teoria e laboratorio)
- Bayesian neural networks (teoria e laboratorio)
- Transformers e Visual Transformers (teoria e laboratorio)
- Self-learning: esempi di architetture (e.g. DINO)
- Multimodal learning e Co-learning: esempi di architetture per l'ntegrazione di dati provenienti da diverse sorgenti (e.g. text, video, images, sound, etc.) con (partiale/totale) assenza di dati (teoria e laboratorio)
Metodi Statistici per la data science (0.5 CFU)
Biomedical Imaging (2.5 CFUs):
- Multiple-Instance Learning (MIL):
o definition
o esempi di architetture MIL (teoria e laboratorio)
- Debiasing AI:
o esempi di architetture per il debiasing (con o senza conoscenza a priori del bias)
- 2D and 3D segmentation: UNet, Visual Transformers (teoria e laboratorio)
Dati molecolari: DNA and RNA-sequencing (2 CFUs):
- Breve descrizione delle tecnologie di sequenziamento genomico, formati di dati e tool più usati per l'analisi delle sequenze (e.g. Botwie, Arriba, CNV caller, GenomeSpy/Genome Browser) (teoria e laboratorio)
- Analisi delle sequenze genomiche:
o esempi di architetture basate su Tranformers (BERT) e Perceivers
o use case: predizione di espressione genetica e proteica dalle sequenze genomiche (teoria e laboratorio)
o explainability dei risultati e del modello tramite ispezione dei meccanismi di attenzione
- Multimodal learning per dati molecolari: esempi di integrazione tra sequenze genomiche e dati molecolari (teoria e laboratorio)
Presentazione progetti per l'esame finale.
Il corso è organizzato con laboratori e attività progettuali che consentono allo studente una migliore comprensione sia delle problematiche che delle tecnologie AI proposte.
Metodi didattici
Il corso sarà erogato in presenza. Se tuttavia ci saranno delle emergenze da parte del docente o esigenze particolari da parte della classe la modalità di erogazione potrà essere anche in modalità ibrida, e comunque in linea con le direttive di ateneo.
Il corso è obbligatorio, ma la frequenza è facoltativa. L’insegnamento è erogato in inglese.
L’insegnamento avverrà attraverso lezioni frontali, esercitazioni pratiche, attività pratiche di laboratorio.
Le lezioni copriranno le basi teoriche dell'IA in diversi scenari reali, tra cui il mondo biologico, e le sue applicazioni in bioinformatica. Le esercitazioni permetteranno agli studenti di applicare le tecniche di IA a problemi biologici e problemi generici del mondo reale. I laboratori permetteranno agli studenti di lavorare con dati biologici e di sviluppare soluzioni basate sull'IA.
Verranno forniti strumenti di comunicazione tramite social media per condividere con i docenti e con gli studenti dubbi, domande e risposte.
Testi di riferimento
- Course slides,
- scientific research papers,
- web documents
- short educational movies.
- optionally, ML and deep learning books, such as
i) "Deep Learning" by Ian Goodfellow, Yoshua Bengio and Aaron Courvill, MIT Press;
ii) "Deep Learning Illustrated: A Visual, Interactive Guide to Artificial Intelligence" (Addison-Wesley Data & Analytics Series) by Jon Krohn, Grant Beyleveld, Aglaé Bassens. Addison-Wesley Professional; 1 edition (August 5, 2019);
iii) others suggested during the course.
Verifica dell'apprendimento
L'esame consiste, a scelta, in un progetto individuale o di gruppo con discussione orale sul progetto più alcune domande aperte su argomenti di teoria relativi al soggetto del progetto.
Progetto individuale o di gruppo (punteggio max 30L / 30L):
• I docenti del corso illustreranno i progetti disponibili nella seconda parte del corso.
• I progetti presentati saranno caratterizzati da obiettivi analitici, di progettazione e implementazione/ottimizzazione a seconda del progetto specifico.
• A seconda della complessità specifica del progetto, il numero di studenti all’interno dei gruppi sarà limitato.
• Non ci saranno scadenze intermedie per il completamento del progetto.
• I progetti possono essere sviluppati senza vincoli di tempo e presentati in qualunque momento dell’anno.
• I progetti saranno discussi in una presentazione orale (tramite slide); la data corretta per la presentazione sarà concordata con lo studente.
Preparazione alla presentazione e discussione del progetto:
• La presentazione orale riguarderà lo sviluppo del progetto, le alternative tecnologiche di letteratura, i problemi riscontrati, le soluzioni sviluppate e i risultati ottenuti (presentazione tramite slide).
• Le domande riguarderanno lo sviluppo del progetto, i risultati e i relativi argomenti teorici trattati durante il corso.
• Sarà necessaria anche una demo.
• Un manuale utente sulle questioni tecniche, così come il codice sviluppato e i risultati, sarà fornito al personale docente entro e non oltre tre giorni prima della presentazione del progetto.
Valutazione della discussione del progetto: la valutazione è composta da quanto segue
• 24 punti per la progettazione, l'implementazione, la documentazione e la presentazione del progetto
• 2 punti facoltativi per la lode se il progetto presenta passaggi/analisi/obiettivi aggiuntivi rispetto a quelli richiesti nelle specifiche. Ovviamente il contributo aggiuntivo deve essere relativo al progetto assegnato e significativo.
• 6 punti per domande aperte su argomenti teorici visti durante il corso e relativi all’argomento del progetto.
L'esame sarà in presenza.
Tuttavia, in caso di giustificati problemi personali o restrizioni sanitarie la procedura sarà identica a quella utilizzata per gli esami in presenza e la sessione, svolta tramite piattaforma online, sarà registrata per tenere traccia dello svolgimento dell’esame.
Risultati attesi
Lo studente acquisirà:
- La comprensione delle tecniche di computer vision per la progettazione di modelli predittivi e la valutazione della loro affidabilità in contesti particolarmente impegnativi, caratterizzati, ad esempio, dalla mancanza e/o dall'incertezza di label e annotazioni, dalla scarsità dei dati, dalla multi-risoluzione e dalle grandi dimensioni del dato, dall'integrazione di modalità diverse di dati con dati parzialmente mancanti, dall'adattamento al dominio.
- la comprensione di tecnologie deep learning di frontiera basate su Graph Neural Networks, Transformers, Visual Transformers, Attention, ecc.
- la comprensione delle problematiche relative all’integrazione di dati eterogenei e la comprensione delle metodologie per l’integrazione dei dati basate sulla statistica e il deep learning.
- la comprensione di tecniche computazionali per l'analisi dei dati di sequenziamento basate su tecniche di text mining e pattern matching, nonché di ottimizzazione matematica e teoria dei grafi;
- la comprensione delle biotecnologie di ultima generazione per lo screening genetico e molecolare e dei principali approcci SW per analisi bioinformatiche complesse.
In questo corso, lo studente imparerà come funzionano le metodologie esistenti e come progettare nuove architetture e algoritmi.
Inoltre, lo studente:
- imparerà ad adattare e trasferire metodologie IA avanzate in studi genetici, analisi di bio-immagini e applicazioni cliniche.
- imparerà a progettare e implementare nuove soluzioni algoritmiche affidabili nell'ambito dei Sistemi Complessi, come quelli biologici.
- sperimenterà tecniche di esecuzione e ottimizzazione SW su infrastrutture cluster.
Il corso fornirà allo studente sia competenze teoriche che pratiche, tramite l’esperienza della progettazione, da sfruttare in applicazioni generali, anche al di fuori dell'ambito genetico e medico.
Infine, la biologia computazionale per la comprensione delle malattie complesse è, in effetti, un dominio molto impegnativo che consente allo studente di comprendere i pro e i contro di diversi approcci IA, statistici e computazionali.