Metodi euristici di allineamento

Documenti analoghi
FASTA: Lipman & Pearson (1985) BLAST: Altshul (1990) Algoritmi EURISTICI di allineamento

BLAST. W = word size T = threshold X = elongation S = HSP threshold

UNIVERSITÀ DEGLI STUDI DI MILANO. Bioinformatica. A.A semestre I. Allineamento veloce (euristiche)

Z-score. lo Z-score è definito come: Z-score = (opt query - M random)/ deviazione standard random

Quarta lezione. 1. Ricerca di omologhe in banche dati. 2. Programmi per la ricerca: FASTA BLAST

La ricerca di similarità: i metodi

Lezione 8. Ricerche in banche dati (databases) attraverso l uso di BLAST

Lezione 8. Ricerche in banche dati (databases) attraverso l uso di BLAST

FASTA. Lezione del

Laboratorio di Informatica 2004/ 2005 Corso di laurea in biotecnologie - Novara Viviana Patti Esercitazione 7 2.

Lezione 6. Ricerche in banche dati (databases) attraverso l uso di BLAST

La ricerca di similarità in banche dati

Ricerche con BLAST (Laboratorio)

Ricerca di omologia di sequenza

Le sequenze consenso

Algoritmi di Allineamento

Allineamento e similarità di sequenze

Programmazione dinamica

SAGA: sequence alignment by genetic algorithm. ALESSANDRO PIETRELLI Soft Computing

BLAST: Basic Local Alignment Search Tool

Università degli studi di Pisa

InfoBioLab I ENTREZ. ES 1: Ricerca di sequenze di aminoacidi in banche dati biologiche

La distribuzione dei veri e falsi positivi la ricerca della giusta soglia

Bioinformatics more basic notions

Allineamenti a coppie

Informatica e biotecnologie

Esercizio: Ricerca di sequenze in banche dati e allineamento multiplo (adattato da una lezione del Prof. Paiardini)

Bioinformatica ed applicazioni di bioinformatica strutturale!

Corso di Bioinformatica

UTILIZZO DI BLAST PER ALCUNE SEMPLICI APPLICAZIONI IN STUDI GENOMICI

Informatica e Bioinformatica: Basi di Dati

Lezione 6. Lo string matching

Lezione 2 (10/03/2010): Allineamento di sequenze (parte 1) Antonella Meloni:

Il progetto Genoma Umano è iniziato nel E stato possibile perchè nel 1986 era stato sviluppato il sequenziamento automatizzato del DNA.

Informatica e biotecnologie II parte

Pairwise Sequence Alignment BIOINFORMATICA. Corso di Laurea in Ingegneria Informatica e Biomedica. Università Magna Graecia Catanzaro

Lezione 7. Allineamento di sequenze biologiche

Biologia Molecolare Computazionale

Lezione 6. Analisi di sequenze biologiche e ricerche in database

ALLINEAMENTO DI SEQUENZE

Lezione 2: Allineamento di sequenze. BLAST e CLUSTALW

Informatica e Bioinformatica A. A

Allineamento multiplo di sequenze

Lezione 7. Allineamento di sequenze biologiche

Allineamenti Multipli di Sequenze

Programmazione dinamica

ESERCITAZIONE 3. OBIETTIVO: Ricerca di omologhe mediante i programmi FASTA e BLAST

Allineamento locale: BLAST

Allineamenti multipli

Cerca la tua sequenza ed analizzala. 4-Utilizzando l intera sequenza NM_ quante ORF trovate nella ORF +3?

Database biologici (banche di dati biologici)

GENERAZIONE DI NUMERI PSEUDOCASUALI

q xi Modelli probabilis-ci Lanciando un dado abbiamo sei parametri p i >0;

31/05/2007. Omologia. Evoluzione: Mutabilità e Selezione Naturale. Similarità. Sequenze omologhe sono sempre simili?

Un approccio informatico per lo studio

