Metodi Numerici per la
bioinformatica
A.A. 2008/09
Francesco Archetti
Site-specific score matrix
Sequenze genomiche per particolari siti : ( splicing tra esone/introne –
introne/esone) definiti da AG e GT
Sequenze di n basi a monte e a valle di un sito di splicing
Matrice 4x 2N , le cui righe corrispondono a A,T,C,G .
Ogni elemento corrisponde alla frequenza con cui la base corrispondente alla riga è
osservata nella posizione corrispondente alla colonna .
Se il numero di sequenze (osservazioni ) è sufficientemente elevato queste
frequenze approssimano le probabilità.
1
2
3
4
5
A
0.30
0.50
0.10
0.45
0.65
C
0.20
0.15
0.05
0.20
0.05
G
0.45
0.20
0.80
0.30
0.25
T
0.05
0.15
0.05
0.05
0.05
Consideriamo la sequenza GGTCACAACGTTAGG : quale è la probabilità che
appartenga alla regione per cui è stata “appresa” la matrice?
A.A. 2008/2009
Francesco Archetti
Site-specific score matrix
1
2
3
4
5
A
0.30
0.50
0.10
0.45
0.65
C
0.20
0.15
0.05
0.20
0.05
G
0.45
0.20
0.80
0.30
0.25
T
0.05
0.15
0.05
0.05
0.05
Se partiamo dalla prima G otteniamo :
0.05 x 0.15 x 0.05 x 0.30 x 0.65 x … = 7.02 x 10-8
Se partiamo dalla seconda otteniamo : 0.05 x 0.15 x 0.80 x
0.45 x 0.25 x ……
= 1.56 x 10-6
La sequenza AACCCACTA ha una probabilità = 1.65 x 10-4
Come facciamo a sapere “ how small is small ?”
A.A. 2008/2009
Francesco Archetti
Site-specific score matrix
Una sequenza a caso dovrebbe avere ogni base equi-distribuita, cioè ogni
elemento della tabella valore 0.25 : 80.2599 =3.81 x 10-6 , quindi solo la
sequenza AACCCACTA avrebbe una probabilità significativa di provenire
dalla matrice associata alla regione .
Questa è una prima istanza di classificazione by machine learning che, a
differenza del clustering, non è supervisionata : possiamo immaginare il
processo in 3 fasi usando il training set costituito dagli “esempli”
sequenze che si sa appartenere alla specifica regione – :
Apprendimento del modello, cioè della matrice, calcolando le frequenze
relative con una parte del training set, detta learning set( tipicamente
80/90% )
Utilizzo della parte rimanente “testing set” per calcolare l’accuratezza con
cui si classificano sequenze note e quindi stimare la validità del
classificatore
produzione in cui la site-specific score matrix , appresa in 1) e validata in
2), viene usata per sequenze nuove
1.
2.
3.
A.A. 2008/2009
Francesco Archetti
Site-specific score matrix
il calcolo di score può diventare molto difficile poiché si
moltiplicano tanti numeri minori di 1;
si usa il metodo “rapporto log-odd” in cui si calcolo il rapporto
tra frequenza osservata e attesa (0.25) e si somma il log. di
questi rapporti
Nella log matrix un valore negativo indica che la base, in quella
posizione compare meno di quanto ci si aspetti in una sequenza
casuale, un valore positivo che compare più spesso.
Le tre sequenze di prima assumono i valori “più umani” :
-5.76,-1.29, 5.44.
A.A. 2008/2009
Francesco Archetti
Site-specific score matrix
Sinora abbiamo considerato le basi isolate dando frequenze
indipendenti dalle basi che precedono.
La probabilità che ci sia G in seconda posizione è
indipendente dal fatto che sia preceduto da una T o A. Ma
un sito di splicing è caratterizzato da GA e quindi la
probabilità che A sia l’inizio di un introne dipende da quale
base la precede.
A.A. 2008/2009
Francesco Archetti
Calcoliamo quindi la frequenza delle coppie nella regione che stiamo studiando (Regione I)
A
T
C
G
A
0.24
0.30
0.14
0.32
T
0.22
0.32
0.10
0.36
C
0.50
0.10
0.38
0.02
G
0.12
0.30
0.33
0.36
Ove la prima riga contiene la probabilità che dopo A ci sia A , T , C o G.
La matrice che caratterizza la regione “normale II “ (ipotesi nulla) ha tutti gli elementi
= 0.25.
Considerando il rapporto di ogni elemento con 0.25 e il suo log. si ottiene una nuova
matrice :
A
T
C
G
A
-0.06
0.26
-0.84
0.36
T
-0.18
0.36
-1.32
0.53
C
1.00
-1.32
0.60
-3.64
G
-1.06
0.26
-0.18
0.53
La matrice contiene valori positivi per le coppie piu frequenti nella regione I e può essere
usata per discriminare tra le 2 regioni.
A.A. 2008/2009
Francesco Archetti
Modelli di Markov
0.24
0.22
0.32
0.25
0.25
0.25
0.25
0.3
AI
TI
AII
TII
CI
GI
CII
GII
0.38
0.36
0.25
0.25
Ogni freccia corrisponde al valore di probabilità desunto da una delle due matrici viste
prima
Da notare: è più probabile trovare una regione ricca di CC e GG nella regione I che
nella regione II
A.A. 2008/2009
Francesco Archetti
Scopo didattico del modulo:
In genomica ed in proteomica l’allineamento delle sequenze, sia di basi
azotate che di residui amminoacidici, racchiude tutta l’informazione sulla
struttura e la funzione di geni e proteine.
I modelli fondamentali per catturare le caratteristiche di queste sequenze
sono particolari modelli probabilistici denominati “catene di Markov”.(Markov
Chain)
In questo modulo sono presentate le definizioni e proprietà fondamentali di
questi modelli, assieme ai principali metodi computazionali per la loro
analisi.
I modelli markoviani possono comunque essere utilizzati ogni volta che il
sistema considerato può essere pensato in un numero finito di stati e la
transizione tra ststi è probabilistica.ad esempio in systems biology
specificatamente nell’analisi della mappa di interazioni proteiche e l’analisi di
reti regolatorie.
A.A. 2008/2009
Francesco Archetti
Andrei Markov
Statistico Russo (1856 – 1922)
Ha studiato modelli probabilistici temporali
Assunzioni di Markov
Xt dipende solo da un numero limitato di X0:t-1
Processi di Markov del primo ordine
P(Xt | X0:t-1) = P(Xt | Xt-1)
Processi di Markov del secondo ordine
P(Xt | X0:t-1) = P(Xt | Xt-2:t-1)
A.A. 2008/2009
Messina
Enza
Francesco
Archetti
Principi di modellazione
Cosa posso usare per modellare un mondo che evolve:
Un set Xt di variabili di stato non osservabili al tempo t
Un set Et di variabili osservabili al tempo t
Le dipendenze tra di esse
L’ipotesi che i cambiamenti del mondo siano regolati da
un processo stazionario
Ipotesi di Markov (del primo ordine)
A.A. 2008/2009
Messina
Enza
Francesco
Archetti
Weather: A Markov Model
80%
60%
Sunny
Rainy
15%
38%
5%
75% 2%
Snowy
5%
20%
A.A. 2008/2009
Messina
Enza
Francesco
Archetti
Ingredienti di un Modello di Markov
Stati:
{S1 , S 2 ,..., S N }
Probabilità di transizione tra stati :
80%
Sunny
aij = P ( X t +1 = Si | X t = S j )
Rainy
15%
38%
75%
A.A. 2008/2009
5%
2%
5%
Snowy
Distribuzione iniziale degli stati:
π i = P[ X 1 = Si ]
60%
20%
Messina
Enza
Francesco
Archetti
Ingredienti del nostro modello
{S sunny , S rainy , S snowy }
Stati:
Matrice di transizione tra stati:
 .8 .15 .05 


