|
ELISA FICARRA
Professore Ordinario Dipartimento di Ingegneria "Enzo Ferrari"
|
Insegnamento: Strumenti e tecnologie per la bioingegneria
Bioingegneria per l'innovazione in medicina (Offerta formativa 2024)
Obiettivi formativi
Il corso si propone il duplice obiettivo di insegnare l’uso di linguaggi di programmazione, quale in primis il Python, più comunemente utilizzati per l’elaborazione di immagini, dati e segnali biomedici.
Il corso si propone inoltre di valutare la metodologia di studio e validazione dei trattamenti in campo biomedico con specifica focalizzazione sui dispositivi e le tecnologie in campo sanitario.
Prerequisiti
È richiesta una base di conoscenza della programmazione informatica, es. linguaggio C, e un livello minimo di familiarità con l’utilizzo delle funzioni e delle librerie.
Programma del corso
Strumenti e tecnologie per la bioingegneria- INFORMATICA PER LA BIOINGEGNERIA
Introduzione al corso :
• Obiettivi del corso
• Struttura del corso e Regole per l'Esame
• Set-up per le sessioni di laboratorio
Linguaggio Python (4 CFUs):
• Variabili e costanti numeriche
• Stringhe e metodi per stringhe
• Input e Output di dati numerici e di stringhe
• Operatori aritmetici elementari, potenze, funzioni matematiche
• Costrutti di controllo di flusso
• Funzioni e passaggio di parametri
• Liste, Insiemi, Dizionari
• Strutture complesse (dizionari di insiemi e dizionari di liste)
• Lettura e scrittura di file di testo
• Gestione delle eccezioni
• Esempi con programmazione ad oggetti
• Esempi di librerie python specifiche per la programmazione in ambito biomedico e della bioingegneria (incluse le librerie per il machine learning e deep learning)
+ Laboratori con esercizi in autonomia
Fondamenti di machine e deep learning (2 CFU)
• Classification theory, taxonomy and metrics
• Linear Models for Classification:
o LDA
o Logistic Regression
• Margin methods and SVM
• Ensemble Methods
• Neural Networks Introduction:
o Gradient descent
o Perceptron and MLE
• Advanced NN:
o Convolutional network
o RNN and sequential data processing
Il corso è organizzato con laboratori e attività progettuali che consentono allo studente una migliore comprensione sia delle problematiche che delle soluzioni software implementate.
----------------------------------------------
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 italiano (?).
L’insegnamento avverrà attraverso lezioni frontali, esercitazioni pratiche, attività pratiche di laboratorio.
Le lezioni copriranno le basi teoriche dell'informatica in diversi scenari reali, quali il mondo biologico e le sue applicazioni in bioinformatica e bioingegneria, in particolare.
Verranno forniti strumenti di comunicazione tramite social media per condividere con i docenti e con gli studenti dubbi, domande e risposte.
Testi di riferimento
- Dispense del corso a cura del docente
- Concetti di informatica e fondamenti di Python (Seconda edizione), Cay Horstmann Rance D. Necaise, APOGEO, ISBN 9788891635433, http://www.apogeoeducation.com/concetti-di-informatica-e-fondamenti-di-python.html
Verifica dell'apprendimento
Informatica per la Bioingegneria:
L’esame consiste in:
1) una prova al calcolatore mirata ad accertare sia le conoscenze dello studente sulla parte di programmazione (tramite la realizzazione di uno o più programmi in linguaggio Python che implementino la soluzione di problemi pratici). La durata della prova scritta è di 2 ore e non prevede l'uso di materiale didattico da parte degli studenti.
2) una prova orale relativa agli argomenti di machine learning e deep learning trattati nel corso
La prova scritta prevede un voto massimo di 30 e lode. A questo voto contribuirà per 2/3 la prova scritta e per 1/3 la prova orale
---------------------------------
HTA
Prova orale di circa 20 minuti
Risultati attesi
Lo studente acquisirà:
- Capacità di programmare nei linguaggi studiati durante il corso
- Conoscenza delle librerie python specifiche per la programmazione in ambito biomedico e della bioingegneria
- Conoscenze preliminari di machine learning e deep learning
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 medico.