Il Corso sarà tenuto nei giorni di Lunedì, Mercoledì e Venerdì dalle ore 17 alle ore 19.

Il calcolo del VAR operativo mediante la metodologia stocastica parametrica. Simona Cosma

Lezione 7. Allineamento di sequenze biologiche

Materiale accessorio al Power Point ALLINEAMENTI DI SEQUENZE_2008. Corso di Bioinformatica per Biotecnologie (G. Colonna).

Bioinformatica. Analisi del genoma

Uso di BLAST. Premessa

Allineamento di sequenze di DNA e proteine: possibilità, limiti ed interpretazione

Concetti di teoria dei campioni ad uso degli studenti di Statistica Economica e Finanziaria, A.A. 2017/2018. Giovanni Lafratta

Metodi statistici per le ricerche di mercato

Come si sceglie l algoritmo di allineamento? hanno pezzi di struttura simili? appartengono alla stessa famiglia? svolgono la stessa funzione?

Riconoscimento e recupero dell informazione per bioinformatica

FACOLTA DI INGEGNERIA INGEGNERIA INFORMATICA A.A. 2008/2009. Corso VISIONE E PERCEZIONE. Docente. Prof. FIORA PIRRI. Tutor MATIA PIZZOLI

MODELLO SCHEDA INSEGNAMENTO. II II Luigi Cerulo

Allineamenti di sequenze: concetti e algoritmi

Imputazione dati mancanti

L A B C di R. Stefano Leonardi c Dipartimento di Scienze Ambientali Università di Parma Parma, 9 febbraio 2010

Modello computazionale per la predizione di siti di legame per fattori di trascrizione

Perché considerare la struttura 3D di una proteina

local alignment Highly sensitive FASTA BLAST Based on similarity matrices (PAM o BLOSUM)

Metodi statistici per le ricerche di mercato

Compressione Delta mediante l algoritmo LZSS

Allineamenti multipli

Statistica inferenziale. La statistica inferenziale consente di verificare le ipotesi sulla popolazione a partire dai dati osservati sul campione.

ALLINEAMENTO DI SEQUENZE

Riconoscimento e recupero dell informazione per bioinformatica

Concetti di teoria dei campioni ad uso degli studenti di Statistica Economica e Finanziaria, A.A. 2016/2017. Giovanni Lafratta

DISTRIBUZIONI DISTRIBUZIONE DI GAUSS

Informatica 3. Informatica 3. LEZIONE 21: Ricerca su liste e tecniche di hashing. Lezione 21 - Modulo 1. Introduzione (1) Introduzione (2) Ricerca:

Un processo a supporto della classificazione di pagine client Anno Accademico 2006/2007

Encryption and compression for collections of text files* Dott. Ferdinando Montecuollo Università degli Studi della Campania «Luigi Vanvitelli»

Ipotizzo una sezione per la struttura, che successivamente verrà modificata in base al dimensionamento delle aste:

Il processo inferenziale consente di generalizzare, con un certo grado di sicurezza, i risultati ottenuti osservando uno o più campioni

CALCOLO DELL ERRORE E VALUTAZIONE DI UN METODO ANALITICO

Regole associative Mario Guarracino Laboratorio di Sistemi Informativi Aziendali a.a. 2006/2007

BLAND-ALTMAN PLOT. + X 2i 2 la differenza ( d ) tra le due misure per ognuno degli n campioni; d i. X i. = X 1i. X 2i

CAPITOLO 1 LA FUNZIONE DI PRODUZIONE E LA CRESCITA ECONOMICA

A W T V A S A V R T S I A Y T V A A A V R T S I A Y T V A A A V L T S I

Esercizi di introduzione alla programmazione

L'analisi bivariata (analisi della varianza e correlazione) Prof. Stefano Nobile. Corso di Metodologia della ricerca sociale

Matematica finanziaria

