Riconoscimento e recupero dell informazione per bioinformatica

Documenti analoghi
Riconoscimento e recupero dell informazione per bioinformatica

Riconoscimento e recupero dell informazione per bioinformatica

Riconoscimento e recupero dell informazione per bioinformatica

Riconoscimento e recupero dell informazione per bioinformatica

Riconoscimento e recupero dell informazione per bioinformatica. Clustering: validazione. Manuele Bicego

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

Riconoscimento e recupero dell informazione per bioinformatica

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

Intelligenza Artificiale. Clustering. Francesco Uliana. 14 gennaio 2011

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

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

Algoritmi di Allineamento

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

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

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

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

Teoria e Tecniche del Riconoscimento Clustering

Più nel dettaglio...

Allineamento multiplo di sequenze

FASTA. Lezione del

Cluster Analysis. La Cluster Analysis è il processo attraverso il quale vengono individuati raggruppamenti dei dati. per modellare!

Introduzione all analisi di arrays: clustering.

Pattern recognition. III Parte. Intelligenza Artificiale - Pattern Recognition 3

Ricerca di outlier. Prof. Matteo Golfarelli Alma Mater Studiorum - Università di Bologna

Riconoscimento automatico di oggetti (Pattern Recognition)

Metodologie di Clustering

Ricerca di omologia di sequenza

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

Riconoscimento e recupero dell informazione per bioinformatica

Le sequenze consenso

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

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

Apprendimento Automatico

Statistica per l Impresa

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

Informatica per la Comunicazione/ Verdicchio/ 22/05/2014/ Domande / VERSIONE 1

Tecniche di riconoscimento statistico

Apprendimento Automatico (Feature Selection e Kernel Learning)

La ricerca di similarità: i metodi

Cluster Analysis Distanze ed estrazioni Marco Perugini Milano-Bicocca

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

Bioinformatica. Analisi del genoma

Analisi di dati Microarray: Esercitazione Matlab

Indice generale. Introduzione. Capitolo 1 Essere uno scienziato dei dati... 1

Sistemi di Elaborazione dell Informazione 170. Caso Non Separabile

UTILIZZO DELL ANALISI DELLE COMPONENTI PRINCIPALI (PCA) DI DATI HVSR FINALIZZATO ALLA ZONAZIONE SISMICA

Riconoscimento e recupero dell informazione per bioinformatica

Riconoscimento e recupero dell informazione per bioinformatica

Training Set Test Set Find-S Dati Training Set Def: Errore Ideale Training Set Validation Set Test Set Dati

Algoritmi di classificazione supervisionati

Gestione e modellazione di dati bioinformatici

Laboratorio di Programmazione II Corso di Laurea in Bioinformatica Dipartimento di Informatica - Università di Verona

Machine Learning: apprendimento, generalizzazione e stima dell errore di generalizzazione

Reti Neurali in Generale

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

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

Computazione per l interazione naturale: macchine che apprendono

SDE Marco Riani

Apprendimento basato sulle istanze

Data Science A.A. 2018/2019

Laboratorio di Calcolo Numerico Laboratorio 3: Algoritmi stabili e instabili, Bisezione

Università degli studi di Pisa

Problemi algoritmici e Complessità degli algoritmi

Bioinformatica ed applicazioni di bioinformatica strutturale!

Query Languages. R. Basili. a.a

MODELLO SCHEDA INSEGNAMENTO. II II Luigi Cerulo

Misura della performance di ciascun modello: tasso di errore sul test set

Alberi filogenetici. File: alberi_filogenetici.odp. Riccardo Percudani 02/03/04

ANALISI DEI DATI PER IL MARKETING 2014

Obiettivo: assegnazione di osservazioni a gruppi di unità statistiche non definiti a priori e tali che:

Maria Brigida Ferraro + Luca Tardella

Allineamenti a coppie

Music Information Retrieval

Teoria e Tecniche del Riconoscimento

Applicazioni della SVD

RELAZIONE DI BIOLOGIA MOLECOLARE

