Università degli Studi di Milano

Corso di laurea magistrale in Informatica
a.a. 2018/19

Bioinformatica  

Docente: Giorgio Valentini 

Periodo di svolgimento: II semestre 2018/19
Orari:    Lunedi 11.30-13.30 aula 303
               Giovedi 13.30-16.30 aula
302
                    Settore DIdattico Via Celoria 20

INIZIO CORSO:  Lunedi 4 marzo ore 11.30 Aula 303

Course description (in english - pdf)

Obiettivi del corso:

L'obiettivo principale del corso consiste nel fornire strumenti metodologici per analizzare ed estrarre conoscenza biologica da dati biomolecolari complessi tramite metodi di machine learning (apprendimento automatico). Il corso è per sua natura interdisciplinare ed aperto agli studenti di Informatica, Fisica, Matematica, Biologia, Biotecnologie e di altre discipline scientifiche.

Programma


Introduzione.
Tipologie di problemi computazionali e tipologie di dati in bioinformatica. Basi di dati genomiche e proteomiche.

I. Metodi di apprendimento automatico

0. Introduzione ai metodi di apprendimento automatico

1. Tipologie di apprendimento, generalizzazione e valutazione delle capacità di apprendimento
(a) Apprendimento Supervisionato, non supervisonato e semi-supervisionato
(b) Apprendimento, over and underfitting, generalizzazione.
(c) Metodi sperimentali per la stima dell'errore di generalizzazione
2. Apprendimento supervisionato
- Approcci probabilistici e Teorema di Bayes; il problema della dimensionalità e approccio Naive Bayes.
- Reti neurali: Percettrone lineare, Percettrone multistrato e algoritmo di backpropagation.
- Deep Neural Networs: Deep Feed Forward Neural Networks (DNN), Deep Convolutional networks (CNN) e Deep Recurrent Neural Networks (RNN).
- Support Vector Machines e metodi supervisionati basati su kernel
- Metodi di ensemble
2. Metodi di apprendimento non supervisionato  e semi-supervisionato
Metodi di clustering: k-means, algoritmi di clustering gerarchico, metodi per il clustering di grafi. Metodi semi-supervisionati per l'analisi di grafi.


II. Metodi di machine learning per la biologia computazionale

0. Applicazione dei metodi machine learning nelle diverse diverse aree della biologia computazionale

1. Il problema della predizione supervisionata della funzione delle proteine (AFP - Automated Function Prediction)
(a) Formalizzazione della AFP come problema di classificazione gerarchico multiclasse e multietichetta
(b) Metodi basati sulla kernelizzazione congiunta dello spazio di input  e di output
(c) Metodi basati su ensemble e reti bayesiane
(d) Ensemble gerarchici basati sulle True Path Rule.

(e) Applicazioni alla predizione di fenotipi patologici

2. Inferenze semi-supervisionate in reti biomolecolari
(a) Modellazione di reti biomolecari come grafi
(b) Principali tipologie di problemi di biologia computazionale modellabili come problemi di ranking di nodi su grafi: annotazione funzionale dei geni, ricerca di associazioni gene-malattia, riposizionamento terapeutico dei farmaci.
(c) Algoritmi basati su random walk e random walk con restart
(d) Algoritmi basati su kernel e kernelized score function
(e) Algoritmi basati su reti di Hopfield cost-sensitive.
(f) Implementazione vertex-centric di algoritmi network-based per il processing di reti biomolecolari di grandi dimensioni. Parallelizzazione di algoritmi network-based per l'analisi di big data in bioinformatica.

3. Metodi di apprendimento supervisionato per la Genomica Medica.

3.1 Predizione di varianti genetiche patologiche
(a) Struttura del gene e regolazione dell'espressione genica. Variabilità genetica e mutazioni associate a patologie genetiche e tumorali. Biotecnologie per l'analisi della varianti genetiche a livello dell'intero genoma umano. Feature genomiche associabili a varianti genetiche a livello di singolo nucleotide (SNV).
(b) Metodi avanzati di machine learning per la ricerca di SNV associabili a patologie genetiche e tumorali nelle regioni codificanti e non codificanti del genoma umano. Applicazioni nell'ambito della Medicina di Precisione.

3.2. Stratificazione dei pazienti e ricerca di biomarker
(a) Metodi di machine learning per per la predizione di sottotipi patologici e per la predizione della risposta a trattamente farmacologici.
(b) Metodi di feature extraction e feature selection per la riduzione della dimensionalità e la selezione di biomarker per la stratificazione dei pazienti ed il supporto alla diagnosi ed alla terapia personalizzata.


Prerequisiti:

Nozioni elementari di analisi matematica e statistica.
Corsi consigliati: Metodi Statistici per l'Apprendimento e Sistemi Intelligenti

Modalità d' esame:

I. Svolgimento di un progetto software oppure discussione orale di letteratura scientifica, relativa ad un argomento trattato durante il corso.
II. Discussione orale sugli argomenti trattati durante il corso.

Bibliografia

G. Yona  Introduction to Computational Proteomics Chapman & Hall/CRC, 2011.

C. Bishop, Pattern Recognition and Machine Learning, Springer, 2007.

Materiale didattico  (in allestimento)

    Bioinformatics theses available at AnacletoLab - CS Dept. of Milan


Articoli
 

Link ad AnacletoLab - Laboratorio di Biologia Computazionale del Dipartimento di Informatica

Link a riviste di bioinformatica