Corso di Bioinformatica e analisi dei genomi, docente Silvia Fuselli. Esercizi ricerche in banche dati

Funzioni booleane. Vitoantonio Bevilacqua.

Il metodo Monte Carlo. Numeri (pseudo)casuali. Esempio di transizione al caos. Analisi dati in Fisica Subnucleare. Introduzione al metodo Monte Carlo

Quanti soggetti devono essere selezionati?

Transcript:

Metodi euristici di allineamento

Algoritmi euristici di allineamento Sono nati insieme alle banche dati, con lo scopo di permettere una ricerca rapida, anche se meno accurata, utilizzando la similarità a coppie (o pairwise ) sulle migliaia di sequenze depositate. Attualmente i programmi più utilizzati sono: FASTA: Lipman & Pearson (985) Nasce con il nome di FAST-P (ricerca veloce di proteine), ma poi viene adattato per gli acidi nucleici (FAST-N), quindi riunito in un FAST per tutti, FAST-A, o semplicemente FASTA. http://www.ebi.ac.uk/tools/fasta33/index.html BLAST: Altshul (99) Il Basic Local Analysis Search Tool viene pensato http://blast.ncbi.nlm.nih.gov/blast.cgi

FASTA Il frontend più utilizzato di FASTA è quello disponibile presso la EBI: l interfaccia web permette di configurare il programma e di ottenere in diretta o tramite e-mail i risultati.

Metodo dell indicizzazione L algoritmo implementato in FASTA si basa su una strategia di indicizzazione delle parole e sul concetto di Lookup Table : la proteina QUERY viene spezzettata in parole di lunghezza ktup (k-tuples) e la query viene così indicizzata (cioè si memorizzano solo gli indici, non la coppia). ELDERILGEVQTFDERIKGD.EL 2.LD 3.DE 4.DE 4.ER 5.ER 5.RI 6.IL 7.LG... 2.GD ktup = 2 Maggiore è il valore ktup più rapida e meno accurata sarà la ricerca. Per una proteina a ktup = 2 potrò avere al massimo 2 2 = 4 combinazioni, sempre.

Lookup tables e offset (diagonali) Ogni SUBJECT della banca dati viene pre-indicizzata con la stessa k-tup, e si procede, data la query e ciascuna subject, alla creazione delle tabelle degli offset (indice della query meno indice della subject). Le diagonali che totalizzano il miglior punteggio (in generale almeno ) vengono registrate. ------------------- QUERY ------------------ ------------SUBJECT--------- ER 2RI 3IL 4LD 5DE 6EV EL - -2-3 -4-5 2LD - -2-3 -4 3DE 2 - -2-3 4ER 3 2-2 5RI 4 3 2-6IL 5 4 3 2 7LG 6 5 4 3 2 8GE 7 6 5 4 3 2 9EV 8 7 6 5 4 3 Total = 3 Offset = 3 Total= 2 Offset = -2 Essendo somme di coppie, il numero di conteggi da fare non è più il prodotto delle lunghezze, bensì qualcosa di simile alla somma delle due, con un netto decremento del tempo di calcolo.

Scelta euristica dei subject I conteggi per calcolare le migliori diagonali sono semplici somme i cui valori vengono presi da matrici di sostituzione (es. PAM, BLOSUM). Le migliori diagonali identificano le Best Initial Regions, i cui punteggi sono definiti Init. Query Query Subject Subject Per ogni subject ho uno score che definisce la similarità media della query con ogni subject: in pratica, dato un Init minimo, vengono scelte in modo euristico delle sequenze candidate per analisi più approfondite.

Congiungimento delle diagonali Il passaggio successivo di FASTA è il tentativo di congiungere al meglio ogni BIR dei subject prescelti utilizzando criteri come: - Esclusione di eventuali overlap fra regioni - Punteggio superiore ad un "valore-soglia - Punteggi di penalizzazione (es. -6) per i gap Query Subject Subject Le regioni vengono allungate e avranno un nuovo score, detto InitN. Questa è una seconda soglia di scelta, alcune sequenze non passeranno questo test e verranno a loro volta scartate.