Data mining: attività di scoperta di informazione latente all interno di un certo insieme di dati (tipicamente molto grande) Information retrieval

1) Codici convoluzionali. 2) Circuito codificatore. 3) Diagramma a stati e a traliccio. 4) Distanza libera. 5) Algoritmo di Viterbi

Programmazione dinamica

Modelli di recupero. Modello di recupero booleano

Corso di Laurea di Scienze biomolecolari e ambientali Laurea magistrale

Teoria e Tecniche del Riconoscimento

Clustering Mario Guarracino Data Mining a.a. 2010/2011

Data Mining and Machine Learning Lab. Lezione 8 Master in Data Science for Economics, Business and Finance 2018

Analisi esplorativa di dati multidimensionali

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

Bioinformatics more basic notions

Allineamento e similarità di sequenze

Computazione per l interazione naturale: macchine che apprendono

Distanza di Edit. Speaker: Antinisca Di Marco Data:

Sottosequenza comune piu' lunga (programmazione dinamica)

Data mining: attività di scoperta di informazione latente all interno di un certo insieme di dati (tipicamente molto grande) Information retrieval

Corso di Laurea Specialistica in Ingegneria Informatica

I metodi di Classificazione automatica

Linguistica Computazionale 2004 Presentazione del Corso

Computazione per l interazione naturale: macchine che apprendono

APPUNTI DI CLUSTER ANALYSIS (Paola Vicard)

Esercizio: apprendimento di congiunzioni di letterali

Transcript:

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 et al., ACM Computing Surveys, 1999] Il clustering rappresenta l organizzazione di un insieme di patterns (entità) in gruppi (clusters) sulla base della similarità Pattern: entità di interesse, come sequenze di geni, spettri di risonanza, i pattern in un gruppo sono tutti simili tra loro, i pattern di gruppi diversi sono invece differenti tra di loro I cluster sono insiemi di pattern simili Il processo è completamente non supervisionato Non è data nessuna informazione a priori sui gruppi 2

Nota Il termine data clustering rappresenta un concetto utilizzato in molte comunità: Pattern Recognition, Statistical Data Analysis, Machine Learning, Knowledge and Data Engineering, Psychology, Geology In ogni contesto ci sono diverse terminologie, assunzioni, ipotesi In generale, il significato comune è quello di metodi per raggruppare dati non etichettati (dati di cui non si conosce la categoria/la classe) In questo corso: il punto di visto della Pattern recognition Il più vicino alla bioinformatica / il più utilizzato in questo contesto 3

Intrinsecamente un problema mal posto Il clustering rappresenta l organizzazione di un insieme di patterns (entità) in gruppi (clusters) sulla base della similarità Qual è la similarità più appropriata? Cambiare la similarità cambia il risultato Cosa deve rappresentare un buon gruppo? Il concetto di gruppo è definito in modo vago e assolutamente soggettivo Il processo è non supervisionato: non sappiamo se facciamo giusto! (differentemente dalla classificazione) 4

Esempio: Oggetti da clusterizzare

Ci sono 2 gruppi: mele e pere

Altra possibilità: frutta rossa e frutta verde

Quindi Il concetto di cluster è vago Dipendentemente dalle misure di similarità utilizzate cambia il risultato La scelta della misura di similarità è cruciale. Dovrebbe essere fatta in modo da inglobare la maggior quantità possibile di informazione a priori. Il risultato può cambiare anche a seconda della metodologia utilizzata per fare clustering 8

Un tipico sistema di clustering

Un tipico sistema di clustering Data samples Pattern Representation Definition of similarity Results interpretation Clusters Validation Clustering Algorithm Design feedback 10 Clusters

Esempio guida: la filogenesi Filogenesi: inferire le relazioni genealogiche tra gli organismi clustering di sequenze geniche o proteiche 11

Rappresentazione dei Pattern Descrizione digitale del pattern (già vista) Concetti di tipo di pattern, tipo di dato, preprocessing, estrazione di features, selezione di features... 12

