CALENDARIO LEZIONI AGGIORNATO
10 APRILE
17 APRILE NO (PASQUETTA) -> MERCOLEDI’ 19 APRILE LABORATORIO
24 APRILE NO
1 MAGGIO NO -> MERCOLEDI’ 3 MAGGIO
8 MAGGIO - LABORATORIO
15 MAGGIO
22 MAGGIO
29 MAGGIO – LABORATORIO
5 GIUGNO – (DATA DI RISERVA ANCHE PER EVENTUALE LABORATORIO)
LEZIONE 5
BLAST e applicazioni speciali
BLAST - definizione
•
Acronimo per Basic Local Alignment Search Tool
•
Definito per la prima volta da Altschul et al. 1990
•
Si tratta di un vero e proprio articolo «storico» che ad oggi è stato citato
quasi 65mila volte in letteratura, il che riesce a dare un’idea della sua
importanza in campo biologico
Schema che riassume il
funzionamento
dell’algoritmo
Vedremo nel dettaglio
i vari passaggi nelle
prossime slides
Ha alcuni punti in
comune con FASTA,
ma altri lo rendono
estremamente diverso
e maggiormente
versatile
BLAST - funzionamento
•
Come FASTA si basa sull’indicizzazione di parole
•
Tuttavia questa funziona in modo molto diverso rispetto a FASTA
•
La sequenza query viene scomposta in parole di lunghezza W
•
Primo step: partendo dalla sequenza query, vengono creati dei w-mers,
cioè tute le parole di lunghezza W che, se allineate con la query, diano
un punteggio > T
•
T viene calcolato sulla base di una matrice di sostituzione
BLAST - funzionamento
•
Visto che per orni parola W vengono generati svariati w-mers con alcuni
mismatch (purché mantengano uno score > T), le parole indicizzate sono
in numero molto maggiore rispetto a FASTA
•
Secondo step: viene effettuata la ricerca dei w-mers delle query nel
database e vengono memorizzati i match perfetti ritrovati, che vengono
messi in relazione alla parola W originaria della query (non al w-mer con il
match), registrandone la posizione nella sequenza query
•
Si ottiene pertanto una lista di sequenze (del database) con cui è stato
trovato match nei confronti di frammenti delle query
BLAST - funzionamento
•
Terzo step: ogni hit viene esteso in entrambe le direzioni, senza inserire
gap, finché lo score dell’allinemaneto scende sotto un valore soglia S
•
Si ottengono delle regioni più lunghe rispetto ai w-mers di partenza dette
HSP (High-scoring Segment Pair)
•
Anche se l’allineamento scende sotto lo score S, questo è di solito
tollerato per una determinata lunghezza data dal parametro X. Questo è
utile per tollerare la presenza di regioni locali di maggiore divergenza. Se
entro un numero di residui allineati X lo score torna ad essere >S allora
l’allungamento dell’HSP prosegue
BLAST - parametri
Sulla base di quanto abbiamo detto finora possiamo identificare quattro
parametri fondamentali per BLAST:
1)
W (word size): maggiore è, minore è il numero di parole generate e più
veloce è il tempo di esecuzione, a scapito però della sensibilità
2)
T (threshold): minore è questo valore, maggiore sarà il numero di w-mers
inclusi nella lista e di conseguenza maggiore sarà il tempo di calcolo
richiesto. Allo stesso tempo verrà però incrementata la sensibilità
3)
S (score): minore è questo valore, maggiore sarà la lunghezza degli HSP
generati
4)
X: maggiore è questo valore, più estesamente sarà analizzato l’intorno
delle HSP, andando ad aumentare il tempo di calcolo (ma anche
sensibilità e lunghezza degli HSP stessi)
BLAST - statistica
•
La potenza di BLAST sta nel fatto di poter dire quanto accurati siano i
risultati della ricerca
•
Dato un S, è possibile prevedere quanti saranno gli HSP ritrovati in una
banca dati della stessa grandezza di quella consultata, ma composta
da sequenze casuali
•
Questo numero è definito come E (expect)
•
Dal momento che è molto più intuitivo e semplice ragionare su E
piuttosto che su S in termini di significatività statistica di un risultato, il
valore che viene impostato come soglia per la ricerca è sempre E, ed S
viene calcolato automaticamente tramite una complessa relazione
statistica tra i due valori
•
All’atto pratico, l’impostazione di un E molto basso darà quasi
certamente risultati molto significativi
BLAST - versioni
•
BLASTn: cerca similarità in banche dati nucleotidiche utilizzando
sequenze nucleotidiche come query
•
BLASTp: cerca similarità in banche dati proteiche utiilizzando sequenze
amino acidiche come query
•
BLASTx: cerca similarità in banche dati proteiche utilizzando sequenze
nucleotidiche come query, che vengono tradotte nei 6 possibili frame di
lettura
•
tBLASTn: cerca similarità in banche dati nucleotidiche utilizzando
sequenze proteiche come query. I subject della banca dati vengono
tradotti nei 6 possibili frame di lettura
•
tBLASTx: cerca similarità in banche dati nuclotidiche i cui subject sono
stati tradotti nei 6 possibili frame di lettura utilizzando sequenze
nucleotidiche tradotte a loro volta nei 6 possibili frame di lettura
BLAST - versioni
TTCAGGCGTGCAGATGACGATGCAGTACATGGGTTTCTCTTTATTAAGTTCTTATGTCATGTTTATCATAGACT
CTGAAGTCAACCAGTCAGAGGTTATCGTACGTCAAATCAGTCAGAGGTTATCAGTCAATACAGTGAATCCTGAT
TCCCGTATGTGTGTTGTGACATATACACTGAATTCTGACTTAACCGCCTGTGTTATGAAATATACACTGAATCC
TGACTTAACCGTAAGTGTTGTGACAGATACTGTGAATCCTGACTTACCAGTTTGTGTTGTGACATATACACTGA
ATCCTGGCTTACCCGTATGTGTTGTGACAGATACTGTGAATCATGACCTACCCGTATGTGTTGTGACGTACAAC
TTGAATCCCGACTTACCAGTTTGTGTTGTGACATATACACTGAATCCTGACTTACCCTTCTGTGTTGTGACATA
TACACTGAATCCTGACTTACCCTTCTGTGTTGTGACATATACACTGAATCCTGACTTAACCATAGTGTTGTGAT
GCGTCATCGACTSGATGTCATCCTATACATTTTTCCCATTTA
Quale è il frame di lettura corretto di questa sequenza codificante?
Non posso saperlo a priori...
BLAST – applicazioni speciali
•
Gapped-BLAST: porta avanti l’estensione delle HSP tenendo presente la
possibilità di introdure dei gap
•
PSI-BLAST: Position-Specific Iterated BLAST - effettua una ricerca iterativa
utilizzando le HSP per generare dei profili caratteristici della query
•
BL2SEQ: adattamento di BLAST per l’allineamento di coppie di sequenze
•
MEGABLAST: può concatenare molte queries tra loro per minimizzare il
tempo di esecuzione dovuto a queries molto lunghe (adatto per
l’allineamento di sequenze nucleotidiche molto lunghe, come regioni
cromosomiche, e sequenze ad alto grado di similarità)
•
Discontinuous MEGABLAST: simile a MEGABLAST ma ottimizzato per
sequenze divergenti, ad esempio regioni cromosomiche di specie
differenti
BLAST – applicazioni speciali
•
DELTA-BLAST: Domain Enhanced Lookup Time
Accelerated BLAST – implementazione di BLASTp
che utilizza un database di domini conservati
(CDD)
•
PHI-BLAST: Pattern Hit Initiated BLAST - estensione
di PSI-BLAST per la ricerca in banca dati di pattern
proteici più che di queru esatte
•
Magic BLAST: implementato recentemente per
l’allineamento di dati di Next Generation
Sequencing contro genomi di riferimento
BLAST – accessibilità web
•
https://blast.ncbi.nlm.nih.gov/Blast.cgi
•
Hostato sul portale dell’NCBI
BLAST – differenze rispetto a FASTA
•
La più importante differenza è l’indicizzazione di parole esatte in FASTA
contro quella dei w-mers in BLAST. Per questo motivo il numero di subject
ritrovati da FASTA nel database sarà molto ridotto e la strategia di
indicizzazione è un fattore molto limitante per FASTA
•
Tuttavia BLAST assegna i punteggi S sulla base di matrici di sostituzione e può
accadere che dei match inesatti ottengano degli score più alti di match
esatti della stessa lunghezza
•
Ad esempio, AIS-AIS = 12, mentre LSH-MSH = 14 utilizzando BLOSUM62
•
Per sequenze nucleotidiche l’indicizzazione dei w-mers ha poca rilevanza
•
Inoltre il W di default per BLASTn = 11, quindi tendenzialmente non verrà
rilevata similarità significativa a meno che non ci sia una stringa identica di
almeno 11 nucleotidi
•
Inoltre FASTA prevede l’inserzione di GAP già nei suoi primi step, BLAST
solamente in fase di elongation degli HSP
•
In sostanza, FASTA è indicato per sequenze nucleotidiche, NON per sequenze
amino acidiche che è sempre opportuno ricercare con BLAST
BLAST – applicazioni
•
Il metodo BLAST, dall'originaria formulazione ad oggi, ha rappresentato
un validissimo strumento d'analisi, che numerosi server bioinformatici
consentono di utilizzare on-line per ricerche nelle principali banche dati
•
Sono state sviluppate numerose applicazioni, basate sul metodo BLAST
ma ottimizzate per il tipo di ricerca, sonda e database nei quali si intenda
cercare sequenze omologhe. Gli algoritmi di BLAST sono stati
progressivamente potenziati, implementando nuove funzioni che
consentono, ad esempio, di adottare matrici definite sulla base del set di
dati in analisi o di integrare l'analisi di similarità con quella per pattern
•
Mentre nella maggior parte dei casi i biologi si connettono all’home
page dell’NCBI per effettuare ricerche di similarità all’interno di database
pubblicamente disponibili (nr, UniProt, GenBank, ecc.), tenete presente
che è spesso utile utilizzare BLAST in locale, cioè scaricando un
applicativo che permette la ricerca in database personalizzati e spesso
non ancora rilasciati pubblicamente
BLAST – applicazioni
•
Le applicazioni di BLASTp e BLASTn sono piuttosto intuitive
•
Più complesse sono quelle dei BLAST «speciali», BLASTx, tBLASTn e tBLASTx
•
Teniamo in considerazione che, dovendo lavorare su query e/o subject
tradotti nei sei possibili frames di lettura, le ricerche effettuate con questi
metodi saranno sensibilmente più lente rispetto ai BLASTn e BLASTp
canonici
•
BLASTx è indicato quando dispongo di una sequenza nucleotidica, che
presumo sia codificante e sono interessato a traovare l’identità della
proteina codificata sulla base della similarità con sequenze subject
proteiche presenti all’interno di un database
•
La sequenza query viene tradotta nei sei possibili frames di lettura, in
quanto non so né lo strand (+ o -), né il frame (+1/+2/+3) in cui inizia l’
Open reading Frame
•
Naturalmente se una sequenza nucleotidica non è codificante non
otterrò alcun risultato significativo
BLAST – applicazioni
•
tBLASTn al contrario è utilizzato per trovare regioni di similarità tra una
sequenza query proteica e delle sequenze subject nucleotidiche, che si
presume siano codificanti, almeno in parte (ad esempio mRNA, oppure
regioni cromosomiche che comprendono esoni)
•
Una possibile applicazione ad esempio riguarda l’annotazione di genomi e
trascrittomi
•
Questa può essere intesa sia come annotazione funzionale, cioè
l’assegnazione di un «nome» e, conseguentemente, di una presunta funzione
ad un gene o ad un trascitto
•
Ma può essere anche strutturale, ad esempio per trovare le regioni
genomiche che più probabilmente sono codificanti (cioè corrispondono ad
esoni di geni che poi vengono trascritti in mRNA e tradotti in proteine),
oppure per distinguere 5’ e 3’ UTR dalla regione codificante in un mRNA
BLAST – applicazioni
•
Più semplicemente un tBLASTn mi potrebbe servire per trovare il gene o il
trascritto codificante la proteina A nella specie X (ad esempio un
orangutan) partendo dalla stessa proteina (ortologa) nella specie Y (ad
esempio l’uomo)
•
Oppure BLASTx mi potrebbe servire per capire che funzione abbia una
sequenza di mRNA molto espressa nel cervello dell’orangutan
confrontandola con tutte le proteine codificate dal genoma umano
•
Per questi confronti e per derivare conclusioni scientificamente valide
dobbiamo sempre tenere presenti i concetti fondamentali di similarità,
omologia, ortologia e paralogia
•
Tanto più due specie sono filogeneticamente vicine tanto più è probabile
che un e-value signficativo del BLAST significhi anche che due sequenze
di specie siano ortologhe, ma facciamo sempre attenzione alla possibile
presenza di paraloghi, alla convergenza evolutiva e a similarità locali (ad
eempio di domini che corrispondono ad una piccola parte della
sequenza query)
BLAST – applicazioni
•
tBLASTx è l’applicazione più complessa e, di conseguenza, anche quella
che richiede le tempistiche più lunghe, dal momento che sia la sequenza
query che le sequenze subject del database devono essere tradotte nei
6 possibili frames di lettura
•
Questa variante di BLAST va utilizzata quando voglio confrontare
sequenze nucleotidiche query presumibilmente codificanti con un
database nucleotidico che a sua volta presumibilmente contiene
sequenze codificanti
•
Può servire per: evidenziare similarità quando non sono sicuro di quale sia
il frame di lettura corretto di una sequenza nucleotidica query, o io abbia
dubbi sul fatto che sia codificante o meno
•
Dobbiamo tenere presente che la sensibilità del BLAST è estrememente
maggiore per sequenze proteiche rispetto a sequenze nucleotidiche
BLAST – sensibilità
•
Potenzialmente, due sequenze proteiche
identiche al 100% possono anche derivare
da due mRNA identici solamente al 60%
•
Questo
avviene
a
causa
della
degenerazione del codice genetico, cioè
alcuni aminoacidi possono essere codificati
da triplette di nucleotidi (codoni) differenti
•
Stringhe di 4 caratteri vs stringhe di 20
caratteri
•
Come abbiamo già visto, un allineamento
tra sequenze nucleotidiche usa score di
match/mismatch, mentre un allineamento
tra sequenze proteiche utilizza matrici di
sostituzione che meglio rappresentano la
vera rilevanza bologica di una sostituzione
Laddove sia possibile farlo è sempre meglio
tradurre le sequenze nucleotidiche in
proteine con uno dei 3 BLAST speciali per
aumentare la SENSIBILITA’ del metodo
TIPO DI BLAST
FINESTRA DOVE
INCOLLARE LA
SEQUENZA IN
FORMATO FASTA
DATABASE
D’INTERESSE –
MENU’ A TENDINA
LIMITAZIONE
RICERCA A SPECIE
O CAMPO
TASSONOMICO
BLAST SPECIALIZZATI
(VARIANO A
SECONDA DEL TIPO
DI BLAST)
RICERCA
PARAMETRI
INTERFACCIA WEB - DETTAGLI
•
Il menù a tendina mi permette di
selezionare uno dei database
disponibili tra quelli presenti nel
portale NCBI (N.B. Variano a
seconda che si tratti di DB
nucleotidici o proteici!)
•
Il menù organism mi permette di
limitare la ricerca a determinati
campi tassonomici (es. Uomo,
verebrati, mammiferi, eucarioti)
per rendere la ricerca più
specifica e, soprattutto, più rapida
(perchè il database da consultare
è più piccolo)
INTERFACCIA WEB - DETTAGLI
•
I parametri avanzati talvolta
vengono automticamente
aggiustati sulla base della sequnza
query
•
Posso limitare il numero massimo
di risultati da mostrare (Max target
sequences)
•
Posso limitare il massimo Expect
(per essere più stringente nella
ricerca)
•
Posso cambiare la matrice di
sostituzione (PAM/BLOSUM) dal
menu’ a tendina
•
Posso variare le gap penalties per
esistenza ed estensione
BLAST – INTEPRETAZIONE DEI RISULTATI
•
I 100 risultati più significativi vengono
riassunti come barre colorate in un grafico
simile a quello mostrato a fianco
•
La sequenza query è mostrata in alto
some una grossa barra azzurra
•
Le sequenze subject (i risultati) sono
mostrati sotto come barre più sottili
•
Il loro colore indica lo score di
allineamento (più sono tendenti a rosso,
più alto è, il nero indica uno score
scarsamente significativo)
•
Notate che le barre dei subject non
sempre coprono l’intera query
•
Nel caso a fianco la maggior parte degli
hit non trova similarità fino a posizione 600
BLAST – INTEPRETAZIONE DEI RISULTATI
•
Gli stessi risultati riassunti nel grafico sono anche elecanti in una tabella, in ordine
decrescente dal risultato più significativo a quello meno significativo (cioè in base all’evalue)
•
In sostanza più una sequenza subject ha un e-value vicino a zero, tanto più in alto nel
ranking sarà
• Ogni sequenza subject
mostra la descrizione per
esteso e l’accession ID.
Con un click è possibile
aprire la scheda di
GenBank o UniProt
corrispondente
• Vengono anche mostrati
score di allineamento,
query cover (la % della
query che trova match), evalue e % di identità
BLAST – INTEPRETAZIONE DEI RISULTATI
•
Nella terza ed ultima parte della pagina
dei risultati di BLAST sono mostrati gli
allineamenti nel dettaglio, come
mostrato in questo esempio
•
In alto ci sono i dati del subject
•
Vengono poi riportati i dettagli del
match, come nella tabella riassuntiva
•
Notate che per sequenze proteiche
oltre al numero di identità è riportato
anche il numero di «positives» (indicati
nell’allineamento da un simbolo (+)
•
Sono indicati anche il numero di gap e
la loro %
•
Infine è indicato il frame. Nell’esempio
a fianco questa voce è presente in
quanto si tratta dell’output di un BLASTx,
mentre in un BLASTp questa voce non si
ritrova