Bioinformatica Catene di Markov, HMM – GenScan – EasyBack

Slides:



Advertisements
Presentazioni simili
Premessa: si assume di aver risolto (correttamente
Advertisements

Teoria e Tecniche del Riconoscimento
LIMITI:DEFINIZIONI E TEOREMI
Ricorrenze Il metodo di sostituzione Il metodo iterativo
2. Introduzione alla probabilità
Capitolo 8 Sistemi lineari.
Autovalori e autovettori
METODI EQUAZIONI DIFFERENZIALI Funzioni che mettono in relazione una variabile indipendente ( es. x), una sua funzione ( es. y = f(x) ) e la.
6. Catene di Markov a tempo continuo (CMTC)
1 2. Introduzione alla probabilità Definizioni preliminari: Prova: è un esperimento il cui esito è aleatorio Spazio degli eventi elementari : è linsieme.
RICERCA DI SIMILARITA’ IN BANCHE DATI
Bioinformatica Classificazione
Bioinformatica Predizione della struttura secondaria dell’RNA – MFOLD
Bioinformatica Pictar – miRanda - TargetScan – miRiam
Dr. Giuseppe Pigola – Bioinformatica Dr. Giuseppe Pigola –
Fisica 1 Termodinamica 9a lezione.
Esercizio 1 Un filo indefinito è costituito da due semirette AB e BC formanti un angolo retto, come in figura Il filo è percorso da una corrente I = 10.
Chiara Mocenni - Sistemi di Supporto alle Decisioni I – aa Sistemi di Supporto alle Decisioni I Scelte di consumo Chiara Mocenni Corso di laurea.
Algebra delle Matrici.
6. Catene di Markov a tempo continuo (CMTC)
3. Processi Stocastici Un processo stocastico è una funzione del tempo i cui valori x(t) ad ogni istante di tempo t sono v.a. Notazione: X : insieme di.
Metodi Quantitativi per Economia, Finanza e Management Lezione n° 11.
Iterazione enumerativa (for)
TEORIA RAPPRESENTAZIONALE DELLA MISURA
Analisi e Sintesi di circuiti sequenziali
CORSO DI PROGRAMMAZIONE II Introduzione alla ricorsione
Algoritmi e Strutture Dati (Mod. B)
Alberi di Ricorrenza Gli alberi di ricorrenza rappresentano un modo conveniente per visualizzare i passi di sostitu- zione necessari per risolvere una.
Corso di biomatematica lezione 4: La funzione di Gauss
Ricerca della Legge di Controllo
INGEGNERIA CLINICA E BIOMEDICA
Apprendimento di movimenti della testa tramite Hidden Markov Model
STATISTICA a.a PARAMETRO t DI STUDENT
Modelli simulativi per le Scienze Cognitive Paolo Bouquet (Università di Trento) Marco Casarotti (Università di Padova)
Analisi e Sintesi di circuiti sequenziali. Definizione Una macchina sequenziale é un sistema nel quale, detto I(t) l'insieme degli ingressi in t, O(t)
Studente Claudia Puzzo
1 Esempio : Utile per considerare limportanza delle ALTE FREQUENZE nella ricostruzione del segnale, in particolare dei FRONTI di SALITA e di DISCESA (trailing.
Lezione 13 Equazione di Klein-Gordon Equazione di Dirac (prima parte)
Elementi di Informatica
Biologia Computazionale - Algoritmi
Allineamento Metodo bioinformatico che date due o più sequenze ne mette in evidenza similarità/diversità, supponendo che le sequenze analizzate abbiano.
STATISTICA PER LE DECISIONI DI MARKETING
Statistica economica (6 CFU) Corso di Laurea in Economia e Commercio a.a Docente: Lucia Buzzigoli Lezione 5 1.
Passo 3: calcolo del costo minimo
Le distribuzioni campionarie
Unità 2 Distribuzioni di probabilità Misure di localizzazione Misure di variabilità Asimmetria e curtosi.
Implementazione di dizionari Problema del dizionario dinamico Scegliere una struttura dati in cui memorizzare dei record con un campo key e alcuni altri.
La ricorsione.
Esempio di utilizzo del programma BLAST disponibile all’NCBI
Didattica e Fondamenti degli Algoritmi e della Calcolabilità Terza giornata: principali classi di complessità computazionale dei problemi Guido Proietti.
R. Soncini Sessa, MODSS, L 26 Stima degli effetti Calcolo degli obiettivi (Laplace) Rodolfo Soncini Sessa MODSS Copyright 2004 © Rodolfo Soncini.
Allineamento di sequenze
Automi temporizzati.
Flusso di Costo Minimo Applicazione di algoritmi: Cammini Minimi Successivi (SSP) Esercizio 1 Sia data la seguente rete di flusso, in cui i valori riportati.
Problemi risolvibili con la programmazione dinamica Abbiamo usato la programmazione dinamica per risolvere due problemi. Cerchiamo ora di capire quali.
Complessità Computazionale
Le funzioni.
Forma normale delle equazioni di 2° grado Definizione. Un'equazione di secondo grado è in forma normale se si presenta nella forma Dove sono numeri.
“ Pseudocodice ” Un programma per computer lavorerà su in insieme di “ variabili ” contenenti i dati del problema, soluzioni intermedie, soluzioni finali.
Suggerimenti [1d5] SE la prima lettera della matrice (in alto a sinistra, matrice[0,0]) è diversa dalla prima lettera della parola (parola[0]) ALLORA siamo.
Annotazione strutturale dei genomi
Operazioni di campionamento CAMPIONAMENTO Tutte le operazioni effettuate per ottenere informazioni sul sito /area da monitorare (a parte quelle di analisi)
Analisi matematica Introduzione ai limiti
Informatica Problemi e algoritmi. una situazione che pone delle domande cui si devono dare risposte. Col termine problema o situazione problematica s’indica.
Sistemi di equazioni lineari. Sistemi di primo grado di due equazioni a due incognite Risolvere un sistema significa trovare la coppia di valori x e y.
Parsing ricorsivo discendente Il parsing ricorsivo discendente (recursive descent parsing) è un metodo di tipo top-down che può essere facilmente codificato.
Lezione n° 10 Algoritmo del Simplesso: - Coefficienti di costo ridotto - Condizioni di ottimalità - Test dei minimi rapporti - Cambio di base Lezioni di.
Lezioni di Ricerca Operativa Corso di Laurea in Informatica
Allineamenti Multipli Problema Durante l’evoluzione i residui importanti per il mantenimento della struttura e della funzione sono conservati. Come riconoscere.
Se A e B sono variabili random statisticamente indipendenti P (2) (B,A)=P(B)P(A) P(A)=probabilità che la variabile stocastica A assuma un certo valore.
Transcript della presentazione:

Bioinformatica Catene di Markov, HMM – GenScan – EasyBack Dr. Giuseppe Pigola – pigola@dmi.unict.it

Catene di Markov Una catena di Markov del primo ordine è una tripla , dove: S={s1,s2,…,sN} è un insieme finito di stati (eventi); è la probabilità iniziale degli stati (è rappresentato da un vettore); A è un insieme di probabilità di transizione tale che: Dove con qt indichiamo lo stato al tempo t (discreto); A è rappresentata da una matrice. Valgono le seguenti: Bioinformatica

Catene di Markov La catene di Markov del primo ordine sono anche dette catene di Markov memoryless dato che la probabilità che avvenga un evento dipende solo dall’evento che si è verificato all’istante precedente; In una catena di Markov di ordine k la probabilità che avvenga un evento dipende dai k precedenti stati; Bioinformatica

Catene di Markov In una catena di Markov del primo ordine, se vogliamo calcolare la probabilità di una serie di stati Dato che il valore al’istante i dipende solo dall’istante precedente Ne segue che Bioinformatica

Catene di Markov In una catena di Markov del primo ordine, se vogliamo calcolare la probabilità di una serie di stati Dato che il valore al’istante i dipende solo dall’istante precedente Ne segue che Bioinformatica

Catene di Markov Esempio: P(Sun, Rain, Rain, Rain, Snow, Snow) = P(Sun) P(Rain | Sun) P(Rain | Rain)P(Rain | Rain) P(Snow | Rain) P(Snow | Snow) Bioinformatica

Catene di Markov Catena di Markov per stringhe di DNA: Bioinformatica

Catene di Markov DEFINIZIONE Se nella diagonale della matrice di transizione troviamo un 1, allora lo stato contrassegnato da questo valore viene chiamato stato assorbente (Se si arriva a quello stato non si uscira più); Una catena di Markov si dice Finita se è formata da un insieme finito di stati; Una catena di Markov si dice Aperiodica se gli stati non vengono osservati mai in modo periodico; Una catena di Markov si dice Irriducibile se tutti gli stati prima o poi vengono raggiunti (non ci sono zeri nella matrice di transizione); Bioinformatica

Catene di Markov ESEMPIO: CATENA DI MARKOV PERIODICA Bioinformatica

Catene di Markov ESEMPIO Bioinformatica

Catene di Markov ESEMPIO Bioinformatica

Catene di Markov ESEMPIO: Considerazioni sulla matrice di transizioni. Moltiplicando la matrice per se stessa ci riferiamo all’istante t+2. Bioinformatica

Catene di Markov ESEMPIO: Se una persona compra attualmente Coca, quale sarà la probabilità che tra tre volte comprerà Pepsi? Bioinformatica

Catene di Markov ESEMPIO: Se una persona compra attualmente Coca, quale sarà la probabilità che tra tre volte comprerà Pepsi? Bioinformatica

Catene di Markov Possiamo rappresentare la matrice di transizione attraverso autovalori e autovettori e sfruttare questi per evitare di fare i prodotti di matrici. Suponiamo di avere una matrice P = s x s con s autovalori distinti (ottenuti calcolando det(P-I)=0): Per le proprietà di autovalori e autovettori, ogni autovalore ha associato un autovettore destro R e un autovettore sinistro L tali che Bioinformatica

Catene di Markov AUTOVALORI AUTOVETTORI Bioinformatica

Catene di Markov Se vale La matrice si può scrivere come (operazione Spettrale): E quindi Bioinformatica

Catene di Markov Una persona compra una bibita alla settimana; Inizialmente abbiamo una distribuzione in cui il 60% delle persone compra Coca e il rimanente 40% compra Pepsi; Quale è la frazione di persone che comprerà Coca fra tre settimane? Vogliamo conoscere la distribuzione degli acquisti in un certo istante (X=3) a partire da una data distribuzione iniziale; Bioinformatica

Catene di Markov Ci serve Dobbiamo considerare la colonna relativa alla Coca e moltiplicare per la distribuzione iniziale Bioinformatica

Catene di Markov Generalizzando: D0 : Distribuzione iniziale degli stati; Di : Distribuzione nella settimana i (Di = D0*Pi); Proprietà: All’aumentare di i, la distribuzione di probabilità varia fino a raggiungere valori stazionari (Distribuzione Stazionaria); Bioinformatica

Catene di Markov – Distribuzione Stazionaria D0 * P = D1 D0 * P2 = D2 D0 * Pn = Dn Distribuzione di probabilità degli stati dopo n istanti; Una distribuzione si dice stazionaria se Riferendoci al generico elemento della distribuzione si avrà Mentre riferendoci alla catena di Markov Si dimostra che la distribuzione stazionaria corrisponde all’autovettore sinistro associato al primo autovalore (quello dominante), cioè Bioinformatica

Catene di Markov – Distribuzione Stazionaria Consideriamo ora la probabilità di transizione dallo stato i allo stato j. Per Bayes Si ha dove rappresenta la probabilità di transizione dallo stato i allo stato j in una catena di Markov identica in cui però la successione di istanti decresce (di tipo backward) e quindi equivale a Bioinformatica

Catene di Markov – Distribuzione Stazionaria Per valori di t sufficientemente elevati vale quindi Quest’ultima condizione esprime la condizione necessaria e sufficiente affinché sia la distribuzione stazionaria di una catena di Markov avente P come matrice di transizione. Bioinformatica

Catene di Markov – Distribuzione Stazionaria Se una catena di Markov è finita, aperiodica e irriducibile, allora essa ha una distribuzione stazionaria. Possiamo calcolare la distribuzione stazionaria risolvendo semplicemente il sistema: Bioinformatica

Catene di Markov – Markov Chain Montecarlo Data una catena di Markov finita, aperiodica e irriducibile possiamo determinare la distribuzione stazionaria associata; Viceversa, data una distribuzione stazionaria possiamo costruire una catena di Markov che converga alla distribuzione stazionaria (Markov Chain Montecarlo): Metodo Hasting Metropolis; Gibbs Sampling; Bioinformatica

Catene di Markov – Hasting Metropolis In questo caso abbiamo a disposizione una distribuzione stazionaria Consideriamo delle costanti (definite in modo random) come segue Definiamo inoltre e Si dimostra che la matrice di probabilità P è la matrice di transizione di una catena di Markov che ha per distribuzione stazionaria quella data. P Bioinformatica

Catene di Markov – Gibbs Sampling Sia x=(x1,x2,…,xn) una variabile casuale e sia y un vettore di k valori scelti a caso tra x1,x2,…,xn con possibili ripetizioni. Sia Px(x) la distribuzione di probabilità della variabile x. Definiamo la catena di Markov i cui stati sono tutti i possibili valori di y. Siano i vettori i e j due stati della catena. Definiamo la probabilità come: se i vettori i e j differiscono su più componenti; Se i e j differiscono su al più una componente h: Bioinformatica

Catene di Markov – Gibbs Sampling Si dimostra che Px(x) è la distribuzione stazionaria della catena di Markov che ha per matrice di transizione la matrice P. Bioinformatica

Catene di Markov – Allineamento Supponiamo di avere N sequenze L1,L2,…,Ln in un alfabeto  (ad es. Sequenze aminoacidiche); Vogliamo trovare N segmenti di lunghezza w tali da massimizzare la similarità tra le sequenze Bioinformatica

Catene di Markov – Allineamento In ogni sequenza i possibili segmenti di lunghezza w sono Un algoritmo brute-force dovrebbe considerare tutte le combinazioni di segmenti di lunghezza w nelle sequenze Consideriamo invece una catena di Markov con S stati in cui ogni stato rappresenta una scelta di segmenti nelle N sequenze (e quindi a un possibile allineamento); Bioinformatica

Catene di Markov – Allineamento Scegliamo uno stato iniziale casuale (scegliamo uno dei possibili allineamenti a caso); Consideriamo la matrice A NxW dei segmenti scelti; Rimuoviamo ad ogni passo da A il segmento relativo ad una sequenza e lo sostituiamo con un altro della stessa sequenza in base alla probabilità definita in modo opportuno; In questo modo passiamo da uno stato ad un altro della catena; Bioinformatica

Catene di Markov – Allineamento Bioinformatica

Catene di Markov – Allineamento Ad ogni carattere j presente nell’allineamento è associata una probabilità pj (frequenza nelle sequenze di input); Definiamo la probabilità di transizione come Dove: cij il numero di volte che il carattere j compare nella colonna i all’interno dell’array ridotto; bj è detta probabilità di background e serve a fare in modo che qij non sia nulla. In generalmente è inizializzata a Bioinformatica

Catene di Markov – Allineamento L’obbiettivo ad ogni step è quello di fare una sostituzione di segmenti che migliori la qualità dell’allineamento; Sia il segmento che deve rimpiazzare quello cancellato; Definiamo: P prodotto delle probabilità di background Q probabilità stimata dei caratteri di x nell’insieme ridotto di n-1 sequenze Bioinformatica

Catene di Markov – Allineamento Definiamo il likelyhood_ratio di x come Allora la probabilità di transizione dallo stato s (quello contenente la vecchia sequenza) allo stato u (quello contenente x) come Lh è la sequenza contenente x; Il denominatore è la somma di tutti i LR di tutti i possibili segmenti di lunghezza w in Lh; In altre parole P rappresenta la probabilità di scegliere il segmento x; Bioinformatica

Catene di Markov – Allineamento Come scegliamo il segmento x tra le possibilità??? La scelta più ragionevole sembra essere quella di scegliere il segmento x con LR massimo: Questo suggerirebbe che la frequenza di caratteri di x nella popolazione ridotta delle sequenze è molto più alta della frequenza dei caratteri x nella popolazione totale (mediamente); In tal caso si avrebbe appunto e quindi LR alto; Bioinformatica

Catene di Markov – Allineamento In realtà è più conveniente scegliere x in modo caso (seguendo la probabilità di transizione dei possibili stati successivi)!!! E’ più veloce (non dobbiamo calcolare probabilità P); E’ più accurato (il metodo precedente potrebbe portare a massimi locali)!!!! Dietro questa scelta apparentemente senza senso ci sono in realtà dei fondamenti matematici basati sul concetto di entropia relativa; Se osserviamo bene come è definita la catena di Markov ci accorgiamo che rientriamo nella definizione di catena di Markov del Gibbs Sampling; Ne segue che la Catena di Markov converge a una distribuzione stazionaria (anche se scegliamo ad ogni istante uno stato in modo casuale tra i possibili); Bioinformatica

Catene di Markov – Allineamento Come visto in precedenza Dove cij(s) è il numero di volte che il carattere j si presenta nella colonna i nello stato s; Si dimostra che Il vettore  definito da Rappresenta la distribuzione stazionare della nostra catena di Markov. Bioinformatica

Hidden Markov Models Un HMM è definito da una quintupla , dove: S={s1,s2,…,sN} è un insieme finito di stati nascosti; V={v1,v2,…,vM} è un insieme di stati osservabili; è la probabilità iniziale degli stati (è rappresentato da un vettore); A è un insieme di probabilità di transizione tale che Dove con qt indichiamo lo stato al tempo t (discreto); B rappresenta le probabilità di emissione tale che: Anche B è rappresentata da una matrice. Bioinformatica

Hidden Markov Models Esempio: Data la sequenze di stati osservabili, quale è la sequenza di stati nascosti più probabile che l’ha generata? Bioinformatica

Probabilità di transizione dalla regione I alla II con la sequenza TT Catene di Markov ESEMPIO: Cerchiamo un modello per discriminare due ipotetiche regioni di DNA (Sopponiamo per semplicità di avere solo due nucleotidi). I II ATTA TTAT AAAT TAAT … TTAA TATA ATAT ATTT Probabilità di transizione dalla regione I alla II con la sequenza TT Bioinformatica

Catene di Markov A quale regione appartiene la sequenza TTAT ? Calcoliamo la probabilità di tutte le possibili sequenze di nucleotidi appartenenti alle due regioni. TITIAITI=1.1x10-1 TITIIAITI=1.8x10-3 TIITIAITI=6.0x10-3 TIITIIAITI=9.0x10-3 TITIAITII=8.8x10-3 TITIIAITII=1.4x10-4 TIITIAITII=4.8x10-4 TIITIIAITII=7.2x10-4 TITIAIITI=5.5x10-4 TITIIAIITI=1.0x10-3 TIITIAIITI=3.0x10-5 TIITIIAIITI=5.2x10-3 TITIAIITII=1.4x10-4 TITIIAIITII=8.4x10-3 TIITIAIITII=2.4x10-4 TIITIIAIITII=4.2x10-2 Risulta più probabile che la sequenza appartiene integralmente alla regione I Bioinformatica

Catene di Markov ESEMPIO: ISOLE C-G Esistono delle zone di DNA che evidenziano una presenza superiore d coppie CG; Nucleotidi appartenenti a isole C-G hanno una diversa probabilità; Bioinformatica

Hidden Markov Models Dato un HMM λ e la sequenza di osservazioni la sequenza di osservazioni O=o1,o2,…,oT, possiamo affrontare tre problemi: Evaluation: Quale è la probabilità di ottenere O nel modello, p(O| λ)? Decoding: Quale è la corrispondente sequenza di stati nascosti Q=q1,q2,…,qT che ha generato O? Learning: Come possiamo “aggiustare” i parametri del modello λ per massimizzare P(O| λ)? Bioinformatica

Hidden Markov Models ESEMPIO: Il casinò disonesto. In un casinò ci sono due dadi di cui uno truccato: Dado non truccato P(1) = P(2) = P(3) = P(4) = P(5) = P(6) = 1/6 Dado truccato P(1) = P(2) = P(3) = P(4) = P(5) = 1/10 P(6) = ½ Il croupier passa dal dado non truccato a quello truccato e viceversa. Bioinformatica

Hidden Markov Models ESEMPIO: Il casinò disonesto. Quanto è probabile la seguente osservazione nel nostro modello? 1245526462146146136136661664661636616366163616515615115146123562344 Si tratta di un problema di Evaluation. Bioinformatica

Hidden Markov Models ESEMPIO: Il casinò disonesto. Quale porzione di questa sequenza è stata prodotta dal dado truccato e quale dal dado non truccato? 1245526462146146136136661664661636616366163616515615115146123562344 Si tratta di un problema di Decoding. Bioinformatica

Hidden Markov Models ESEMPIO: Il casinò disonesto. Quanto “truccato” era il dado truccato? Quanto spesso i due dadi venivano cambiati? 1245526462146146136136661664661636616366163616515615115146123562344 Si tratta di un problema di Learning. Bioinformatica

Hidden Markov Models FAIR LOADED ESEMPIO: Il casinò disonesto. Modello di Markov Nascosto 0.05 Transizioni 0.95 0.95 FAIR LOADED P(1|F) = 1/6 P(2|F) = 1/6 P(3|F) = 1/6 P(4|F) = 1/6 P(5|F) = 1/6 P(6|F) = 1/6 P(1|L) = 1/10 P(2|L) = 1/10 P(3|L) = 1/10 P(4|L) = 1/10 P(5|L) = 1/10 P(6|L) = 1/2 0.05 Emissioni Bioinformatica

Hidden Markov Models EVALUATION Vogliamo calcolare la probabilità dell’osservazione O=o1,o2,…,oT dato il modello λ. Considerata una sequenza di stati nascosti fissata Q=q1,q2,…,qT la probabilità dell’osservazione O per la sequenza di stati nascosti Q assumendo che le osservazioni siano indipendenti, è data da: Quindi La probabilità della sequenza degli stati nascosti è data da: La probabilità che si verifichino contemporaneamente O e Q sarà il prodotto La probabilità di O nel modello sarà allora ottenuta sommando queste probabilità su tutti i possibili stati nascosti. Bioinformatica

Hidden Markov Models EVALUATION Interpretazione della formula: Inizialmente al tempo t=1 ci troviamo nello stato q1con probabilità e generiamo il simbolo o1con probabilità Al tempo t=2 avremo una transizione allo stato q2 con probabilità e verrà generato il simbolo osservabile o2 con probabilità Il processo continua fino ad arrivare al tempo T Complessità: 2TNT calcoli Bioinformatica

Hidden Markov Models EVALUATION: FORWARD ALGORITHM Consideriamo la variabile forward: Essa rappresenta la probabilità di aver osservato al tempo t o1o2…ot e di trovarci nello stato nascosto si. Procedendo induttivamente: Inizializzazione Induzione Terminazione Bioinformatica

Hidden Markov Models EVALUATION: FORWARD ALGORITHM Lo stato sj può essere raggiunto al tempo t+1 dagli N possibili stati al tempo t. rappresenta la probabilità di aver osservato la sequenza o1o2…ot-1 e di trovarsi a tempo t-1 nello stato nascosto si. Il prodotto rappresenta la probabilità di osservare o1o2…ot-1 e di raggiungere lo stato sj al tempo t proveniendo dallo stato si Sommando su tutti i possibili stati avremo la probabilità di osservare sj al tempo t. Per tener conto della probabilità di emissione dello stato osservabile ot moltiplichiamo per la relativa probabilità di emissione Bioinformatica

Hidden Markov Models EVALUATION: FORWARD ALGORITHM Lo step finale ci darà la probabilità cercata Complessità: O(N2T) Tempo O(NT) Spazio Bioinformatica

Hidden Markov Models EVALUATION: BACKWARD ALGORITHM In modo speculare consideriamo la variabile backward: Essa rappresenta la probabilità della osservazione parziale dal tempo t+1 fino al tempo T e di trovarci nello stato nascosto si al tempo t. Procedendo induttivamente: Inizializzazione (arbitraria) Induzione Terminazione Bioinformatica

Hidden Markov Models EVALUATION: BACKWARD ALGORITHM E’ analogo al caso forward. L’unica differenza è che in questo caso andiamo a ritroso. Complessità: O(N2T) Tempo O(NT) Spazio Bioinformatica

Hidden Markov Models DECODING: FORWARD-BACKWARD Se formuliamo il problema di Decoding come scegliere ad ogni passo lo stato qt che è individualmente il più probabile, possiamo usare gli algoritmi Forward-Backward per risolvere il problema. Definiamo la variabile: Cioè la probabilità di trovarsi nello stato si al tempo t data l’osservazione O. Tale espressione può esprimersi in termini di variabili forward-backward Questo perchè t tiene conto dell’osservazione parziale O1O2…Ot e di trovarsi nello stato si al tempo t, mentre t tiene conto della rimanente osservazione Ot+1Ot+2…OT trovandosi nello stato si al tempo t. Normalization factor Bioinformatica

Hidden Markov Models DECODING: FORWARD-BACKWARD Possiamo allora trovare lo stato individualmente più probabile al tempo t con (e quindi tutti gli stati al variare di t): Tale formula non considera la probabilità di una sequenza di stati ma solo quella dello stato più probabile ad ogni istante. Se al tempo t teniamo conto della probabilità della sequenza di stati ai passi precedenti e dello stato con più alta probabilità al passo corrente avremo un altro modo di risolvere il problema di decoding (avendo definito un nuovo criterio di “ottimalità”). Bioinformatica

Hidden Markov Models DECODING: FORWARD-BACKWARD - Posterior Probability Se consideriamo le probabilità degli stati nascosti ottenuti da Questi ci daranno una stima di quanto buona è la predizione nel modello λ. Bioinformatica

Hidden Markov Models DECODING: VITERBI La soluzione del problema Evaluation ci permette di avere la somma di tutti i possibili cammini tra stati nell’HMM. Vogliamo trovare tra tutti i possibili path di stati nascosti quello Q=q1…qT con più alta probabilità (in base a quanto visto nella slide precedente); Il procedimento è simile a quello visto per l’algoritmo Forward. Invece di sommare le probabilità di transizione, calcoliamo quella massima: Forward Viterbi Bioinformatica

Hidden Markov Models DECODING: VITERBI A differenza dell’algoritmo Forward, nel passaggio dal tempo t-I al tempo t, invece di sommare le probabilità di transizione, prendiamo quella massima; Se inoltre teniamo traccia dell’indice dello stato migliore ad ogni passo, alla fine potremo recuperare la sequenza di stati nascosti più probabili; Definiamo: rappresenta la più alta probabilità lungo un path di stati nascosti che termina in qt=Si. Utilizzeremo invece: Per mantenere gli indici degli stati nascosti migliori ad ogni passo. Bioinformatica

Hidden Markov Models DECODING: VITERBI Inizializzazione Ricorsione Terminazione P* probabilità finale Stato finale raggiunto Bioinformatica

Hidden Markov Models DECODING: VITERBI Ottenere la sequenza di stati: Inizializzazione Ricorsione Terminazione P* probabilità finale Stato finale raggiunto Bioinformatica

Hidden Markov Models DECODING: VITERBI vs FORWARD Inizializzazione Ricorsione Terminazione Bioinformatica

Hidden Markov Models DECODING: VITERBI Ad ogni passo scegliamo lo stato nascosto di probabilità massima (tenendo conto anche della probabilità della sequenza di stati ottenuti al passo precedente). O(N2T) Tempo O(NT) Spazio b2(V1) b1(V2) bk(V3) b2(Vk) V1 V2 V3 Vk Bioinformatica

Hidden Markov Models LEARNING: Baum-Welch “Aggiustare” in modo da massimizzare la probabilità di una osservazione, è il problema più difficoltoso. Non esiste un metodo analitico. La procedura iterativa di Baum-Welch (o equivalentemente il metodo Expectation Maximization EM) permette di massimizzare localmente la probabilità dell’osservazione. Definiamo: Cioè la probabilità di essere nello stato si al tempo t e nello stato sj al tempo t+1 Bioinformatica

Hidden Markov Models LEARNING : Baum-Welch Avevamo in precedenza definito: Analogamente avremo: Bioinformatica

Hidden Markov Models LEARNING : Baum-Welch Possiamo mettere in relazione: Dato che vale Allora: Numero atteso di transizioni da si (numero di volte che viene visitato) Numero atteso di transizioni da si a sj Bioinformatica

Hidden Markov Models la frequenza attesa dello stato si al tempo t= 1 LEARNING : Baum-Welch Un insieme ragionevole di formule di rivalutazione del modello è la frequenza attesa dello stato si al tempo t= 1 Bioinformatica

Hidden Markov Models LEARNING : Baum-Welch Iterando È stato dimostrato che ad un certo punto si verifica che Oppure L’algoritmo di Baum-Welch è un caso particolare di EM: E-step: calcolo di  e  M-step: calcolo di Complessità #Iterazioni*O(N2T) Bioinformatica

Hidden Markov Models Problemi Viterbi: Utilizzare la somma dei Log; Forward-Backward: Riscalare ad ogni step moltiplicando per una costante; Baum-Welch: Può convergere a massimi locali; Bioinformatica

GenScan - http://genes.mit.edu/GENSCAN.html Bioinformatica

GenScan - http://genes.mit.edu/GENSCAN.html Il tool di gene prediction più utilizzato; Presenta il miglior compromesso tra Sensibilità e Specificità (sono due misure di accuratezza); Largamente utilizzato dal Consorzio Internazionale durante il Progetto Genoma Umano; Utilizza come algoritmo di base l’ Hidden Markov Model (generalizzato); Bioinformatica

GenScan - http://genes.mit.edu/GENSCAN.html Le coppie di introni/esoni rappresentano i differenti modi in cui un introne può interrompere una coding sequence (dopo la 1° base, dopo la 2° o dopo la 3°) E0 E1 E2 I0 I1 I2 Esone iniziale e finale Einit Eterm 3’ UTR 5’ UTR Esngl polyA P Filamento sense N ………………….. ………………….. Filamento antisense Bioinformatica

GenScan - http://genes.mit.edu/GENSCAN.html Scelta una caratteristica (es: identificazione esoni). Possiamo definire i seguenti valori: TP (true positive) = Numero di esoni predetti, che sono risultati veri esoni. FP (false positive) = Numero di esoni predetti che sono in realtà dei falsi. TN (true negative) = Numero di esoni falsi, identificati come tali. FN (false negative)= Numero di esoni reali, identificati come falsi. Avremo le seguenti misure: Bioinformatica

GenScan - http://genes.mit.edu/GENSCAN.html Possiamo calcolare l’accuratezza come il rapporto tra risultati positivi e l’intera popolazione; Accuratezza = (TP+TN)= / (TP+FP+FN+TN) Bioinformatica

GenScan - http://genes.mit.edu/GENSCAN.html Bioinformatica

GenScan - http://genes.mit.edu/GENSCAN.html Possibilità di trovare esoni subottimali: Indica la soglia di score per cui si trova un esone. Se il valore scende più esoni (magari meno probabili) verranno dati in output. Il valore di default sulla pagina web è 1,00, il che significa che non vengono stampati esono subottimali. Per la maggior parte delle applicazioni, un valore di cutoff di circa 0,10 è raccomandato. L'impostazione del valore più basso di 0,10 porterà spesso ad una esplosione del numero di esoni subottimali, la maggior parte dei quali probabilmente non sarà utile. D'altra parte, se il valore è impostato molto superiore a 0,10, gli esoni subottimali potenzialmente interessanti potrebbero essere persi. Bioinformatica

GenScan - http://genes.mit.edu/GENSCAN.html Inizio, Fine e lunghezza dell’ elemento calcolato Probabilità che l’elemento sia un esone Score del sito Accettore e Donatore di splicing Numerazione del Gene e dei suoi elementi Filamento sul quale viene fatta la predizione Frame del primo codone dell’elemento Score della coding sequence calcolata Score complessivo dell’esone Tipo di elemento riconosciuto Numerazione del Gene e dei suoi elementi Proteina predetta sulla base della CDS calcolata Type: Init = Initial exon (ATG to 5' splice site) Intr = Internal exon (3' splice site to 5' splice site) Term = Terminal exon (3' splice site to stop codon) Sngl = Single-exon gene (ATG to stop) Prom = Promoter (TATA box / initation site) PlyA Bioinformatica

GenScan - http://genes.mit.edu/GENSCAN.html ESERCIZIO I Data la seguente sequenza sconosciuta: >SCONOSCIUTA ACATTTGCTTCTGACACAACTGTGTTCACTAGCAACCTCAAACAGACACCATGGTGCATCTGACTCCTGA GGAGAAGTCTGCCGTTACTGCCCTGTGGGGCAAGGTGAACGTGGATGAAGTTGGTGGTGAGGCCCTGGGC AGGCTGCTGGTGGTCTACCCTTGGACCCAGAGGTTCTTTGAGTCCTTTGGGGATCTGTCCACTCCTGATG CTGTTATGGGCAACCCTAAGGTGAAGGCTCATGGCAAGAAAGTGCTCGGTGCCTTTAGTGATGGCCTGGC TCACCTGGACAACCTCAAGGGCACCTTTGCCACACTGAGTGAGCTGCACTGTGACAAGCTGCACGTGGAT CCTGAGAACTTCAGGCTCCTGGGCAACGTGCTGGTCTGTGTGCTGGCCCATCACTTTGGCAAAGAATTCA CCCCACCAGTGCAGGCTGCCTATCAGAAAGTGGTGGCTGGTGTGGCTAATGCCCTGGCCCACAAGTATCA CTAAGCTCGCTTTCTTGCTGTCCAATTTCTATTAAAGGTTCCTTTGTTCCCTAAGTCCAACTACTAAACT GGGGGATATTATGAAGGGCCTTGAGCATCTGGATTCTGCCTAATAAAAAACATTTATTTTCATTGC Facendo variare il parametro “Suboptimal exon cut” verificare se GenScan riesce a trovare esoni; Utilizzare la proteina predetta da Genscan per fare un BLAST proteico (BLASTP) per vedere a cosa corrisponde la predizione fatta da Genscan; Homo sapiens hemoglobin, beta (HBB), mRNA Bioinformatica

GenScan - http://genes.mit.edu/GENSCAN.html ESERCIZIO II Prelevare da NCBI la sequenza di mRNA relativa a cox4i1 nel topo. Usare GenScan per predire la struttura del gene. Quanti esono vengono prodotto con i parametri standard? Corrispondono a quelli reali? Utilizzare la sequenza aminocidica predetta per fare un BLAST. Dai risultati ottenuti si può dire che la proteina è stata predetta da GenScan in modo corretto? Homo sapiens hemoglobin, beta (HBB), mRNA Bioinformatica

EasyBack - http://ferrolab.dmi.unict.it/easyback.html#demo Bioinformatica

EasyBack - http://ferrolab.dmi.unict.it/easyback.html#demo Cosa è a Backtranslation? Permette di ottenere la sequenza codificante a partire da una proteina; La traduzione di mRNA in proteina è un processo univoco, la backtranslation è ambigua; … A T G G C C T G G A C T T C A … M A W T S Traduzione di mRNA in Proteine Backtranslation GCT GCC GCA GCG ACT ACC ACA ACG TCT TCC TCA …… ATG TGG Bioinformatica

EasyBack - http://ferrolab.dmi.unict.it/easyback.html#demo METODI PER LA BACKTRANSLATION La maggior parte dei tools utilizza la specie specificità come principio base della backtranslation: Si imita l’uso tipico dei codoni in una determinata specie. Ci sono essenzialmente due step: STEP 1 (training): Costruzione della CODON USAGE TABLE Prendere una famiglia di proteine la cui sequenza codificante è nota; Assegnare per ogni aminoacido il codone più freuqente; STEP2 (decoding): Backtranslation usando la codon usage table. TOOL: BBOCUS, LBT, TIP, BackTranseq (da EMBOSS); Bioinformatica

EasyBack - http://ferrolab.dmi.unict.it/easyback.html#demo IL NOSTRO APPROCCIO EasyBack non è basato sull’imitazione dell’uso dei codoni in un organismo, ma piuttosto sulla similarità delle sequenze (nelle varie specie). Data la proteina di input, viene costruito un dataset di proteine (e relative CDS) eseguendo un BLAST su NCBI; Il training set sarà il più piccolo possibile affinchè l’HMM possa fare una predizione; HMM: Gli stati nascosti saranno I codoni, le le probabilità di transizione sono le probabilità tra codoni contigui nel training set (probabilità di passare da un codone ad un altro): I simboli osservabili sono gli aminoacidi e la probabilità di emissione rappresenta la probabilità che un determinato aminoacido sia stato generato da uno specifico codone nel trainign set E’ possibile stimare la qualità dell’output usando le posterior probabilities. Bioinformatica

EasyBack - http://ferrolab.dmi.unict.it/easyback.html#demo Probabilità che il codone i segua il codone j nelle sequenza del training set Transition Probabilities Emission Probabilities GCT GCC … AAT A M … S GCT GCC AAT Start Probabilities … ATG 1 Bioinformatica

EasyBack - http://ferrolab.dmi.unict.it/easyback.html#demo Amino acid input sequence Run BLAST N sequences (cDNA and corresponding peptides) Buld HMM Try to make a prediction Success? Yes Reduce the training set to N/2 sequences No Enlarge the training set to 3/2N sequences HMM repeat Bioinformatica

EasyBack - http://ferrolab.dmi.unict.it/easyback.html#demo EasyBackPanels Desktop Log Area Bioinformatica

EasyBack - http://ferrolab.dmi.unict.it/easyback.html#demo Bioinformatica

EasyBack - http://ferrolab.dmi.unict.it/easyback.html#demo Bioinformatica

EasyBack - http://ferrolab.dmi.unict.it/easyback.html#demo Bioinformatica

EasyBack - http://ferrolab.dmi.unict.it/easyback.html#demo Bioinformatica

EasyBack - http://ferrolab.dmi.unict.it/easyback.html#demo ESERCIZIO I Data la proteina Effettuare una backtranslation e confrontare il risultato ottenuto con la sua CDS. Come recuperare la CDS? >gi|4504347|ref|NP_000549.1| alpha 1 globin [Homo sapiens] MVLSPADKTNVKAAWGKVGAHAGEYGAEALERMFLSFPTTKTYFPHFD LSHGSAQVKGHGKKVADALTNA VAHVDDMPNALSALSDLHAHKLRVD PVNFKLLSHCLLVTLAAHLPAEFTPAVHASLDKFLASVSTVLTSKYR Bioinformatica