Esempio Insetti da clusterizzare Dati grezzi: le sequenze di DNA relative ad un determinato gene CAGATCTTGACGATCCCAAGTGGTTCATTGGCTTTAGATGAAG TACCGATCTTGACGATCCCAAGTCATTGGCTTTAGATGAAG CAGATCTTGACGATCCCAAGTGGTTCATTGGCTTTAGATGAAG CAGATCTTCACGATCCCAAGTGGTTCATTGGCTTTAGAT Pre-processing: allineamento delle sequenze CA--GATCTTGACGATCCCAAGTGGTTCATTGGCTTTAGATGAAG TACCGATCTTGACGATCCCAAG----TCATTGGCTTTAGATGAAG CA--GATCTTGACGATCCCAAGTGGTTCATTGGCTTTAGATGAAG CA -GATCTTCACGATCCCAAGTGGTTCATTGGCTTTAGAT---- 13

Similarità Il concetto di similarità è strettamente incapsulato nella definizione di cluster la maggior parte degli algoritmi di clustering dipendono strettamente dalla definizione di questa misura Esistono molte definizioni diverse dipendentemente dal dominio dipendentemente dal tipo di feature dipendentemente dalla conoscenza a priori similarità / distanza 14

Esempio Misura di similarità: la distanza tra due sequenze è rappresentata dal numero di sostituzioni che ci sono, pesate in un certo modo ESEMPIO: misura di Jukes-Cantor (p = proporzione di nucleotidi dove le due sequenze differiscono) d S 1, S 2 = log 1 4 3 p Si calcola la distanza tra tutte le coppie di sequenze Matrice di distanza 4 4 Distanza tra la prima e la seconda sequenza 15

Metodologie di Clustering Obiettivo: trovare i gruppi data la definizione di similarità Non esiste un unica metodologia appropriata per tutti i problemi la scelta di un algoritmo appropriato dipende dal dominio, dal processo di acquisizione, dalla conoscenza a priori, dalla quantità di dati a disposizione Ci sono molti metodi in letteratura Diversi criteri di ottimizzazione, assunzioni, modelli, requisiti computazionali Principale suddivisione: metodi partizionali o gerarchici 16

Metodi partizionali il risultato è una singola partizione del dataset (il numero di cluster è dato a priori) x 2 F G x 2 F G D E D E A C B A C B x 1 x 1 Esempi: K-means (e le sue varianti), ISODATA, PAM,... 17

Metodi gerarchici il risultato è una serie di partizioni innestate (un albero binario detto dendrogramma ) x 2 F G A C B D E x 1 Esempi: Complete Link, Single Link, Ward,... 18

Esempio Clustering 4 4 Similarity matrix Clustering gerarchico Albero filogenetico 19

Validazione del clustering Ogni algoritmo di clustering genera SEMPRE un risultato Approcci differenti tipicamente portano a differenti clusters Non c è il ground truth, il processo è non supervisionato La validazione dei cluster è fondamentale Domande: I dati sono casuali o esiste qualche giustificazione per il clustering? I cluster che determino sono ottimali? E in che senso? 20

Esempio Validazione del clustering Analisi della robustezza del clustering: BOOTSTRAP Vengono creati N nuovi data set (per esempio 1000) 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 Per ogni data set viene costruito l albero (clustering) Viene calcolata la frequenza con cui ogni sottogruppo dell albero viene ripetuta Questa indica la robustezza di un raggruppamento 21

22

Interpretazione dei risultati L obiettivo finale è quella di estrarre / recuperare conoscenza ottenere intuizioni dal data set Il fuoco deve essere sulla interpretabilità dei prodotti interpretabilità dei metodi mette a proprio agio l utente interpretabilità delle soluzioni permette di capire gli errori 23

Esempio D. simulans and D. sechellia sono più simili tra di loro che rispetto agli altri divergenza evolutiva più recente 24

Clustering: misure di similarità 25

Definizioni Coefficiente di similarità: indica la forza della relazione tra due oggetti maggiore è la somiglianza tra questi oggetti, più alto è il coefficiente di similarità Dissimilarità (distanza): concetto simile ma che misura le differenze tra due oggetti In generale si può parlare di misure di prossimità 26

