BioInformatique des micropuces Abdoulaye Baniré Diallo 25 mars 2008.

Post on 04-Apr-2015

110 views 0 download

Transcript of BioInformatique des micropuces Abdoulaye Baniré Diallo 25 mars 2008.

BioInformatique des micropuces

Abdoulaye Baniré Diallo

25 mars 2008

plan Introduction

Types de puces

Déroulement d’une expérience

Mise au point d’une puce

Choix des gènes et des sondes

Analyse des données d’expression

Analyse des images et segmentation

Normalisation

Plan(2) Analyse des données d’expression Types d’analyse Clustering Comparaison de profils Différentes types de distances classificateur

Applications Identifier des gènes différentiellement exprimés (sur ou sous

exprimés) dans des conditions déterminées: Maladie ou traitement Réponse à un stress ou à un signal

Déterminer un profil d’expression lié à un état particulier de la cellule: Classification des sous types de cancer

Déterminer tout ou une partie du réseau de régulation: Gènes d’expression similaires (recherche de promoteurs communs) Réseau de régulation

Format d’une micropuce

Spot: ensemble de Sondes spéciques à une cible (un gène par exemple)

Sonde: une séquence de nucléotides

Hybridation

Réalisation d’une analyse Une image vaut 1000 mots et un ensemble

d’images animées? http://www.bio.davidson.edu/courses/genomi

cs/chip/chip.html

Résumé

Étape de réalisation d’une analyse

cDNA microArray

mRNA étudié (malade)CY5

mRNA standard (sain)CY3

Spot G

Mesure de l’expression différentielle = Ratio intensité cy5/intensité cy3

Micropuce à CDNA

Oligonucléotides genechips (Affymetrix)

Oligonucléotides genechips (Affymetrix)

Oligonucléotides genechips (Affymetrix) Perfect Match: G1,…,Gk: k spots, 2 à 2 différents,

spécifiques au gène G

MisMatch: sondes avec une modification au milieu de la séquence. Capture les hybridations non spécifiques

⎭⎬⎫

⎩⎨⎧

−×= ∑=

k

iii GG

k 1

)int()int(1

G de expression

complément Principale différence:

Micropuce = expression différentielle Genechip = expression pour un seul échantillon

Genechip 2 types de redondance

Spots multiples et différents pour un seul gène PM vs MM

Déroulement d’une expérience Mise au point de la puce

Choix du type de puce (oligos, cDNA,…) Sélection des gènes à mésurer Sélection des sondes Manufacture ou commande de la puce

Utilisation Hybridation - lavage

Analyse Mesure de l’expression de chaque gène (image- matrice numérique) Analyse statistique (normalisation, validation) Interprétation des résultats (clustering, data mining…)

Gestion des données

Mise au point d’une puce Choix des gènes à mesurer Choix des sondes1. Acheter tout fait

Récupérer sur le web Geo (NCBI), NWG, Affymetrix,…

2. La mettre au point soi-même Où récupérer les gènes? Comment choisir les sondes?

Gènes Informations à conserver Bases de données

UniGene (NCBI) Regrouperment (clusters) d’ARNm et EST de Genbank (1 gène

par groupe) TIGR

Même principe qu’UniGene REFSEQ (NCBI)

Banque de séquences de qualité grande Ucsc genome browser

Banque de données de diverses informations génomiques de l’humain

Banques de données Unigène – décembre 2007

66488 groupes (>> 30000)!!, 157 753 mRNA 6 586 504 séquences au total Contient de nombreuses informations (tissus, NCBI, lignée,…) Manque: séquences consensus, épissage, stabilité

TIGR – février 2008 Plus de 200000 cluster et plus de 5 millions d’EST Séquence consensus, ontologie du gène, épissage alternatif, réseau métabolique

RefSeq – Donne des références stables sur l’identification, la caractérisation, les analyses de

mutations, les études d’expression … Utilise des numéros d’accession et peu de séquences (environ 20 000)

Uscs Genome browser Répertorie les analyses au niveau génomique effectuées Prédiction de gènes, expression, régulation Utile dans le cadre des tiling arrays

Choix des sondes ou primers 3 conditions1. Sensibilité

Une bonne sonde "hybride" hybride bien avec sa cible et produit un signal représentant son niveau d’expression

2. Spécificité Une bonne sonde n’hybride pas avec une d’autres cibles (cross

hybridization)

3. Comportement isothermal Chaque sonde "hybride" avec sa cible à une température optimale L’intervalle des températures de toutes n’est pas trop large

Comment combiner ces conditions? Autant de stratégies que de logiciels

Choix des sondes Sensibilité: éviter les repliements en structure

secondaire stable Calcul du repliement optimal: MFOLD, Rnafold

Spécificité: éviter qu’une partie de la sonde soit similaire à plusieurs gènes: Blast

Position dans le transcrit: plus on est proche du début de la reverse transcriptase (fin 3’) mieux c’est

Température: Différentes techniques de calcul de la température de

fusion (hybridation)

Spécificité d’une sonde Nettoyage ou filtrage

Nous voulons éviter les séquences Ambigues (mauvais séquençage) De faible complexité

Longues séquences de nucléotides identiques: TTTTT…TT Répétitions: TATATA…TA Séquences communes à plusieurs gènes Contaminant, vecteurs !!!!!!

Outils RepeatMasker (RepBase) MaskerAid (WuBlast) OligoArray Dust (Blast)

Important: séquences non nettoyées créent plusieurs problèmes à l’expériences

Calcul de la température de fusion Température de fusion = température à laquelle 50% d’une

sonde s’hybride avec son brin complémentaire

Paramètres importants Nucléotides de la sonde Concentration C du brin (inconnu en général) Concentration en sodium (Na+) de la solution contenant les cibles

Une équation simple pour des oligos assez long (> 50 nt) utilisé par Qiagen pour des oligos de 70mer

length

500

length

)G#C#(41]Nalog[165.81 −+×++×+=mT

