I PATTERN
DEFINIZIONE DI PATTERN E SUA CODIFICA
I pattern sono espressioni regolari che danno un significato solo
ed esclusivamente qualitativo delle porzioni conservate in un
allineamento multiplo. Sono un consenso a maggioranza delle
posizioni conservate,ad esempio, di un sito funzionale o motivo
comune in una famiglia proteica.
Si costruiscono con espressione regolari e la loro determinazione
ed annotazione viene fatta quasi esclusivamente a “mano”
dall’analisi delle regioni conservate in un allineamento.
COME SI COSTRUISCE UN PATTERN IN REALTA’ !!!!!!!!
ALLINEAMENTI
MULTIPLI
•Allineamento progressivo (Clustal)
•Metodi iterativi (Multalin)
•Metodi basati su zone comuni di sequenza
conservate (Profili)
•Metodi statistici e modelli probabilistici (HMM)
PROFILI
1) Dato un allineamento multiplo M con L colonne, un profilo per M è una
tabella in cui ciascuna colonna contiene numeri che indicano la frequenza
con cui ciascun simbolo compare in quella posizione.
2) Sono una forma di punteggio dipendente dalla posizione (Position-Specific
Scoring Matrix o PSSM). Un PSSM ha tante colonne quante quelle
nell’allineamento multiplo e 20 righe per ciascuno dei 20 amminoacidi +
eventuali punteggi di penalizzazione per gli indels
3) Permettono di usare l’informazione che si acquisisce durante
l’allineamento progressivo:
• grado di conservazione di un residuo in una certa posizione;
• presenza di gap in una certa posizione.
Da queste PSSM possono esser calcolati i “logo” oppure le sequenze
consenso.
SONO INFORMAZIONI DI TIPO QUANTITATIVO OLTRE CHE
QUALITATIVO
MATRICI DI FREQUENZA
Sono matrici che a partire da un allineamento multiplo calcolo la frequenza di un
amminoacido ovvero quante volte è stato trovato in quella posizione dell’allineamento
MATRICI DI FREQUENZA
1) Calcolo della probabilità di avere la sequenza VTISCTG dalla matrice di frequenza:
prodotto delle probabilità di V,T ecc. (le matrici non considerano gli INDELS sono valori fissi):
0.375* 0.375*0.25*0.375*1*0.375*0.25 = 0,0012
oppure il logaritmo naturale o in base 2 (log odds)
ln(0.375)+ ln(0.375)+ ln(0.25)+ ln(0.375)+ ln(1)+ ln(0.375)+ ln(0.25) = -5.05
2) Per capire se il punteggio è significativo dobbiamo confrontarlo con una distribuzione casuale
come ad esempio il fatto che in ogni posizione dell’allineamento ognuno dei 20 amminoacidi sia
equiprobabile
Nel caso che non ci sia alcun amminoacido trovato
mai in nessuna posizione dell’allineamento ovvero
con frequenza 0, per evitare che il prodotto delle
probabilità sia 0 o che il log → ∞ allora attribuisco a
tali AA un valore molto basso ovvero gli
Pseudocounts
1 2 ..
Esempio di calcolo di pseudocount per
L’Alanina A che non c’è in colonna 1
V
I
R
S
Q
Q
R
..
..
..
..
MATRICI DI PESO o profili (Gribskov)
Oltre alla frequenza degli AA in un allineamento multiplo si possono avere delle matrici di peso
che considerano anche il “peso” degli amminoacidi ovvero della loro “sostituibilità” calcolata nelle
matrici di sostituzione PAM o BLOSUM.
Nella matrice di peso si può notare come
nella terza colonna l'aminoacido A, che è
presente una volta sola nell'allineamento, ha
un punteggio inferiore (-1) nei confronti
dell'aminoacido M (+10) che non compare
nell'allineamento. Quest'ultimo, però, è più
“simile” agli aminoacidi L, I, V, F presenti in
altre sequenze secondo i valori della matrice
di sostituzione impiegata.
Si è così ottenuto un profilo completo
dell’allineamento multiplo in grado di
codificare le probabilità di ogni AA in ogni
posizione dello stesso.
MATRICI DI PESO o profili (Gribskov)
PSI-BLAST
Position Specific Iterated BLAST
utilizza una procedura iterativa per cui tutte le sequenze che superano la soglia imposta
partecipano alla creazione di un modello detto PSSM (Position Specific Substitution Matrix)
utilizzata nei cicli successivi per ricercare sequenze evolutivamente distanti.
la PSSM e' il "prodotto" della matrice di sostituzione con la matrice di frequenza calcolata dagli
allineamenti della sequenza query contro gli hit che hanno superato la soglia imposta.
nella fase successiva per la ricerca di nuovi hit la procedura rimane uguale a quella dell'algoritmo
originale ma anziche' usare una matrice 20X20 di sostituzione (tipo BLOSUM o PAM) la matrice
sara' data dalla PSSM di dimensioni LX20 dove L e' la lunghezza della sequenza query.
Il calcolo della PSSM prevede la normalizzazione delle sequenze ridondanti o
sovrarappresentate nell'allineamento affinche' non sia calcolata in modo sbagliato la matrice di
peso risultante.
La soglia di penalita' per i gap rimane uguale in tutte le fasi iterative.
Procedura
1) Sequenza in input.
2) Ricerca di BLAST.
3) Creazione di una PSSM a partire dall’allineamento multiplo di tutti gli
hit che superano un certo threshold.
Procedura
4) Ricerca successiva con la PSSM ottenuta (ricerca di similarità profilo
-> sequenze del database).
5) Creazione dell’allineamento pairwise sulla base del profilo tra la
sequenza di partenza ed i nuovi hit.
6) Creazione di una nuova PSSM se esistono nuovi hit sopra al
threshold rispetto al ciclo precedente. Lo score di alcune sequenze
precedentemente non sopra al threshold può aumentare e salire sopra la
soglia imposta poiché potrebbero essere degli omologhi distanti di una
famiglia genica che ha solo alcuni AA conservati (ad esempio quelli di un sito
attivo) che “pesano” di più nell’allineamento multiplo e quindi fanno
aumentare lo score.
Procedura
7) Ripeti dal punto 4 al 6
8) La fine del processo avviene quando si arriva a convergenza ovvero
non sono state trovate altre sequenze sopra al threshold rispetto al
ciclo precedente
In genere si compiono 4-6 iterazioni massimo per evitare fenomeni di
“deriva” (drift, profile wander): la sequenza iniziale si può perdere
durante le iterazioni se esiste una famiglia proteica numerosa simile alla
stessa (crowding out).
B
B
B
Esempio:
A
C
B
B
B
B
B
procedura
1) Sequenza in input
2) Ricerca di BLAST
3) Creazione di una PSSM a partire dall’allineamento multiplo di tutti gli hit che superano un
certo threshold
4) Ricerca successiva con la PSSM ottenuta (ricerca di similarità profilo -> sequenze del
database)
5) Creazione dell’allineamento pairwise sulla base del profilo tra la sequenza di partenza ed
i nuovi hit
6) Creazione di una nuova PSSM se esistono nuovi hit sopra al threshold rispetto al ciclo
precedente. Lo score di alcune sequenze precedentemente non sopra al threshold può
aumentare e salire sopra la soglia imposta poiché potrebbero essere degli omologhi
distanti di una famiglia genica che ha solo alcuni AA conservati (ad esempio quelli di un
sito attivo) che “pesano” di più nell’allineamento multiplo e quindi fanno aumentare lo
score.
7) Ripeti dal punto 4 al 6
8) La fine del processo avviene quando si arriva a convergenza ovvero non sono state
trovate altre sequenze sopra al threshold rispetto al ciclo precedente
In genere si compiono 4-6 iterazioni massimo per evitare fenomeni di “deriva”
ALLINEAMENTI
MULTIPLI
•Allineamento progressivo (Clustal)
•Metodi iterativi (Multalin)
•Metodi basati su zone comuni di sequenza
conservate (Profili)
•Metodi statistici e modelli probabilistici (HMM)
Motivazione
Data una famiglia di proteine, come si può fissare al meglio l‘informazione
contenuta nell‘allineamento multiplo per cercare altre sequenze ancora
sconosciute ???
• I metodi di allineamento classici, anche se usano profili, p.es. non
tengono in considerazione le posizioni di indels.
Idea: crea un modello che rappresenti nel modo più esatto possibile la
realtà.
1YEA
1YCC
2PCBB
5CYTR
1CCR
1CRY
1HROA
1CXC
1C2RA
155C
2C2C
2mtac
AKESTGFKPGSAKKGATLFKTRCQQCHTIEE-------GGPNKVGPNLHGIFGRHSGQVK
----TEFKAGSAKKGATLFKTRCLQCHTVEK-------GGPHKVGPNLHGIFGRHSGQAE
---------GDVEKGKKIFVQKCAQCHTVEK-------GGKHKTGPNLHGLFGRKTGQAP
---------GDVAKGKKTFVQKCAQCHTVEN-------GGKHKVGPNLWGLFGRKTGQAE
-ASFSEAPPGNPKAGEKIFKTKCAQCHTVDK-------GAGHKQGPNLNGLFGRQSGTTP
---------QDAASGEQVFK-QCLVCHSIGP-------GAKNKVGPVLNGLFGRHSGTIE
-----SAPPGDPVEGKHLFHTICITCHTDIK-------G-ANKVGPSLYGVVGRHSGIEP
-------QEGDPEAGAKAFN-QCQTCHVIVDDSGTTIAGRNAKTGPNLYGVVGRTAGTQA
---------GDAAKGEKEFN-KCKTCHSIIAPDGTEIVKG-AKTGPNLYGVVGRTAGTYP
-------NEGDAAKGEKEFN-KCKACHMIQAPD-GTDIKG-GKTGPNLYGVVGRKIASEE
--------EGDAAAGEKVSK-KCLACHTFDQ-------GGANKVGPNLFGVFENTAAHKD
-----APQFFNIIDGSPLNFDD-----AMEEGRDTEAVKHFLETGENVYNEDPEILPEAE
.
*
: * : .
.
1YEA
1YCC
2PCBB
5CYTR
1CCR
1CRY
1HROA
1CXC
1C2RA
155C
2C2C
2mtac
GYS-YTDANINK-----NVKWDEDSMSEYLTNPKKYIP--------GTKMAFAGLKKEKD
GYS-YTDANIKK-----NVLWDENNMSEYLTNPKKYIP--------GTKMAFGGLKKEKD
GFT-YTDANKNK-----GITWKEETLMEYLENPKKYIP--------GTKMIFAGIKKKTE
GYS-YTDANKSK-----GIVWNNDTLMEYLENPKKYIP--------GTKMIFAGIKKKGE
GYS-YSTADKNM-----AVIWEENTLYDYLLNPKKYIP--------GTKMVFPGLKKPQE
GFA-YSDANKNS-----GITWTEEVFREYIRDPKAKIP--------GTKMIFAGVKDEQK
GYN-YSEANIKS-----GIVWTPDVLFKYIEHPQKIVP--------GTKMGYPGQPDPQK
DFKGYGEGMKEAGAK--GLAWDEEHFVQYVQDPTKFLKEYTGDAKAKGKMTF-KLKKEAD
EFK-YKDSIVALGAS--GFAWTEEDIATYVKDPGAFLKEKLDDKKAKTGMAF-KLAK--G
GFK-YGEGILEVAEKNPDLTWTEANLIEYVTDPKPLVKKMTDDKGAKTKMTF-KMGK--N
NYA-YSESYTEMKAK--GLTWTEANLAAYVKNPKAFVLEKSGDPKAKSKMTF-KLTKDDE
EL--YAGMCSGCHGHYAEGKIGPGLNDAYWTYPGNETDVGLFSTLYGG--ATGQMGPMWG
*
*
*
• Questo viene fatto p.es. dal database
Pfam di domini proteici.
• Il programma più conosciuto per
questo è HMMER. (Eddy 1995)
CATENE DI MARKOV
Nelle matrici sito-specifiche e nei profili classici le probabilità di avere un AA in una
certa posizione non dipende dall’AA che lo precede ma potrebbe essere
interessante calcolare la dipendenza, ad esempio, di coppie di AA e la loro
frequenza.
inizio
fine
S = [s1, s2, s3, …. , sn]
Una sequenza S di amminoacidi può
essere considerata una catena di
Markov (Markov chain) di ordine k se
è vero che la probabilità di avere
l’elemento X nella i-esima posizione
dipende solo dai k elementi che lo
precedono
stato
P(ai|ai-1 ai-2 … a1 ) = P(ai|ai-1 ai-2 … ai-k )
Se k=0 allora la probabilità è il
prodotto delle frequenze dei singoli AA
se k=1 dipende dalla frequenza delle
coppie di AA e così via.
transizione
probabilità di
transizione
CATENE DI MARKOV
• A ogni sequenza di stati può
essere associata una probabilità
di transizione.
• Rappresentano transizioni tra
stati che avvengono in modo
probabilistico.
• Le probabilità di transizione
non dipendono dal numero di
transizioni effettuate (proprietà di
omogeneità).
• Le probabilità di transizione
dipendono unicamente dallo
stato attuale (proprietà
memoryless, o di assenza di
memoria).
HIDDEN MARKOV MODEL
(catene nascoste di Markov)
A differenza delle catene di Markov in cui c’è un solo modo per rappresentare un
amminoacido (o un simbolo qualsiasi) in un modello “nascosto” può essere
rappresentato da più stati.
Il risultato è che siamo in grado di valutare solo il prodotto finale ovvero la sequenza
finale di stati, che è in effetti una catena di Markov, ma non siamo in grado di
valutare qual è stato il passaggio ovvero la transizione tra i vari stati.
I vari stati sono interconnessi ed ognuno emette simboli.
Semplice HMM a due stati che rappresenta una sequenza di DNA con una composizione
eterogenea di basi (una regione ricca in basi AT - stato 1 ed una ricca in basi GC - stato 2). Le
transizioni di stato e le probabilità associate sono indicate dalle frecce mentre le probabilità di A, C
G e T per ogni stato (1 e 2) sono indicate sotto i corrispondenti stati. In (b) c’è la sequenza
(nascosta) degli stati 1 e 2 che è una catena di Markov che emette una base in accordo con la
sua probabilità per quello stato (c). La probabilità della sequenza è il prodotto delle transizioni di
stato (b) e delle probabilità di emissione (c). Per una data sequenza osservata siamo interessati a
inferire la sequenza degli stati nascosti che l’hanno generata ovvero sapere se la sequenza
generata appartiene ad una regione ricca in AT o GC.
1 2
... 7
• Il profilo (senza gap) precedente può essere visto come un HMM banale
con uno stato per ogni colonna (più uno stato iniziale e uno finale):
• Gli Mi sono detti match states.
• Le probabilità di emissione in Mi sono date dall’i-esima colonna del
profilo.
• Le probabilità di transizione sono pari a uno.
• Si può modificare questo profilo HMM in modo da trattare la presenza di
gap.
AVFDFRT
Esempio:
M1 M
2
...
M7
• Gli inserimenti sono porzioni di x che non hanno corrispondenza nel
modello.
• Gli Ij sono detti insert states.
• Ciascun Ij modella l’allineamento del/dei carattere/i di x successivi a xj con
un gap.
AVFDFRT
AV-DYKT
Esempio:
I3
• Le delezioni sono segmenti dell’allineamento multiplo (modellato
dall’HMM) che non hanno corrispondenza in posizione x del modello.
• I Dj sono detti delete states.
• Stati “silenziosi”: non emettono alcun simbolo.
D3
Esempio:
AV-DYKT
AAFDSRT
• Ciascuna tripla (Mj, Ij, Dj) è un modulo.
• Un HMM con M moduli ha 3M + 3 stati.
• Cammini più probabili di cinque sequenze attraverso un HMM con undici moduli.
• Gli inserimenti non sono allineati: intesi come atipicità, parti non conservate di una
famiglia.