Definizioni Concetto di metrica (già vista nella lezione sulla rappresentazione): misura di prossimità con particolari caratteristiche Definizione: (dissimilarità/distanza metrica): misura di dissimilarità che soddisfa le seguenti proprietà: 27

Altra rappresentazione Matrice di prossimità: matrice che descrive i valori della funzione per tutte le possibili coppie simmetrica / asimmetrica, dissimilarità / similarità,... 28

Una distanza asimmetrica Esempio: distanza tra sequenze di DNA Distanza= inverso dell'alignment score basato sulla matrice di sostituzione Distanza simmetrica se la matrice di sostituzione è simmetrica ( A T è uguale a T A ) Jukes-Cantor 29

Una distanza asimmetrica Se la matrice di sostituzione non è simmetrica, allora non è la stessa cosa allineare la sequenza 1 su 2 o allineare la sequenza 2 su 1 Esempio: Distanza Tajima-Nei per sequenze di DNA Pesa in modo diverso le sostituzioni tenendo conto della frequenza che i nucleotidi hanno all interno delle sequenze α ga α gc 30

Commenti La scelta della misura di similarità/distanza è cruciale e influenza enormemente l uscita del clustering Informazione a priori: contesto applicativo tipo di pattern (vettore, sequenza, dati mancanti) dimensionalità del pattern scala cardinalità dell insieme requisiti (velocità vs precisione): e.g. retrieval by content (esperienza del ricercatore) 31

Trasformazione Similarità e dissimilarità misurano la stessa quantità da due punti di vista differenti Trasformazione: 32

Misure per pattern vettoriali Campo molto investigato: esistono molte misure diverse! vettori numerici vettori categorici vettori binari Distanze tra vettori numerici distanza euclidea distanza di Manhattan distanza Maximum distanza di Mahalanobis distanza di Minkowski misura coseno (similarità) 33

Vettori numerici Nozioni preliminari: vettori x = [x 1 x d ], y = [y 1 y d ] distanza euclidea Molto utilizzata distanza di Manhattan (city block distance) Tutti i percorsi più brevi hanno la stessa lunghezza Utilizzata nei circuiti dove i fili possono andare solo orizzontalmente o verticalmente 34

Vettori numerici Maximum distance (distanza sup ) Distanza di Mahalanobis Scalamento degli assi Pro: invariante alle rotazioni/traslazioni/trasformazioni affini Contro: calcolo della matrice di covarianza 35

Vettori numerici Distanza di Minkowsky Generalizzazione della distanza euclidea (p=2) e di quella di manhattan (p=1) Similarità coseno Similarità (non distanza) Tiene conto della lunghezza dei vettori 36

Misure per dati categorici Dati discreti (exe DNA) simple matching dissimilarity measure 37

Misure per dati binari Dati binari: 0 o 1 Distanza di Hamming: numero di posizioni dove i due vettori differiscono Esempio: la distanza di Hamming tra 1011101 e 1001001 è 2 38

Misure per dati binari Similarità di Jaccard: misura del grado di overlap fra 2 insiemi A e B L intersezione di A e B divisa per l unione di A e B La distanza di Jaccard si ottiene facilmente facendo JD(A,B) = 1 J(A,B) 39

Misure per dati binari Da questa misura si puà ricavare la versione per dati binari: Date 2 stringhe binarie A e B: JD (A, B) bin =1 M 11 + M 00 M 11 +M 01 + M 00 = M 10 +M 10 M 11 +M 01 +M 00 M 11 n. di simboli dove sia A che B valgono 1. M 00 n. di simboli dove sia A che B valgono 0. M 01 n. di simboli dove A vale 0 e B vale 1. M 10 n. di simboli dove A vale 1 e B vale 0. Molto utilizzata in bioinformatica 40

Distanza geodesica Tiene conto del supporto : il percorso che effettivamente occorre fare per raggiungere B partendo da A - Misura più realistica, quindi più accurata - Molto più difficile da misurare, occorre conoscere il supporto 41