Calcul de la température : modèle NN Formule de base

Tm = H /(S – R ln (C/4))

H = enthalpie (chaleur absorbée par la création du lien G-C)

S = entropie ("perte de dynamisme")

Modèle NN (nearest-neighbor)5’ TAACCACGAT | | | fermeture ATTGGTGCTA

SantaLucia et al. 1998

Spécificité: hybridation croisée Le problème

n séquences S1…Sn

l = longueur de sonde

Trouver n sous séquences P1…Pn tel que: Pour tout i /= j Pi n’est pas "similaire" à une sous

séquence de Sj

Similarité Blast

Choix des sondes et règles de sélection1. Une fois un gène est choisie dans une analyse, une sonde est

choisie pour lui avec un ensemble optimal de paramètres (un grand nombre de 70mer candidats)

Tous les oligos sont entre 78°C± 5°C en utilsant la formule

length

500

length

)G#C#(41]Nalog[165.81 −+×++×+=mT

Où [Na+] = 0.1M et length = #A + #C + #G + #T

2. Chaque oligo est autour de 1000 bases de 3’ end de la séquence disponible

3. Un oligo ne peut avoir une répétition contigue d’un seul nucléotide (ou poly(N)) de plus de 7 bases

Choix des sondes et règles de sélection

4. Une oligo ne peut avoir une potentielle hairpin avec une tige de plus de 9 bases

5. Un score normalisé est assigné à chaque oligo basé sur le nombre de répétitions

Les oligos avec plus de répétitions ayant un score plus grand que le seuil sont filtrés

Choix des sondes et règles de sélection6. Chaque Oligo a un score <= 70% d’identité avec

tous les autres gènes Utilisez Blast sur les 96073 séquences de l’humain

7. Chaque Oligo de n’importe quelle taille ne peut avoir plus de 20 bases communes contigues avec n’importe quelle autre gène

Au final: Une fois que les candidats ont été choisies, les oligos

sont choisis avec un score minimal de blast (cross-hybridization)

Oligo Array 1.0 SCANNER PAGE

Analyse de données d’expression Données d’expression n gènes et

m échantillons (puces)

Expressions normalisées sur chaque puce et entre les puces

Gènes: certaines valeurs d’expression peuvent manquer

Samples/puces: Patients (sains/malades) Expérience temporelle

(ei,1; …;ei,m) = profil d’expression du gène i

(e1,j; …;en,j) = profil d’expression d’un échantillon

i

eij = Expresion du gène isur la puce j