A =  .38 .6 .02 
 .75 .05 .2 


Distribuzione iniziale degli stati :
80%
Sunny
Rainy
60%
15%
38%
75%
5%
2%
5%
Snowy
20%
π = (.7 .25 .05)
La matrice di transizione ha nella posizione (i, j) la probabilità di
passare dal risultato i al risultato j eseguendo un singolo
esperimento
A.A. 2008/2009
Messina
Enza
Francesco
Archetti
Probabilità di una serie storica
Dati:
Quale è la probabilità di questa serie?
P( S sunny ) ⋅ P( S rainy | S sunny ) ⋅ P( S rainy | S rainy ) ⋅ P( S rainy | S rainy )
⋅ P( S snowy | S rainy ) ⋅ P( S snowy | S snowy )
= 0.7 ⋅ 0.15 ⋅ 0.6 ⋅ 0.6 ⋅ 0.02 ⋅ 0.2 = 0.0001512
A.A. 2008/2009
 .8 .15 .05 


A =  .38 .6 .02 
 .75 .05 .2 


π = (.7 .25 .05)
Messina
Enza
Francesco
Archetti
Modello di Random Walk (RW)
v1
v2
Consideriamo un grafo con 4 nodi
Lancia una moneta: testa o croce
H (head): step in senso orario
T (tail): step in senso antiorario
v4
v3
t=0
v1
RW è in v1
H
t=1
T
v2
H
t=2
v3
v4
T
H
v1
v1
T
v3
Il sistema ha 4 stati: S1 = (1,0,0,0) S2 = (0,1,0,0) e analogamente S3 e S4.
Il sistema si evolve in modo non prevedibile; l’evento che causa il cambiamento di stato è il lancio della
moneta. Consideriamo la variabile casuale discreta xn che assume valori nello spazio degli stati.
Al variare di n, che rappresenta il numero di transizioni(cambiamenti di stato), xn è un processo stocastico.
A.A. 2008/2009
Francesco Archetti
Processo Stocastico
Un processo stocastico è caratterizzato dalla distribuzione di probabilità di xn
P(x0=S1) = 1
P(x1=S2) = P(x1=S4) = ½
Sia µ(n) = (µ(n)1, µ(n)2, µ(n)3, µ(n)4) = (P(xn = S1), P(xn = S2), P(xn = S3), P(xn = S4))
Per calcolare la distribuzione di xn, cioè il vettore µ(n), dobbiamo usare le probabilità condizionate.
P(xn+1 = v1 | xn = v2) = ½
P(xn+1 = v3 | xn = v2) = ½
P(xn+1 = v3 | x0 = i0, x1 = i1, ... , xn-1 = in-1, xn = v2) = ½
P(xn+1 = v3 | x0 = i0, x1 = i1, ... , xn-1 = in-1, xn = v2) = ½
per ogni “storia” i0, i1, ... , in-1
PROPRIETÀ MARKOVIANA (ASSENZA DI MEMORIA)
Nel caso di modelli Markoviani la migliore previsione di “domani” (n+1) si basa solo sul
presente (n), mentre il passato non da informazioni utili.
A.A. 2008/2009
Francesco Archetti
Catena di Markov
La distribuzione condizionata di xn+1 dato xn non dipende da n
(il meccanismo decisionale non dipende da n).
PROPRIETÀ DI OMOGENEITÀ NEL TEMPO:
Sia P una matrice di ordine k (Pij, i,j = 1, ..., k).
Un processo stocastico (x0, x1, ...) con spazio degli stati finito S = (S1, S2, ... , Sk) viene detto
Catena di Markov (omogenea) con matrice di transizione P se
per ogni n i,j Є {1, ... , k}, i0, ... , in-1 Є {1, ... , k}:
P(xn+1 = Sj | x0 = Si0, x1 = Si1, ... , xn-1 = Sin-1, xn = Si) = P(xn+1 = Sj | xn = Si) = Tij
•
indipendente da n
•
P è la matrice delle probabilità di transizione
A.A. 2008/2009
Francesco Archetti
Esempio
1.
ESEMPIO 1: Nel caso random walk (k=4) abbiamo la seguente
matrice di transizione:
 0 1 / 2 0 1 / 2
