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.