1 2 ………………………………m

j

Gène 1....Gène n

Micropuces et analyse d’images Table des intensités

Gene 1: rouge 100 vert 125 …. 2 images (intensité rouge et intensité vert) (format

Tiff) Combinaison d’analyses 3 problèmes

Associer les pixels correspondant à un gène Calculer l’intensité Évaluer la qualité de la mesure

Association gène-pixels Localisation des spots

Structure micropuce n * m grilles 1 grille = k*l spots

Problème

Irrégularité du placement des spots Grilles non alignées Grilles courbées (verre) Espace entre grilles inconstant Spots inconstants dans une grille

Doit être vérifié avant l’analyse

Association gène-pixels Segmentation: différencier,

dans la zone associée à un gène, les pixels présentant un signal dû à l’hybridation (foreground) du fond (background)

Problème difficile de traitement d’image

4 méthodes (entre autre) Cercle fixe Cercle adaptatif Forme adaptative histogramme

Méthodes de segmentation Cercle fixe (ScanAnalyze)

Pas d’intervention utilisateur Méthode sommaire et limitée

Cercle adaptatif Diamètre spécifique à chaque spot ScanAlyze: ajustable à la main

Forme adaptative Non circulaire Algorithme de Watershed Étendre la zone « foreground" à partir d’un pixel de départ (seed)

histogramme

Détermination du fond

Nous avons tous les éléments pour transformer notre image en données numériques avant d’évaluer la qualité

Informations calculées Foreground (signal) : ration Rouge/vert

Moyenne et médian des pixels du signal La médiane est moins sensible aux pixels extrêmes

Background idem

Intensité (intégral, moyenne, mediane) et forme du signal

Étiquette sur les pixels douteux (contrôle de la qualité) Signal moins fort que le fond Déviation standard élevée Signal trop bruité,…

Exemple ImaGene

Résultat d’analyse d’expression

Saturation

Saturation Les spots partiellement saturés peuvent être traités en

supprimant seulement les pixels aux alentours du spot

Peut être réalisé par traitement d’image, un facteur de

saturation de mois que 1 sera considéré

Facteur de saturation = fraction des bons pixels non saturés

Les spots complètements saturés ne peuvent être utilisés pour

une analyse quantitative

Contrôle de la qualité Le contrôle de qualité d’un spot

peut se faire par traitement d’image

Score de QC = Aire /Perimètre

Cercle idéal = R/2

Si score < cercle idéal, mauvaise forme

Spot pixel > 2*median(bkg) est pris comme estimé du ratio signal/bruit > 50%

Normalisation But: comparer les expressions de chaque spot pour

déterminer les gènes sur ou sous exprimés Il faut que les mésures soient comparables

Problèmes: Les expériences de micropuces sont soumises à de multiples biais

aléatoires ou systématiques Données bruitées Résultats bruts non comparables

souhait: éliminer les variations non biologiques pour qu’un gène qui est reconnu comme exprimé différentiellement le soit pour les raisons biologiques étudiées

Sources d’erreurs Aléatoires

Systématiques ARN hybridé: quantité ou préparation Conditions expérimentales ou qualité de la puce Puces multiples Biais spatiaux ou biais de couleurs

Problème de correction Variation locale, intensité, non linéaire

Pour diminuer les variations non corrigées: Réplicats biologiques: plusieurs puces (coût), samples pooling Réplicats techniques: sur une même puce ou différentes puces

Techniques de normalisation: survol Interne à une puce (Rouge vs vert) MA-plot: M = log(R/V)

1 A = log (sqrt(RV)) y- M: log ratio x-A: average log-intensity Si il n’y a pas de biais, on a en gros des données distribuées

en nuage autour de y = 0 Principe de normalisation

M = M-quelque chose

Calculée sur un ensemble S de spots

Normalisation dépendant de l’intensité M = M – Cs(A) Cs(A) = (h*A + c) h = pente c = décalage (h*A + c) = régression linéaire D’autres formes: non linéaire (Loess)

Régression linéaire

Régression non linéaire (Loess)

Normalisation entre plusieurs puces Exemple: nous disposons d’une puce par patient et

nous voulons comparer toutes les puces

Technique Analyse de box plot Modification par