Refinement finale con pairwise esaustivo Alla fine tutta la regione della subject riconosciuta come simile viene allineata mediante l algoritmo di Smith & Waterman, tenendo una finestra di analisi intorno alla diagonale principale abbastanza stretta (< 2 residui). Query Query Subject Subject Lo score definitivo deriva quindi da una allineamento pairwise esaustivo, ed è definito Opt.

Query Query Subject Subject Fase : Indicizzazione col metodo lookup table Query Fase 2 : Calcolo degli Init, generazione delle bits Query Subject Subject Fase 3: Definizione delle sequenze da approfondire, calcolo degli InitN Fase 4 : Smith-Waterman (Opt)

Analisi Monte Carlo per la significatività Si cerca di valutare quanto il risultato che ottengo è significativo, considerando l ipotesi alternativa che il risultato ottenuto sia dovuto al caso. Il concetto da tenere presente è che il risultato che si ottiene è dovuto agli aminoacidi che sono disposti in un certo ordine: se cambio l ordine, lo score si dovrebbe perdere: Monte Carlo:. Prendere ogni subject, registrare lo score (X) 2. Produrre -2 versioni randomizzate di questo 3. Allineare ogni random con fasta, registrando gli Opt (y) 4. Calcolare la media (Y) e la deviazione standard (W) degli score Opt calcolati in 3. X-Y 5. Standardizzare calcolando lo Z-score Z = W Per z < 3 l'omologia NON è statisticamente significativa Per 3 < z < 6 l'omologia è POSSIBILMENTE statisticamente significativa Per 6 < z < l'omologia è PROBABILMENTE statisticamente significativa Per z > l'omologia è statisticamente significativa In ogni caso non si può definire un p-value esatto perchè non si può sapere la distribuzione di Z

La results page di FASTA

Modalità Show Alignment Premendo il bottone Show Alignments il risultato si arricchisce di dettagli: emergono i vari scores (init, initn, opt, Z-score) dell euristica, poi anche lo score dell esaustiva. Viene poi presentato anche l allineamento finale.

Il bit score Tutti gli score S che emergono dalle analisi FASTA (ma è una regola generale) restano confinati al singolo allineamento, e non sono comparabili tra allineamenti diversi. Il sistema dei punteggi (dato dalla matrice di sostituzione e dalle gap penalties) è però comune per tutti, quindi esiste un modo per convertire uno score S in un bit score S utile per i confronti tra allineamenti diversi. S' = λ*s - ln K ln 2 λ e K sono i due fattori di conversione da utilizzare, e sono stati calcolati secondo regole statistiche precise. da Bioinformatics: Sequence and Genome Analysis - David W. Mount CSHL Press

Basic Local Alignment Search Tool (BLAST) Il punto di accesso più utilizzato per eseguire chiamate BLAST è presso l NCBI. Come per FASTA la maschera permette di impostare i parametri di ricerca e di significatività minima richiesta. E inoltre possibile scegliere il tipo di algoritmo BLAST da utilizzare.

Indicizzazione in BLAST Anche BLAST basa la sua euristica sull indicizzazione, ma introduce una sofisticazione a livello dei k-tuples, che qui vengono chiamati word. Si inizia con la creazione di un elenco di parole di lunghezza W dalla query e creazione di w-mers, cioè parole di lunghezza W che diano, secondo una matrice di sostituzione uno score > T se allineati sulla query stessa. TFDER LSH GVQQTFWECIKGD VSH = 6 ISH = 4 LAH = 3 LTH = 3 LSH = 3 Word size (W) = 3 Threshold (T) = 3 Per ogni parola vengono generati anche tutti i possibili w-mers, quindi ci sono molte più parole che in FASTA.

