Bioinformatica Microarray Dr. Giuseppe Pigola – [email protected] Microarray A parte poche eccezioni, ogni cellula del nostro organismo contiene un set completo di cromosomi composti da geni identici. In una specifica cellula, solo una parte di questi geni è attiva, e sono proprio i diversi gruppi di geni attivi che conferiscono proprietà specifiche ad ogni tipo cellulare. Per “espressione genetica” si intende la produzione di proteina da parte di un gene (la trascrizione delle informazioni contenute sul DNA nell’mRNA che a sua volta viene tradotto nelle proteine che provvedono alle funzioni di base delle cellule). Il tipo e la quantità di mRNA prodotto ci dicono quanto un gene sia espresso. Ad esempio una alterazione dell’espressione genica può indicare la presenza di una malattia. 2 Bioinformatica Microarray Biological question Differentially expressed genes Sample class prediction etc. Experimental design Microarray experiment Image analysis Normalization Estimation Testing Clustering Discrimination Biological verification and interpretation 3 Bioinformatica Microarray Analizzare l’espressione genica vuol dire analizzare la quantità di mRNA o di proteine prodotte da una cellula in un particolare momento. I Microarray, chiamati anche DNA chip, permettono l’analisi dell’espressione di migliaia di geni con un singolo esperimento. Il principio alla base dell’analisi dell’espressione genica consiste nel confronto di campioni diversi, ad esempio tessuti sani o malati per studiare l’espressione genica in una determinata malattia. 4 Bioinformatica Microarray Le molecole di mRNA si legano selettivamente, attraverso l’appaiamento delle basi, ad una sequenza di DNA complementare; Migliaia di sequenze di DNA a singolo filamento vengono posizionate su una griglia microscopica di pochi centimetri, che funge da supporto per l’appaiamento di molecole di mRNA che vengono poste sulla sua superficie (con l’ausilio di robot); 5 Bioinformatica Microarray Come già detto si confrontano le espressioni geniche per correlarle a malattie. Un tipico esempio è quello di confrontare l’espressione genica di un certo numero di geni in diversi campioni (=pazienti) appartenenti a diverse classi (=norm vs cancer). … Array1 Array2 Array3 rapporto di espressione del gene 5 nel paziente 4 6 Bioinformatica Microarray Una volta preparato il microarray, gli mRNA relativi a determinati geni vengono trattati con dei coloranti fluorescenti (tipicamente Cy3 e Cy5); Dei laser applicati al microarray producono una emissione di colori che indicano l’espressione dei mRNA; 7 A questo punto viene prodotta una immagine RGB: Blu settato a 0; Rosso per le intensità di Cy5; Verde per le intensità di Cy3; Bioinformatica Microarray PROCESSAMENTO DELL’IMMAGINE 8 Addressing/Gridding: Ad ogni spot è assegnata una coordinata; Segmentation: Classificazione dei pixel (backgroud/spot); Intensity determination: Viene misurata l’intensità di ciascuno spot in relazione all’intensità del backgroud; Bioinformatica Microarray CREAZIONE DELLA MATRICE DI ESPRESSIONE Il microarray viene rappresentato da una matrice A(i,j) dove: A(i,j) = value_R/value_G Value= Median (Foreground) - Median (Background); Value = Mean (Foreground) - Mean (Background); 9 Bioinformatica Microarray Software GenPix: 10 Bioinformatica Microarray Data Mining Una volta ottenuta la matrice che rappresenta il microarray è possibile applicare tecniche di data mining per: Trovare biomarcatori che permettono di individuare una determinata classe (normal/tumor); Classificare un profilo di espressione genica sconosciuta; 11 Bioinformatica Microarray Data Mining METODI 12 Esistono diverse tecniche di data-mining per la classificazione di dati di espressione genica. Bioinformatica Microarray Data Mining Una nuova tecnica di data mining per costruire un classificatore: INPUT: Matrice di espressione genica (miRNA); Ridurre i campioni per classe in modo da equlilbrare la generazione dei NFI; Filtraggio di geni differentemente espressi nelle varie classi; Discretizzazione dei dati; Eliminazione dei geni non discriminanti; Costruzione di Maxima Frequent Itemset per ciascuna classe; Estrazione di regole di associazione utilizzate per classificare samples sconosciuti; Validazione del modello tramite KFCV; 13 Bioinformatica Microarray Data Mining Profiling data Filtering (i.e. discriminant genes) Discretization Binary strategy Model validation (KFCV) Superset of robust biomarkers 14 Genes patterns (data mining: max freq itemsets) Filtering based on permutation test Bayesian Networks Construction (reverse engineering) Pathway Perturbation microRNAs analysis Bioinformatica Microarray Data Mining N Abbiamo N campioni {xi , yi }i 1 dove xi è un vettore M dimensionale e yi {0,..., k 1} rappresenta la classe di appartenenza. I geni (miRNA) sono denotati da {m }mM1 dove m (x) rappresenta i valori di espressione del campione x per il gene (miRNA) m. 15 Bioinformatica Microarray Data Mining DISCRETIZZAZIONE Al fine di calcolare i Maximal Frequent Itemset dobbiamo prima discretizzare. Ogni valore di gene discretizzato sarà mappato in un Item (quindi i geni-valore sono sostituiti da geni-intervalli) rappresentato da un numero intero; Differenti metodi di discretizzazione possono influenzare l’accuratezza del metodo (supervisedunsupervised, global-local, topdown-bottomup (splitting-merging), etc. etc.; Per discretizzare 16 {m }mM1 possiamo usare diversi metodi: Equal Width Interval Bin; Recursive Minimal Entropy Partitioning; Class-Attribute Contingency Coefficient; Unparametrized Supervised Discretization; Iterative Dicotomizer 3 Discretizer; …… Bioinformatica Microarray Data Mining DISCRETIZZAZIONE: Equal Width Interval Bin Discretizziamo il range di una variabile continua in B bin (contenitori); Dati i livelli d espressione di un gene ciascun bin è impostata a nel range l’ampieza di I limiti confini di ciascun sono impostati a Il metodo è applicato ad ogni gene indipendentemente scegliendo i valori discretizzati nell’insieme A seconda del bin in cui cade un valore continuo 17 Bioinformatica Microarray Data Mining DISCRETIZZAZIONE: Recursive Minimal Entropy Partitioning Dato l’insieme di livelli di espressione genica per il gene e il confine di partizione Ti, l’entropia della partizione indotta da Ti è Il punto di partizione Ti che minimizza l’entropia verrà scelto e il procedimento proseguirà ricorsivamente finché non si verifica una condizione di stop: Dove Con a,a1,a2 numero di classi nei set Si, Si1,Si2 rispettivamente e N numero di valori del gene in Si (Uguali per tutti i geni). 18 Bioinformatica Microarray Data Mining DISCRETIZZAZIONE: Recursive Minimal Entropy Partitioning Ordiniamo i valori di Siano x1,x2,…,xM i valori ordinati; Calcoliamo i punti di mezzo x1 T1=(x1+x2)/2 x3 x2 T2=(x2+x3)/2 x4 T3=(x3+x4)/2 ……. ……. Per ciascuno di questi calcoliamo l’entropia e scegliamo come cutting point quello in cui abbiamo minima entropia ottenendo cosi due intervalli; Procediamo ricorsivamente sui due intervalli; 19 Bioinformatica Microarray Data Mining DISCRETIZZAZIONE: Class-Attribute Contingency Coefficient qir (i = 1,2,...,S, r = 1,2,...,n) numero totale di campioni appartenenti alla classe i-esima che stano nell’intervallo (dr-1,dr]; Mi+ Numero totale di campioni della classe i-esima; M+r Numero totale di campioni che stanno nell’intervallo (dr-1,dr]; n Numero di intervalli; C.J. Tsai, C.-I. Lee, W.-P. Yang. A discretization algorithm based on Class-Attribute Contingency Coefficient. Information Sciences 178:3 (2008) 714-731 20 Bioinformatica Microarray Data Mining DISCRETIZZAZIONE: Class-Attribute Contingency Coefficient qir (i = 1,2,...,S, r = 1,2,...,n) numero totale di campioni appartenenti alla classe i-esima che stano nell’intervallo (dr-1,dr]; Mi+ Numero totale di campioni della classe i-esima; M+r Numero totale di campioni che stanno nell’intervallo (dr-1,dr]; n Numero di intervalli; Otteniamo i risultati migliori quando i valori continui di ciascuna classe si trovano insieme nello stesso intervallo. C.J. Tsai, C.-I. Lee, W.-P. Yang. A discretization algorithm based on Class-Attribute Contingency Coefficient. Information Sciences 178:3 (2008) 714-731 21 Bioinformatica Microarray Data Mining DISCRETIZZAZIONE: Class-Attribute Contingency Coefficient 22 Bioinformatica Microarray Data Mining DISCRETIZZAZIONE: Class-Attribute Contingency Coefficient (ESEMPIO) 23 Bioinformatica Microarray Data Mining DISCRETIZZAZIONE: Unparametrized Supervised Discretizer Definiamo: Pure Value per un attributo: Il valore ha la stessa classe per ogni sua ocorrenza; Impure Value: Altrimenti; CutPoint:Valori che delimitano l’intervallo; Pure Interval: Ogni valore nell’intervallo appartiene alla stessa classe; Impure interval: Altrimenti; Majority class per un intervallo: La classe con più occorrenze; Goodness di un intervallo: La bontà di un intervallo dipende dalla sua purezza; Goodness = (Cardinalità della classe con più elementi nell’intervallo)/(1+rimanenti elementi nell’intervallo) 24 Bioinformatica Microarray Data Mining DISCRETIZZAZIONE: Unparametrized Supervised Discretizer Algoritmo: Calcolo dei cutpoints iniziali: Massimizzare la purity di ogni intervallo (Questo porta ad avere un numero di intervalli elevato); Refinement: gli intervalli vengono ridotti (facendo una join di intervalli adiacenti) in base alla funzione booleana: Unioncondition(Ii,Ii+1) = [Ii ha la stessa majority class di Ii+1] AND [la goodness dell’unione tra i due intervalli è maggiore della media della goodness di Ii e Ii+1] La condizione viene applicata ad ogni step a tutte le possibili unioni e viene poi fatta la join di quella coppia di intervalli con goodness migliore; Alla fine l’algoritmo darà in output l’insieme di intervalli con goodness migliore; 25 Bioinformatica Microarray Data Mining DISCRETIZZAZIONE: Iterative Dicotomizer 3 Discretizer Molto simile al metodo dell’entropia; 26 Bioinformatica Microarray Data Mining DISCRIMINANT GENE FILTERING Se i ( x j ) è equamente distribuito tra le classi, esso non contribuirà alla classificazione. Per questo motivo calcoliamo Fissato un threshold TH, definiamo Se tale funzione restituirà false, allora il gene valore non sarà considerato nella costruzione del MFI. 27 Bioinformatica Microarray Data Mining DISCRIMINANT GENE FILTERING In pratica, dato un valore discretizzato v e una classe k quello che calcoliamo è: numero di valori discretizz ati uguali a v nella classe k log 2 numero di valori uguali a v nelle altre classi Tale valore sarà: 0 se v ha la stessa frequenza nelle varie classi; >1 se v compare di più nella classe k rispetto alle altre; <1 se v compare di più nelle altre classi piuttosto che in k; 28 Bioinformatica Microarray Data Mining EFRON TEST Significatività statistica; Come per altri casi già visti quantifica (statisticamente) se un valore discretizzato sia discriminante per una classe solo per caso; I valori discretizzati hanno una distribuzione nelle varie classi (ad es. per due classi): D1 D2 ….. Dk C1 4 19 …. 12 C2 5 1 ….. 10 Generiamo una distribuzione random dei valori discretizzati nelle varie classi e conteggiamo (count) quante volte otteniamo una occorrenza maggiore a quella reale nella distribuzione random (eseguiamno il test per un certo numero di volte); count efronth valore discretizz ato non discrimina nte Efroniteration 29 Bioinformatica Microarray Data Mining FREQUENT ITEMSETS. Uno dei problemi più importanti in Data Mining e quello delle regole di associazione: Si occupa di identificare relazioni «interessanti» tra itemset, predicendo inoltre associazioni e correlazioni che possono presentarsi i nuovi dati dello stesso tipo; Market Basket Analysis: Analizzare i carrelli della spesa per stabilire quali prodotti vengono venduti assieme; Questo consente di identificare quei prodotti che fanno da traino (e che quindi possono innescare con alta probabilità l’acquisto di altri prodotti); Pannolini birra; (non vale il viceversa); Marketing: posizionare in modo opportuno i prodotti negli scaffali; 30 Bioinformatica Microarray Data Mining FREQUENT ITEMSETS. Bisogna affrontare il problema del frequent pattern analysis: individuare un pattern (insieme di item) che si presenta frequentemente nei dati; In generale nel market-basket problem si vogliono estrapolare regole di associazione del tipo: 31 Se un cliente compra x1,x2,…,xk allora probabilmente comprerà anche y; La probabilità minima che pretendiamo si chiama confidenza; Bioinformatica Microarray Data Mining FREQUENT ITEMSETS. Sia I={i1,i2,…,iN} un insieme di item e sia D un un insieme di transazioni su I. Una transazione è costituita da un sottoinsieme di I; Itemset di lunghezza k sono indicati con k-itemset; Ogni itemset XI ha associato un supporto che indica la frazione di transazioni contenente X; Un itenset X sarà frequente se ha un supporto superiore a una soglia minima data (minsupp) sotto forma di numero (assoluto) o percentuale (relativo); 32 Bioinformatica Microarray Data Mining FREQUENT ITEMSETS E REGOLE DI ASSOCIAZIONE Gli insiemi frequenti ci permettono di costruire delle regole di associazione (ad es. pannolini birra); Le regole di associazione forniscono delle regole dei tipi IF-THEN 33 Bioinformatica Microarray Data Mining FREQUENT ITEMSETS E REGOLE DI ASSOCIAZIONE Data una regola di associazione XY possiamo definire il supporto e la confidenza di tale regola come X Y X Y p( XY ) conf ( X Y ) p(Y | X ) p( X ) supp( X Y ) Dove XY significa che i due itemset sono presenti nella stessa transazione; In generale il supporto rappresenta la probabilità che una transazione contenga X e Y cioè p(XY); La confidenza è quindi una probabilità condizionata che indica quanto robusta è una implicazione (bisogna come per supp fissare una soglia minconf); 34 Bioinformatica Microarray Data Mining FREQUENT ITEMSETS. Impostiamo minsupp = 50% e minconf=50% I prodotti che superano la soglia minsupp sono: Birra 3; Noccioline 3; Pannolini 4; Uova 3; {birra,pannolini} 3; Dall’itemset {birra,pannolini} possiamo tirare fuori le regole di associazione: Entrambe superano la soglia di minsupp; Tutte le transazioni che contengono birra, contengono anche pannolini (conf=100%); Nel viceversa solo il 75% 35 Bioinformatica Microarray Data Mining APRIORI Monotonicità: Se un insieme S di articoli è frequente, allora anche suo sottoinsieme lo è; L’algoritmo costruisce i singoli insiemi frequenti, a partire da questi costruisce le coppie di insiemi frequenti, dalle coppie costruisce le triple di insiemi frequenti (livelli successivi si procede più velocemente), fino ad arrivare a k-uple di insiemi frequenti in cui non esistono itemset frequenti costituite da k + 1 elementi; 36 Bioinformatica Microarray Data Mining APRIORI: ESEMPIO Minsupp=2; Ci= candidati; 37 Bioinformatica Microarray Data Mining APRIORI: PSEUDOCODICE 38 Bioinformatica Microarray Data Mining INSIEMI FREQUENTI, CHIUSI, MASSIMALI Gli insiemi massimali sono chiusi, e gli insiemi chiusi sono frequenti; 39 Bioinformatica Microarray Data Mining MAXIMAL FREQUENT ITEMSETS: Dato l’insieme di geni discriminanti discretizzato, estraiamo per ogni classe k l’insieme di itemset massimale (MFI); Per ogni classe k=0,…,K−1, viene calcolato separatamente l’MFI corrispondente MFI(0),MFI(1),…, MFI(K-1) Fissata la classe k MFI(k) sarà composto da un certo numero di itemset frequenti dove il v-esimo sarà della forma mfiv(k)={I1,I2,…,Ij} (ogni item I è un valore discretizzato che indica un gene intervallo); mfiv(k) può essere visto come una regola di associazione nella forma: 40 Bioinformatica Microarray Data Mining MAXIMAL FREQUENT ITEMSETS: VALUTAZIONE Siano allora date le regole di associazione per ogni classe e un campione sconosciuto (discretizzato): Possiamo allora valutare quante regole vengono soddisfatte, anche parzialmente per ogni classe. Fissata la classe k e la regola r v valutiamo il campione sconosciuto assegnando uno score EVAL cerca di tenere in considerazione il numero di item del campione contenute nella regola insieme alla cardinalità della regola (più grande è la cardinalità più alto sarà lo score). Tale score è normalizzato per la cardinalità dell’itemset. 41 Lo score finale per una data classe sarà allora dato da: Bioinformatica Microarray Data Mining - Validazione k-Fold Cross-Validation: Il training set è diviso in k gruppi distinti; Si usano k-1 gruppi come training set e il gruppo escluso come test input; Processo iterato per ognuna delle k possibili scelte del gruppo tolto dal training-set; Risultato: Media dei risultati; Leave-one-out Cross-Validation: Si estra un elemento dal set di dati; Il set di dati meno l’elemento verrà usato come training set; L’elemento verrà usato come test input; Processo iterato; 42 Bioinformatica Microarray Data Mining TOOL 43 Bioinformatica Microarray Data Mining RISULTATI: LVOCV Ci siamo confrontati con uno dei più recenti ed efficienti metodi oggi conosciuti (ANMM4CBR) su quattro dataset. Dataset ANMM4CBR Nuovo Metodo Leukemia 97.6 1 Colon 86.7 1 SRBCT 99.7 1 CGM 70.0 0.982 Yao B, Li S: ANMM4CBR: a case-based reasoning method for gene expression data classication. Algorithms for Molecular Biology 2010, 5:14, [http://www.almob.org/content/5/1/14]. 44 Bioinformatica Microarray Data Mining RISULTATI: BLIND TEST Dataset ANMM4CBR Nuovo Metodo Leukemia 97.6 0,98 Colon 86.7 1 SRBCT 99.7 1 CGM 70.0 0.73 Yao B, Li S: ANMM4CBR: a case-based reasoning method for gene expression data classication. Algorithms for Molecular Biology 2010, 5:14, [http://www.almob.org/content/5/1/14]. 45 Bioinformatica