1 / 2 0 1 / 2 0 


 0 1 / 2 0 1 / 2
P= 

1
/
2
0
1
/
2
0


Pij ≥ 0 i, j Є {1, ... , k}
∑j Pij = 1 per ogni i Є {1, ... , k}
Per caratterizzare una MC dobbiamo dare la distribuzione iniziale.
µ(0) = (µ(0)1, µ(0)2, ... , µ(0)4) = (P(x0 = S1), P(x0 = S2), ... , P(x0 = S4))
k
∑ µ(0)i = 1
in RW µ(0) = (1, 0, 0, 0)
i =1
µ(n) = (µ(n)1, ... , µ(n)4) = (P(xn = S1), ... , P(xn = S4)) per RW
µ(1) = (0, ½, 0, ½)
A.A. 2008/2009
Francesco Archetti
Esempio
Per ogni n la distribuzione µ(n) è tale che:
µ(n+1) = µ(n) P
µ(n) = µ(0) Pn prodotto effettuato righe x colonne
2.
ESEMPIO 2 : Internet
xn
indica la pagina dopo n clicks
x0, x1, ...
è una MC con stati dati dalle web pages
Pij = 1/di
0
A.A. 2008/2009
se la pagina Si è collegata a Sj dove di è il numero di link da Si
altrimenti
Francesco Archetti
Simulazioni di Catene di Markov
S = {s1, ... , sk} spazio degli stati
µ(0) distribuzione iniziale (tipicamente concentrata su uno stato)
P matrice delle probabilità di transizione
Random Number
Initiation Function Ψ (inizializzazione)
Update Function Φ (aggiornamento)
La simulazione di MC si basa su Ψ, Φ e richiede la generazione della sequenza:
x0 = Ψ(U0)
x1 = Φ(x0, U1)
x2 = Φ(x1, U2)
x3 = Φ(x2, U3)
dove Ui sono estratti da una distribuzione uniforme su [0, 1]
A.A. 2008/2009
Francesco Archetti
Inizializzazione
Initiation: Ψ : [0, 1] → S (insieme degli stati)
- Ψ è costante a tratti
- per ogni Si la misura degli intervalli
in cui Ψ(x) = Si è pari a µ(0)Si
0
1
(s4)
0
(s3)
0
0
(s2)
(s1)
0
S1
S2
S3
S4
Con S = {s1, ... , sk} e distribuzione iniziale µ(0), x tratto da una distribuzione
uniforme su [0, 1].
s1
s2
...
Ψ(x) = si
...
sk
A.A. 2008/2009
x Є [0, µ(0)(s1)]
x Є [µ(0)(s1), µ(0)(s1) + µ(0)(s2)]
i −1
i
j =1
j =1
x Є [∑ µ(0)(sj),∑ µ(0)(sj)]
k −1
x Є [∑ µ(0)(sj), 1]
j =1
Francesco Archetti
Aggiornamento
Update : da xn → xn+1 : Φ: S x [0, 1] → S (insieme degli stati)
- Φ(si, x) è costante a tratti in x
- per ogni si, sj la misura degli intervalli nei quali Φ(si, x) = sj
è uguale a Pij
Φ(si, x) =
A.A. 2008/2009
s1
s2
...
sj
...
sk
x Є [0, Pi,1]
x Є [Pi,1, Pi,1 + Pi,2]
i −1
i
Pi,2
x Є [∑
Pi,l,∑
Pi,l]
l =1
l =1
k −1
x Є [∑ Pi,l, 1]
l =1
Pi,k
1
Pi,1
0
S1
S2
S3
S4
Francesco Archetti
 .8 .15 .05 