Ricerca delle hits La ricerca è basata sempre sulle diagonali, ma dato che si hanno molte words sinonime, verranno segnati dei match positivi (hits) anche se non sono word identiche. In ogni caso gli indici fanno riferimento alla word vera della query, non dei suoi sinonimi. Ottengo così una lista di proteine in cui è stata trovata una corrispondenza con i frammenti della query. ------------SUBJECT--------- ---------------------------- QUERY ------------------------------ EK 2KI 3IL 4LD 5DE 6EV EL- EV-EI- DL-DI - -2-3 -4-5 2 LD- LE-VE- VD-ID - -2-3 -4 3 DE- ED 2 - -2-3 4 ER- EK-DR- DK 3 2-2 5 RI- KL-RL- RV-KI 4 3 2-6 IL- IV-II- LI-VL 5 4 3 2 7 LD- VD-ID 6 5 4 3 2 8 DE- ED 7 6 5 4 3 2 9 EV- EI-EL- DV-DL 8 7 6 5 4 3 Total = 6 Offset = 3 Total = 2 Offset = -2

Estensione senza gap gli HSP Una volta che le varie hits sono state trovate, BLAST inizia a congiungerle. IN questa fase NON è previsto l inserimento di gap. L allungamento si ferma quando lo score del tratto scende sotto una seconda soglia, detta S (se è alta l allungamento sarà minore). A questo punto si è individuato un HSP (High-scoring Segment Pair). In realtà anche se lo score scende sotto S, ma solo per alcuni residui, e poi risale, l HSP può ancora allungarsi. Il parametro X dice la quantità di perdita di score massima tollerabile se si prosegue con l allungamento dell HSP. hit hit hit Query:83 LMVAISNVGTDTLSHLEAQNKIKSASHNLSLTLQKSK +++AIS GT+++SH +AQ++IK+AS+ L L + ++ Subject:48 VILAISGFGTESMSHADAQDRIKAASYQLCLKIDRAE HSP

BLAST ha dunque 4 parametri fondamentali: W: word size, maggiore è il numero, minore è il numero di parole generate, minore è il tempo di esecuzione. Ma la sensibilità decresce sensibilmente. T: threshold, minore è il numero, maggiore è il numero di w-mers inclusi nella lista, maggiore è il tempo di esecuzione. Si ha però un incremento di sensibilità. S: score, minore è il numero, maggiore sarà la lunghezza degli HSP X: maggiore è il numero, più estesamente sarà osservato l intorno di una HSP, aumentando il tempo di esecuzione.

La statistica di BLAST Ciò che rende BLAST uno strumento molto efficace è l impronta statistica su cui si basa il parametro S, che in questo caso agisce su allineamenti locali senza gap. La statistica degli score in questo caso è nota e si basa su un modello di casualità che dipende dalla composizione del database in cui si cerca e dalla matrice di sostituzione usata. Dato un S in fatti è possibile prevedere quanti HSP di quella lunghezza m si osservano in una banca dati della stessa grandezza di quella vera ma composta da proteine casuali. Questo numero è definito E (expected), secondo E = K m n e -λs m e n indicano l ampiezza dell HSP e della banda dati, rispettivamente K e λ sono fattori di scala che dipendono dal sistema di scoring utilizzato => è molto più semplice pensare in termini di E che non in termini di S, quindi in realtà non si imposta S ma E.

La distribuzione degli scores Supponiamo di avere fatto un allineamento tra due sequenze, e di avere uno score S. Un modo per sapere se lo score è significativo, è quello di generare N sequenze casuali della stessa lunghezza, allinearle, calcolare la media e la deviazione standard degli scores ottenuti (Monte Carlo). Se implicitamente si assume che essi abbiano una distribuzione normale, si può calcolare la p(s) integrando In realtà, solo quelli che danno qualcosa di biologicamente rilevante vanno presi, eliminando gli score peggiori. Questo provoca una deviazione dalla normalità e definisce la distribuzione dei valori estremi.

