Riconoscimento e recupero dell informazione per bioinformatica
|
|
|
- Carmela Martinelli
- 9 anni fa
- Просмотров:
Транскрипт
1 Riconoscimento e recupero dell informazione per bioinformatica Filogenesi Manuele Bicego Corso di Laurea in Bioinformatica Dipartimento di Informatica - Università di Verona Sommario Introduzione alla filogenesi I tipi di alberi I passi della filogenesi (creazione del dataset) allineamento albero (scelta del modello evolutivo e del metodo di clustering) validazione 2 1
2 Introduzione Filogenesi: la scienza che studia l evoluzione e le relazioni evolutive degli organismi attraverso l analisi e il confronto di sequenze proteiche o nucleotidiche Lo scopo è inferire le relazioni genealogiche tra gli organismi Il risultato di un analisi filogenetica è un albero, detto albero filogenetico Gli organismi analizzati si chiamano in generale taxa (l analisi comparativa di taxa è detta taxonomy) 3 L albero filogenetico Il risultato di un analisi filogenetica Le foglie sono le sequenze da cui l albero è stato derivato Un nodo interno rappresenta l antenato comune di tutte le specie che stanno nel relativo sottoalbero (In generale) la lunghezza di un ramo misura la divergenza evolutiva (o la quantità di evoluzione) tra i due nodi che connette Più lungo è il ramo maggiore è l evoluzione intercorsa tra l antenato e le foglie Eccezione: il cladogramma: tutti i nodi allineati 4 2
3 Tipi di albero Due rappresentazioni equivalenti 5 Nota: rotazioni sui nodi non cambiano l albero 6 3
4 Alberi con o senza radice: Tipi di albero La radice è l elemento più lontano evolutivamente, difficile da scegliere Di solito si sceglie un elemento che non c entra nulla con le specie analizzate (outgroup) Oppure si lascia l albero unrooted 7 Passi di un analisi filogenetica 1. Costruire il dataset Ottenere le sequenze geniche o proteiche degli organismi in esame 2. Allineamento multiplo di sequenze Registrare le sequenze tra di loro (inserire gap) 3. Clustering e costruzione dell albero Derivare l albero filogenetico 4. Validazione Determinare la robustezza dell albero 8 4
5 Step 1: Costruire il dataset Problema complesso ma non rilevante per questo corso Una sola considerazione: Occorre scegliere se analizzare le sequenze geniche o le sequenze proteiche Sequenze geniche: informazione dettagliata ma rumorosa: adatte a trovare relazioni tra organismi evolutivamente vicini Sequenze proteiche: informazione grezza ma pulita: adatte a trovare relazioni generali Si può anche pensare di fondere le due fonti di informazione 9 Step 2: Allineamento Allineamento tra due sequenze: trovare un sistema di riferimento comune, inserendo gap (-) CAGATCTTGACGATCCCAAGTGGTTCATTGGCTTTAGATGAAG TACCGATCTTGACGATCCCAAGTCATTGGCTTTAGATGAAG CAGATCTTGACGATCCCAAGTGGTTCATTGGCTTTAGATGAAG CAGATCTTCACGATCCCAAGTGGTTCATTGGCTTTAGAT CA--GATCTTGACGATCCCAAGTGGTTCATTGGCTTTAGATGAAG TACCGATCTTGACGATCCCAAG----TCATTGGCTTTAGATGAAG CA--GATCTTGACGATCCCAAGTGGTTCATTGGCTTTAGATGAAG CA -GATCTTCACGATCCCAAGTGGTTCATTGGCTTTAGAT---- Problema: occorre allineare simultaneamente molte sequenze Soluzione: Progressive sequence alignment 10 5
6 Step 2: Allineamento Progressive Sequence Alignment IDEA: Allineare le sequenze passo dopo passo, aggiungendo ogni volta all allineamento una sola sequenza La sequenza considerata ad ogni iterazione è la più simile alle sequenze già considerate Necessità di un albero grezzo che faccia da guida (che determini l ordine in cui le sequenze vengono aggiunte all allineamento) 11 Step 2: Allineamento Regola principale della tecnica Progressive Sequence Alignment: Once a gap always a gap I gap possono solo essere aggiunti o allargati, ma mai rimossi Motivazioni Biologica) Si basa sull assunzione che la miglior informazione su dove mettere i gap si può trovare solo tra le sequenze più simili Computazionale) il metodo risulta essere enormemente più veloce Problema: a volte ad allineamento finito si riesce a vedere meglio dove piazzare i gap Soluzione: programmi come BioEdit che permettono di editare l allineamento 12 6
7 Due classi generali di approcci utilizzati: Metodi tree-searching Vanno a cercare l albero migliore nel tree space (lo spazio di tutti gli alberi), in modo da ottimizzare un particolare criterio Metodi distance-based Partono da una matrice di distanza, e sono basati su metodi di clustering 13 Step 3: costruzione dell albero Metodi tree-searching: due approcci principali: Maximum Parsimony: trova l albero che minimizza il numero di eventi evolutivi (mutazioni) dall organismo ancestrale PRO: può gestire facilmente inserzioni e cancellazioni PRO: in alcune condizioni è molto efficiente CONTRO: se l albero vero ha un particolare tipo di struttura, la tecnica MP può fallire Maximum Likelihood: Dato un modello evolutivo, questo metodo seleziona l ipotesi (l albero) che meglio spiega i dati osservati PRO: produce risultati molto accurati CONTRO: lento (ricerca nel tree-space) Possibili estensioni con modelli Bayesiani (MCMC) 14 7
8 Metodi distance-based Viene calcolata una distanza evolutiva tra tutte le coppie di sequenze. La distanza si chiama evolutiva perché tiene conto di un modello evolutivo L albero filogenetico viene costruito a partire da questa matrice di distanza Utilizzo di metodi di clustering generici (UPGMA) Utilizzo di metodi nati ad hoc per la filogenesi (Neighbor Joining) 15 Step 3: costruzione dell albero Calcolo delle distanze e modelli evolutivi Il calcolo della distanza si basa tipicamente sul numero di sostituzioni che ci sono tra le due sequenze (numero di caratteri diversi) Diversi modelli evolutivi a seconda di: Considerare il numero totale di siti analizzati Considerare diversamente transizioni e transversioni (mutazioni tra strutture chimiche simili o diverse: purine (A,G) e pirimidine (C,T)) Considera o meno la frequenza con cui i nucleotidi appaiono Considera o meno la frequenza con cui abbiamo transversioni rispetto a transizioni 16 8
9 Distanze semplici: Number of differences: numero di siti dove le due sequenze differiscono P-distance Percentuale di siti nucleotidici dove le due sequenze sono differenti Nessuna assunzione, solo normalizza sulla lunghezza 17 Step 3: costruzione dell albero Distanze più complesse: assumono un modello di sostituzione (cioè un modello che mi dice quanto pesare una sostituzione) Jukes-Cantor 1 parametro, quanto peso dare ad una sostituzione 18 9
10 Distanza Tajima-Nei Pesa in modo diverso le sostituzioni tenendo conto della frequenza che i nucleotidi hanno all interno delle sequenze Distanza di Kimura Pesa in modo diverso le transversioni dalle transizioni 19 Step 3: costruzione dell albero Ci sono distanze simili per il confronto di due sequenze proteiche NOTA Cambiando la distanza cambiano i risultati La scelta deve avvenire considerando anche le informazioni a priori Ci sono molte altre distanze, proposte negli ultimi anni, che tengono conto di altri fattori ESEMPIO: Contenuto in GC 20 10
11 Costruzione dell albero: clustering a partire dalla matrice delle distanze Molte diverse tecniche Approccio di base: UPGMA (Unweighted pair group method using arithmetic averages) Classico algoritmo agglomerativo gerarchico La distanza tra cluster è definita come la media delle distanze di tutte le possibili coppie formate da un punto del primo e un punto del secondo Da un punto di vista biologico è piuttosto povero: assume un rate di evoluzione costante 21 Step 3: costruzione dell albero Neighbor Joining: approccio largamente utilizzato IDEA: funziona similarmente al metodo UPGMA Trova i clusters C1 e C2 che minimizzano una funzione f(c1,c2) Unisce i due cluster C1 e C2 in un nuovo cluster C Aggiunge un nodo nell albero corrispondente a C Assegna le distanze ai nuovi rami Le differenze rispetto all UPGMA sono relative a: La scelta della funzione f(c1, C2) Come assegnare le distanze ai rami 22 11
12 Criterio da ottimizzare Invece di scegliere i cluster Ci e Cj più vicini tra di loro, il neighbor joining allo stesso tempo: minimizza la distanza tra i cluster Ci e Cj e massimizza la separazione di Ci e Cj (entrambi) dagli altri cluster Distanze dei rami: Calcola esplicitamente la lunghezza dei rami 23 Step 3: costruzione dell albero L algoritmo: Iterativamente 0. Si parte dalla matrice delle distanze d 1. Ripetere i seguenti passi: Data la matrice di distanze d corrente (su r taxa / clusters) viene calcolata la matrice Q: (distanza tra cluster Ci e Cj meno la distanza tra Ci e Cj e tutto il resto) 24 12
13 Viene trovata la coppia di taxa / cluster che minimizza la funzione Q Viene creato un nodo dell albero che unisce questi due cluster Viene calcolata la distanza tra i due cluster della coppia e il nuovo nodo Siano Cf e Cg i cluster uniti, u il nuovo nodo che li contiene Questa distanza rappresenta la lunghezza dei rami che uniscono il nuovo nodo e i due cluster uniti 25 Step 3: costruzione dell albero La matrice delle distanze viene ridotta: Vengono eliminate le colonne e le righe relative ai cluster Cf e Cg Viene calcolata la distanza tra il nuovo cluster e tutti gli altri (distanza tra Cf e Ck meno la distanza tra Cf e il nodo u) Si prosegue fino alla fine del clustering 26 13
14 Vantaggi del Neighbor Joining Basato sul criterio di evoluzione minima : ad ogni iterazione viene scelta la topologia che produce il ramo più corto (l evoluzione minore) Molto veloce (complessità polinomiale), applicabile anche a dataset molto grandi Non assume un rate di evoluzione costante (diversamente dall UPGMA) Statisticamente consistente con molti modelli evolutivi Svantaggi: È un algoritmo greedy (sub ottimale) Esistono tecniche molto più complesse che posso superare le prestazioni del neighbor joining 27 Step 4: validazione PROBLEMA: Come validare un albero filogenetico: è affidabile? Soluzione più utilizzata: il bootstrap Essenzialmente testa se il dataset supporta l albero trovato o se esso non è altro che vincitore marginale rispetto ad alternative più o meno equivalenti IDEA del bootstrap Vengono creati M nuovi data set campionando casualmente N colonne (con rimpiazzo) in questo modo in ogni dataset generato contiene lo stesso insieme di specie, con alcuni dei nucleotidi duplicati e con altri rimossi Si assume che ogni sito sia evoluto indipendentemente dato l albero Per ogni data set viene costruito l albero filogenetico 28 14
15 Step 4: validazione 29 Step 4: validazione Alla fine della procedura Viene calcolata la frequenza con cui ogni sottogruppo dell albero viene ripetuta Questa indica la robustezza di un raggruppamento (>95% è affidabile) 30 15
Alberi filogenetici. File: alberi_filogenetici.odp. Riccardo Percudani 02/03/04
Alberi filogenetici The tree of life Albero filogenetico costruito con le sequenze della subunità piccola dell RNA ribosomale. Tutte le forme viventi condividono un comune ancestore (LCA, last common ancestor
Riconoscimento e recupero dell informazione per bioinformatica
Riconoscimento e recupero dell informazione per bioinformatica Clustering Manuele Bicego Corso di Laurea in Bioinformatica Dipartimento di Informatica - Università di Verona Una definizione possibile [Jain
SAGA: sequence alignment by genetic algorithm. ALESSANDRO PIETRELLI Soft Computing
SAGA: sequence alignment by genetic algorithm ALESSANDRO PIETRELLI Soft Computing Bologna, 25 Maggio 2007 Multi Allineamento di Sequenze (MSAs) Cosa sono? A cosa servono? Come vengono calcolati Multi Allineamento
Algoritmi di Allineamento
Algoritmi di Allineamento CORSO DI BIOINFORMATICA Corso di Laurea in Biotecnologie Università Magna Graecia Catanzaro Outline Similarità Allineamento Omologia Allineamento di Coppie di Sequenze Allineamento
Filogenesi molecolare
Filogenesi molecolare Geni ortologhi e geni paraloghi Geni ortologhi: geni simili riscontrabili in organismi correlati tra loro. Il fenomeno della speciazione porta alla divergenza dei geni e quindi delle
Corso di Bioinformatica. Docente: Dr. Antinisca DI MARCO
Corso di Bioinformatica Docente: Dr. Antinisca DI MARCO Email: [email protected] Analisi Filogenetica Gene Ancestrale duplicazione genica La filogenesi è lo studio delle relazioni evolutive tra
Metodi di Distanza. G.Allegrucci riproduzione vietata
Metodi di Distanza La misura più semplice della distanza tra due sequenze nucleotidiche è contare il numero di siti nucleotidici che differiscono tra le due sequenze Quando confrontiamo siti omologhi in
Cluster Analysis. La Cluster Analysis è il processo attraverso il quale vengono individuati raggruppamenti dei dati. per modellare!
La Cluster Analysis è il processo attraverso il quale vengono individuati raggruppamenti dei dati. Le tecniche di cluster analysis vengono usate per esplorare i dati e non per modellare! La cluster analysis
Riconoscimento e recupero dell informazione per bioinformatica. Clustering: validazione. Manuele Bicego
Riconoscimento e recupero dell informazione per bioinformatica Clustering: validazione Manuele Bicego Corso di Laurea in Bioinformatica Dipartimento di Informatica - Università di Verona Sommario Definizione
Introduzione all analisi di arrays: clustering.
Statistica per la Ricerca Sperimentale Introduzione all analisi di arrays: clustering. Lezione 2-14 Marzo 2006 Stefano Moretti Dipartimento di Matematica, Università di Genova e Unità di Epidemiologia
ALBERI FILOGENETICI. Genetica delle popolazioni a.a. 11-12 prof. S. Presciuttini
ALBERI FILOGENETICI Questo documento è pubblicato sotto licenza Creative Commons Attribuzione Non commerciale Condividi allo stesso modo http://creativecommons.org/licenses/by-nc-sa/2.5/deed.it Che cosa
Metodi per la Ricostruzione Filogenetica. Giuliana Allegrucci riproduzione vietata
Metodi per la Ricostruzione Filogenetica Ricostruire una filogenesi significa trovare la migliore stima delle relazioni evolutive storiche fra entità tassonomiche usando i dati disponibili. I dati di base
Perché considerare la struttura 3D di una proteina
Modelling Perché considerare la struttura 3D di una proteina Implicazioni in vari campi : biologia, evoluzione, biotecnologie, medicina, chimica farmaceutica... Metodi di studio della struttura di una
Algoritmi Greedy. Tecniche Algoritmiche: tecnica greedy (o golosa) Un esempio
Algoritmi Greedy Tecniche Algoritmiche: tecnica greedy (o golosa) Idea: per trovare una soluzione globalmente ottima, scegli ripetutamente soluzioni ottime localmente Un esempio Input: lista di interi
Derivazione numerica. Introduzione al calcolo numerico. Derivazione numerica (II) Derivazione numerica (III)
Derivazione numerica Introduzione al calcolo numerico Il calcolo della derivata di una funzione in un punto implica un processo al limite che può solo essere approssimato da un calcolatore. Supponiamo
INDICI PER FILE. Accesso secondario. Strutture ausiliarie di accesso
INDICI PER FILE Strutture ausiliarie di accesso 2 Accesso secondario Diamo per scontato che esista già un file con una certa organizzazione primaria con dati non ordinati, ordinati o organizzati secondo
Progettazione di Algoritmi
Corso di laurea in Informatica Prova scritta del: Progettazione di Algoritmi 29/01/2016 Prof. De Prisco Inserire i propri dati nell apposito spazio. Non voltare la finché non sarà dato il via. Dal via
Cenni di apprendimento in Reti Bayesiane
Sistemi Intelligenti 216 Cenni di apprendimento in Reti Bayesiane Esistono diverse varianti di compiti di apprendimento La struttura della rete può essere nota o sconosciuta Esempi di apprendimento possono
Corso di Intelligenza Artificiale A.A. 2016/2017
Università degli Studi di Cagliari Corsi di Laurea Magistrale in Ing. Elettronica Corso di Intelligenza rtificiale.. 26/27 Esercizi sui metodi di apprendimento automatico. Si consideri la funzione ooleana
Genomics Session. Lezione 6. Filogenomica
Genomics Session Filogenomica Filogenetica Filogenesi: Ricostruzione della storia evolutiva Obiettivo: inferire la storia evolutiva fra entità biologiche mediante una serie di caratteri moderni osservati
Riconoscimento e recupero dell informazione per bioinformatica
Riconoscimento e recupero dell informazione per bioinformatica Clustering: similarità Manuele Bicego Corso di Laurea in Bioinformatica Dipartimento di Informatica - Università di Verona Sommario Definizioni
Genomica Evoluzione e cambiamenti dei genomi. Dott.ssa Inga Prokopenko
Genomica Evoluzione e cambiamenti dei genomi Dott.ssa Inga Prokopenko Sistematica in biologia La varietà degli organismi viventi richiede organizzaione delle nostre osservazioni Tassonomia in biologia
Multi classificatori. Prof. Matteo Golfarelli Alma Mater Studiorum - Università di Bologna
Multi classificatori Prof. Matteo Golfarelli Alma Mater Studiorum - Università di Bologna Combinazione di classificatori Idea: costruire più classificatori di base e predire la classe di appartenza di
FASTA: Lipman & Pearson (1985) BLAST: Altshul (1990) Algoritmi EURISTICI di allineamento
Algoritmi EURISTICI di allineamento Sono nati insieme alle banche dati, con lo scopo di permettere una ricerca per similarità rapida anche se meno accurata contro le migliaia di sequenze depositate. Attualmente
1) Codici convoluzionali. 2) Circuito codificatore. 3) Diagramma a stati e a traliccio. 4) Distanza libera. 5) Algoritmo di Viterbi
Argomenti della Lezione 1) Codici convoluzionali 2) Circuito codificatore 3) Diagramma a stati e a traliccio 4) Distanza libera 5) Algoritmo di Viterbi 1 Codici convoluzionali I codici convoluzionali sono
Il Branch & Bound. Definizione 1. Sia S R n. La famiglia S = {S 1, S 2,..., S k S} tale che S 1 S 2 S k = S viene detta suddivisione di S.
Il Branch & Bound Il metodo Branch & Bound è una tecnica che permette di risolvere all ottimo un generico problema di Programmazione Lineare Intera. Tale metodo si basa su due concetti cardine: quello
Lezione 6. Confronti fra sequenze: distanze, allineamenti
Lezione 6 Confronti fra sequenze: distanze, allineamenti tempo Sostituzioni nucleotidiche La distanza tra due sequenze si definisce come il numero atteso di sostituzioni nucleotidiche per sito. Se il tasso
Filogenesi molecolare
Filogenesi molecolare Evoluzione dei geni Gene ancestrale Gene duplicazione genica Gene speciazione Gene 1 Gene 1 ortologhi paraloghi ortologhi Gene 2 Gene 2 Specie 1 Specie 2 Proteine o acidi nucleici?
Programmazione dinamica
Programmazione dinamica Violetta Lonati Università degli studi di Milano Dipartimento di Informatica Laboratorio di algoritmi e strutture dati Corso di laurea in Informatica Violetta Lonati Programmazione
2.2 Alberi di supporto di costo ottimo
. Alberi di supporto di costo ottimo Problemi relativi ad alberi hanno numerose applicazioni: progettazione di reti (comunicazione, teleriscaldamento,...) protocolli reti IP memorizzazione compatta di
Il Problema dell Albero Ricoprente Minimo (Shortest Spanning Tree - SST)
Il Problema dell Albero Ricoprente Minimo (Shortest Spanning Tree - SST) È dato un grafo non orientato G=(V,E). Ad ogni arco e i E, i=1,,m, è associato un costo c i 0 7 14 4 10 9 11 8 12 6 13 5 17 3 2
METODI DELLA RICERCA OPERATIVA
Università degli Studi di Cagliari FACOLTA' DI INGEGNERIA CORSO DI METODI DELLA RICERCA OPERATIVA Dott.ing. Massimo Di Francesco ([email protected]) i i Dott.ing. Maria Ilaria Lunesu ([email protected])
PROBLEMA DEL COMMESSO VIAGGIATORE
PROBLEMA DEL COMMESSO VIAGGIATORE INTRODUZIONE Il problema del commesso viaggiatore (traveling salesman problem :TSP) è un classico problema di ottimizzazione che si pone ogni qual volta, dati un numero
Informatica II. Capitolo 16 Backtrack
Introduzione Informatica II Capitolo 16 Backtrack Abbiamo visto che esistono diverse classi di problemi (decisionali, di ricerca, di ottimizzazione) Sono tutte definizioni basate sul concetto di soluzione
Apprendimento Automatico
Apprendimento Automatico Fabio Aiolli www.math.unipd.it/~aiolli Sito web del corso www.math.unipd.it/~aiolli/corsi/1516/aa/aa.html Rappresentazione dei dati con i kernel Abbiamo una serie di oggetti S
Luigi Piroddi
Automazione industriale dispense del corso (a.a. 2008/2009) 8. Reti di Petri: rappresentazione algebrica Luigi Piroddi [email protected] Rappresentazione matriciale o algebrica E possibile analizzare
Appunti del corso di Informatica 1 (IN110 Fondamenti) 7 Grafi e alberi: introduzione
Università di Roma Tre Dipartimento di Matematica e Fisica Corso di Laurea in Matematica Appunti del corso di Informatica (IN0 Fondamenti) Grafi e alberi: introduzione Marco Liverani ([email protected])
Allineamento multiplo
Allineamento multiplo Allineamenti multipli Il modo migliore per conoscere le caratteristiche di una determinata famiglia è allineare molte proteine a funzione analoga. I siti funzionalmente o strutturalmente
BLAST. W = word size T = threshold X = elongation S = HSP threshold
BLAST Blast (Basic Local Aligment Search Tool) è un programma che cerca similarità locali utilizzando l algoritmo di Altschul et al. Anche Blast, come FASTA, funziona: 1. scomponendo la sequenza query
Grafi: definizioni e visite
Grafi: definizioni e visite Grafi (non orientati) Grafo (non orientato): G = (V, E) V = nodi (o vertici) E = archi fra coppie di nodi distinti. Modella relazioni fra coppie di oggetti. Parametri della
Problemi, algoritmi, calcolatore
Problemi, algoritmi, calcolatore Informatica e Programmazione Ingegneria Meccanica e dei Materiali Università degli Studi di Brescia Prof. Massimiliano Giacomin Problemi, algoritmi, calcolatori Introduzione
