Maîtrise de Biologie Informatique Université Paris 7 - Denis Diderot Rapport de stage de maîtrise Charles Hébert Contrôle qualité des puces à ADN : Mise en œuvre d’une stratégie d’analyse des réplicats intra lame en utilisant les réseaux bayesiens Stage réalisé sous la direction de : Pr. Claude Jacq Gaëlle Lelandais Équipe de Génétique Moléculaire de la Levure CNRS UMR 8541 Département de Biologie École Normale Supérieure 46, rue d’Ulm, 75230 Paris Cedex 05 Année universitaire 2003-2004 REMERCIEMENTS Je souhaite remercier Claude Jacq pour m’avoir accueilli au sein du laboratoire de génétique moléculaire de l’ENS, pour m’avoir permis de m’initier à la technologie des puces à ADN. Je tiens à remercier Gaëlle Lelandais pour l’attention qu’elle m’a accordée tout au long de ce stage, ses idées, pour sa disponibilité, ses conseils et son soutien. J’adresse un remerciement particulier à l’équipe de la plate-forme puce à ADN de l’ENS, Sophie Lemoine, Véronique Tanty, Laurent Jourdren pour leurs explications, conseils et aide à la réalisation de ce stage. Merci à Vivienne Fardeau, pour les données de puces utilisées dans cette étude et pour son regard d’expert des puces. Merci à Édouard Bray pour son assistance technique qui a grandement facilité mon stage. Merci à Frédéric Devaux et Stéphane Le Crom, pour leur aide et les échanges critiques que nous avons eus. Enfin, merci à toute l’équipe du laboratoire de génétique moléculaire, pour leur accueil chaleureux dans le laboratoire. 3 RÉSUMÉ Les puces à ADN produites par l’ENS sont constituées de deux blocs. Chaque bloc porte l’intégralité des 6000 ORFs de la levure, un gène est donc présent deux fois (deux spots) sur une même puce, ce sont les réplicats. La mesure de l’expression d’un gène correspond à la compilation des valeurs de ratios Cy5/Cy3 de ces réplicats. Lorsque ces deux ratios sont très différents, l’usage veut que la valeur compilée soit éliminée. Nous présentons une analyse de la variabilité des réplicats intra lame. Nous exposons une méthodologie permettant de conserver une partie de l’information. Cette conservation est réalisée grâce à l’utilisation d’un apprentissage supervisé permettant de sélectionner la valeur la plus cohérente et d’éliminer la seconde. L’apprentissage est fondé sur l’utilisation des réseaux bayesiens appliqués aux qualités physiques des spots de la lame. MOTS CLEFS : Puces à ADN, Contrôle qualité, Spot, Réplicat, Réseau bayesien, Apprentissage supervisé. 5 TABLE DES MATIÈRES A. Avant propos .............................................................................................................................. 9 1. Les puces à ADN, outil d’analyse du transcriptome.............................................................. 9 2. Présentation du projet de stage............................................................................................... 9 B. Analyse descriptive de la variabilité des puces .......................................................................... 9 1. Matériel .................................................................................................................................. 9 2. Méthodes................................................................................................................................ 9 a) b) c) d) e) C. Prétraitement.................................................................................................................... 11 Application aux intensités ............................................................................................... 11 Généralisation à un ensemble de données ....................................................................... 11 Prolongement, étude des ratios ........................................................................................ 13 Outil en ligne ................................................................................................................... 13 Contrôle Qualité des spots et réseaux bayesiens ...................................................................... 15 1. Matériels et méthodes, notions élémentaires sur les réseaux bayesiens .............................. 15 a) b) c) 2. Définition......................................................................................................................... 15 Définir la structure du réseau, créer le modèle de dépendance ....................................... 17 Réseau bayesien et classification..................................................................................... 19 Résultats............................................................................................................................... 21 a) b) c) Sélection des variables d’intérêts..................................................................................... 21 Apprentissage et classification ........................................................................................ 23 Classification et réplicats................................................................................................. 23 3. Discussion ............................................................................................................................ 25 4. Conclusion ........................................................................................................................... 27 7 Réplicat Puce à ADN cadran 1 intensité Cy5 intensité Cy3 ratio Cy5/Cy3 Lot ARN ratio Cy5/Cy3 cadran 2 intensité Cy5 intensité Cy3 ratio Cy5/Cy3 Figure 1 : Le génome de la levure est déposé deux fois, ce sont les réplicats. Chaque ORF occupe la même position sur le cadran 1 et 2. On obtient donc quatre mesures d’intensité (Cy5, Cy3) et deux valeurs de ratios pour un même gène. A. Avant propos 1. Les puces à ADN, outil d’analyse du transcriptome Les puces à ADN permettent la mesure simultanée du niveau d’expression d’un très grand nombre de gènes. Cette technologie offre un accès direct à l’état du transcriptome d’une cellule, elle génère des sources de données considérables pour l’analyse de l’expression du génome. Un des enjeux majeurs des puces est la mesure de l’expression la plus précise possible d’un gène. Un grand nombre de facteurs, de la conception à l’analyse de l’image produite en passant par la variabilité biologique, introduisent un haut niveau de variabilité dans cette mesure. 2. Présentation du projet de stage L’objectif de ce stage était d’analyser la variabilité des puces à ADN (voir annexe 1). Nous nous sommes principalement intéressés à la variabilité entre réplicats d’une même lame. Les protocoles de la plateforme puce de l’E.N.S. recommandent l’élimination des deux valeurs lorsque les réplicats ont une variabilité jugée trop grande. Outre une perte d’information, ce choix génère des valeurs manquantes. La gestion de ces valeurs manquantes est délicate. Même si des méthodes permettent d’inférer ces valeurs manquantes, la valeur générée reste peu précise. Nous avons voulu savoir s’il était possible de conserver de l’information malgré ces différences entre réplicats. Dans ce but, nous avons utilisé une approche fondée sur la théorie des réseaux bayesiens. B. Analyse descriptive de la variabilité des puces 1. Matériel L’organisme de référence du laboratoire est la levure S. cerevisiae. C’est un organisme eucaryote unicellulaire dont le génome contient environ 6000 ORFs. La levure est un organisme intéressant pour l’analyse du transcriptome, car son génome est entièrement séquencé et annoté depuis déjà quelques années ([1]). Une puce à ADN permet d’avoir en une seule expérience, une image de l’état du transcriptome. Nous avons travaillé avec des expériences de puces à ADN produites par le laboratoire. Après hybridation de la puce (voir annexe 1), lecture de la lame, les données brutes obtenues ont été enregistrées sous forme de fichier tabulé (fichier au format GPR, voir annexe 3). Les fichiers contiennent, outre un en-tête indiquant les caractéristiques de l’expérience, une ligne par spot (c.-à-d. dépôt sur la lame) contenant une quarantaine de variables les caractérisant (diamètre, bruit de fond…). Les puces à ADN réalisées à l’ENS sont constituées de deux blocs. Chaque bloc porte l’ensemble des 6000 ORFs de la levure. Chaque spot, du bloc supérieur, possède son équivalent sur le bloc inférieur, on parle de réplicat (voir figure 1). La lame porte ainsi un ensemble de 12000 spots. Les réplicats ont la même position sur les deux blocs. 2. Méthodes Chaque étape de la conception d’une puce entraîne un biais sur les données observées. Il existe deux niveaux de variabilité : - Une variabilité systématique qui sera corrigée lors de la sélection/normalisation des données. - Une variabilité introduite par l’expérimentation. La mesure d’expression d’un gène est donc une mesure corrigée tenant compte de la contribution de chacune de ces sources d’erreur. 9 A) B) Figure 2 : A) Nuage de points de la variabilité entre réplicats après normalisation pour Cy3 et Cy5. La droite correspond à la droite de régression. B) Histogramme associé (différence valeur cy second spot par rapport à la moyenne de cy des deux spots). Avant régression, les données n’étaient pas centrées sur 0, après normalisation elles le sont, le biais spatial est corrigé. On remarque que la dispersion est plus grande pour Cy3 que pour Cy5. Pour chacun des réplicats, le scanner mesure deux intensités (une dans le rouge à 635nm, l’autre dans le vert à 532 nm). Comme le montre la figure 1, nous obtenons donc deux mesures de ratios (ICy5/ I Cy3). Ces deux ratios ne sont pas forcément égaux. La variabilité entre réplicats est principalement liée à un effet de localisation sur la lame, fortement dépendant de l’homogénéité de l’hybridation. C’est le biais spatial. Les deux ratios doivent cependant être compilés pour quantifier la valeur d’expression du gène considéré. Si la différence est jugée trop grande, alors les deux ratios ne sont pas conservés. L’objectif sous-jacent à cette analyse descriptive est de déterminer à partir de quel seuil, cette différence de ratios est considérée comme significative. À noter, chaque gène n’étant déposé que deux fois, tout test simple de comparaison statistique s’avère impossible. a) Prétraitement Nous utilisons les données brutes obtenues après traitement de l’image. Nous procédons en deux temps, tout d’abord la sélection des données à analyser puis le calcul de l’intensité liée à l’hybridation spécifique (voir annexe 4). La sélection des données se fait en partie de manière automatique, le logiciel d’analyse d’image Genepix élimine une partie des spots jugés non valides. Nous supprimons ensuite tous les spots dont le bruit de fond est supérieur à l’intensité du spot (cette méthode est discutable et d’autres outils permettent de conserver ces spots). La dernière étape du prétraitement est le passage en logarithme des valeurs, qui doit assurer une distribution normale des erreurs et une variabilité constante pour toutes les gammes d’intensité des spots. On calcule enfin le ratio lui aussi sous forme logarithmique : log( ratio ) = log( Icy 5) − log( Icy 3) . b) Application aux intensités Dans un premier temps, nous nous sommes intéressés à la variabilité observée au niveau des intensités Cy3 et Cy5. La variabilité entre réplicats est calculée sur chacun des deux canaux. Nous commençons par tracer un MA plot (c.-à-d. la différence des intensités des réplicats comme fonction de la moyenne des intensités). Ce MA plot, sur lequel une correction par lowess est appliqué (de manière à corriger le biais spatial), montre que la variabilité est plus importante pour les faibles intensités que pour les fortes intensités. Après lowess, les différences d’intensités sont centrées sur zéro (voir figure 2). Cette opération est répétée pour les deux canaux. Sous l’hypothèse d’une distribution normale des intensités, on peut considérer que la variabilité suit une loi normale. On peut alors définir un coefficient de variabilité (voir [2]) : υ = exp(σ 2 − 1) avec σ l'écart type de notre distribution des écarts entre réplicats. 0.1 La figure 2B montre, sous cette hypothèse, la distribution normale associée aux observations. On peut donc calculer un coefficient de variabilité pour Cy3 et Cy5. Il est respectivement de l’ordre de 10 et 5 %. Donc supérieur pour Cy3 que pour Cy5. Cette observation se répète sur les 24 puces analysées. c) Généralisation à un ensemble de données Nous avons généralisé ce calcul à un ensemble plus conséquent de données. Nous avons analysés 24 fichiers GPR. Nous avons calculé le coefficient de variabilité de chacun de ces fichiers pour les deux canaux. Le box plot (voir figure 3) présente ces résultats. On remarque très nettement que la variabilité entre réplicats est plus élevée dans le vert que dans le rouge. 11 Figure 4 : MA plot, ratio=f (moyenne des intensités en log), avant et après normalisation par lowess par bloc. Haut, on remarque deux nuages de points, le nuage supérieur est composé des points d’un même bloc. Bas, après normalisation, on a bien corrigé le biais spatial. A) B) Figure 5 : Après normalisation. A) Différence des ratios comme fonction de la moyenne des ratios. B) Histogramme des différences des ratios. A et B), les lignes horizontales correspondent au seuil à 5% (hypothèse de distribution normale). On peut considérer que cette différence est principalement liée au bruit de fond. Cy3 fluoresce davantage et s’hybride plus à la lame (hybridation non spécifique) que le fluorochrome Cy5. De ce fait, le bruit de fond mesuré pour Cy5 a une composante aléatoire moindre que le bruit de fond mesuré pour Cy3. Coefficient de variabilité (%) Cy5 Cy3 Figure 3 : Box plot des coefficients de variabilité de 24 fichiers GPR, pour intensité Cy5 (rouge) à gauche, et pour intensité Cy3 (vert) à droite. Le trait de la boîte à moustache correspond à la médiane. d) Prolongement, étude des ratios Nous avons observé une variabilité sur les intensités. Cette variabilité existe-t-elle toujours sur les ratios (compilation des intensités) , valeurs utilisées pour la comparaison de l’expression ? Le travail précédemment effectué sur les intensités peut être réalisé sur les ratios (Cy5/Cy3). Pour chaque ORF, nous avons deux valeurs de ratio que nous noterons R et R’. On s’intéresse donc dorénavant à la différence entre ces ratios. L’histogramme des différences des ratios, nous permet (toujours sous l’hypothèse d’une distribution normale) de calculer un coefficient de variabilité. Il nous permet également de définir un seuil arbitraire (à 5 ou 1 % par exemple). Ce seuil correspond à la valeur limite de différence entre les ratios du réplicat pour qu’il soit conservé dans la suite de l’analyse (voir figure 5). On considérera par la suite les réplicats en dehors de cette limite comme des « outliers ». La mesure du coefficient de variabilité avant et après régression par lowess a révélé une augmentation de ce dernier. Nous avons effectué un test statistique pour évaluer la significativité de cette différence entre les coefficients (test de Fisher-Snedecor). Le test est significatif, mais nous discuterons cette observation dans la suite du rapport (voir page 23). Ce phénomène est moindre lors de l’utilisation d’un lowess global qu’avec l’utilisation d’un lowess bloc par bloc. Cependant cette dernière normalisation se justifie pleinement (voir figure 4). e) Outil en ligne Cette partie a donné lieu à la création d’un outil d’expertise en ligne permettant une analyse rapide et automatique de la variabilité des données d’un fichier GPR. L’utilisateur soumet son fichier via un formulaire. Le traitement des données est automatisé (voir annexe 7). L’outil génére les graphiques de l’analyse descriptive et permet l’extraction des spots considérés comme « outliers ». Cette partie nous a permis d’estimer la variabilité entre réplicats d’une lame. L’outil d’analyse descriptive offre aux expérimentateurs une expertise rapide de cette variabilité. Enfin, nous pouvons sélectionner un certain nombre de réplicats dont les ratios sont fortement dissemblables. Comme nous l’avons vu, les protocoles actuels prévoient la suppression de ces données. Nous allons maintenant essayer de sauver une partie de l’information portée par ces réplicats. 13 Un article récent paru dans Bioinformatics (voir [3]) présente une approche de contrôle qualité reposant sur l’utilisation des réseaux bayesiens. Nous avons décidé de reproduire une étude similaire afin de répondre à notre problématique. C. Contrôle Qualité des spots et réseaux bayesiens 1. Matériels et méthodes, notions élémentaires sur les réseaux bayesiens a) Définition Un réseau bayesien est le résultat d’une association entre la théorie des graphes et la théorie des probabilités. Les réseaux bayesiens sont des supports pour l’analyse des données. Ils permettent d’acquérir, de représenter et d’utiliser une source d’information. Ils sont constitués de deux composantes : - Un graphe causal G orienté et acyclique, un graphe étant une association de nœuds et d’arêtes orientées. Chaque nœud représente une variable aléatoire caractérisant les données. Une arête entre deux nœuds indique une propriété de dépendance entre les deux variables considérées. Le graphe causal porte l’information qualitative. - Un ensemble de distribution locale de probabilité noté q. Chaque nœud du graphe (chaque variable aléatoire) se voit associer une loi (ou table) de probabilité indiquant le lien de la variable avec ses parents. Les distributions locales portent l’information quantitative. Il est possible de formaliser ces informations (voir [4-6]): soit X = { X 1 ,..., X n } , un ensemble de variables aléatoires, la loi de probabilité de X est alors donnée par l’équation 0.2 : n ( ) P ( X 1 ,..., X n ) = Π P X i | Parents G ( X i ) i =1 0.2 θ ∀ Xi La combinaison de l’information quantitative et qualitative permet de rendre compte des relations de causalités à l’intérieur du graphe. Le passage entre deux nœuds reliés par une arête est conditionné par une loi de probabilité (voir figure 6). A P(C | A) C B | B) P(C Figure 6: graphe causal avec probabilité de transition. Un réseau bayesien dépend donc d’un ensemble d’observations de chacune des variables aléatoires représentées dans le réseau. Ce jeu de données permet de définir des variables d’intérêts (les nœuds du réseau) et de définir des règles de dépendance entre ces variables (les arêtes et les probabilités associées). Il existe deux types de variables, les variables indépendantes et les variables dépendantes. Étant donné un ensemble d’observations, deux variables sont dites dépendantes si l’on peut aller de l’une à l’autre en traversant, si la condition est validée, toutes les arêtes les séparant. Les arêtes sont orientées. Ainsi, dans la figure 6 : C est dépendant de A et B, mais A et B sont indépendants. b) 15 Définir la structure du réseau, créer le modèle de dépendance Il existe différents algorithmes permettant la création de réseau bayesien, DEAL (voir [7, 8]), Bcourse (voir [4, 5]). Le travail de conception de réseau bayesien est réalisé à l’aide de l’algorithme B-course (voir [4, 5]). Cet algorithme dispose de deux modes de fonctionnement, non naïf et naïf, que nous détaillerons dans la suite de ce rapport. La première étape dans la construction d’un réseau bayesien est de définir sa structure (ou graphe causal G). La génération d’un modèle de structure causale repose sur une approche aléatoire. On crée de manière automatique des réseaux qui recevront des distributions de probabilité locale en fonction du jeu de données fournies. Créer un réseau consiste à définir des graphes acycliques non nécessairement connexes (cela permet d’avoir des variables totalement indépendantes). L’algorithme B-course génère ainsi une population de réseaux bayesiens. Ces réseaux ne peuvent impliquer un même jeu de dépendances entre les variables (voir [6]), chaque réseau doit donc avoir une topologie unique (c.-à-d. une combinaison d’arêtes orientées unique). L’algorithme fait évoluer un graphe aléatoire, par ajout/suppression et retournement d’arête jusqu’à obtenir une nouvelle structure, pas encore rencontrée lors des précédentes itérations (voir figure 7). La recherche du modèle le plus probable est un problème NP-complet. Le nombre de modèles existant est fonction du nombre de variables (ou nœuds) prises en compte et croît de manière exponentielle. Le temps de calcul pour déterminer la structure de tous les réseaux possibles est de ce fait énorme, l’utilisation d’un outil de recherche heuristique est donc indispensable pour mener à bien ce travail. A B A B C D C D Figure 7: Génération aléatoire des graphes de dépendance. Modification de l’orientation des arêtes ou ajout/suppression d’arêtes. Pour évaluer la qualité d’un modèle de dépendance, l’algorithme se réfère à la valeur de probabilité du modèle en cours de construction (valeur score S). La probabilité du modèle M, ou P( M | D) , peut-être calculée avec le théorème de Bayes, produit de la probabilité d’observer le jeu d’observations sachant le modèle divisée par la probabilité globale des données (équation 0.3). S (G : D ) = P ( M | D ) = { P( D | M ) × P( M ) avec M le modèle D les données P( D) 0.3 Il faut distinguer les deux probabilités du modèle, probabilité du modèle sans données P( M ) et la probabilité du modèle après avoir fourni un jeu d’observations P( M | D) . La probabilité du modèle sans données, à l’instar de P( D) , ne peut pas être calculée. Le choix du modèle final repose sur une approche classique des réseaux bayesiens, le modèle sélectionné est le plus probable sachant le jeu d’observation dans une population de modèle aléatoire {M}. Les réseaux retenus seront ceux qui maximisent la valeur de score (équation 0.4). 17 [ M ] = max ( P( M | D) ) = max ( P( D | M ) × P( M ) ) {M } {M } 0.4 Toutefois, il est très difficile de calculer la probabilité associée aux données. Cela empêche une recherche globale, dans la population aléatoire, du modèle le plus probable. Pour résoudre ce problème, il est possible de comparer les modèles deux à deux. La question posée est la suivante : considérant deux modèles M1 et M2 ainsi qu’un jeu d’observations unique, le modèle M1 est-il plus probable que le modèle M2 ? Pour y répondre, on a recours au ratio des probabilités des modèles de dépendances (équation 0.5). P( M1 | D) ( P( D | M1 ) × P( M1 ) ) ÷ P( D) P( D | M1 ) × P( M1 ) = = P( M 2 | D) ( P( D | M 2 ) × P( M 2 ) ) ÷ P( D) P( D | M 2 ) × P( M 2 ) 0.5 Comme nous l’avons vu précédemment, on ne peut pas utiliser P( M ) directement. Pour parer à cet inconvénient, B-course considère les probabilités des modèles avant passage des données comme équiprobables, ceci permet de ne pas favoriser un modèle par rapport aux autres (c’est une particularité de cet algorithme, DEAL ne le fait pas), c'est-à-dire que l’on a : P( M1 ) = P( M 2 ) . De ce fait, l’équation 0.5 se simplifie en 0.6. P(M1 | D) P( D | M1 ) 0.6 = P(M 2 | D) P( D | M 2 ) Cette dernière égalité est donc l’unique calcul permettant de chercher le modèle de dépendance le plus adapté à nos données. Dans notre étude, nous utiliserons des variables discrétisées. Cela simplifie l’utilisation des réseaux bayesiens. En effet, selon le type de données considérées, le paramètre de distribution q représente soit des matrices de contingences (cas des variables discrètes) ou une distribution continue multi variée (cas des variables continues). Nos données seront discrétisées comme nous le verrons dans la suite du rapport, cette étape permet de représenter P X i | Parents G ( X i ) comme une table qui associe la probabilité de X à chacun de ses parents. ( ) Mais reprenons l’équation, 0.6 car il est maintenant possible de calculer la probabilité des données connaissant le modèle (voir annexe 6). Nous sommes donc en mesure de générer une population de modèle et de choisir le modèle qui correspond au mieux aux données, c'est-à-dire celui qui maximise la fonction de score. c) Réseau bayesien et classification Nous allons maintenant présenter la méthodologie mise en place dans le cadre du contrôle qualité des spots d’une lame. Dans la première partie, nous présentions la problématique suivante : pour une même ORF, nous obtenons, après normalisation inter canaux, deux valeurs de ratios d’expressions R et R’. Si l’un de ces ratios est considéré comme étant un ‘outlier’, on décide que les spots ne sont pas valides et on rejette ces deux valeurs. Notre objectif est de justifier l’acceptation de certains de ces spots à l’aide d’un réseau bayesien. La qualité d’un spot est définie par l’état de sa variable « flag ». Après analyse de la lame, le logiciel Genepix effectue une première sélection des spots. Un spot correct a pour valeur de ‘flag’ zéro, sinon une valeur différente de zéro. Selon l’état de cette variable, le spot est ou non pris en compte dans l’analyse bioinformatique des données d’expression. Il est donc important de conserver le maximum d’information tout en étant certain de la qualité des données. 19 Figure 8 : Réseau bayesien généré par l’algorithme non naïf de B-course. Les arêtes pleines sont celles dont le lien de causalité est clairement établi. Flag (flèche) et ses parents (un lien de causalité, en rouge) et deuxième niveau de parenté (en vert). Un certain nombre de variables sont isolées (indépendantes) et sont représentées sur ce graphe (haut), elles ne seront pas considérées dans la suite de notre travail. L’objectif est de réaliser un apprentissage supervisé de la qualité des spots en fonction d’un certain nombre de caractéristiques physiques de ces spots. Les réseaux bayesiens sont une méthode de choix pour déterminer les liens de causalités entre les différentes variables. Une fois les liens de causalités établis, il faut sélectionner les variables les plus importantes pour l’état final de ‘flag’, c'est-à-dire les variables ayant un lien de causalité, établi et important, avec ‘flag’. Cette étape correspond à l’apprentissage des données et à la création d’un réseau bayesien adapté au mieux à nos données. C’est à partir de ce réseau bayesien que sera élaboré un « classifieur » utilisé sur les spots « suspects », issus de l’analyse descriptive. L’apprentissage étant supervisé, il est nécessaire de créer un « bon » échantillon d’apprentissage. Par bon échantillon, il faut entendre un échantillon représentatif des liens de causalité entre variables permettant de caractériser précisément les dépendances entraînant un spot « bon », ou entraînant un spot « mauvais ». L’échantillon d’apprentissage (que nous nommerons par la suite fichier GPR de référence) a été réalisé par un utilisateur averti. L’annotation des spots d’une lame ont été manuellement contrôlés selon les critères de l’utilisateur (saturant, tache, bruit de fond important…). L’annotation automatique associée à cette annotation minutieuse par un spécialiste des puces nous permet de considérer cet échantillon comme représentatif de la population de lame. Nous nous sommes assurés que les distributions des différentes variables étaient similaires. 2. Résultats a) Sélection des variables d’intérêts L’algorithme non naïf utilisé sur un jeu de données complet comprenant une quarantaine de variables (un fichier GPR complet) nous a permis de déterminer les relations de causalités entre ces dernières (voir figure 8). Nous souhaitons sélectionner les variables dont l’état influence directement celui de la variable cible (c.-à-d. flag), notre choix se porte donc sur les parents de flag. Pour étoffer notre réseau, nous étendons notre choix au second niveau de parenté (voir tableau 1). Nom B635 median % B635 + 1SD % B635 + 2SD F635 sat F532 mean F532 SD B532 median % B532 + 2SD F532 sat Sum of medians F635 mean – B635 F635 total intensity Description Valeur de la médiane de l’intensité du bruit de fond dans le rouge % de pixel dépassant 1 fois l’intensité médiane du bruit de fond dans le rouge % de pixel dépassant 2 fois l’intensité médiane du bruit de fond dans le rouge % de pixel saturant (> maximum de lecture) dans le rouge Moyenne de l’intensité mesurée dans le vert Écart type de l’intensité du bruit de fond dans le vert Valeur de la médiane de l’intensité du bruit de fond dans le vert % de pixel dépassant 2 fois l’intensité médiane du bruit de fond dans le vert % de pixel saturant (> maximum de lecture) dans le vert Somme des médianes des intensités (vert et rouge) Moyenne des intensités dans le rouge moins le bruit de fond Intensité totale dans le rouge Tableau 1 : Variables d’intérêts sélectionnées par le modèle non naïf. F, pour foreground, pixels mesurés dans le spot, B pour background, pixels mesurés hors du spot. Cette présélection de variables est révélatrice des paramètres explicites de la qualité d’un spot. On retrouve ainsi les pourcentages de pixels saturants, les pourcentages de pixels supérieurs aux déviations standard et bien évidemment les valeurs d’intensité du bruit de fond… 21 B635 median %B635 1SD %B635 2SD F635total intensity F635 sat F635m - B635 F532 mean Flag Sum of medians F532 SD F532 sat %B532 2SD B532 median Figure 9 : Réseau bayesien de type naïf associé à la variable « flag ». Les probabilités associées à chacune des arêtes forment le « classifieur ». Dans la partie naïve de l’algorithme, on considère que les variables sont indépendantes les unes par rapport aux autres, elles sont liées à la variable cible, ici «Flag ». Nom ORF ygr067c ynl329c|PEX6 ynl034w ypr055w|SEC8 yol070c ygl227w|VID30 ygl172w|NUP49 yor028c|CIN5 yol124c ynl329c|PEX6 ydr291w yor102w yhr103w|SBE22 ypl155c|KIP2 yll004w|ORC3 ydl218w spot 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 Ratio Cy5/Cy3 0.450 0.28 0.88 0.43 0.37 0.37 0.22 0.81 0.40 0.39 0.47 0.37 0.1 0.2 0.47 0.56 0.24 0.37 0.42 0.35 0.17 0.27 0.23 0.3 0.38 0.30 0.69 0.26 0.3 0.15 0.1 0.02 Ratio Cy5/Cy3 après lowess 0.40 0.24 0.20 0.23 0.1 0.3 0.1 0.4 0.14 1.66 0.1 0.2 0.4 0.2 0.10 0.13 0 .1 0.5 0.3 0.1 0.19 0.16 0.1 0.4 0.4 0.1 0.1 0.2 0.42 0.7 0.1 0.3 Classification mauvais bon mauvais bon mauvais bon mauvais bon mauvais bon mauvais bon mauvais bon mauvais bon mauvais bon mauvais bon mauvais bon mauvais bon mauvais bon mauvais bon mauvais bon mauvais bon Tableau 2 : Sélection par le classifieur des spots considérés comme mauvais. Ce tableau rassemble les valeurs de ratios avant et après régression par lowess par bloc des réplicats. b) Apprentissage et classification L’apprentissage et la classification sont réalisés avec le mode naïf de l’algorithme B-course. L’algorithme naïf simplifie les règles de dépendances : nos variables d’intérêts sélectionnées à l’étape précédente, sont dorénavant toutes liées à notre variable « cible » (voir figure 9), cependant, elles sont supposées indépendantes entres elles. Comme cela est discuté dans Bioinformatics (voir [3]), cette simplification ne devrait pas influencer la qualité de la prédiction. Comme nous l’avons vu précédemment, l’algorithme exploite des données discrétisées. Cette étape est importante, en effet, une analyse de la distribution des variables aléatoires révèle deux types de variables : des variables aléatoires continues, et des variables aléatoires fortement discrétisées (cette discrétisation est liée aux limites techniques du scanner). Nous avons combiné une discrétisation par quantile et par pas. Nos données d’apprentissage sont issues de notre fichier de référence. L’apprentissage est lancé sur un échantillon de taille égale à deux tiers de ce fichier, le tiers restant est utilisé pour valider notre apprentissage. réel mauvais bon Apprentissage prédit mauvais bon 542 217 8021 180 Test prédit mauvais bon 274 106 95 4005 Tableau 3 : Résultat de la classification, pour l’apprentissage et sa validation. La division 2/3, 1/3, permet de vérifier que notre « classifieur » est fiable et qu’il n’y a pas de sur apprentissage (nous avons la même proportion d’individus bien/mal classés pour l’échantillon d’apprentissage et l’échantillon test). Dans les deux cas, le taux de bonne prédiction est voisin de 95%. Nous avons maintenant un « classifieur » opérationnel fondé sur notre réseau bayesien naïf. c) Classification et réplicats L’analyse descriptive d’un fichier présentée dans la première partie nous donne la liste des spots considérés comme « outliers ». Nous avons 488 spots suspectés de ne pas être valables pour la suite de l’analyse. Ces spots ont une valeur de flag égale à zéro (« bon ») mais un écart entre réplicat grand, d’où l’intérêt de notre étude qui permet de ne conserver que la valeur de ratio correspondant à une valeur « vraie » et d’éliminer le second ratio. Nous avons cherché à confirmer le classement de ces spots estimés « bons » avec notre classifieur. réel bon prédit mauvais bon 16 470 Tableau 4 : Résultat de la classification sur nos 486 spots « outliers ». Le « classifieur » ne valide pas la classe de seize spots expliquant ainsi la forte différence observée entre les ratios. Le tableau 2 détaille la classification pour chaque réplicat, on rappelle également les valeurs des ratios avant et après normalisation par lowess par bloc. Il est intéressant de voir que pour certains réplicat, le lowess augmente la différence entre R et R’. Cela pourrait être une explication de la hausse de la variabilité après régression par lowess. Pour valider ces résultats, il est nécessaire d’analyser l’image des spots discriminés (voir figure 10). Dans la plupart des cas, l’œil de l’utilisateur juge le spot classé « mauvais » comme étant inexploitable, à la différence de son réplicat, classé « bon » par le classifieur, qui semble préférable pour l’analyse de l’expression de ce gène. 23 A) Nom ORF Ynl329c spot 1 2 Classification mauvais bon spot 1 2 Classification mauvais bon spot 1 2 Classification mauvais bon B) Nom ORF Ygl172w C) Nom ORF ygr067c Figure 10 : Validation de l’affectation de classe du classifieur pour trois spots représentatifs. A) Différence importante entre les intensités des deux spots. B) le spot supérieur combine une faible intensité et une homogénéité faible. C) un cas ou l’œil de l’expert n’est pas en mesure de classer le spot. Le spot supérieur semble cependant plus hétérogène. 3. Discussion Au début de ce travail, notre objectif était de mettre en évidence des liens de causalités entre les différentes variables caractérisant l’état d’un spot (son état de flag), à savoir bon ou mauvais. La méthodologie mise en place a été la construction d’un réseau bayesien complexe par le biais de l’algorithme non naïf de B-course. Ce réseau bayesien, par sa complexité, nous a obligés à sélectionner un certain nombre de variables, dites variables d’intérêts. Notre choix s’est porté sur les parents de notre variable flag, la « cible » de notre étude. Le réseau obtenu comportait peu de sommets et des arêtes (quatre sommets et quatre arêtes directes). Compte tenu du grand nombre de variables à notre disposition, il paraissait intéressant de complexifier légèrement le réseau. Pour le faire évoluer légèrement et exploiter au mieux nos données, nous avons étendu nos variables d’intérêts aux arêtes du second niveau (parents et grands parents de la variable cible). Notre sélection comporte douze variables. Parmi elles, on retrouve les variables « classiquement » reconnues comme importantes dans la qualité des spots (paramètres d’intensité, de saturation, d’homogénéité du spot...). L’analyse de notre jeu d’observation a révélé des différences significatives entre les variables (variables aléatoires continues ou déjà discrétisées). Cette observation est à mettre en relation avec la technologie des puces elles-mêmes. Nos données sont issues de la numérisation de la lame. La plage de valeurs de ces variables dépend donc étroitement des capacités de l’appareillage (gamme de scan, sensibilité, microscope…). Ces capacités sont limitantes et à l’origine des variables aléatoires fortement discrétisées. La discrétisation des données est une étape critique qui conditionne de manière importante la structure du réseau et les probabilités associées aux arêtes. Nous avons choisi une discrétisation adaptée à nos deux types de variables, elle permet la construction de réseau informatif quant à l’état du flag. Pour répondre à notre problématique initiale, nous avons adopté une méthodologie d’apprentissage supervisé de nos données fondée sur les réseaux bayesiens. Cet apprentissage impose des simplifications du réseau bayesien utilisé pour la prédiction. Par exemple, on considère nos variables d’intérêts indépendantes entre elles. Le choix des individus (ORFs) à tester nous est donné par l’analyse descriptive. On a isolé des réplicats dont la différence de ratio était considérée comme extrême par rapport à la distribution de l’ensemble des différences. Ces spots, définis comme « outliers » relève d’un choix arbitraire (un seuil fixé à 5%), nous n’avons pas pu mettre en place un test statistique de reconnaissance des « outliers ».La proportion de ces spots est directement liée à cette méthode de sélection. Un travail plus approfondi dans le choix des spots à évaluer est à envisager. Nous pourrions par exemple implémenter le test de Grubb ou de Dixon. Les outliers déterminés (486 spots en tout soit 243 réplicats), chaque spot est soumis à notre outil de prédiction. Parmi ces 486 spots, 16 sont considérés « mauvais » par le classifieur. Nous avons recherché les réplicats contenant ces 16 spots . Après identification des ORFs correspondantes, nous nous sommes reportés à l’image de la puce (32 spots, 16 réplicats). La figure 11 présente un schéma récapitulatif des étapes de la prédiction et de la prise de décision. Le retour à l’image montre que le spot classé mauvais est toujours le moins bon des deux (par rapport aux critères d’intensité, d’homogénéité…). Il est à noter que des couples de ratios sont toujours classés comme « bon – bon » (voir figure 11A), dans ce cas la variabilité entre réplicats n’est pas expliquée par notre contrôle qualité. Dans le cas d’un changement d’état d’un des spots (voir figure 11B), on obtient un couple « bon-mauvais ». On peut donc conserver la valeur du ratio du spot « bon » et éliminer la seconde valeur. Cette distinction n’est pas toujours évidente (voir figure 10C). Le classifieur est ici le seul capable de réaliser le classement de manière correcte. 25 Analyse descriptive Sélection des outliers fichier GPR sélection "outliers" B Classification nouvel étal de flag fichier d'observations B B B spots "bons" selon le flag automatique B M état de flag prédit par le réseau classifieur réseau bayesien B B A) B) Figure 11 : Schéma récapitulatif de l’outil de prédiction. Après sélection des outliers, les spots correspondants sont classés. A) cas d’un couple de spots « bon-bon » qui ne change pas d’état. Dans ce cas, on ne peut rien conclure quant à la cause de la variabilité entre les spots. Les deux valeurs sont éliminées. B) le classifieur change l’état d’un des deux spots, le couple « bon-bon » devient « bon-mauvais ». On détecte grâce au classifieur le mauvais spot (bleu), on garde donc par défaut celui dans l’état ne change pas (rouge). 4. Conclusion Les réseaux bayesiens appliqués à notre problématique de conservation d’information sont bien adaptés. Ils tiennent compte de relation de dépendance entre nos variables, variables possédant un certain nombre d’états. Ils permettent de déterminer les relations de dépendance entre variables aléatoires à partir d’un jeu d’observations. La construction d’un réseau bayesien est complexe du fait de l’importance de chacun des paramètres permettant de le définir (données, valeurs manquantes…). Un gros travail d’optimisation a été nécessaire pour obtenir un réseau représentatif de nos observations. Cette optimisation a essentiellement été axée sur le choix des variables prises en comptes dans la création du réseau, sur le type de ces variables (variables aléatoires continues ou non), sur le choix du jeu d’observations… En définitive, le classifieur issu de ce travail répond à la problématique initiale de « conservation » d’information. Nous sommes en mesure d’identifier dans certains cas le spot le moins bon dans un réplicat dont les ratios sont fortement dissemblables et tenir compte ainsi d’une seule valeur de ratio dans l’analyse de l’expression du gène considéré. 27 RÉFÉRENCES 1. Goffeau, A., The yeast genome directory. Nature, 1997. 387(6632 Suppl): p. 5. 2. Steckel, D., Microarray Bioinformatics. 2003: Cambridge University Press. 3. Hautaniemi, S., et al., A novel strategy for microarray quality control using Bayesian networks. Bioinformatics, 2003. 19(16): p. 2031-8. 4. Myllymäki, P.a.S., T. and Tirri, H. and Uronen, P., The B-course library. 2002. 5. Myllymäki, P.a.S., T. and Tirri, H. and Uronen, P., B-course, a web-based tool for bayesian and causal data analysis. International Journal on Artificial Intelligence Tools, 2002. 11(3): p. 369-387. 6. Friedman, N., et al., Using Bayesian networks to analyze expression data. J Comput Biol, 2000. 7(3-4): p. 601-20. 7. Bottcher, S.G.a.D., C., DEAL, a package for learning bayesian networks. Journal of Statistical Software, 2003. 8(20). 8. Bottcher, S.G.a.D., C., The DEAL package. 2004. 9. Ihaka, R.a.G., R., R: A Language for Data Analysis and Graphics. Journal of Computational and Graphical Statistics, 1996. 5(3): p. 299--314. 29 ANNEXE 1 Principe de fonctionnement des puces à ADN. Partie humide de la conception de puce. Encadré gauche, la préparation de la lame par le robot spotter, Celui-ci dépose les ORFs sur une lame de verre (6000 ORFs), et répète l’opération sur deux cadrans (bloc 1 et 2). Encadré droit, l’hybridation spécifique par complémentarité des bases entraînant la formation d’hétéros duplexes. Après hybridation, scan de la lame par un laser et quantification de la fluorescence des spots dans le vert et dans le rouge. Les deux fluorochromes. Cy5 (635nm) Cy3 (532nm) 31 ANNEXE 2 Image d’un bloc d’une puce à ADN, superposition des images 635nm (rouge) et 532nm (vert). ANNEXE 3 Extrait d’un fichier GPR, le fichier est tabulé. N’est représenté que les premières colonnes du fichier. ANNEXE 4 Les signaux ont deux composantes : A) une fluorescence issue d’une hybridation spécifique, calculée sur la base des pixels du spot (rond rouge). B) une fluorescence non spécifique, le bruit de fond. Ce dernier est calculé à partir des pixels autour du spot (cadre rose ci-dessus). Le logiciel d’analyse d’image Genepix détermine la forme du spot (cercle rouge), l’intensité pour chacun des canaux est mesurée pour chaque pixel du spot. Les données sont compilées sous forme de médiane, moyenne, écart type… Au total 40 paramètres sont ainsi stockés pour chaque spot. ANNEXE 5 Capture d’écran de la page Web permettant l’envoi et le traitement des fichiers GPR. L’utilisateur envoi son fichier tabulé, il obtient après traitement un certain nombre de graphiques correspondant à l’analyse descriptive. ANNEXE 6 P( D | M ) = ⎛ N' ⎞ ⎛ N' ⎞ Γ⎜ ⎟ + Nijk ⎟ ri Γ ⎜ ⎜q ⎟ ⎜rq ⎟ Π Π ⎛ ⎝' i ⎠ ⎞ Π ⎝ i ⎛ i ' ⎞ ⎠ i =1 j =1 k =1 N N ⎟ Γ⎜ + Nij ⎟ Γ⎜ ⎜q ⎟ ⎜rq ⎟ ⎝ i ⎠ ⎝ i i⎠ n qi Calcul de P(M|D). - i, le nombre de variables. ri, le nombre d’observations par variable. qi, le nombre de configuration des parents pour la variable considérée. Nij, le nombre de cas ayant la jième configuration de parents pour la ième variable considérée. Nijk, le nombre de cas ayant la kième valeur pour la ième variable pour la jième configuration des parents. 33 ANNEXE 7 fichier GPR analyse.pl extraction.pl fichier GPR parse analyse.R B Course analyse descriptive interface web liste outliers liste outliers discret.R classifier script fichier outlier ? sortie Flux des données pour l’analyse descriptive et la classification des spots. Nous avons principalement utilisé deux types de scripts, script Perl pour l’extraction et la mise en forme des données, script R [9] pour l’analyse, l’étude statistique et la production des graphiques. L’interface Web est développée en HTML et PHP, elle automatise l’appel et l’exécution des scripts. Le classifier est développé en langage C. 35 RÉSUMÉ Les puces à ADN produites par l’ENS sont constituées de deux blocs. Chaque bloc porte l’intégralité des 6000 ORFs de la levure, un gène est donc présent deux fois (deux spots) sur une même puce, ce sont les réplicats. La mesure de l’expression d’un gène correspond à la compilation des valeurs de ratios Cy5/Cy3 de ces réplicats. Lorsque ces deux ratios sont très différents, l’usage veut que la valeur compilée soit éliminée. Nous présentons une analyse de la variabilité des réplicats intra lame. Nous exposons une méthodologie permettant de conserver une partie de l’information. Cette conservation est réalisée grâce à l’utilisation d’un apprentissage supervisé permettant de sélectionner la valeur la plus cohérente et d’éliminer la seconde. L’apprentissage est fondé sur l’utilisation des réseaux bayesiens appliqués aux qualités physiques des spots de la lame. MOTS CLEFS : Puces à ADN, Contrôle qualité, Spot, Réplicat, Réseau bayesien, Apprentissage supervisé.