La results page di BLAST Graphic summary Se BLAST riconosce una similarità ampia con una o più famiglie proteiche note, lo indica in modo grafico. E presente poi un summary grafico che permette di esplorare velocemente i primi hits mostrandoli allineati con la sequenza query.

La results page di BLAST Descriptions BLAST include nel suo output un riassunto testuale delle sequenze che sono state trovate: per ognuna mostra un link (in questo caso ad Entrez Protein), il nome, lo score (in bits) e L Expect value, secondo cui i risultati sono ordinati.

La results page di BLAST Alignments Sotto alle descrizini inziano i risultati veri e propri, ossia gli HSP: oltre alle note viste nelal descrizione, vengono riportate le identità, le similarità (Positives) e i gaps inseriti, se ce ne sono. Notare come gli allineamenti servano come spiegazione del risultato: il risultato è che la proteina è stata identificata, non è stata allineata

BLAST si è arricchito nel tempo BLAST è stato recentemente implementato con un two-hit method, che prevede che l estensione delle HSP possa avvenire solo se due hits indipendenti si verifichino entro un numero di residui A, senza gaps in mezzo. Sono nate inoltre varie versioni specializzate: blastp: cerca similarità in banche dati proteiche a partire da un a query di amino acidi. blastn: cerca similarità in banche dati di nucleotidi a partire da una query di nucleotidi. blastx: cerca similarità in banche dati proteiche a partire da una query di nucleotidi che viene tradotta in tutti i frame. tblastn: cerca similarità in banche dati di nucleotidi a partire da una query di amino acidi, traducendo in amino acidi tutti i subject della banca dati, in tutti frame. tblastx: cerca similarità in banche dati di nucleotidi a partire da una query di nucleotidi, traducendo in amino acidi tutti i subject della banca dati

BLAST si è arricchito nel tempo gapped-blast: porta avanti la fase di estensione delle HSP considerando la possibilità di inserzione dei gap. PSI-BLAST: effettua una ricerca iterativa utilizzando le HSP per generare dei profili caratteristici della query. PHI-BLAST: estensione di PSI-BLAST per la ricerca in banca dati di pattern proteici più che di query esatte. BL2SEQ: adattamento di blast per l allineamento a coppie MegaBLAST: può concatenare molte queries tra loro per minimizzare il tempo di esecuzione dovuto a sequenze query troppo lunghe (è adatto a sequenze nucleotidiche molto simili tra loro)

FASTA o BLAST? Gli algoritmi usati in BLAST e FASTA sono simili come strategia, ma molto diversi nei contenuti. Il fatto che Fasta indicizzi le query in modo esatto lo porta a ridurre di molto il numero di subject su cui lavorerà in seguito, e questo è una tappa limitante che BLAST non ha a causa dei w-mers. Però Blast crea i w-mers basati su una matrice quindi può accadere che match esatti diano meno score S di match non esatti: es. secondo la Blosum62 - il match perfetto AIS-AIS dà score 2 - lo score inesatto LSH-MSH dà score 4 => il secondo è premiato più del primo

Scelte consapevoli Per ricerche in banche dati nucleotidiche, l indicizzazione in w-mers simili ha poca rilevanza. Le basi infatti non sono mai con caratteristiche chimico fisiche simili Il valore W di default di BLAST per i nucleotidi è, il che lo porta a non riconoscere sequenze che condividano in modo esatto meno di basi, è questo è un limite grosso (ma quello è il default ). Fasta è molto più tollerante per sequenze che presentano gaps, visto che già nelle prime fasi prevede il loro inserimento, mentre BLAST li inserisce solo in fase di allungamento. FASTA è più adatto a ricerche in banche dati nucleotidiche BLAST è più adatto a ricerche in banche dati proteiche Anche se questa regola è un po troppo arbitraria...