A =  .38 .6 .02 
 .75 .05 .2 


Esempio
(inizializzazione)
(update)
A.A. 2008/2009
µ(0) = (1, 0,0)
Ψ(x) = s1 per ogni x
Φ(s1, x) = s1
s2
s3
x Є [0, 0.8]
x Є [0.8, 0.95]
x Є [0.95, 1]
Φ(s2, x) = s1
s2
s3
x Є [0, 0.38]
x Є [0.38, 0.98]
x Є [0.98, 1]
Φ(s2, x) = s1
s2
s3
x Є [0, 0.75]
x Є [0.75, 0.80]
x Є [0.80, 1]
80%
Sunny
Rainy
15%
75%
38%
2%
5%
5%
Snowy
20%
Francesco Archetti
60%
Catene di Markov irriducibili
Una catena di Markov con matrice di transizione P si dice irriducibile se, per
ogni coppia di stati (i, j), la probabilità di raggiungere uno stato j da uno stato i
(si → sj) in numero finito di esperimenti è positiva, ossia se:
P(xm+n = sj | xm = si) > 0
(Pn)i,j > 0
se vale anche sj → si allora si e sj sono intercomunicanti (si↔ sj)
La irriducibilità si verifica dal grafo di transizione attraverso
l'esistenza di un cammino tra ogni coppia di stati.
A.A. 2008/2009
Francesco Archetti
Esempio
.5 .5 0 0 
.3 .7 0 0 

P= 
 0 0 .2 .8 


0
0
.
8
.
2