Rééchelonnage Recentrage Normalisation de la distribution

Hypothèse: Les variations proviennent du processus expérimental et

non pas de valeur biologique

Normalisation entre plusieurs puces

Types d’analyse Recherche de groupes de gènes ayant des profils

d’expression similaires Gènes réagissant de la même façon à un stimulus (froid,

maladie, …) Recherche d’échantillons au profil similaire

Classification des sous-types d’une maladie Solution: clustering

Construction d’un classifieur ou prédicteur Diagnostic à partir du profil

Inférence de réseaux de régulation

Comparaison entre 2 profils Problème

2 vecteurs V1 et V2: profils

V1 = (x1,…,xk)

V2 = (y1,…,yk)

(k = n ou m) Ces deux profils sont –ils similaires?

Similarité ? Correlation distance

Correlation R(V1,V2) = coefficient de corrélation entre les profils V1et V2 Représente le niveau de relation entre ces 2 profils -1 ≤ r ≤ 1 1: correlation positive -1: correlation négative 0: pas de correlation Mésure de colinéarité

Correlation standard (Pearson) V1 = (1, 2, 3, 4) et V2 = (1, 2, 3, 4) => r = 1

V1 = (1, 2, 3, 4) et V2 = (4, 3, 2, 1) => r = -1

V1 = (1, 1, 1, 1) et V2 = (1, 1, 1, 1) => r = 0

Remarque: si les données ont été centrées avec moyenne 0 et écart type 1 alors R = somme des xiyi

Correlation de pearson Fortement correlé (r = 0.97)

Correlation de pearson Correlé négativement (r = -0.47)

Corrélation de Spearman Principe: prendre en compte l’ordre des xi et yi plutôt

que leurs valeurs Exemple:

V1 = (-4, 1, -2, 1) et V2 = (-3, -2, 1, -1)

V1 = (1, 3, 2, 3) et V2 = (1, 2, 4, 3)

But: minimiser l’influence du bruit et des outliers Plus spécifique que Pearson Moins sensible que Pearson Problème: Perte de la direction de la régulation

Mauvaise correlation due à un outlier Correlation de 0.63 à cause de l’outlier

Corrélation et Jacknife Principe:

Éviter d’être trop sensible à un ou des outliers l = entier fixé (petit) pour le nombre d’outliers à éliminer

au maximum

( ){ }I i que tel xdes privé

