Lezione 6
Analisi di sequenze biologiche e
ricerche in database
Schema della lezione
• Allinemento: definizioni
• Allineamento di due sequenze
• Ricerca di singola sequenza in banche dati
(Alignment-based database searching)
– FASTA, BLAST
• Allinemento: definizioni
• Allineamento di due sequenze
• Ricerca di singola sequenza in banche dati
(Alignment-based database searching)
– FASTA, BLAST
Allineamento di sequenze
Determinare la similarità e dedurre
l’omologia
Allineare
Definire il numero di passi necessari per trasformare una
sequenza nell’altra utilizzando passaggi mutazionali come
-sostituzione
-inserzione/delezione
mismatch
1 LA CASA È NUOVA
2 LA CASSA È VUOTA
1 LA CAS-A È –NUO-VA
2 LA CASSA È V-UOT-A
5 indels
gap
1 LA CASA È NUOVA
2 LA CASSA È VUOTA
1 LA CAS-A È NUOVA
2 LA CASSA È VUOTA
match
1 indels + 2 sostituzioni
Tra le due soluzioni mostrate (ce ne sono altre!), quale scegliamo?
Esistono criteri e algoritmi che ci possono aiutare
Perchè allineare?
• Per fornire una misura di quanto sequenze
nucleotidiche o aminoacidiche siano
“imparentate”, abbiano in comune
• Questa parentela ci permette di fare inferenze
biologiche in termini di
– relazioni strutturali
– relazioni funzionali
– relazioni evolutive
• Alignment-based database searching
Terminologia
• La misura QUANTITATIVA: Similarità
– Si esprime in genere come % di identità, quantifica
i cambiamenti che sono avvenuti dal momento
della divergenza tra due specie (sostituzioni, Indels)
– Identifica i residui cruciali per mantenere la
struttura o la funzione di una proteina
Alti livelli di similarità possono indicare una divergenza recente tra
le sequenze, una storia evolutiva comune, simile funzione
biologica
Terminologia
• Una valutazione di STATO: Omologia
– Implica l’esistenza di relazioni evolutive
– Geni omologi: geni che si sono originati per
divergenza da un antenato comune
– I geni SONO o NON SONO omologhi, non esiste una
misura quantitativa dell’omologia
Eyeless ha un ruolo importante nel
dirigere lo sviluppo dell’occhio in
drosofila; Pax6 lo stesso nel topo
Eyeless e Pax6 sono decisamente
simili in sequenza e funzione
http://evolution.berkeley.edu/
probably > 500 MYA
Terminologia
Ortologhi: Geni che si sono separati in seguito ad un evento
di speciazione
• Le sequenze discendono da un antenato comune
• Molto probabilmente codificano per proteine con domini simili e
simili strutture tridimensionali
• Spesso mantengono funzioni simili
• Possono essere usati per predire funzioni geniche in genomi nuovi
Paraloghi: Geni che si sono evoluti per duplicazione in una
specifica linea evolutiva
• E’ meno probabile che mantengano funzioni simili, più comunemente
evolvono nuove funzioni
Allineamenti globali e locali
• Globale
– trova l’allineamento ottimale sul totale della
lunghezza delle sequenze
– È la soluzione migliore per sequenze di lunghezza
simile ed omologhe
– Al dimiuire del grado di similarità (es. aumento
distanza evolutiva, alto tasso di ricombinazione) i
metodi di allineamento globale tendono a
peggiorare molto in efficienza
Allineamenti globali e locali
• Locale
– Ha lo scopo di trovare regioni simili (es. domini)
in due sequenze (“paired subsequences”)
– Le regioni fuori dalle aree di allineamento locale
vengono escluse
– Può essere generato più di un allineamento
locale per ogni coppia di sequenze confrontate
– Scelta indicata nel caso di due sequenze a
similarità ridotta o di differenti lunghezze
Local vs. Global Alignment
• Global Alignment
--T—-CC-C-AGT—-TATGT-CAGGGGACACG—A-GCATGCAGA-GAC
| || | || | | | |||
|| | | | | ||||
|
AATTGCCGCC-GTCGT-T-TTCAG----CA-GTTATG—T-CAGAT--C
• Local Alignment—migliore per trovare regioni
conservate
tccCAGTTATGTCAGgggacacgagcatgcagagac
||||||||||||
aattgccgccgtcgttttcagCAGTTATGTCAGatc
Allineamenti locali: perchè?
• Due geni in specie diverse possono essere simili in
corte regioni conservate e diversi nel resto della
sequenza.
• Esempio:
– I geni Homeobox (chiaramente omologhi) hanno
corte regioni chiamate omeodomini altamente
conservate tra specie.
– Un allineamento globale non troverebbe gli
omeodomini perchè cercherebbe di allineare
l’INTERA sequenza
• Allinemento: definizioni
• Allineamento di due sequenze
• Ricerca di singola sequenza in banche dati
(Alignment-based database searching)
– FASTA, BLAST
Allineamento: ipotesi circa l’omologia
posizionale (discendenza da antenato
comune) di due residui in due (o più)
sequenze
Un allineamento a coppie consiste di una serie di
residui o basi accoppiati, una per sequenza.
Ci sono tre tipi di coppie:
(1) match = stesso nucleotide (o AA) in entrambe le sequenze
(2) mismatch = diverso nucleotide (o AA) in una delle sequenze
(3) gap = una base (o AA) in una sequenza e niente nell’altra
GCGGCCCATCAGGTAGTTGGTG-G
GCGTTCCATC--CTGGTTGGTGTG
111221111133212111111131
Come si può fare in modo non manuale??
Dot plot: matrici a punti
Gibbs and McIntyre 1970
Non produce direttamente un allineamento, ma una mappa delle zone di somiglianza
Le due sequenze vengono scritte come colonne e righe di una matrice
Si inserisce un punto dove le due sequenze sono identiche
Sequenza 2: inversione
Dot plot: matrici a punti
Vantaggi: visivamente si intuisce che cosa è successo
Sequenza 2: delezione (potrebbe essere
anche un’inserzione in seq1)
Passo in diagonale verso una casella con un punto= match.
Diagonale verso una casella vuota = mismatch.
Orizzontale = gap nella sequenza2.
Verticale = gap nella sequenza1.
Svantaggi:
Non è possibile
identificare
l’allineamento migliore.
Le matrici di nucleotidi
sono spesso confuse
per via dell’alta
ripetitività dei simboli
(sono solo 4!)
23
Come si può migliorare il metodo dot plot
eliminando un po’ di rumore di fondo?
Ad esempio pesando i diversi cambiamenti
usando dei criteri
Matrici di punteggio e penalità per i gap
• Il vero allineamento tra due sequenze è
quello che riflette in modo accurato le loro
relazioni evolutive.
• Poichè il vero allineamento non è conosciuto
in pratica si cerca l’allineamento ottimale:
minimizza i mismatches e i gaps secondo certi
criteri….purtroppo ↓ mms ↑ gaps
↓ gaps ↑ mms
(
(
(
Matches
Mismatches
Gaps
(1 terminal)
Matches
Mismatches
Gaps
Matches
Mismatches
Gaps (both
terminal)
Matrici di punteggio e penalità per i gap
Lo schema di punteggio include una penalizzazione per
le in-del (gap penalty) e una matrice di punteggio
(scoring matrix) M(a,b), che specifica ogni tipo di
match (a = b) o di mismatch (a  b).
Le unità nella matrice di punteggio possono essere
nucleotidi nelle sequenze di DNA o RNA, i codoni nelle
regioni codificanti, o gli aminoacidi nelle sequenze
proteiche.
Cos’è una matrice di punteggio?
• Matrice che associa un punteggio ad ogni coppia
di entità che troviamo in un allineamento
• Ogni linea e ogni colonna rappresentano un
residuo (4 nucleotidi o 20 aminoacidi)
• La diagonale è l’identità
• Il triangolo inferiore corrisponde alle sostituzioni e
il superiore è simmetrico (non necessario)
• I valori negativi indicano penalità per certe
sostituzioni, l’algoritmo di allineamento cercherà
di evitarle
• I valori positivi indicano sostituzioni ‘accettate’ in
termini evoolutivi, strutturali o funzionali
Perché è importante capire le matrici di
punteggio?
• Compaiono in ogni analisi che implichi un
confronto tra sequenze
• Implicano un determinato percorso evolutivo
• Possono influenzare fortemente il risultato
delle analisi
DNA scoring matrices
Di solito sono semplici. La più semplice:
M(a,b) assegna valori positivi se a = b (match),
altrimenti negativi (mismatch)
 0 if a  b
M(a,b)
 0 if a  b
DNA scoring matrices
Matrici più complesse possono distinguere ad esempio
tra transizioni e trasversioni (le prime avvengono più
facilmente trattandosi di molecole più simili, però ci
sono 4 possibili trasversioni e solo 2 transizioni)
Amino acid/protein scoring matrices
Margareth Dayhoff 1965: “Atlas of potein sequences” contenente le
sequenze aminoacidiche di 65 proteine
Inizio delle collezioni di dati da cui avranno origine le banche dati
elettroniche
Dayhoff et al. nel decennio 1970-1980 hanno proposto una procedura
per il calcolo di matrici di punteggio per quantificare la propensione di
AA a mutare l’uno nell’altro durante l’evoluzione (matrici 20 x 20).
Alla base c’è l’osservazione delle proteine note:
MATRICI DI SOSTITUZIONI EMPIRICHE
Amino acid/protein scoring matrices
Empirical substitution matrices
PAM matrix (Percent/Point Accepted Mutation Matrix)
BLOSUM (BLOcks SUbstitution Matrix)
PAM (Percent/Point Accepted Mutation)
Una point accepted mutation —PAM — è la sostituzione di un AA
nella struttura primaria di una proteina con un altro AA, che
viene ‘tollerata’ dalla selezione naturale.
Dalle PAM sono escluse le mutazioni sinonime, le letali, o non
tollerate dalla selezione naturale in qualche maniera (l’esclusione
è ovvia: non si osserveranno!).
Costruzione di una matrice PAM
• Per costruire le matrici PAM (1970-80) sono stati identificati tra le
sequenze proteiche conosciute in quegli anni, 71 gruppi di sequenze
con almeno l’85% di identità (poca distanza evolutiva > allineamento
semplice> bassa possibilità di mutazioni multiple ad un sito).
• Le sequenze sono state allineate: 1572 cambiamenti osservati
Gruppi di proteine
> 85% identità
• Sono state stimate le ‘mutabilità’ dei diversi AA (propensione di un
certo AA ad essere sostituito) > OSSERVAZIONE!!
Gruppi di proteine
> 85% identità
• I dati sono stati combinati per produrre una Mutation Probability
Matrix in cui ogni valore indica la probabilità che l’AAx sia sostituito
con l’AAy attraverso una o più mutazioni accettate in uno specifico
intervallo evolutivo, rispetto alla probabilità che i due aminoacidi
siano stati allineati per caso (calcolata come freq AAx * freqAAy).
• 1 PAM è la quantità di cambiamenti evolutivi che porta, in
media, ad una sostituzione ogni 100 residui aminoacidici
(1%)
• Moltiplicando la matrice PAM01 per se stessa N volte
ottengo matrici per distanze evolutive sempre maggiori
• PAM60: mi aspetto in media 60 cambiamenti ogni 100 AA
• PAM250: 250 cambiamenti ogni 100 AA (un AA può mutare più volte)
Gruppi di proteine
> 85% identità
PAMN
matrix
ogni valore indica la probabilità che l’AAx sia sostituito con l’AAy attraverso una o più
mutazioni accettate in uno specifico intervallo evolutivo, rispetto alla probabilità che i due
aminoacidi siano stati allineati per caso
P>0
P=0
P<0
lo scambio AAx ↔ AAy si osserva più frequentemente di quanto atteso per caso
la frequenza della sostituzione è indistinguibile da quella casuale
lo scambio AAx ↔ AAy è più raro di quanto atteso per caso
BLOSUM (BLOcks SUbstitution Matrix)
• Henikoff and Henikoff (1992): matrice basata su molte più
osservazioni della PAM: scambi aminoacidici calcolati su circa
2000 «blocchi»
• Blocco: regione conservata di una famiglia di proteine senza
indels
• Direttamente calcolate sulla base di allineamenti locali
– Probabilità di sostituzione (conservazione)
– Frequenza degli aminoacidi
Cosa rapprsenta il numero dopo BLOSUM?
Esempio: BLOSUM n include nei blocchi sequenze con MASSIMO n% di
identità
Sequenze con > n% di dientità vengono clusterizzate e sostituite da
un’unica sequenza che rappresenti il cluster (vedi ad esempio le ultime
due dello schema)
Default in BLAST
E: Asp D: Glu
Equivalenze
Non esiste la matrice perfetta, dipende dal dataset
che stiamo analizzando e da quanto le sequenze da
allineare sono conservate
Gap penalties
Quanto è probabile una
certa sostituzione
(matrici)
Costo delle indels (GAP)
• Costo dell’introduzione di un gap (Gap opening penalty: G)
• Costo dell’estensione di un gap (Gap extension penalty: L*n)
• Costo complessivo:
G+Ln
Questi
sono valori
usati
spesso, ma
si possono
cambiare!
Algoritmi di allineamento
• Obiettivo: trovare il miglior allineamento, cioè
il massimo numero di simboli identici e il
minor numero di gap (=minor numero di
mutazioni = più breve percorso evolutivo)
• Per due sequenze di DNA di 200 basi ci sono
10153 possibili allineamenti….meglio non farli a
mano!
46
Algoritmi di allineamento
• Esausitivi o esatti: esplorano tutte le possibili soluzioni e
scelgono la migliore (lenti, computazionalmente intensi, precisi)
• Euristici: prendono ‘scorciatoie’ e cercano di arrivare ad una
soluzione ottimale basandosi su ipotesi plausibili
Algoritmi di allineamento comuni
Algoritmo
Esaustivo?
Gaps?
Loc/Glo
Mul align
Db searches
Needleman Si
-Wunsch
Si
Global
Si
No
SmithWaterman
Si
Si
Local
Si
Si
FASTA
No
Si
Local
Si
Si
BLAST
No
No
Local
No
Si
Needleman-Wunsch
• Exact global alignment method
– Non molto buono in molti casi (es. db searches,
ricerca di piccole regioni di similarità, allinemanti
tra sequenze con grosse differenze di lunghezza)
– Il più rigoroso e completo se lo scopo è di allineare
sequenze che non si sono evolute per exon
shuffling, inserzione/delezione di domini, etc.
– Il metodo migliore se le sequenze sono di
lunghezze simili e si sono evolute da un antenato
comune attraverso mutazioni di punto, piccole
ind/dels
Smith-Waterman
• Exact local alignment method
– Modifica del N-W che permette di allineare in
locale (non serve allineare tutta la seq)
– Allineamento molto buono per db searching,
allineamento multiplo e a coppie
– Esaustivo, quindi può essere molto lento. A
differenza del N-W considera qualunque
allineamento che parta da qualunque posizione
della sequenza, non solo quelli che cominciano
all’inizio e terminano alla fine
• Allinemento: definizioni
• Allineamento di due sequenze
• Ricerca di singola sequenza in banche dati
(Alignment-based database searching)
– FASTA, BLAST
Ricerche in database
L’algoritmo deve identificare le sequenze
omologhe e non omologhe separate da
un valore soglia
ricerca
Query (sequenza sonda)
FP: falsi
positivi
Caso 1: buon lavoro
dell’algoritmo
Sequenze nelle banche
dati
Sequenze non
omologhe
VP: veri
positivi
FN: falsi
negativi
VN: veri
negativi
Sequenze
omologhe
FN
Caso 2: c’è una zona in
cui non è possibile
discriminare omologhe
e non
VN
FP
VP
Punteggio soglia
Regione di sovrapposizione
FASTA: http://www.ebi.ac.uk/Tools/sss/fasta/
Pearson WR (1996) Effective protein sequence comparison. Academic Press Inc 227-258
Pearson WR and Lipman DJ (1998) Improved tools for biological sequence comparison. PNAS 85:2444
• Euristico locale
– Prima identifica regioni di identità tra la sequenza sonda
(‘query’) e le sequenze in db. (KTUP)
– I geni o proteine con la densità maggiore di segnale
vengono riesaminati
– L’allineamento viene esteso ad entrambi i lati delle regioni
di match aggiungendo gaps e mismatches sulla base di
matrici di punteggio
– L’allineamento ottiene un punteggio
NB: leggere l’HELP del programma
FASTA algoritm
Trova sottosequenze
identiche
Le rivaluta assegnando
nuovi punteggi con le
matrici di punteggio (PAM,
BLOSUM etc)
FASTA algoritm
Unisce segmenti usando i
gaps, elimina gli altri
Usa programmi dinamici
(simili agli algoritmi NW e SM
visti in precedenza) per
creare l’allineamento
ottimale: ottiene un
punteggio «Sopt»
FASTA algoritm
Assegnazione di un «Sopt» a ciascuna sequenza
della banca dati
Le sequenze con punteggi superiori ad una
certa soglia sono riportate in ordine
decrescente
Possiamo guardarle per vedere se hanno un
senso biologico ( > omologia)
Se non lo identifichiamo guardiamo l’E value
(significatività statistica)
E value: significatività statistica
• Attesa (Expectation) di trovare PER CASO uno
Score come quello osservato
E value: significatività statistica
Non si interpretano come p values dove
p < 0.05
sono generalmente considerati significativi
Regola generale
E values < 10-6 sono molto probabilmente significativi.
10-6 < E values < 10-3 meritano una seconda occhiata.
E values < 10-3 andrebbero scartati (ci aspettiamo di trovare 0.001
sequenze non correlate alla nostra-falsi positivi- che ottengono un
punteggio superiore a quell’S).
BLAST
Prossimo gruppo di diapositive