.3
1
.5
.5
2
.7
.8
3
.2
.8
4
.2
Se la catena “parte” in S1 o S2 rimane in {S1, S2}
e se “parte” in S3 o S4 rimane in {S3, S4}, quindi non è irriducibile.
A.A. 2008/2009
Francesco Archetti
Catene di Markov aperiodiche
Il periodo d(Si) di uno stato Si Є S è dato da m.c.d. {n ≥ 1 : (Pn)i,i > 0}
Se d(Si) = 1, allora si è aperiodico.
Una catena di markov si dice aperiodica se tutti i suoi stati lo sono (altrimenti
è periodica).
Consideriamo Random Walk
µ(0) = (1, 0, 0, 0)
(Pn)i,i > 0
per n = 2, 4, 6
mcd (n) = 2
d(S1) = 2
Per una MC aperiodica esiste N < ∞ per cui
(Pn)i,i > 0
per ogni i Є {1, ... , k}, n > N
Se MC è anche irriducibile esiste M < ∞ per cui
(Pn)i,j > 0
per ogni i, j Є {1, ... , k}, n > M
Francesco Archetti
Distribuzioni stazionarie e reversibili
Il valore di xn continuerà a variare in generale; nel caso di MC irriducibile e
aperiodica la distribuzione di xn ha un limite.
La proprietà di aperiodicità è difficile da verificare.
Reversibilità → esistenza di distribuzione stazionaria.
Una distribuzione π ← µ(n) su P sin dice stazionaria se:
∑
I.
πi ≥ 0
i = 1, ... , k
πi = 1
i =1
II. π P = π
Sia MC con S = (S1, ... , Sk) e matrice di probabilità di transizione P.
Una distribuzione π su P si dice reversibile se:
per i, j Є {1, ... , k}
πi Pij = πj Pji
A.A. 2008/2009
Francesco Archetti
Catene di Markov reversibili
Una catena si dice reversibile se esiste per essa una distribuzione reversibile.
πi Pij può essere pensato come la quantità di “massa di probabilità” che passa
nella prima iterazione, da si a sj
πj Pji indica il passaggio da sj a si (può essere interpretato come il numero
di volte che si va da Si ad Sj)
Questo è un risultato di equilibrio. Infatti si può dimostrare che:
se π è una distribuzione reversibile allora è anche stazionaria
A.A. 2008/2009
Francesco Archetti
Esempio
S = (S1, S2, …, Sk) dove in Si = (0,…,1,…0)
l’unica componente non nulla è la i-esima.
La transizione che genera il cambiamento di
stato è un evento tipo Random-Walk
da vi a un vertice adiacente in modo
equiprobabile.
v1
v2
v3
v4
v5
Pij =
1/di
se vi e vj sono adiacenti
v6
0
altrimenti
dove di è il numero di vertici uscenti
Consideriamo la distribuzione π = (d1/d, d2/d, ... , dk/d) , in cui d = ∑ di
v8
v7
È facile verificare che π è reversibile; infatti: πiPij = (di/d)*(1/di) = 1/d = (dj/d)*(1/dj) = πjPji = πi
0 se vi e vj NON sono adiacenti
Da cui π è stazionaria come è facile verificare in base alla condizione πi=πiPij
A.A. 2008/2009
Francesco Archetti
Applicazioni- Allineamenti nucleotidici
Consideriamo un allineamento di nucleotidico con lo scopo di costruire una catena di
markov che interpreti queste sequenze catturandone i dati invarianti nell’ipotesi che agli
invarianti corrispondano caratteristiche strutturali significative del gene e della proteina che
sarà eventualmente codificata.
ATTCCGGATC
TACGCGGAGC
Nel modello più semplice gli stati sono 4 (A,T,G,C), tuttavia le caratteristiche significativa
della sequenza (regioni di binding, folding della proteina derivante), sono legate a
segmenti di sequenza più estesi. Se tale sequenza è lunga 30 nucleotidi (un promotore),
gli stati diventano 430.
Nel caso degli allineamenti proteici, anche se la sequenza significativa può essere
relativamente ridotta (9-10 amminoacidi per una alfa elica), gli stati sono comunque 209-10
Nel caso delle reti regolatorie (sia geniche che proteiche), l’esplosione combinatoria del
numero degli stati è ancora più evidente: in un “piccolo” network di regolazione composto
da 10 geni, ognuno dei quali può essere under expressed, normal expressed e over
expressed, i possibili stati della rete sono 310.
A.A. 2008/2009
Francesco Archetti
Markov Chain Monte Carlo
La matrice delle probabilità di transizione è anche molto sparsa , cioè uno stato è
direttamente connesso a pochi altri, e questo rende necessario e possibile lo sviluppo di
metodi di simulazione specifici.
Introduciamo pertanto un argomento importante e moderno :
MARKOV CHAIN MONTE CARLO
Data una distribuzione di probabilità π sull'insieme degli stati S = {s1, ... , sk}, come
possiamo simulare il comportamento di un “oggetto” in cui l'elemento random è
distribuito secondo π ?
2 APPLICAZIONI
A.A. 2008/2009
Francesco Archetti
Applicazioni:
Reti Regolatorie - definizioni
Come modello generale di rete regolatoria o proteica, consideriamo un grafo
G = (V,E) dove V={v1 ,v2 ,…,vk}
chiamiamo configurazione ξ l’assegnamento del valore 0 o 1 a ciascun vertice:
ξ Є (0, 1)V
chiamiamo configurazione ammissibile una configurazione che non presenta 1 in due
vertici adiacenti.
A.A. 2008/2009
Francesco Archetti
Applicazioni:
Reti Regolatorie (2)
“Qual è il numero medio di 1 in una configurazione ξ ?”
n(ξ)
Nel caso “semplice” di una scacchiera binaria vi sono
264 ≈ 1.8*1019 configurazioni (stati)
Sia ZG il numero di configurazioni ammissibili su G ( difficile da calcolare )
la distribuzione delle configurazioni ammissibili è:
µG(ξ) = 1/ZG se ξ è ammissibile
0
altrimenti
Sia x una configurazione ammissibile qualsiasi, scelta in base alla distribuzione
precedente e n(x) il numero di vertici 1 ; il valore atteso di 1 è:
E[n(x)] = ∑ξ n(ξ) µG(ξ) = 1/ZG ∑ ξ n(ξ) I(ξ ammissibile)
dove I funzione indicatore (assume i valori 0/1)
A.A. 2008/2009
Francesco Archetti
Il modello nasce in fisica statistica 3D e rappresenta il
comportamento di un gas le cui particelle hanno un raggio
non trascurabile e non possono sovrapporsi ad altre . Quale
è il valor medio delle molecole di gas in determinate
situazioni?
Non riuscendo a calcolare in modo esatto le distribuzioni e
quindi il valore atteso bisogna passare alla simulazione
statistica ( Metodo Monte Carlo ) : se costruiamo una
sequenza di configurazioni ammissibili
Il numero medio di 1 delle configurazioni simulate
“converge” al valore atteso per la “legge dei grandi numeri
“. Si riesce a calcolare la accuratezza della approssimazione
.
A.A. 2008/2009
Francesco Archetti
X1,x2,….. Variabili casuali indipendenti e identicamente
distribuite con media m e varianza s2.
Media Mn = 1/n( x1+x2+…Xn) il cui valore atteso è m.
Var (Mn) =s2/n
Il teorema limite centrale dimostra che la distribuzione di
Mn , per n elevato, è “quasi” normale.
(Chebychev : v.c. X con parametri m,s2)
Prob (|X-m|magg-ug a) min-ug s2/ a2.
In questo modo riusciamo a calcolare , i probabilità , la
accuratezza della stima per simulazione del valore E(n(x))
A.A. 2008/2009
Francesco Archetti
Reti Regolatorie
Markov Chain Monte Carlo (MCMC)
Supponiamo di poter costruire una Catena di Markov (MC) la cui distribuzione
stazionaria sia π = µG(ξ) e lo spazio degli stati sia
S = {ξ Є (0, 1)V : ξ ammissibile}
Simulando
MC per un numero abbastanza grande di transizioni la
distribuzione degli stati della catena Xl è “molto vicina” a π
Xl è il vettore di stato con k componenti associate ai nodi che assumono
i valori Xl(v) Є (0, 1)
Il meccanismo di transizione da uno stato al successivo (Pξ'ξ) , entrambi
configurazioni ammissibili, è il seguente:
1.Scegliere a caso un vertice v
2.Tirare una moneta (H, T)
3.a) Se H e i vicini di v hanno valore 0, allora Xl+1(v) = 1;
b) altrimenti Xl+1(v) = 0
4.Per i vertici w ≠ v il valore non è toccato: Xl+1(w) = Xl(w)
Il sistema è passato da uno stato Xl a Xl+1 ( ξ → ξ‘)
A.A. 2008/2009
Francesco Archetti
Reti Regolatorie - MCMC (2)
Per dimostrare che la transizione Pξ'ξ caratterizza una catena con stato stazionario
utilizziamo la condizione sufficiente di reversibilità e dimostriamo quindi che porta
a una distribuzione µG reversibile; consideriamo 2 stati generici ξ ,ξ‘ e verifichiamo
la condizione
µG(ξ) Pξξ' = µG(ξ') Pξ'ξ (*)
Sia d = d(ξ', ξ) il numero di nodi in cui ξ e ξ' differiscono. Se:
d=0
(*) è ovvio perchè ξ = ξ‘
d≥2
il meccanismo di transizione non può cambiare i valori di più di un
vertice alla volta, quindi (Pξ'ξ = 0) ed entrambi i membri sono nulli
d=1
ξ e ξ' differiscono in un vertice v i cui vicini devono essere 0
allora:
µG(ξ) Pξξ' = (1/ZG)*(1/2*1/k) = µG(ξ') Pξ'ξ
NB: Pξξ‘ = 1/2*1/k :
1/k scelta di un vertice da una distribuzione uniforme su 1, ... , k
1/2 probabilità che esca H or T
A.A. 2008/2009
Francesco Archetti
Reti Regolatorie - MCMC (3)
costruiamo una funzione “update
update” che suddivida [0, 1] in 2k equi-intervalli
rappresentanti le scelte del meccanismo di transizione:
(v1, H), (v1, T), (v2, H), (v2, T), ... , (vk, H), (vk, T)
se simuliamo la Catena per un lungo periodo l,
partendo da una configurazione
iniziale arbitraria ammissibile otteniamo
una configurazione casuale la cui distribuzione
è approssimativamente µG. Quindi:
1
(vk, T)
(v1, T)
(v1, H)
0
X1
X2
….
X 2k
Xl ~ µG
In presenza di un numero molto elevato di stati, MCMC riesce a sviluppare un
meccanismo di transizione che corrisponde a un grafo di transizione poco connesso
(matrice di transizione molto sparsa).
A.A. 2008/2009
Francesco Archetti
Catene di Markov a stati nascosti:
Una
catena
di
Markov
è
un
continuo/discreto caratterizzato da:
processo
stocastico
Un insieme di stati Xt
Un insieme di osservazioni Et
Una matrice delle probabilità di transizione
P(X|X0:t-1) = P(X|Xt-1)
Matrice delle probabilità di emissione delle osservazioni
P(Et |X0:t-1, E0:t-1)= P(Et |Xt)
Matrice delle probabilità iniziali degli stati al tempo 0 =>
P(X0)
A.A. 2008/2009
Messina
Enza
Francesco
Archetti
Catene di Markov a stati nascosti:
Modello di transizione:
P(X|X0:t-1) = P(X|Xt-1)
Modello sensoriale
P(Et |X0:t-1, E0:t-1)= P(Et |Xt)
Per ogni t finito la distribuzione congiunta risulta :
t
P( X 0 , X1,..., X t , E1,..., Et ) = P( X 0 )∏ P( X i X i −1 ) P( Ei X i )
i =1
A.A. 2008/2009
Messina
Enza
Francesco
Archetti
Gene expression analysis :Detecting differential expressions
Too few replicates to obtain an accurate estimate of the
experimental variance
“Analyzing Gene Expression Time-Courses”
A.Schliep, I. G. Costa, C.Steinhoff, and A. Schonhuth
“ Bayesian Inference for Gene Expression and Proteomics”
Cambridge University Press
Levels of gene expressions are modeled with univariate gaussians
with parameters dependent on experimental conditions /state of
the system.
A.A. 2008/2009
Francesco Archetti
Hidden Markov Models
80%
60%
Sunny
60%
5%
NOT OBSERVABLE
Rainy
80%
30%
Sunny
15%
30%
60%
Rainy
15%
10%
75%
38%
2%
5%
38%
5%Snowy 2%
75%
5%
Snowy
5%
65%
20%
0% 50%
50%
20%
A.A. 2008/2009
Messina
Enza
Francesco
Archetti
Hidden Markov Model
Definizione: un Hidden Markov model (HMM)
Alfabeto di simboli Σ ={ s1,s2,…,sm};
Insieme degli stati S = {1, 2, . . . ,k};
Probabilità di transizione tra due stati qualsiasi, per ogni t, l in S
akl = Pr(πi = l | πi-1 = t);
Probabilità iniziali a0k
a01 + … + a0k = 1
Per ogni stato t in S, noi denotiamo con a0t la probabilità che lo stato iniziale sia
t.
Probabilità di emissione con ogni stato
Per ogni b in Σ e per ogni t in S, la probabilità di osservare b quando siamo nello
stato t:
ei(b) = P( xi = b | πi = t)
ei(b1) + … + ei(bM) = 1,
per tutti gli stati i = 1…K
et(b) =Pr(xi =b|πi=t)
Francesco Archetti
Esempio
Francesco Archetti
HMM
Una possibile domanda è
Quale è la sequenza metereologica più
probabile?
Francesco Archetti
HMM – Un esempio semplice
Una sequenza di basi può essere rappresentata da diversi percorsi nel
modello, ciascuno con una certa probabilità che è il prodotto delle
probabilità dei vari passi che formano il percorso.
il percorso con probabilità più alta sarà quello che ci fornirà
l’allineamento della nuova sequenza al modello markoviano e quindi
alla famiglia di sequenze che lo ha generato.
In figura vediamo un modello con sole due lettere (AT), ciascuna con
due stati. Il modello potrebbe essere stato generato da un allineamento
del tipo quello in tabella.
I
II
ATTA
TTAT
AAAT
TAAT
…
TTAA
TATA
ATTA
ATAT
ATTT
…
ATAT
Francesco Archetti
HMM – Un esempio
Se consideriamo la sequenza TTAT qual è la probabilità che
essa appartenga alla regione I, alla regione II o contenga
giunzioni tra le due regioni?
La sequenza TTAT può rappresentare uno dei possibili
percorsi, ciascuno però con una probabilità diversa (per
esempio la probabilità della coppia AT dipende da qual è la
regione di appartenenza di A e di T)
A.A. 2008/2009
TITIAITI
TITIIAITI
TIITIAITI
TIITIIAITI
TITIAITII
TITIIAITII
TIITIAITII
TIITIIAITII
TITIAIITI
TITIIAIITI
TIITIAIITI
TIITIIAIITI
TITIAIITII
TITIIAIITII
TIITIAIITII
TIITIIAIITII
Francesco Archetti
HMM - Esempio
In quale regione sta TTAT ?
Usando il modello definito nella precedente slide
possiamo calcolare la probabilità di tutte le sequenze di
nucleotidi in ogni regione.
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
Il modello dice che con alta probabilità la sequenza
è nella regione 1
Francesco Archetti
HMM - Esempio
Da notare la differenza tra un modello markoviano e un modello
markoviano “hidden”:
modello markoviano: una base è rappresentata in un solo modo
modello markoviano hidden: ogni base è rappresentata da più possibili stati (per
esempio AI e AII)
In un modello markoviano hidden una sequenza verrà valutata per la sua
probabilità di essere rappresentata dal modello, ma il fatto che ciascuna
base è rappresentata da più stati non ci permette di sapere se A è passata
dallo stato AI o dallo stato AII , e in questo senso il modello è nascosto e
va decodificato calcolando le probabilità di ciascuno dei possibili percorsi.
Un HMM può essere utilizzato per descrivere la struttura di un gene
includendo parametri che descrivono la distribuzione dei codoni, dei
dinucleotidi, degli esanucleotidi negli esoni e negli introni, la presenza
delle varie basi a monte e a valle dei siti di splicing. Ogni base avrà una
probabilità diversa di far parte di uno degli elementi del gene e probabilità
diverse di essere al confine tra un elemento e il successivo.
A.A. 2008/2009
Francesco Archetti
HMM - Esempio
Schema semplificato di un HMM per la ricerca di geni in un genoma eucariotico:
Esone che inizia con
un codone completo
E-0
Introne con un
numero di nucleotidi
multiplo di 3
I-0
A.A. 2008/2009
Esone che inizia con
l’ ultima base di un
codone
E-2
E-1
I-1
Introne con un
numero di nucleotidi
multiplo di 3 + 2
nucleotidi
I-2
E-f
S-E
E-i
Esone che inizia con
un codone completo
Esone che inizia con
le ultime due basi di
un codone
Ultimo esone
Esone singolo
5’
UTR
3’
UTR
Francesco Archetti
Bibliografia Minima(1)
L’introduzione più appropriata allo sviluppo ed all’utilizzo di modelli
markoviani in bioinformatica è contenuta nel testo:
A. Tramontano, “Bioinformatica”, Zanichelli 2003
Una presentazione di carattere più matematico alla quale fanno riferimento
i lucidi è contenuta in :
Haggstrom O., “Finite Markov Chains and Algorithmic
Applications”, Cambridge University Press.
Un riferimento importante e specifico anche per hidden Markov models è il
volume:
P. Baldi S. Brunak “Bioinformatics: The machine learning approach”,
MIT press, 2003
A.A. 2008/2009
Francesco Archetti
Bibliografia Minima(2)
La letteratura sulle applicazioni di Markov Models ed HMM in bioinformatica è
enorme, qui sono riportati solo alcuni suggerimenti:
Shawn M. Gomez and Andrey Rzhetsky “Towards the prediction of
complete protein-protein interaction networks”-Pacific Symposium on
Biocomputing 2002: 413-424
Scott C. Schmidler;Jun S. Liu;Douglas L. Brutlag “Bayesian Protein
Structure Prediction”-Cases studies in Bayesian statistics vol 5 (1999)pages 363-378
Jung-Wook Bang Raphael Chaleil and Jon Williamson -“Two-Stage
Bayesian Networks for Metabolic Network Prediction”
Anirruha Datta, Edward R. Dougherty “External control in markovian
genetic regulatory networks”, Machine learning Journal Vol. 52, no 1-2, pp.
169-191,2003
Edward R. Dougherty, “Genomic signal processing: the salient issues”,
EURASIP Journal on applied signal processing 2004:1, 146-153
A.A. 2008/2009
Francesco Archetti