||]&[|,,min),(

i11

2121

∉=

−=≤=

VVoù

lkIkIVVrVVr

I

IIj

En prenant le min, on élimine les cas où un ou plusieurs points sont dominants

Les distances Distance euclidienne

Distance de correlation

Distance de Manhattan

Information mutuelle

Et d’autres

Distance euclidienne La distance que nous avons

tous appris au secondaire

Distance entre les échantillons

Peut être généralisé à N dimensions

Chaque gène est une dimension. Donc pour n gènes, nous avons un espace à n-dimension

( )∑=

−=dimension

1

2),(m

iii QPQPd

Distance euclidienne est sensible à l’échelle

Bien que les profils soient similaires, BUR6 est beaucoup plus régulé que IDH1

(a)Distance euclidienne = 5.8 (b) les données ont été mise en échelle en divisant par l’écart type D = 0.88

Différences entre la distance euclidienne et la corrélation de Pearson

r = 0.79

d = 0.21

Distance de Manhattan Appelé également city block distance |∆x| + |∆y|

Information mutuelle Si nous connaissons quelques choses d’une variable aléatoire X,

quelle information peut –elle nous donner pour la distribution de probabilité Y

Basée sur l’entropie

L’entropie se définie comme

L’information mutuelle se définie comme

Implanté dans le score TNOM (treshold number of misclassification) pour distinguer des gènes

Clustering hiérarchique Principe similaire aux algorithmes de clustering vus

en phylogénie comme NJ ou PGM.

E D: matrice de distances

clustering

arbre

Clustering des données d’expression Principe E: matrice n*m de données d’expression

C1,…, Ck : k groupes de profils Dans un bon clustering

2 profils appartenant à la même classe sont similaires: homogénéité des clusters

2 profils de classes différentes ne sont pas similaires: Séparabilité des clusters

Clustering: aspects techniques 3 points

Choix de la distance

Choix des 2 clusters à regrouper En général les 2 clusters les plus proches (Eisen,

1998)

Calcul de la distance du nouveau cluster aux autres clusters

Chaînage (linkage) Single linkage

d(C1,C2) = distance entre leurs éléments les plus proches

Average linkage

d(C1,C2) = moyenne des distances entre les gènes de chaque cluster

Complete linkage

d(C1,C2) = distance entre leurs éléments les plus éloignés

Notes 3, 4 et 5

Analyse d’un clustering Bootstrap

Rééchantillonnage de colonnes, lignes ou cases Arbre consensus + scores de bootstrap Bootstrap paramétrique

Intégrer les paramètres statistiques connus dans le rééchantillonnage (variabilité, distribution, …)

Choix des clusters Se baser sur la longueur des branches

Voir notes 1 et 2

Clustering par partitionnement: k-mean Principe

Définir une notion de représentant pour un cluster: Moyenne (centroide) : (1,2,3) et (3,1,2) => (2,1.5,2.5) Fixer le nombre K de clusters voulus

Algorithme1. Assigner aléatoirement chaque profil à un des k clusters2. Calculer le représentant de chaque cluster3. Pour chaque profil x: déplacer x dans le cluster dont le

dont le représentant est le plus proche de x4. Si aucun profil n’a changé de cluster: arrêter5. Sinon retourner en 2.

Clustering différent par rapport au nombre de cluster

Caractéristiques du k-mean But: essayer de minimiser le critère suivant: Technique:

Algorithme de machine learning (apprentissage HMM)

Défauts: Sensibilité à la partition initiale

Répéter plusieurs fois et faire un consensus Choix du paramètre k

En essayer plusieurs Multidimensional scaling (MDS)

Validation Homogénéité vs séparabilité bootstrap

( )( )∑ ∑= ∈ ⎪⎭

⎪⎬⎫

⎪⎩

⎪⎨⎧k

i iclusterxiclusterrepxd

1

2)(,

Données d’expression et classificationConstruction d’un classificateur

Expérience de micropuces:n gènes, m samples (patients), k classes (type de

maladie, pronostic, ….)

On connaît laclasse de chaque

sample

Matrice de profilsd’expression

Apprentissage (reconnaître lesdifférents types de maladie par

le profil associé)

Classificateurou prédicteur

Prédiction du type demaladie de ce patient

Profild’expression

de patient(micropuce,

PCR)

Principaux problèmes Choix des gènes pertinents vis-à-vis de la classification

souhaitée

Méthode d’apprentissage Apprentissage supervisé car on connaît la classe de chaque sample

Méthode de classification

Validation du prédicateur

Notions importantes Séparabilité des données

Linéaire/ non linéaire

Séparabilité; linéarité

Séparabilité; linéarité

Séparabilité; linéarité

K-nearest-neighbor Données:

m samples classifiés (A) p gènes classificateurs s un nouveau sample: données d’expression pour les p

gènes choisis Deux paramètres k et l

Algorithme Examiner les k samples les plus proches de s Assigner à s la classe contenant le plus grand nombre de

samples parmi ces k voisins, sauf si on en a moins de l auquel cas s est non classifié

K-nearest-neighbor Propriétés

Positives Rapide Apprentissage trivial Non sensible à la linéarité

Négatives Sensible aux données trompeuses Sensible à la distance choisie Sensible aux choix des p gènes

Remarque: Souvent l = 0 alors on parle de N-N

Classification par centroïde Données

m samples classifiés en k classes p gènes classificateurs s nouveaux samples ( p gènes)

Algorithme Calculer le centroïde de chacune des k classes Affecter s à la classe du plus proche centroïde

Propriétés Rapide, sans apprentissage Sensible à la non linéarité des données

Classification par centroïde

Autres approches Analyse par discriminant Linéaire (LDA)

S’applique à 2 samples seulement Séparation par un hyperplan (droite) minimisant la variance dans

chaque classe et maximisant la variance entre classes Considère seulement les données linéairement séparables

Réseau de neurones artificiels

Support Vector Machines (version sophistiqué de LDA)

Validation Similaire aux HMM Training set / test set Cross validation LOOCV (similaire à la validation croisée, mais un seul sample laissé)