Misure per pattern non vettoriali In caso di pattern non vettoriali occorre disegnare specifiche distanze Dipendendono dal tipo di pattern Una possibilità è quella di misurare il costo passare da un pattern all'altro Esempio: Edit distance per sequenze 42

Edit Distance Edit distance: misura quante modifiche occorre effettuare su una sequenza per ottenerne un'altra Sostituzioni, inserzioni, cancellazioni In altre parole, il costo che si deve pagare per convertire un pattern nell altro ESEMPIO: i simboli sono lettere, i pattern sono parole di un testo scritto. Possibili editing : sostituzioni: pattern pastern inserzioni: pattern patterns cancellazioni: pattern pttern 43

Edit distance Edit distance j varia tra tutte le possibili variazioni necessarie per ottenere B da A Soluzione algoritmica: programmazione dinamica (dettagli nel cap 8.2.2 del Theodoridis) Molto utilizzato per automatic editing e text retrieval (trovare il best match tra un pattern e un database di patterns) Utilizzabile per trovare la distanza tra due sequenze di geni 44

Un esempio biologico: BLAST Basic Local Alignment Search Tool algoritmo per confrontare sequenze biologiche (nucleotidiche o aminoacidiche) confronta una sequenza di test con un database di sequenze, ritornando le più simili uno degli algoritmi più famosi di bioinformatica affronta un problema molto importante è computazionalmente efficiente -- la ricerca effettuata con algoritmi di programmazione dinamica è assolutamente inefficiente, vista la mole di dati presente oggigiorno BLAST è 50 volte più veloce 45

Un esempio biologico: BLAST IDEA: cerca di allineare due sequenze, lo score di allineamento rappresenta la misura della bontà del match Assunzioni / Idee per velocizzare l approccio non cercare l allineamento ottimale non effettuare la ricerca in tutto lo spazio delle sequenze utilizzare una serie di euristiche per velocizzare l approccio Input dell algoritmo: sequenza query (sequenza sconosciuta) sequenza target (o database) 46

Un esempio biologico: BLAST PASSI dell ALGORITMO 1. Rimuovere le regioni di bassa complessità della sequenza query regioni della sequenza con ripetizioni di pochi tipi di simbolo possono confondere il programma nello trovare regioni significative 2. Creare una lista delle word di K lettere della sequenza query 47

Un esempio biologico: BLAST 1. cercare, in tutte le sequenze del database, tutte le word di lunghezza K che hanno un buon match con le word della sequenza query buon match = score di allineamento sopra una certa soglia utilizzo della substitution matrix per calcolare lo score lo score considera l allineamento senza gap ogni word trovata si chiama hit (o hotspot ) allineamento senza gap è molto veloce: possibilità di memorizzare una volta per tutte le posizioni delle word in tutto il database 1. utilizzare ogni hit come seme per allargare la regione di similarità cercare di estendere la coppia di similarità a dx e a sx fino a quando lo score di similarità non diminuisce il risultato si chiama HSP (High Scoring segment pair) 48

Un esempio biologico: BLAST 1. visualizzare tutti gli HSP con uno score sufficientemente alto vengono listati in ordine di score 2. fornire un analisi statistica degli score risultanti: l Evalue misura il numero di hit che si potrebbero vedere per caso, in un database di sequenze casuali dipende dalla dimensionalità del database e dalla lunghezza della sequenza di query la significatività statistica è proporzionale al valore di tale indice (valori attorno allo zero supportano fortemente i risultati) 49

Un esempio biologico: BLAST Note: Eventualmente si può gestire anche la presenza di più HSP in una stessa sequenza del database si può utilizzare on line: http://blast.ncbi.nlm.nih.gov/blast.cgi utilizzatissimo per il buon compromesso tra accuratezza e velocità (negli anni sono state presentate molte varianti) l articolo dove viene presentato è il più citato degli anni 90 Altschul SF, Gish W, Miller W, Myers EW, Lipman DJ (1990). "Basic local alignment search tool". J Mol Biol 215 (3): 403 410 50