extraction de motifs utilisant des techniques de vecteurs binaires

Upload: vaseltior

Post on 30-May-2018

217 views

Category:

Documents


0 download

TRANSCRIPT

  • 8/14/2019 Extraction de motifs utilisant des techniques de vecteurs binaires

    1/64

    Factult e des Sciences et des TechniquesUniversit e de RouenMaster 2 recherche I.T.A.(Informatique Th eorique et Applications)

    Responsable : Thierry Lecroq

    2004 2005

    Samuel G RAU

    [email protected]

    Extraction de motifsutilisant des techniques de vecteurs binaires

  • 8/14/2019 Extraction de motifs utilisant des techniques de vecteurs binaires

    2/64

    Table des mati eres

    Introduction 4

    1 Probl ematique 61.1 Rappels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6

    1.1.1 G enomique . . . . . . . . . . . . . . . . . . . . . . . . . 61.1.2 Dogme central . . . . . . . . . . . . . . . . . . . . . . . 7

    1.2 R egulation de lexpression des g` enes . . . . . . . . . . . . . . . . 91.2.1 Les m ecanismes . . . . . . . . . . . . . . . . . . . . . . 9

    1.3 D etails de r egulation et objectifs . . . . . . . . . . . . . . . . . . 14

    1.3.1 D enition biologique du promoteur . . . . . . . . . . . . 141.3.2 D enition des objectifs . . . . . . . . . . . . . . . . . . . 15

    2 Etude dun algorithme rapide 172.1 Extraction de motifs courts non ordonn es . . . . . . . . . . . . . 17

    2.1.1 Mod eles pour les motifs . . . . . . . . . . . . . . . . . . 182.2 Fonction de score . . . . . . . . . . . . . . . . . . . . . . . . . . 19

    2.2.1 Consistance . . . . . . . . . . . . . . . . . . . . . . . . . 192.2.2 Signication . . . . . . . . . . . . . . . . . . . . . . . . 202.2.3 Couverture . . . . . . . . . . . . . . . . . . . . . . . . . 212.2.4 Score . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21

    2.3 Description de lalgorithme . . . . . . . . . . . . . . . . . . . . . 212.3.1 Description g en erale . . . . . . . . . . . . . . . . . . . . 222.3.2 Description d etaill ee . . . . . . . . . . . . . . . . . . . . 22

    2.4 G eneration de motifs courts . . . . . . . . . . . . . . . . . . . . . 252.4.1 Tentative d enum eration . . . . . . . . . . . . . . . . . . 252.4.2 Le logiciel YM F . . . . . . . . . . . . . . . . . . . . . . . 25

    2.5 Recherche de motifs courts . . . . . . . . . . . . . . . . . . . . . 292.5.1 Recherche exacte . . . . . . . . . . . . . . . . . . . . . . 292.5.2 Recherche approch ee . . . . . . . . . . . . . . . . . . . . 33

    2

  • 8/14/2019 Extraction de motifs utilisant des techniques de vecteurs binaires

    3/64

    3 Implantation 36

    3.1 Optimisations . . . . . . . . . . . . . . . . . . . . . . . . . . . . 363.1.1 Optimisations dordre g en eral . . . . . . . . . . . . . . . 373.1.2 Techniques SIMD . . . . . . . . . . . . . . . . . . . . . 383.1.3 Complement Renvers e . . . . . . . . . . . . . . . . . . . 423.1.4 Combinaison et application des techniques . . . . . . . . 43

    3.2 Performances R esultantes . . . . . . . . . . . . . . . . . . . . . . 443.3 Interface graphique . . . . . . . . . . . . . . . . . . . . . . . . . 45

    3.3.1 Description et param` etres g en eraux . . . . . . . . . . . . 453.3.2 Interface pour YM F . . . . . . . . . . . . . . . . . . . . . 46

    4 Resultats exp erimentaux 49

    4.1 Premiers r esultats . . . . . . . . . . . . . . . . . . . . . . . . . . 494.1.1 Exemple 1 - G enes putatifs co-r egul es par HAP 3 . . . . . 504.1.2 Exemple 2 - G` enes putatifs co-r egul es par GCN 4 . . . . . 52

    Conclusion 55

    A Compl ement renvers e acc eler e 56

    Bibliographie 64

    3

  • 8/14/2019 Extraction de motifs utilisant des techniques de vecteurs binaires

    4/64

    Introduction

    La compr ehension du fonctionnement dun tissu, quil soit dans unetat normal ou pathologique, implique g en eralement lanalyse de lexpres-sion des g enes qui lui sont sp eciques. Apr es identication de ces g enes,letape suivante consiste souvent a d eterminer la raison de cette sp ecicit etissulaire. Elle peut trouver son origine a differents niveaux : r egulation delexpression du g ene, stabilit e de son ARN messager (ARNm) ou de saprot eine, le premier cas etant le plus fr equent. La premi ere etape dans lex-pression des g enes est linitiation de la transcription qui est un point decontr ole important.

    Dun point de vue pathologique, les d efauts de r egulation de la trans-cription de certains g enes sont lune des causes majeures de cancer. Lana-lyse des r egions promotrices des g enes ayant une sp ecicit e tissulairecommune est donc incontournable pour comprendre la sp ecicit e de leurtranscription et leurs eventuelles d e-r egulation. De plus, lorsquun groupede g enes est sp ecique a un tissu, lune des suppositions naturelles estque cette sp ecicit e est probablement due a une r egulation commune deces g enes... donc quils ont des el ements de r egulation communs.

    De nombreuses etudes portant sur la pr ediction de promoteurs et larecherche des el ements de r egulation de ces r egions ont et e men ees; laplupart, tout comme la n otre, commencent par une etape danalyse bioin-formatique.

    Cest dans ce cadre que se d eroulera notre recherche. Nous com-mencerons par donner quelques el ements de biologie an dappr ecier asa juste valeur, le contenu de ce papier. Cela nous permettra de red enir,de mani ere plus sp ecique, notre probl ematique, a savoir, celle de la miseen evidence de motifs consensus dans les r egions promotrices de g enespotentiellement co-r egul es et la recherche de leur caract eristique.

    Puis, nous exposerons la mani ere dy parvenir a laide dune m ethodeayant d ej a fait ses preuves [9], m ethode, utilisant des techniques de vec-teurs de bits et m ethode pour laquelle, nous avons tenter den am eliorer les

    4

  • 8/14/2019 Extraction de motifs utilisant des techniques de vecteurs binaires

    5/64

    performances an de produire un outil efcace en signication de r esultats

    et rapidit e dex ecution.

    Enn, nous chercherons a valider les r esultats obtenus au travers deleur pertinence biologique et de lensemble de leur particularit es, pour les-quelles reste a d ecouvrir lessence m eme de leur organisation.

    5

  • 8/14/2019 Extraction de motifs utilisant des techniques de vecteurs binaires

    6/64

    C HAPITRE 1

    Probl ematique

    Nous savons maintenant que cette etude repose tr es fortement, surune assise biologique. Notre approche informatique se verra donc commelapplication des outils informatiques a une branche de la biologie, a savoir,la biologie mol eculaire, dont nous allons rappeler les bases. Nous allonsdonc exposer la probl ematique g en erale bien que celle-ci a et e enonc eedans lintroduction.

    1.1. Rappels

    Dans le cadre de notre etude, nous nous positionnons dun point de vue appli-catif des outils informatique

    1.1.1 G enomique

    Denition 1.1.1 (Genomique) . Science qui etudie la structure et le fonctionnement des g enomes et en particulier les g enes.

    La g enomique etudie le g enome, cest-`a-dire la molecule dADN situ ee dansles cellules dun etre vivant. LADN est comme un collier de quatre perles

    diff erentes (les bases) qui contient les g enes, plans de montage des prot eines. Lagenomique a pour but de trouver lordre des perles , didentier les g`enes et leurfonction (quelles prot eines ils codent) et de d eterminer le role du reste de lADN.

    La g enomique vise `a letude compl`ete du mat eriel h ereditaire des etres vi-vants : parties codantes ou g` enes (5% du genome chez lhomme) et non codantes.La g enomique structurale comprend l etablissement de cartes du genome, sonsequencage puis la localisation des g ` enes et des zones de r egulation sur les chromo-somes. La genomique fonctionnelle etudie la fonction des g` enes (proteine cod ee),leur expression et sa r egulation ainsi que les interactions entre g enes. Elle n ecessite

    6

  • 8/14/2019 Extraction de motifs utilisant des techniques de vecteurs binaires

    7/64

    letude des ensembles de prot eines issues des g enes (objet de la prot eomique). Les

    applications de la g enomique sont multiples : lagronomie (OGM), la m edecine(genes responsables de maladie ou y pr edisposant), la pharmacologie (g enes ciblesde m edicaments, prot eines issues dOGM) ou la justice (empreinte g en etique).

    L etude de ces g enes induit n ecessairement l etude des structures sur lesquelleselles reposent. Pour cela, nous allons redonner les quelques notions de biologiemol eculaire qui nous seront utiles tout au long de cette etude.

    1.1.2 Dogme central

    Le ph enom ene de la vie sur Terre peut etre envisage, de facon simplicatrice,

    comme la transmission dune g eneration a lautre dun ensemble dinformationsqui permettent la construction, a partir de constituants elementaires trouv es danslenvironnement terrestre et d energie d eriv ee essentiellement du rayonnement so-laire, de machines de survie ou organismes vivants. Le syst` eme de stockage etde transmission dinformations doit etre assez robuste pour que la plupart des des-cendants dun etre donn e soient viables, mais assez sujet a variation pour g en ereravec le temps des formes vivantes de plus en plus diversi ees.

    Le dogme central , introduit par Francis Crick (le co-d ecouvreur de la struc-ture dADN) `a la n des annees 50, veut que chez tous les etres vivants, linfor-mation ne soit transmise que dans un sens : de lADN o` u repose linformation,a lARN, une structure transitoire permettant sa transmission a une machine detraduction, aux prot eines, les constituants de base qui font fonctionner la cellule etlorganisme entier. LADN est donc le constituant chimique majeur de lh eredit e.

    ADN

    replication

    replication

    de lARN

    transcription

    transcription

    inverse

    traduction

    pseudo-r eplication

    ARN prot eine

    F IG . 1.1 Le dogme central (bleu) et certaines de ces exceptions (rouge) .

    Rappelons pour commencer, quel est ce constituant chimique pr esent danstoutes les cellules vivantes. Chez tous les etres vivants donc, linformation g en e-tique est stockee dans des polym`eres de structure relativement simple, connus sousle nom dacides nucl eiques .

    7

  • 8/14/2019 Extraction de motifs utilisant des techniques de vecteurs binaires

    8/64

    Il en existe deux types, lacide d esoxyribonucl eique ou ADN, et lacide ribo-

    nucl eique ou ARN.La cha ne principale des ces deux polym eres est compos ee de sucres, le ribose

    pour lARN, et le d esoxyribose pour lADN, li es entre eux par des phosphates. Auribose et au desoxyribose, sont attach es des bases puriques et pyrimidiques, quisont les el ements porteurs dinformation. Cet ensemble fait de lADN une macromol ecule, qui est donc form ee de plusieurs nucl eotides donnant un polynucl eotide .Chaque nucleotide contient :

    un groupe phosphate , un ose a cinq atomes de carbone ( pentose ), une base , qui peut- etre soit une purine , soit une pyrimidine . La distinction

    entre les purines et les pyrimidines vient du fait que les purines poss edentdeux h eterocycles azot es alors que les pyrimidines nen poss edent quun.

    Dans lADN, le pentose est un d esoxyribose, les nucl eotides sont donc desdesoxyribonucl eotides. Dans lARN par contre, lose est un ribose, les nucl eotidesy sont donc des ribonucl eotides.

    LADN est un acide nucl eique bicat enaire , cest- a-dire constitu e de deux brins,associ es par des liaisons hydrog` ene (H). Les liaisons H s etablissent entre une pu-rine sur un brin, et une pyrimidine sur lautre brin. Le nombre de liaisons possiblesentre les mol ecules fait que lad enine ( A), est toujours reli ee a la thymine ( T) par

    deux liaisons H alors que la guanine ( G) est toujours reliee a la cytosine ( C) partrois liaisons H. La compl ementarite des paires de bases r esulte de leur structurechimique. Elle f ut etablie par les travaux de Chargaff qui d emontra que dans unADN bicat enaire, le nombre dad enine est egal au nombre de thymine et celui descytosine egal au nombre de guanine.

    La s equence de nucl eotides constituant un brin dADN est compl ementaire decelle de lautre brin. Cette compl ementarite d etermine la delit e de la transmissionde linformation g en etique. Elle nous permettra, nous le verrons, de d etermineravec exactitude la s equence nucl eotidique dun brin lorsque la s equence de lautrebrin est connue.

    Lorientation dun brin, d enie par ses extr emit es 5 et 3 (Fig. 1.2), est toujoursinverse de celle du brin compl ementaire ; les deux brins de lADN sont dits anti- parall eles . Lassociation entre les deux brins, assur ee par des liaisons hydrog` enes,gen ere des contraintes physiques qui imposent a la mol ecule dADN sa forme bienconnue d h elice .

    Le m ecanisme de fabrication des prot eines ainsi que la structure g en erale delADN est donc maintenant d ecrit dans sa globalit e. Il est un point interessant dansce processus, celui de la transcription . Cest a cette etape du dogme central

    8

  • 8/14/2019 Extraction de motifs utilisant des techniques de vecteurs binaires

    9/64

    5 3

    3 5

    A C C C T G A T T T G C A A CT G G G A C T A A A C G T T G

    F IG . 1.2 Deux cha nes dADN repr esent ees selon la notation conventionnelle.Les eches indiquent le sens de lecture du brin.

    que selon un grand nombre de param etres, que nous tenterons de d etailler, cer-tains g enes seront exprim es et dautres reprim es. Etendons nos explications ` a cemecanisme an de mieux appr ehender le termes qui seront utilis es au cours decette etude.

    1.2. R egulation de lexpression des g enes

    Un g ene est un fragment dADN porteur dune information g en etique se con-cretisant sous la forme dun ARN ou dune prot eine. Lexpression dun g ene enprot eine n ecessite la synth` ese pr ealable dun ARN par le m ecanisme de trans-cription . Contrairement a la replication qui duplique toute la mol ecule dADN,la transcription ne porte que sur linformation g en etique de certaines s equencesdADN (g`enes). Un syst `eme enzymatique complexe assure la transcription de lin-formation genetique de lADN en ARN. Trois classes majeures dARN sont pro-duites pour la transcription :

    lARNm (messager) constitue la s equence nucleotidique qui sera traduite enune s equence dacides amin es.

    lARNt (de transfert) sert dadaptateur capable de d ecoder linformationgenetique de lARNm et de transf erer les acides amin es correspondant ` aune cha ne polypeptidique en cours de synth ese.

    lARNr (ribosomal) forme, avec des prot eines sp eciques, un assemblagesupramol eculaire, le ribosome. Celui-ci assure la traduction de lARNm.

    Divers processus de r egulation de lexpression des g enes font qu a tout mo-ment, seules les prot eines n ecessaire `a la cellule sont synth etis ees, bien que toutesles cellules contiennent toute linformation g en etique de lorganisme.

    1.2.1 Les m ecanismes

    Parmi les mecanismes du vivant, celui de la synth` ese des proteines est celui quienglobe notre etude. La synth ese des prot eines est le processus par lequel une cel-

    9

  • 8/14/2019 Extraction de motifs utilisant des techniques de vecteurs binaires

    10/64

    lule assemble les acides amin es isol es pr esent dans son cytoplasme en une cha ne

    prot eique, a partir de linformation contenue dans lADN. Elle se d eroule en deuxetapes au moins :

    la transcription de lADN en ARN messager, la traduction de lARN messager en une prot eine.

    Chez les eucaryotes (organismes dont les cellules poss` edent un noyau), cesdeux etapes sont successives, la premi ere se d eroule dans le noyau, la seconde, dansle cytoplasme. Chez les procaryotes (organismes dont les cellules ne poss edent pasde noyau), les deux etapes ont lieu dans le cytoplasme et peuvent etre simultanees,la traduction debutant alors que la transcription nest pas encore achev ee.

    F IG . 1.3 Proc ed e gen eral de synth`ese des proteines dun organisme vivant. Au-teur : Guillaume Bokiau . Source : http://fr.wikipedia.org/wiki/ .

    Transcription

    La premi ere etape de la synth ese des prot eines est la transcription dun g ene delADN en une mol ecule dARN messager (ARNm ou acide ribonucl eique messa-ger). Letape se deroule a lint erieur meme du noyau dune cellule eucaryote et dansle cytoplasme des procaryotes. Les acides ribonucl eique (ARN) sont des mol eculesobtenues par la transcription de linformation g en etique port ee par lADN. Ce sontdes chanes polynucl eotides qui diff`erent de lADN par la pr esence de bases detype Uracile ( U) remplacant les Thymines ( T) et de sucres de type ribose, en lieuet place de d esoxyriboses. Cest la s equence des bases puriques ( A, G) et pyrimi-diques ( T, C) de lADN qui commande la s equence des bases ( A, G, U, C) de lARN.Compar e a lADN, lARN des cellules vivantes est de petite taille et sa dur ee devie est limit ee.

    10

  • 8/14/2019 Extraction de motifs utilisant des techniques de vecteurs binaires

    11/64

    Les ARN sont donc des mol ecules constitu ees dun seul brin (monocat enaire).

    A lexception de lARN messager qui poss` ede une structure lin eaire, les ARNret ARNt sont fait dun brin fr equemment repli e sur lui-m eme par appariementlocal des bases. Ils adoptent ainsi une conformation faite de boucles et de tiges(dite en epingles a cheveux ou bourrelets) et sont souvent associ es a des prot einesspeciques.

    F IG . 1.4 Sch ema de lARNt (de transfert). , anti-codon (3 nucl eotides) ; , site de xation de lacide amin e ; , boucle variable ; , branche D ; ,branche T ; A, boucle de lanti-codon ; D, boucle D ; T , Boucle T Source :http://fr.wikipedia.org/wiki/ .

    La transcription fait intervenir une activit e enzymatique nomm ee ARN po-lymerase holoenzyme. Cet enorme complexe enzymatique d eroule et disjoint lesdeux brins de lADN h elico dale. Il recrute les mononucl eotides du futur brindARN et les assemble par compl ementarit e avec les bases de la s equence dubrin dADN. Le processus de transcription est assez similaire chez les procaryotes(bact eries) et chez les eucaryotes (animaux et v eg etaux). Toutefois les cellules eu-caryotes poss edent trois types dARN polym erases (I , II, III) au lieu dun seul

    chez les procaryotes. Chaque vari ete de polym erase est responsable de la synth` esedune classe dARN. Ainsi la pol I synth etise des ARN ribosomaux, la pol II lesARNm et la pol III les ARNt et ARNr-5S.

    La transcription seffectue en trois etapes successives : initiation , elongation ,et terminaison .

    Initiation Letape dinitiation d ebute lorsque lARN polym erase sassocie ` a uneregion sp ecique dun brin dADN appel ee promoteur . Un promoteur estconstitu e dune s equence consensus contenant larrangement de bases TATA

    11

  • 8/14/2019 Extraction de motifs utilisant des techniques de vecteurs binaires

    12/64

    F IG . 1.5 Processus de transcription de lADN. Auteur : Guillaume Bokiau .Source : http://fr.wikipedia.org/wiki/ .

    (code Pribnow) et CAAT(chez les eucaryotes). Un facteur prot eique sp eci-que (facteur sigma) sassocie ` a la polym erase et lui permet de se xersur le brin a transcrire. Elle peut alors s eparer les deux brins dADN etcr eez une bulle de transcription permettant lappariement des nucl eotidescompl ementaires de la s equence dADN a transcrire.

    Elongation Lelongation de la cha ne dARN seffectue par polym erisation suc-

    cessive de nucleotides dans le sens 5 - 3.Terminaison L etape de terminaison intervient lorsquun signal indiquant la n

    du gene est lu. Un signal de terminaison est g eneralement constitu e par unesequence palindromique riche en Guanine et Cytosine suivie dune r egionessentiellement compos e dAd enine. Cette s equence cause la formation dunbourrelet sur la chane dARN, provoquant la dissociation du complexe poly-merase-ADN-ARN. Dans certains cas la terminaison fait egalement interve-nir un facteur prot eique appel e facteur rho.

    A lissu de la transcription, le brin dARN synth etis e est appel e transcrit pri-maire car il est le n egatif (compl ement renvers e) de la s equence compl ete du g ene.La maturation du transcrit primaire seffectue par expulsion des s equences noncodantes ou introns ( epissage).

    Traduction

    Les prot eines sont les constituants fondamentaux des cellules. Elles poss edentune structure complexe faite de cha nes polypeptides, obtenues par polym erisationde sous-unites appel ees acides amines. Lexpression de la s equence dun ARNmessager en une cha ne polypeptide est nomm ee traduction . La traduction est unprocessus complexe qui utilise les trois classes dARN (Arnt, ARNr et ARNm)

    12

  • 8/14/2019 Extraction de motifs utilisant des techniques de vecteurs binaires

    13/64

    dont toutes participent au transfert de linformation des g enes aux prot eines, mais

    seul lARNm est d epositaire de linformation, les ARNr et ARNt n etant que desoutils n ecessaires a la lecture de linformation.

    F IG . 1.6 Processus de traduction de lARN en prot eine. Auteur : Guillaume Bo-kiau . Source : http://fr.wikipedia.org/wiki/ .

    Une fois que le brin dARNm a atteint le cytoplasme, o u a lieu la traduction,il se xe a un ribosome qui va assembler une s equence dacides amin es selon les instructions du code g en etique : chaque codon (groupe de 3 nucl eotides delARNm) correspond a un acide amin e, sauf 3 codons, appel es codons-stop, quiprovoquent larr et de la transcription. Il y a egalement un codon ( AUG) qui peut tantcoder le d ebut de la transcription que lacide amin e methionine .

    Le ribosome va parcourir le brin dARNm codon par codon et va par lin-term ediaire dun ARN de transfert (ARNt) ajouter un acide amin e a la prot eine encours de fabrication selon le codon lu. Une fois le codon-stop atteint, la prot eine estcompl ete : le ribosome se d etache de la proteine et du brin dARNm, et la prot eineest lib er ee dans lorganisme.

    Le meme lament dARNm peut servir ` a la fabrication simultan ee de plusieursmol ecules de proteines, lorsque plusieurs ribosomes sen chargent. Avant d etredetruite, cette mol ecule participe en effet a la fabrication de 10 a 20 prot eines.

    Des que la cha ne dacides amin es est termin ee, elle se d etache du ribosomequi est alors disponible pour une nouvelle synth` ese. Sentame alors le transport desprot eines, qui les m enent hors de la cellule et dans le syst eme sanguin.

    Pour r esumer, les enzymes responsables de la synth` ese de lARN, les ARN po-lymerase, apr`es avoir reconnu une r egion de lADN appel ee promoteur , ce xe surce promoteur entra nant, apr es separation localis ee des brins dADN, le synth esede lARN par lun des deux brins.

    Le nucl eotide, point de depart de la transcription, TSS (Transcription StartSite), est par convention num erot e + 1, les suivants en aval sont num erot es + 2,+ 3, etc., alors que ceux en amont sont num erot es 1, 2, 3, etc.

    13

  • 8/14/2019 Extraction de motifs utilisant des techniques de vecteurs binaires

    14/64

    Cest cette derni ere r egion, la r egion en amont de g enes que nous allons a

    present d etailler.

    1.3. D etails de r egulation et objectifs

    Les quantites de prot eines synthetis ees par une cellule ne sont pas n ecessaire-ment xes mais varient en fonction des besoins de la cellule. Le colibacille Es-cherichia coli est aussi bien capable de synth etiser des m etabolites (produits dumetabolisme, necessaire pour le d eveloppement) comme le tryptophane ou lhis-tidine que de les prelever dans le milieu. Lun ou lautre de ces m ecanismes estdeclench e selon le s besoins de la cellule et selon que les m etabolites en ques-

    tion sont pr esents ou absents du milieu. G eneralement, la bact erie ne synth etisedes m etabolites que sil nest pas possible de les extraire du milieu. Elle fait ainsileconomie de synth eses inutiles. Les diff erents niveaux dexpression des g enestemoignent de cet ajustement permanent entre les besoins cellulaires et les m eca-nismes moleculaires destin es a y faire face.

    Cette r egulation resulte de differences de reconnaissance des promoteurs parlARN polym erase et de diff erences dans le d emarrage de la traduction. Il existeaussi des syst`emes de regulation qui font exprimer les g` enes a la demande. Dautressyst emes ajustent la concentration dune prot eine dans la cellule en fonction desbesoins impos es par lenvironnement. On parle de r egulation de lexpression desgenes pour d esigner tous ces m ecnismes.

    Nous voyons bien a present, lint eret d etudier ces m ecanismes en offrant unoutil permettant de d eterminer, si cela est possible, les caract eristiques et propri etesdes promoteurs.

    1.3.1 D enition biologique du promoteur

    Le promoteur est la r egion situ ee en amont dun ou de plusieurs g` enes, conte-nant les elements permettant de r eguler leur transcription et dassurer un tauxmaximal dexpression, pour autant que les conditions n ecessaires soient r eunies(pr esence de prot eines ad equates). Sil est parfois difcile de saccorder sur la li-

    mite 5 dun promoteur, sa limite 3 est en revanche d enie par un consensus : cestle + 1 de transcription (ou TSS Transcription Start Site ), lendroit o u debute latranscription du g ene. La localisation du TSS est dailleurs lune des principalesdifcultes, en particulier chez les eucaryotes.

    La structure des promoteurs eucaryotes et procaryotes est en effet tr` es dif-f erente. La seule similitude r eside dans la pr esence d el ements stabilisant le com-plexe proteique charge de la transcription (ARN polym erase). Les autres elements,plus nombreux et r egulant plus nement lexpression, sont sp eciques a lune ou alautre de ces cat egories dorganismes.

    14

  • 8/14/2019 Extraction de motifs utilisant des techniques de vecteurs binaires

    15/64

    -35 -30 -12 -7 +1

    a.

    ADN Region promotriceRegion codante

    du gene

    5 --- tagtgta TTGACA tgatagaagcactctac TATAAT ctcaat A ggtccact --- 3

    5 --- atcacat AACTGT actatcttcgtgagatg ATATTA gagtta T ccaggtga --- 3

    Transcription

    5 --- agguccacu . . . --- 3

    ARNm

    F IG . 1.7 Promoteur procaryote. a. Exemple de promoteur de g ene de Escherichiacoli .

    1.3.2 D enition des objectifs

    Il existe des algorithmes permettant de trouver des motifs courts. Parmi ceuxpropos es, nous pouvons prendre lexemple pr esent e par Sinha et Tompa [12]. Ilsagit dune m ethode statistique pour rechercher des motifs ayant un r ole de r egu-lation dans les regions promotrices facteur de transcription dont la signication,au sens biologique, est mesur ee par z-score. Nous porterons un fort int eret pourcet exemple par la suite. R ecemment, plut ot que de ne sint eresser qu a un motif

    unique , des ensembles de motifs ordonn es poss edant, de plus, des br` eches ont eteintensivement consid er e an de rechercher des motifs dADN conserv es dans lesregions en amont de g ene, comme cela est la cas pour les ensembles de g enesco-exprimes et diverses familles de g` enes fonctionnels.

    Il est evident que les ensembles de motifs plut ot que les motifs uniques sontpotentiellement plus ad equats dans la discrimination densembles de g` enes parti-culiers les uns par rapport aux autres. En cons equence des resultats satisfaisantsobtenus a laide densembles de motifs courts ordonn es acceptant des br eches, sur-git la question selon laquelle des ensembles de motifs courts non ordonn es, sans

    15

  • 8/14/2019 Extraction de motifs utilisant des techniques de vecteurs binaires

    16/64

    aucune contrainte sur les br eches, ne seraient-ils pas appropri es pour d ecouvrir des

    motifs. Nous pouvons adjoindre une autre question : si, dune certaine mani` erenous obtenons des motifs a valeur signicative biologiquement parlant, commentces motifs sont ordonn es dans les r egions en amont de g enes donn es, et quellesgenres de contraintes sur les br` eches ces motifs satisfont-ils ?

    16

  • 8/14/2019 Extraction de motifs utilisant des techniques de vecteurs binaires

    17/64

    C HAPITRE 2

    Etude dun algorithme rapide

    Suite a la lecture de larticle de Marayuma et al. [9], notre but f ut denous replacer dans les m emes conditions exp erimentales que celles uti-lisees par les auteurs. Dans cette partie, nous allons tenter dapporter unedescription convenable de lalgorithme propos e, o u nous d etaillerons sonfonctionnement et son int er et.

    Le but essentiel de cet algorithme est le classement darrangements demotifs, protant dun temps dex ecution faible par lutilisation dalgorithmesde recherche de motifs bas es sur des techniques de vecteurs de bits.

    2.1. Extraction de motifs courts non ordonn es

    Lextraction de motifs courts ou plus pr ecis ement, lidentication de s equencesconsensus est un probl` eme ayant deja donn e suite a grand nombre d etudes. Lesresultats obtenus etant plus ou moins viables, nous portons notre attention sur uneetude offrant donc, il va de soit, des r esultats int eressants.

    Les auteurs ont eu lid ee suivante : sachant quil est aujourdhui possible decaract eriser des s equences consensus ayant un r ole dans la r egulation, pouvons-nous caract eriser plusieurs de ces s equences simultan ement et d eterminer parmi

    ces collections form ees, lesquelles poss edent une valeur biologique important dansla regulation commune de plusieurs g ` enes.

    An de concr etiser une telle id ee, nous allons d ecrire un mod ele pour lessequences consensus, puis, y ajouter une m ethode permettant de classer la valeurdu poids biologique de ces s equences au travers dun ensemble de fonctions ob- jectives (fonction de score), pour enn d eterminer un algorithme r ealisant cetteoperation. Nous denissons la notion de fonction objective dans ce qui suit.

    17

  • 8/14/2019 Extraction de motifs utilisant des techniques de vecteurs binaires

    18/64

    2.1.1 Mod eles pour les motifs

    Soit = {A, C, G, T, R, Y, M, K, S, W, B, D, H, V, N} un alphabet. Cet alphabet estlalphabet IUPAC (International Union of Pure and Applied Chemistry) des codesdes acides nucleiques. Les codes de lalphabet IUPAC sont commun ement utilisespour repr esent es des nucl eotides ambigus ; cest-` a-dire, pour lesquels il nest paspossible de d eterminer la base de mani ere exacte. Les correspondances sontvisibles en table 2.1. Dans cet exemple dalgorithme, nous introduisons la notionde motif qui sera une chane sur lalphabet . Bien s ur, une restriction sera impos eesur la longueur des motifs. Celle-ci sera inf erieure ou egale a 32. Cette restrictionna rien a voir dun point de vue biologique mais vient simplement du fait que lesalgorithmes de comparaison de chanes de caract` eres que nous utiliserons ne nouspermettent pas dutiliser de longs mots ; ce sont donc des raisons calculatoires quinous imposent ces limites de taille. Bien que cette limite dans la taille des motifsrecherches puisse paratre au premier abord trop restrictive, il est n ecessaire de serappeler que les s equences consensus que nous tentons de mettre en valeur ne sontpas, par exp erience, des motifs longs ( 20 carac eres).

    Code DescriptionA AdenineC CytosineG GuanineT ThymineU UracileR Purine ( Aou G)Y Pyrimidine ( C, T ou U)M Cou AK T, Uou GW T, Uou AS C ou GB C, T, Uou G (pas A)D A, T, Uou G (pas C)H A, T, Uou C (pas G)V A, C, ou G (pas T, pas U)N Nimporte quelle base ( A, C, G, T ou U)

    TAB . 2.1 Table des codes IUPAC Codes des acides nucl eiques.

    Comme nous lavons vu pr ec edemment, la taille des motifs avec lesquels noustravaillons nexc` ede pas 32 caract`eres. Nous pourrions etendre cette taille ` a 64 enprotant des nouvelles architectures propos ees sur le marche de la micro infor-matique. Cependant, nous r eservons lusage de mots machines (mots m emoires,registres) de taille sup erieure a 32 bits aux optimisations que nous apporterons par

    18

  • 8/14/2019 Extraction de motifs utilisant des techniques de vecteurs binaires

    19/64

    la suite. De part leur nature, la taille des motifs consid eres nexc ede pas les 32

    caract eres et il nest pas necessaire deffectuer cette extension.Il nous est alors possible dappliquer en pratique, un algorithme de comparai-

    son tr es rapide en utilisant des op erations sur les bits [2] pour notre comparaison demotifs. Cet algorithme est en fait le L- MOTIF -COURT pour lequel nous decrironsson fonctionnement en 2.5, aussi bien dans sa version exacte que dans sa versionapproch ee.

    Le choix ne sest pas port e sur les matrices pond erees en raison de deux in-conv enients de taille. La premi ere raison est tout de m eme assez simple. Les ma-trices ponderes ne sont pas predispos ees a etre enum erees et cest un point im-portant puisque nous l enum eration est un des points de lalgorithme trait e. La

    seconde raison, tout aussi simple, vient du fait quil est plus difcile de donner unesignication biologique a une matrice pond eree que cela ne lest pour un motif.

    An de classer les r esultats, les uns par rapport aux autres, nous allons d ecrireune fonction de score qui consiste en plusieurs fonctions objectives, que nousdetaillons.

    2.2. Fonction de score

    Dans cette section, nous allons d enir une fonction de score qui nous permettrade classer les collections de motifs courts obtenus. Soit M = {m1 , . . . , mk } unecollection de motifs courts. Nous nommons par le m eme occasion, G lensemblede tous les g enes dun g enome complet. Nous d enissons aussi T G un ensembleparticulier de g`enes du g enome.

    La fonction que nous pr esentons est compos ee de plusieurs fonctions dites ob- jectives , cest- a-dire, des fonctions permettant de d eterminer les objectifs attendus.Dans notre cas, la fonction de score est donc composee de deux fonctions objec-tives :

    fonction de Signication , fonction de Couverture .

    toutes deux liees et d etermin ees par la notion de consistance . Nous leur appor-tons la cr edibilit e n ecessaire dans les quelques paragraphes suivants.

    2.2.1 Consistance

    Tout dabord, introduisons la notion de consistance . Un g ene g est dit consis-tant avec M si pour ce g ene g, chacun des motifs de lensemble M appara t soitdans la r egion en amont du g` ene soit dans la sequence compl ementaire du g`ene g.La region en amont utilis ee correspond `a lintervalle [ 800 , 1] dans les premiersresultats dexp erience (cf. 4.1) car cela correspond a la region o u sont susceptibles

    19

  • 8/14/2019 Extraction de motifs utilisant des techniques de vecteurs binaires

    20/64

    de se trouver les r egions promotrices par rapport au point z ero du site de transcrip-

    tion (TSS) de la levure, Saccharomyces. cerevisiae [18].

    Nous pouvons alors d enir lensemble consistant T avec M comme lensembledes g enes gi de T dont tous les el ements de M occurrent soit dans les r egions enamont des gi soit dans les r egions compl ement ees et renvers ees des r egions enamont des gi de T . Une ecriture plus formelle nous donne :

    con (T , M ) = {gT | g est consistant avec M }.

    2.2.2 Signication

    De meme, nous pouvons d enir la signication de M par rapport `a T :

    sig (T , M ) =card (con (T , M ))card (con (G, M ))

    (2.1)

    La signication mesure la repr esentativit e de M pour T relativement au g enomecomplet G, et par cons equent, n eglige les collections de motifs pour lesquellestous les g enes, autre que ceux pr esents dans T , sont consistants. Autrement dit, lasignication va plus exactement, mesurer la multiplicit e de M pour T . Lensemble M aura donc dautant plus de signication que celle-ci est fortement consistanteavec T et tres peu consistante avec les autres g` enes du g enome G.

    m = {GGACTAAAC, ACGTT}

    5

    . . . . . .

    3

    3 5

    A C C C T G A T T T G C A A CT G G G A C T A A A C G T T G

    5 3

    . . . . . .

    3 5

    A C C C T G A T T T G C A A CT G G G A C T A A A C G T T G

    F IG . 2.1 Lensemble m = {GGACTAAAC, ACGTT} est consistant avec le g ene dontla sequence en amont est TGGGACTAAACGTTG, et son renvers e compl ement e estCAACGTTTAGTCCCA.

    20

  • 8/14/2019 Extraction de motifs utilisant des techniques de vecteurs binaires

    21/64

    2.2.3 Couverture

    La couverture de M par rapport `a T est denie comme le rapport de lensembleconsistant de T avec M avec le nombre total de g enes dans T , i.e.,

    cov (T , M ) =card (con (T , M ))

    card (T )(2.2)

    Nous voil a en pr esence dune fonction qui va nous permettre de discr edit e lescollections qui pourraient poss eder une forte signication mais qui, face au sous-ensemble de g`enes T nont aucune valeur.

    2.2.4 Score

    Les deux fonctions objectives viennent de se concr etiser, chacune poss edantun role qui lui est propre. La signication donnera plus ou moins dimportanceaux ensembles collect es presents essentiellement dans des ensembles de g` enesparticuliers de G et la couverture evaluera le poids dun ensemble collect e de motifsdans un de ses ensembles.

    Nous pouvons alors int egrer ces deux fonctions objectives simples en une seulefonction. Cette fonction est une fonction de score et est dune mani` ere g en erale,tres proche de celle propos ee par Yuh-Jyh Hu et al. [6]. Nous denissons donc lafonction de score comme suit :

    Score (T , M ) =1

    12

    1sig (T , M )

    +1

    cov (T , M )

    (2.3)

    Remarque 2.2.1. Nous pouvons remarquer que les valeurs prisent par la fonctionde score appartiennent a lintervalle [0, 1]R . Une raison est que toutes les fonc-tions propos ees jusquici normalisent les r esultats, ce qui est dautant plus visibleavec cette derni ere fonction.

    Nous pouvons donc nous attendre a present a ce que la signication et la cou-verture , agissent de mani` ere coordonnee. Une telle synergie, va se r epercuter surla fonction de score que nous venons de d ecrire et donner un poids justi e auxensembles de motifs que nous traiterons.

    2.3. Description de lalgorithme

    A pr esent, il nous est possible de pr esenter lalgorithme initialement propos epar Marayuma et al. [9]. Lalgorithme principal utilis e est donn e (Fig. 2.2).

    21

  • 8/14/2019 Extraction de motifs utilisant des techniques de vecteurs binaires

    22/64

    2.3.1 Description g en erale

    Lalgorithme se compose de deux etapes distinctes. Dans la premi` ere partie delalgorithme, les motifs sont un a un compar es a chacune des r egions en amont desgenes du g enome complet G ainsi qu a chacune des regions en amont des g` enesde lensemble de g` enes T G. A chaque fois quun motif apparat dans une deces s equences, son occurrence est marqu ee dans un tableau de bits qui conservelinformation pour la deuxi eme partie de lalgorithme.

    Dans la seconde partie de lalgorithme, nous regroupons les motifs an de for-mer des ensembles dont le cardinal sera variable. Pour chacun des ensembles ainsiform es, nous calculons le score de cet ensemble. Les valeurs des scores pour lesdiff erentes ensembles sont alors tri ees, nous offrant les r esultats que nous atten-dons.

    2.3.2 Description d etaill ee

    Si lon tient compte essentiellement a la description g en erale du fonctionne-ment de lalgorithme, nous pouvons nous apercevoir que sa compr ehension ne re-quiert pas defforts surhumains. Nous pouvons maintenant reprendre cette descrip-tion an de lui donner quelques pr ecisions un peu plus techniques.

    Lalgorithme (Fig. 2.2) fait usage de tableaux de bits. Ces tableaux de bits sontles Bi avec i {0, . . . card ( D) 1}, et sont de taille card (G). Ils nous serviront amarquer si une occurrence dun motif d i D a eu lieu dans la s equence en amontou son complement renvers e, dun g ene gi de G.

    Denition 2.3.1 (Facteur) . Soient x , y Aou A est un alphabet. On dit que x est un facteur de y si et seulement si il existe u , v Atel que uxv = y.

    Nous rappelons que lorsque nous faisons r ef erence a gi dans notre algorithme,nous faisons en fait r eference a sa region en amont. De m eme gi correspond `a lasequence compl ement ee renvers ee de gi. Nous pouvons aussi ajouter que lorsquunmotif d i appara t dans un g ene g j, cela revient a dire que d i est un facteur de g j(i.e., d i Fact (g j)).

    Les valeurs de Bi j peuvent etre obtenues en utilisant un algorithme de compa-raison de cha nes de caract eres. La valeur de Bi j depend donc de la pr esence dumotif d i dans la s equence g j et g j.

    Bi j =1 si d i Fact (g j)Fact (g j)0 sinon .

    Nous utiliserons cependant deux tableaux de bits distincts, le premier conser-vant les valeurs de consistance des motifs dans G et le second conservant cellesdans T . An de calculer la presence dun motif donne dans une s equence

    22

  • 8/14/2019 Extraction de motifs utilisant des techniques de vecteurs binaires

    23/64

    F IG . 2.2 : M OTIFS -E XTRACTION

    Entr ees : D : un ensemble de motifs courts sur .

    G : lensemble de tous les g enes du g enome.

    T G, K 1, N 1.Sorties :

    Les N collections M 1 , . . . , M N de motifs de D avec card ( M l ) = K ayant eu lemeilleur score, avec l = 1, . . . , N .

    debutpour chaque d i D faire

    Bi Un tableau de bits de taille card (G);pour chaque g j G faire

    Bi j 1 si d i Fact (g j)Fact (g j)0 sinon .

    nprchnprch

    pour chaque P D faireAppliquer des ET logiques aux Bi avec iP;Soit BP le tableau de bit r esultant;Calculer le score Score( T , P ) a partir de BP ;

    nprchretourner Les N meilleures collections M 1 , . . . , M N class ees par Score

    n

    donn ee, nous utilisons un algorithme de recherche de motifs dans un texte, uti-lisant des op erations sur les bits, dont la description est donn e en 2.5. Comme nouslavons d eja precis e, ce type dalgorithme a lavantage d etre constant, poss ederune faible complexit e aussi bien spatiale que temporelle et etre tr es rapide.

    Dans la seconde partie de lalgorithme, nous nous appliquons au calcul desscores pour des ensembles de motifs. Comme les ensembles form es ne sont pasordonn es (par d enition), cela revient a consid erer des combinaisons de motifs(ou collections). Nous proposons alors lalgorithme 2.3 qui permet d enum erer lescombinaisons possibles de taille c parmi n.

    Comme nous devons consid erer les ensembles de taille 1 a N , il nous suftdit erer lalgorithme donn e en 2.3 pour enum erer successivement les ensembles detaille 1 a N et ainsi calculer les scores des ensembles correspondants.

    Le calcul du score dun ensemble donn eestr ealis e en comptabilisant le nombrede bits positionn es a 1 dans le tableau de bits des motifs consistants avec G dunepart et celui des bits positionn es a 1 dans le tableau de bits des motifs consistants

    23

  • 8/14/2019 Extraction de motifs utilisant des techniques de vecteurs binaires

    24/64

    F IG . 2.3 : E NUM ERATION -COMBINAISONSEntr ees :

    c : taille de la collection d esir ee.

    n : nombre d el ements.

    debutT tableau dentiers de taille n;pour i de 0 a c par pas de 1 faire

    T i i;npour f c;pour i de 0 a C cn 1 par pas de 1 faire

    pour j de 1 a c par pas de 1 faireEffectuer lop eration;

    npoursi T f = n (c f ) alors

    r ep eter f f 1;

    jusqu a T f = n (c f );T f T f + 1;pour j de f + 1 a c par pas de 1 faire

    T j T j 1 + 1;npour

    f c;nsisinon

    T f T f + 1;nsi

    npourn

    avec T . Cette op eration commence par effectuer un ET logique entre les tableauxde bits des diff erents motifs de la collection. Les 1 resultants correspondent aune apparition commune des motifs de la collection. Ce sont ces bits positionn es ala valeur 1 qui nous permettent de calculer les cardinaux des ensembles con (T , M )et con (G, M ) pour les ensembles de motifs M trait es et par cons equent les valeursdes fonctions sig () , cov () et enn celle du Score () pour lensemble M courant.

    Il ne nous reste plus qu a trier les r esultats et proposer les meilleurs ensemblespour terminer. Voici la description faite, nous pouvons nous interroger sur la ma-niere dont nous pouvons choisir les motifs qui seront utilis es dans lensemble deces calculs.

    24

  • 8/14/2019 Extraction de motifs utilisant des techniques de vecteurs binaires

    25/64

    2.4. G en eration de motifs courts

    Nous voyons depuis le d ebut de ce document, que seuls les motifs de petitetaille nous sont dun int eret. Nous avons le choix entre les diff erentes options sui-vantes pour obtenir un domaine de motifs courts.

    Generer les motifs `a laide dun algorithme de d ecouverte de motifs, Construire les motifs a la main a partir de la litt erature, Enum erer tous les mots dune longueur donn ee, sur lalphabet , Utiliser un programme dextraction de motifs.

    2.4.1 Tentative d enum eration

    Parmi ces options, nous furent pr ealablement int eress e par l enum eration detous les mots dune longueur donn ee. Bien que cette id ee semblait pouvoir nousoffrir les el ements dont nous avions besoin, celle-ci sav era assez vite lourde decons equences.

    En effet, nous tent ames, vainement, d enum erer des motifs de la forme a N b a

    dont nous verrons la description dans celle du logiciel YM F decrite en 2.4.2. Les rai-sons de cet echec furent les temps de calculs ainsi que lespace m emoire n ecessaireau stockage des motifs g eneres dont les valeurs etaient assez proches des limitesdes ordinateurs personnels actuels. Plus particuli erement, si les calculs avaient etelanc e, ce document aurait ete termin e bien avant que les r esultats ne puissent etreobtenu, sachant que les calculs auraient aboutit dans une dizaine dann ee.

    Ce sont ces quelques contraintes qui nous ont donc conduit a porter notre at-tention sur un logiciel permettant la g en eration de motifs de la forme explicit eeci-avant.

    2.4.2 Le logiciel YMF

    Une alternative ` a lenum eration exhaustive de tous les motifs consiste ` a utiliserle logiciel YM F , developp e par Sinha et Tompa [12]. Ce logiciel permet dextraireles motifs de la forme :

    a N

    b

    a

    ou = { A, C , G, T , R, Y , W , S} et ou a et b sont deux entiers positifs. Nousverrons assez vite lint eret de tels motifs dans ce qui va suivre. Ce logiciel estbas e sur une m ethode enum erative statistique permettant didentier des candidatspotentiels pour des facteurs de transcription de r egions promotrices inconnues.

    Comparaison aux autres m ethodes de recherche de motifs r egulateurs

    Nous lavons vu auparavant, il existe dautres m ethodes de recherche de motifsregulateurs. Un grand nombre dentre eux permettent lobtention de motifs plus

    25

  • 8/14/2019 Extraction de motifs utilisant des techniques de vecteurs binaires

    26/64

    generaux et plus longs quil nest n ecessaire pour identier les facteurs de trans-

    cription de regions promotrices. Ces motifs g eneralis es sont en fait des matricespond erees, des alignements ou des alignements avec br eches.

    Le prix a payer pour cette g eneralit e est que ce type dalgorithmes ne garantitde trouver des r esultats globalement optimaux. En fait, ils utilisent des algorithmesgloutons et des recherches locales qui font que les r esultats ne peuvent etre queoptimaux localement. Cependant, ils apportent tout de m eme des r esultats assezinteressant pour ne pas etre n eglig es.

    Nous voyons bien a present que YM F se place dans un cadre interm ediaire,fortement plus proche de celui de l enum eration exhaustive que de celui de la re-cherche heuristique, lui offrant ainsi par la m eme occasion, des r esultats proches

    dun optimum global et non pas local.

    Une autre methode qui utilisait, elle aussi, une enum eration statistique an deresoudre le m eme probl eme eu des r esultats tr es satisfaisants dans la recherchede motifs courts, contigus facteurs de transcriptions. Celle-ci poss ede cependantquelques inconv enients qui tendent ` a eclipser certains r esultats.

    Le simple fait de ne pas permettre la pr esence de caract eres espacant dans lemotif emp eche la d etection dune r egion promotrice bien connue, celle de Gal4pdont le motif consensus est CGGNNNNNNNNNNNCCGpour S. cerevisiae [16]. De plus,comme il sagit dune recherche exacte, celle-ci ne tient pas compte des variationsnaturelles pour un facteur de transcription donn e. Dautres inconv enients ayant

    un poids important sur la discrimination des r esultats consideres ont permis delafner et de donner la version actuelle de YM F .

    Variations parmi les instances de sites promoteurs

    Nous avons vu que YM F travaille avec des motifs de la forme a N b a . Il estalors l egitime de se demander ce que signie concr etement cette forme de motif et si elle a un sens, biologiquement parlant. Il se trouve que la litt erature et lesbases de donnees SCPD [18] et TRANSFAC [16] r evelent des variations parmi lessites promoteurs dun simple facteur de transcription. Cependant, la nature m emede cette variabilit e, varie dun facteur a lautre de telle sorte que le motif cor-rect est loin d etre bien d eni. Heureusement, certaines tendances sexpriment etpermettent de les inclure dans les motifs utilis es :

    1. Beaucoup de motifs poss` edent des caract eres espacant dont la taille variede 1 a 11 paires de bases. Ceux-ci apparaissent souvent en milieu de motif etceci car les facteurs se lient souvent comme des dim eres.

    Denition 2.4.1. Un dim ere est un agr egat de deux mol ecules li ees entreelles par des liaisons faibles comme par exemple une liaison hydrog` ene.

    2. Le nombre de bases bien conserv ees (nincluant pas les caract` eres espacant)appartient en g en eral a lintervalle [6, 10].

    26

  • 8/14/2019 Extraction de motifs utilisant des techniques de vecteurs binaires

    27/64

    3. Quand une variation a lieu a une position donn ee dans un motif, il sagit

    souvent dune transition (purine vers purine, ou pyrimidine vers pyrimi-dine) plut ot quune transversion. Cela est du a la similarit e de la taille desnucl eotides n ecessaire a la xation du domaine de liaison avec lADN dufacteur de transcription.

    4. Les insertions et suppressions parmi les sites promoteurs ne sont pas unevenement commun, encore un fois du fait de la structure xe du domainede liaison avec lADN du facteur de transcription.

    La denition de motif pour le logiciel YMF est alors la suivante. Il sagira dunecha ne de caract eres sur lalphabet {A, C, G, T, R, Y, W, S}, avec une suite de 0 a 11N au centre et un nombre limit e de R (purine), Y (pyrimidine), S (liaison forte),

    et W(liaison faible). Le choix dun tel mod` ele plut ot quune matrice pond eree estnecessaire pour l enum eration.

    Mesure de la signication statistique

    Les motifs obtenus sont ensuite class es. Cest aussi sur la mani` ere dont estmesur ee la valeur de score que YMF se distingue des autres algorithmes propos es.En effet, une bonne mesure pour comparer les motifs doit prendre en consid erationa la fois, le nombre doccurrences absolues du motif dans les s equences propos eeset la distribution g enomique en arri ere-plan. Pour chaque motif s, soit N s le nombredoccurrences de s dans les s equences en entr ee, ce qui permet dobtenir un nombre

    arbitraire doccurrences par r egion en amont de g` ene.

    De mani ere plus sp ecique, soit X un ensemble de s equences dADN choisiesaleatoirement tel que leur nombre et leur taille soit les m emes que les sequencesen entr ee. La seule difference est que ces s equences sont gener ees par une chanede Markov dordre m dont les probabilit es de transition sont d etermin ees par les(m + 1) mer frequences dans le compl ement complet de 6 000 r egions en amontde gene auquel on ajoute celles en entr ees.

    Dans leurs exp eriences, Sinha et Tompa on choisi m = 3 de mani ere a ce quele mod ele en arri ere-plan puisse inclure les s equences TATA, AAAAet TTTTqui sontomnipr esentes dans toutes les r egions en amont de g` ene du g enome. Considerons

    a present la variable X s qui repr esente le nombre doccurrences de s dans X , etsoient E ( X s) et ( X s) la moyenne et la d eviation standard, respectivement. Alors,le z-score associe a s est :

    zs = N s E ( X s)

    ( X s)La mesure du z-score zs de s correspond aux nombre de d eviations standards

    pour lesquelles, les valeurs observ ees de X s depassent leurs attentes. On parlealors souvent de deviation normale . La valeur zs est normalis ee pour avoirune moyenne de 0 et une d eviation standard de 1, an quelle soit adapt ee a lacomparaison des diff erents motifs s.

    27

  • 8/14/2019 Extraction de motifs utilisant des techniques de vecteurs binaires

    28/64

    Loriginalit e de YM F reside donc dans une mani ere adroite daffecter un poids

    a un motif et dans la mani` ere m eme dont le motif est d eni. An de mieux com-prendre lint eret du choix de ce logiciel, nous allons etudier tr es succinctementquelques uns des r esultats obtenus pour ce logiciel.

    Resultats

    Une fois la m ethode impl ement ee, celle-ci f ut ex ecut ee sur plusieurs ensemblesde genes des r egions promotrices de la levure S. cerevisiae pour lesquelles le g` eneconsensus du site promoteur est connu.

    Sur les dix-sept echantillons test es, seuls deux echou erent leur tentative dedetermination du consensus connu. Le tableau 2.2 nous pr esente les cinq motifs

    poss edant le meilleur z-score. Il est assez ais e de voir que le motif consensus re-cherch e se trouve en premi ere position.

    s N s zsCGGNNNNNNNNNNNCCG 28 32.72CGGNNNNNNNNNNNSCG 31 28.72CGGNNNNNNNNNNNCSG 28 26.03CGGNNNNNNNNNNNCCS 28 25.52CGGNNNNNNNNNNNYCG 29 25.13

    TAB . 2.2 Les cinq motifs ayant obtenu le meilleur score pour la famille ` a 6 genesGAL4, dont le consensus connu est CGGNNNNNNNNNNNCCG[18].

    Un autre point important qui est permis dans la recherche de motifs ` a laide deYMF est celle qui sapplique au cadre de notre recherche, celle des ensembles degenes coexprim es, ou plut ot cor egul es. Une fois de plus, YM F sen sort assez bien.

    Utilisation

    En ce qui concerne lutilisation de YM F , elle est assez simple. Il suft de r eglerquelques param etres tels que lintervalle des caract eres espacant, la longueur dumotif, lorganisme utilis e, le nombre de motifs voulus, etc.

    Actuellement loutil que nous proposons aura comme r ole partiel linterfacaged YMF et de ces param`etres. Lutilisateur aura alors le choix entre :

    utiliser YM F pour g en erer les motifs, utiliser son propre chier de motifs.

    Bien que lon puisse d eja utiliser YM F sur des organismes tels que Saccharo-myces cerevisiae et Homo sapiens , certains pourraient s urement etre int eress e parson utilisation sur dautres organismes. A travers loutil preproc disponible avec

    28

  • 8/14/2019 Extraction de motifs utilisant des techniques de vecteurs binaires

    29/64

    YMF il devient alors possible d etablir les tables darri ere-plan non plus exclusi-

    vement pour lhomme et la levure mais aussi pour tout ensemble de s equence enamont de g ene propos e par lutilisateur, pour nimporte quel organisme.

    2.5. Recherche de motifs courts

    La recherche de motifs se r evele donc cruciale dans la r ealisation de la methodedextraction de donn ees. Lorsque nous sommes amen es a parler de recherche demotifs, nous ne tentons pas dextraire un motif ayant une forme particuli ere commecela est le cas d YM F pour la g en eration de ceux-ci. Nous nous efforcons simple-ment de savoir si oui ou non, le motif consid ere appara t dans un texte donn e.

    Pour cela, un grand nombre dalgorithmes existent, poss edant des complexit esdint eret variable. Cependant, il existe une cat egorie dalgorithmes permettant cetterecherche qui effectue des op erations de bas niveau. Des op erations sur les bits pouretre plus pr ecis. Linter et de tels algorithmes est quil r eduisent les temps de calculspar un coefcient d ependant de la taille du mot m emoire de la machine utilis ee. Eneffet, ces algorithmes font usage du parall elisme des bits , qui consiste a utili-ser le parallelisme intrins`eque de la manipulation des bits des mots m emoires dunordinateur de mani` ere a r ealiser plusieurs op erations en parall` ele. En utilisant astu-cieusement ce fait, le nombre dop erations r ealis ees par lalgorithme peuvent etrereduites par un facteur w, ou w est le nombre de bits dun mot m emoire. Puisque

    avec les architectures actuelles, w vaut 32 ou 64 voire meme 128, lacceleration esttres signicative en pratique.

    Dun autre cot e, a ce gain de performance sajoute un point noir qui estla taille des motifs pouvant etre compar es au contenu dun texte ; qui elle aussidepend de la taille de ce fameux mot m emoire. Cependant, sachant que les motifsconsid eres ne sont pas dune longueur ph enom enale (20 caract eres), lutilisationde cette categorie dalgorithmes de recherche de motifs, ( i.e., recherche de motifscourts) est indubitablement appropri ee.

    2.5.1 Recherche exacte

    Le probl eme de la recherche exacte de toutes les occurrences dun mot x dansun texte y peut se r esoudre a laide de lalgorithme L- MOTIF -COURT propos e parCharras et Lecroq [4] que nous allons pr esenter. Il existe de nombreux algorithmespermettant la resolution de ce probl` eme mais le L- MOTIF -COURT , nous est dunint eret certain car il utilise des vecteurs de bits et les op erations qui leur son li ees[2, 17].

    Dans le texte qui va suivre, le symbole fera r eference a un decalage de bitsvers la gauche, alors que le symbole en fera de m eme, vers la droite. Nous ytrouverons tout dabord la version originale, puis celle que nous avons implant e.

    29

  • 8/14/2019 Extraction de motifs utilisant des techniques de vecteurs binaires

    30/64

    Cette derni ere a demand e quelques modications an de pouvoir offrir les perfor-

    mances qui nous etaient n ecessaires.

    y C A A A T A A G

    x[0] A 0

    x[0..1] A A 0

    x[0..2] A A T 1

    x[0..3] A A T A 1

    x A A T A A 0

    F IG . 2.4 Vecteur binaire R06 pour la localisation de x= AATAAdans y= CAAATAAG.On a R06 = 00110. Les seuls pr exes non vides de x qui se terminent `a la position 6de y sont A, AAet AATAA.

    Description

    On consid`ere n + 1 vecteurs de m bits, R0 1 , R00 , . . . , R

    0n 1 . Le vecteur R

    0 j cor-

    respond au traitement de la lettre y[ j] du texte. Il contient les informations sur tousles pr exes de x qui se terminent a la position j sur le texte (voir la gure 2.4). Cevecteur est deni de la mani`ere suivante :

    R0 j[i] =0 si x[0..i] = y[ j i.. j],1 sinon ,

    pour i = 0, 1, . . . , m 1.Nous pouvons alors voir que lorsque R0 j[m 1] = 0, x appara t a la position j.

    Car dans ce cas, le mot x entier est reconnu comme un facteur du mot y. Le vecteur R0 1 correspond au pr exe de y de longueur nulle ; en cons equence de quoi, toutesses composantes sont egales a 1 :

    i {0, . . . , m 1}, R0 1[i] = 1.

    Pour j = 0, . . . , n 1, le vecteur R0 j sexprime au moyen du vecteur R0 j 1comme suit :

    R0 j[i] =0 si R0 j 1[i 1] = 0 et x[i] = y[ j],1 sinon ,

    pour i = 1, 2, . . . , m 1, et

    R0 j[i] =0 si x[0] = y[ j],1 sinon ,

    30

  • 8/14/2019 Extraction de motifs utilisant des techniques de vecteurs binaires

    31/64

  • 8/14/2019 Extraction de motifs utilisant des techniques de vecteurs binaires

    32/64

    (a)

    i x[i] SA[i] SC[i] SG[i] ST[i]

    0 A 0 1 1 11 A 0 1 1 12 T 1 1 1 03 A 0 1 1 14 A 0 1 1 1

    (b)

    j 0 1 2 3 4 5 6 7 8 9 10 11

    y[ j] C A A A T A A T A G A A R0 j[0] 1 0 0 0 1 0 0 1 0 1 0 0 R0 j[1] 1 1 0 0 1 1 0 1 1 1 1 0 R0 j[2] 1 1 1 1 0 1 1 0 1 1 1 1 R0 j[3] 1 1 1 1 1 0 1 1 0 1 1 1 R0 j[4] 1 1 1 1 1 1 0 1 1 1 1 1

    F IG . 2.5 Illustration de la recherche du mot x = AATAAdans le texte y =CAAATAATAGAA. (a) Les vecteurs S. (b) Les vecteurs R0 . Le mot x apparat `a laposition 6 dans le texte y car R06[4] = 0. Il nappara t qu a cette car les autres va-leurs R0 j[4], avec j = 6, sont egales a 1.

    F IG . 2.6 : L- MOTIF -COURT ( x, m, y, n)

    debutpour chaque lettre a A faireSa 1m;

    nprchpour i 0 a m 1 faire

    S x[i][i] 0;npour R0 1m;pour j 0 a n faire

    R0 R0 1 S y[ j];S IGNALER -S I( R0[m 1] = 0 );

    npourn

    D emonstration. La phase de pr e traitement consiste a calculer les vecteurs Sa cequi est effectue par les deux premi` eres boucles de lalgorithme. La premi` ere bouclenecessite un espace en O (card ( A)) . La deuxi eme boucle sex ecute en temps O (m),cest- a-dire en temps constant dapr es lhypoth ese. La phase de recherche effectu eepar la troisi`eme et derni`ere boucle sexecute en temps O (n) puisque lexamen dechaque lettre du texte y nimplique que deux op erations sur les vecteurs binaires.

    32

  • 8/14/2019 Extraction de motifs utilisant des techniques de vecteurs binaires

    33/64

    Application

    Il nest pas inutile de se rappeler que nous utilisons lalphabet IUPAC ={A, C, G, T, R, Y, M, K, S, W, B, D, H, V, N} pour d ecrire les motifs et que nous compa-rons ces motifs a des s equences d enies sur lalphabet {A, C, G, T}. Nous utilisonsalors une fonction qui d ecode un el ement de lalphabet IUPAC en un element delalphabet {A, C, G, T}. Soit donc la fonction d ecode :

    decode : {A, C, G, T}

    Par exemple, decode (N) = {A, C, G, T}, decode (A) = {A}, decode (R) = {A, G} et

    ainsi de suite (Tab. 2.1).

    F IG . 2.7 : L- MOTIF -COURT -MODIFI EEntr ees : p = p1 pm : mot sur , de longueur m.t = t 1 t n : texte sur { A, C , G, T } de longueur n.

    Sorties : Le plus petit indice j > 0 de t si une occurrence de p est trouv eedans t et que celle-ci se termine en j. Sinon, 0.

    debutpour chaque lettre a A faire

    Sa 1m;nprchpour i 0 a m 1 faire

    pour chaque symbole c dans decode( x[i]) faireSc[i] 0;

    nprchnpour R0 1m;pour j 0 a n faire

    R0 R0 1 S y[ j];retourner j;

    npourretourner -1;

    n

    2.5.2 Recherche approch ee

    Autant que la recherche densembles de motifs voit son int eret dans la re-cherche exacte de ceux-ci, autant quil pourrait etre int eressant doffrir la possi-bilit e de tol erer des erreurs en effectuant des recherches approch ees de motifs

    33

  • 8/14/2019 Extraction de motifs utilisant des techniques de vecteurs binaires

    34/64

    dans des s equences. Lalgorithme L-M OTIF -COURT peut facilement etre adapt e

    pour r esoudre ce probl` eme. Lalgorithme que nous allons maintenant pr esenter estun algorithme de recherche approch ee de motifs avec au plus k diff erences du type :

    insertion, suppression, substitution.

    Celui-ci cumule les m ethodes utilisees pour le traitement de chaque op erationprise s epar ement. Nous laissons au lecteur la possibilit e d etudier ces op erations,de mani ere individuelle, dans le livre de Charras et Lecroq [4].

    j 0 1 2 3 4 5 6 7 8 9 10 11

    y[ j] C A A A T A A T A G A A R1 j[0] 0 0 0 0 0 0 0 0 0 0 0 0 R1 j[1] 1 0 0 0 0 0 0 0 0 0 0 0 R1 j[2] 1 1 0 0 0 0 0 0 0 1 1 0 R1 j[3] 1 1 1 0 0 0 0 0 0 0 1 1 R1 j[4] 1 1 1 1 1 0 0 0 0 0 0 1

    F IG . 2.8 Les mots AATA, AATAA, ATAA, AATAAT, AATA, AATAGet AATAGAsontsept occurrences ayant au plus une diff erence par rapport au mot x = AATAAdansle texte y = CAAATAATAGAA. Ils apparaissent aux positions respectives 5, 6, 6, 7, 8,9 et 10, car R15[4] = R16[4] = R17[4] = R18[4] = R19[4] = R110 [4] = 0.

    Lalgorithme requiert k + 1 vecteurs binaires R0 , R1 , . . . , Rk . Les vecteurs R0 j ,pour j = 1, 0, . . . , m 1, sont maintenus comme dans lalgorithme de rechercheexacte. Les valeurs des autres vecteurs sont calcul ees dapr es la relation de la pro-position 2.5.3 donn ee avant le code de lalgorithme. Un exemple de recherche avecune diff erence est montr e gure 2.8.

    Proposition 2.5.3. Pour i = 1, 2, . . . , k, on a :

    Ri j = Ri j 1 1 S y[ j] R

    i 1 j R

    i 1 j 1 1 R

    i 1 j 1 .

    D emonstration. La preuve est une cons equence directe des lemmes propos es parles algorithmes dans leur version l egitime [4]. La relation

    Ri j = Ri j 1 1 S y[ j] R

    i 1 j 1 R

    i 1 j 1 1 R

    i 1 j 1 .

    se recrit en celle donn ee dans l enonc e.

    Th eor eme 2.5.1. Lorsque la longueur m du mot x est inf erieure au nombre de bitsdu mot machine, la phase de pr e traitement de lalgorithme L- DIFF -MOTIF -COURTsex ecute en temps (k + card ( A)) dans un espace m emoire de (k + card ( A)) . La phase de recherche sex ecute en temps (k n).

    34

  • 8/14/2019 Extraction de motifs utilisant des techniques de vecteurs binaires

    35/64

  • 8/14/2019 Extraction de motifs utilisant des techniques de vecteurs binaires

    36/64

    C HAPITRE 3

    Implantation

    Lalgorithme que nous venons de d ecrire semble fort int eressant a im-planter. Les auteurs d ecrivent une implantation ecrite en langage C andobtenir de bonne performances du point de vue des calculs. Cependant,certains d etails pr esents dans lalgorithme nous ont pouss e a r ealiser notrepropre implantation en y apportant certaines modications plus ou moinsimportantes. Les modications que nous proposons sont essentiellementdes optimisations en plus de la r ealisation de loutil. Nous y ajoutons aussiune interface graphique an que les utilisateurs puissent r ealiser ces cal-culs de mani ere plus simple.

    Cette partie permettra dexposer les d etails de limplantation, dans la-quelle nous aborderons des techniques de programmation offrant de tr esbonne performances de calcul, apr es y avoir d ecrit nos structures de don-nees les plus int eressantes, pour enn pr esenter bri evement linterface gra-phique que nous proposons.

    3.1. Optimisations

    Les calculs, voil a surement la raison principale de lexistence de la bioinfor-matique. Les biologistes se trouvent aujourdhui face ` a un nombre consid erable dedonn ees a analyser, liees necessairement ` a la taille des genomes rencontr es. Il estdonc tout a fait judicieux de porter une attention dimportance capitale aux calculsmis en jeu dans la realisation dune application li ee a la bioinformatique.

    Nous commencerons par pr esenter les techniques dites SIMD , nous ver-rons alors comment les appliquer dans notre programme. Puis nous traiterons dediverses optimisations li ees de pr es ou de loin a ces techniques.

    36

  • 8/14/2019 Extraction de motifs utilisant des techniques de vecteurs binaires

    37/64

    3.1.1 Optimisations dordre g en eral

    Il existe un grand nombre dop erations qui peuvent etre r ealis ees sans faire ap-pel a des techniques sauvages ou m eme bien connues. Ces types doptimisationssont dune part dependante du compilateur utilis e particuli`erement et dautre part,dependantes de mani` ere globale de la mani` ere dont les compilateur, dans len-semble, sont concus.

    Le premier type doptimisations que nous avons utilis e fait r eference aux op-timisations qui consistent ` a preferer des variables statiques locales ` a des variablesdynamiques pass ees en param etre. Celles-ci ont lavantage d eviter des co uts in-utiles en demande dallocation et de lib eration despace m emoire. De plus, le faitdetre en local, fait que le compilateur sera plus propice ` a les placer dans lesdiff erents niveaux de m emoire cache du processeur.

    Un deuxi eme type doptimisation qui est ` a la fois comprehensible et tout aussisurprenant ; les compilateurs devraient tenter dy apporter une solution ; ce sont lesoptimisations sur les co uts (en cycles dhorloge) en temps des appels aux fonc-tions. En effet, nous avons eu la regrettable surprise, lorsque nous avons souhai-ter cr eer une fonction servant ` a englober lacc` es a la valeur dune donn ee de lasequence, de voir nos temps de calculs augmenter de 20 secondes. Notre objectif etait simplement d eviter de r ecrire du code si une modication devait avoir lieudans la mani`ere dont les donnees seraient acc` ed ees. M eme en poussant la fonctionen mode inline , (i.e., traduite en ligne par le compilateur, sans saut), nos fatidiques

    20 secondes persistaient.Pour lexemple, la ligne de commande qui faisait un acc` es a la i-eme valeur du

    pattern pour la stocker dans la variable valeur ressemblait a linstruction suivante :

    v a le u r = ( p a t t e r n > p at + p o s i t io n ) ;

    qui, une fois transform ee en fonction :

    v a le u r = i n o p a t t e r n g e t v a l u e ( p a t t e rn , p o s i t io n ) ;

    avec la fonction suivante :i n l i n e u8i n o p a t t e r n g e t v a l u e ( I n o P a t t e r n p a t t e r n , u3 2 p o s i t i o n ){

    r e t u r n ( p a t t e r n > p at + p o s i t io n ) ;}

    nous ajoutait nos fameuses 20 secondes aux calculs dans leur globalit e. Ceresultat est tout de m eme assez impressionnant, bien que lon sache que d` es quelon essaye de rendre du code plus explicite, les temps de calculs augmentent pro-portionnellement.

    Il existe cependant des techniques permettant deffectuer des optimisationsbien moins d ependantes du syst eme. Ce sont les techniques que nous allons etudierdans ce qui suit.

    37

  • 8/14/2019 Extraction de motifs utilisant des techniques de vecteurs binaires

    38/64

    3.1.2 Techniques SIMD

    Depuis 1997, beaucoup de processeurs d edies a lusage des particuliers ont of-fert plusieurs moyens permettant dacc elerer les op erations ayant lieu sur plusieursentiers en les realisant en parall` ele, bien evidemment, si cela lest demand e expli-citement. Ceci est particuli` erement utile par exemple quand il devient n ecessairedajuster le contraste dune image, qui effectue la m eme op eration sur tous lespixels dune image.

    Peu de temps apr es furent ajout ees des instructions permettant deffectuer detelles op erations sur des nombre a virgule ottante en simple pr ecision. Le nomgenerique de cette technique est Single Instruction, Multiple Data , SIMD ( i.e., Uneinstruction pour plusieurs donn ees). Cette technique est aussi appel ee Technique de programmation par instruction vectorielle.

    Il faut ajouter que la plupart des processeurs actuels ont la possibilit e de cou-pler certaines instructions, leur permettant de r ealiser les operations suivantes enune fois. Cela peut bien s ur para tre magique, et cela le serait si cette techniquenetait pas r egit par certaines lois.

    Processeurs modernes

    Larchitecture interne des processeurs modernes ne ressemblent en rien ` a cellede leurs pr ed ecesseurs. Alors que les nouveaux processeurs tels que lOpteronexecuteront tr es bien du code binaire d edi e aux 8086 de 1987, la mani ere dont

    ces op erations sont r ealis ees y est si differente que faire une quelconque comparai-son serait totalement inutile. Embarqu e dans les processeurs r eside des choses appel ees pipelines , paths , branch predictors , speculative execution units , register shufers , dependency analysers et bien dautres. Il est bien evidemment tr` es dif-cile de comprendre toute cette machinerie, et m eme si avec le temps vous pourrieztout ma triser, un nouveau processeur verrait le jour avec cette fois, HyperThrea-ding ou Flux Capacitor .

    Notre but ici nest pas de comprendre n ecessairement lensemble des m eca-nismes propos es, mais plut ot de pouvoir les utiliser a notre avantage.

    Th eorie des extensions

    Avant de poursuivre dans davantage de d etails, nous tentons de rappeler lesquelques aspects th eoriques lies a la programmation des techniques SIMD .

    Il existe une grande vari ete de processeurs, qui ne supportent pas tous lesmemes caract eristiques. En particulier, lorsquil sagit de travailler avec le SIMD ,de distinctions peuvent etre faites. Il existe six types dinstructions vectorielles per-tinentes :

    MMX (Multimedia Extensions) : Realis e en 1997 et est present dans tous lesprocesseurs communs compatibles ia32 (i.e., Intel). Ces extensions op erentsur les entiers. Elle g erent la multiplication mais pas la division.

    38

  • 8/14/2019 Extraction de motifs utilisant des techniques de vecteurs binaires

    39/64

    SSE (Streaming SIMD Extensions) : Ces extensions sont apparues quand la dif-

    fusion de ux videos etait cens ee prendre toute son importance, ` a un mo-ment o u personne ne pensait que cela etait une eventuelle possibilit e. SSE op ere sur 4 nombres a virgule ottante en simple pr ecision, a la fois. SSE estpresent sur les processeurs, depuis larriv ee du Pentium 3 , ainsi que sur lesprocesseurs Athlon .

    SSE2 Extensions actuellement uniquement support ees par les processeurs Pen-tium 4 , Athlon 64 et Opteron . Elles contiennent une version mise ` a jour du MMX pouvant traiter plus dentiers ` a la fois ainsi que les op erations sur leottants, non plus en simple mais en double pr ecision. Ce dernier ne traiteque deux ottants en double pr ecision a la fois, ou alternativement, quatre ensimple pr ecision.

    SSE3 Acutellement, uniquement support e par le Pentium 4 Prescott et offredes instructions suppl ementaires telles que le produit vectoriel ou laddi-tion volumineuse appel ee aussi mode horizontal . Il est explique que cesinstructions verticales peuvent etre utilis ees an daccelerer certains calculsarithm etiques complexes ou les transformations de Fourier .

    3DNow ! Une sorte de SSE mais pas tout a fait. Poss ede aussi quelques instructionshorizontales et est pr esent sur les Athlons .

    AltiVec Dans le m eme ordre did ee que les extensions pr ecedentes, a ceci pr es,elle sapplique aux processeurs PowerPC G4 et ult erieurs.

    Pratique des extensions

    Il existe plusieurs moyens permettant deffectuer des calculs SIMD . Nous avonstoujours eu la possibilit e deffectuer le codage en dur gr ace au langage assembleur.Il existe aussi des instructions pr e-construites propres au compilateur utilis e. Cesinstructions sont directement traduites en assembleur lors de la compilation maisoffrent une sorte dinterface rendant le codage plus ais e. Et r ecemment, le compi-lateur gcc sest vu offert la gestion intrins eque des op erations SIMD . Il en d ecouleque le programmeur effectue une demande de vecteur aux dimensions et contenusvoulus et effectue alors des op erations sur ce vecteur.

    Selon les options pass ees au compilateur, ces op erations selon alors traduitsoit en instructions SIMD soit en instructions habituelles. Ceci est d ecrit dans lechapitre (Vector Extensions) du manuel de gcc .

    Cest du cas des vecteurs dont nous allons ` a present traiter au travers dun petitexemple. Nous laissons de c ote les fonctions dites built-in preconcues qui recriventle code directement en assembleur mais qui sont trop d ependantes de la machinede destination, ce qui nest pas le cas des vecteurs.

    # i n c l u d e < s t d i o . h > / / ! Vec te ur de 4 f l o a t s en s i mp l e p r e c i s i o n

    39

  • 8/14/2019 Extraction de motifs utilisant des techniques de vecteurs binaires

    40/64

  • 8/14/2019 Extraction de motifs utilisant des techniques de vecteurs binaires

    41/64

    9a: d9 5d bc fstps 0xffffffbc(%ebp)

    9d: d9 45 f0 flds 0xfffffff0(%ebp)a0: d8 45 e0 fadds 0xffffffe0(%ebp)a3: d9 5d c0 fstps 0xffffffc0(%ebp)a6: d9 45 f4 flds 0xfffffff4(%ebp)a9: d8 45 e4 fadds 0xffffffe4(%ebp)ac: d9 5d c4 fstps 0xffffffc4(%ebp)af: 8b 45 b8 mov 0xffffffb8(%ebp),%eaxb2: 89 45 c8 mov %eax,0xffffffc8(%ebp)b5: 8b 45 bc mov 0xffffffbc(%ebp),%eaxb8: 89 45 cc mov %eax,0xffffffcc(%ebp)bb: 8b 45 c0 mov 0xffffffc0(%ebp),%eaxbe: 89 45 d0 mov %eax,0xffffffd0(%ebp)c1: 8b 45 c4 mov 0xffffffc4(%ebp),%eaxc4: 89 45 d4 mov %eax,0xffffffd4(%ebp)

    printf("%f, %f, %f, %f\n", c.f[0], c.f[1], c.f[2], c.f[3]);

    Nous pouvons clairement voir beaucoup dinstructions r ep etitives, indiquantque gcc a du coder na vement nos quatre additions. Recompilons ce pro-gramme en informant gcc du type de processeur en notre possession et voyons lesnouveaux r esultats. Il faut tout de m eme remarquer que cet exemple est sp eciquea Intel , il est n ecessaire de mettre le nom du processeur pour lesquel le programmeest destin e a etre ex ecute et pas necessairement pentium3 . Les r esultats serontdiff erents pour un G3 mais similaires de part leur nature.

    $ gcc -ggdb -march=pentium3 -mcpu=pentium3 -c -o example1.o example1.c

    $ gcc -lm example1.o -o example1$ objdump -dS ./example1.o | grep -4 c.v | tail -5

    c.v = a.v + b.v;8b: 0f 28 45 e8 movaps 0xffffffe8(%ebp),%xmm08f: 0f 58 45 d8 addps 0xffffffd8(%ebp),%xmm093: 0f 29 45 c8 movaps %xmm0,0xffffffc8(%ebp)

    printf("%f, %f, %f, %f\n", c.f[0], c.f[1], c.f[2], c.f[3]);

    An de pouvoir v erier lint eret de la programmation des techniques SIMDa laide de lextension vectorielle de gcc , nous avons realis e des calculs de per-formances portant sur la multiplication et la division de nombre a virgule ottanteen simple pr ecision. Les gures 3.1 et 3.2 nous montrent lint eret dutiliser cettetechnique.

    Cest donc un gros avantage que de pouvoir programmer de mani` ere uniquenotre programme puis que celui-ci, en fonction des param etres qui lui seront four-nis lors de la compilation, offrira des performances egales, ou sup erieures.

    Nous pouvons d esormais imaginer le r esultat dans un programme effectuant ungrand nombre dop erations quil est possible de parall eliser sur une machine. Dansnotre cas, nous allons voir en section 3.1.4 que nous sommes amen es a effectuer ungrand nombre de fois ce genre dop erations. Lutilisation de cette technique nousapporte un gain non n egligeable dans la r ealisation des calculs demand es.

    41

  • 8/14/2019 Extraction de motifs utilisant des techniques de vecteurs binaires

    42/64

    sans SIMD

    avec SIMD

    ms

    million dop erations

    0

    200

    400

    600

    800

    1000

    0 10 20 30 40 50 60 70 80 90 100

    F IG . 3.1 Comparaison des temps de calcul de la multiplication avec et sans luti-lisation des techniques SIMD.

    sans SIMDavec SIMD

    ms

    million dop erations

    0

    1000

    2000

    3000

    4000

    5000

    0 10 20 30 40 50 60 70 80 90 100

    F IG . 3.2 Comparaison des temps de calcul de la division avec et sans lutilisationdes techniques SIMD.

    3.1.3 Compl ement Renvers e

    Le compl ement invers e dune s equence, est un d etail important dans notre im-plantation. Lorsque nous comparons un motif m a la sequence en amont dun g ene

    42

  • 8/14/2019 Extraction de motifs utilisant des techniques de vecteurs binaires

    43/64

  • 8/14/2019 Extraction de motifs utilisant des techniques de vecteurs binaires

    44/64

    Si nous reprenons cette fonction :

    Score (T , M ) =1

    12

    1sig (T , M )

    +1

    cov (T , M )

    nous pouvons la recrire en remplacant les valeurs des fonctions sig () et cov () puisen simpliant lensemble de la fonction.

    Score (T , M ) =12

    1sig (T , M )

    +1

    cov (T , M )

    1

    = 2 card (con (G, M ))card (con (T , M ))

    + card (T )card (con (T , M ))

    1

    = 2card (con (G, M )) + card (T )

    card (con (T , M ))

    1

    = 2card (con (T , M ))

    card (con (G, M )) + card (T )

    Il est bien evident maintenant, que le nombre dop erations arithm etiques a di-minu e. Il en r esulte une division, une multiplication et une addition. Quand on saitle prix que coute une division face ` a une addition par exemple, nous pouvonsnous r ejouir d etre pass e de quatre a une seule.

    La seconde optimisation quil nous est possible dappliquer au cas du calcul descore est obtenue par lutilisation des techniques SIMD que nous avons d ecris en3.1.2. Dans la deuxi` eme partie de lalgorithme L- MOTIF -COURT (Fig. 2.2), nousaurions pu, lorsque les cardinaux des ensemble consistant avec T et G respective-ment, effectuer directement le calcul du score. Ce nest pas la direction que nousavons prise. Nous avons pr ef ere releguer le calcul des scores ult erieurement, unefois que tous les cardinaux sont connus. Cela nous donne la possibilit e deffectuerles calculs quatre par quatre et donc proter des avantages offerts par la program-mation vectorielle de gcc et par cons equent des techniques SIMD.

    3.2. Performances R esultantes

    Il est bien connu que si un grand nombre de personnes offrent tous une petitesomme dargent, m eme inme, au nal, tous ces montant cumul es repr esentent unesomme dargent cons equente.

    Il est donc l egitime, apr`es toutes ces tentatives doptimisations, plus ou moinsreussies, de nous int eresser a present a limpact sur les performances globales dulogiciel que nous avons mis au point.

    44

  • 8/14/2019 Extraction de motifs utilisant des techniques de vecteurs binaires

    45/64

    Nous nallons pas nous eterniser dans cette partie, mais sur les exp eriences que

    nous avons menees, le programme sex ecutait initialement en approximativement5 minutes. Apr es un certain nombre doptimisations, pr esent ees ou non, le tempsdex ecution de ces m emes exp eriences approchent maintenant les 60 secondes.

    Nous pouvons alors nous r ejouir de limpact signicatif quon apport e len-semble des optimisations sur la version et limplantation originale de ce logiciel.

    3.3. Interface graphique

    An doffrir un certain confort dutilisation, nous avons pens e a mettre en placeune interface graphique. Celle-ci est ecrite en GTK.

    3.3.1 Description et param etres g en eraux

    Linterface poss` ede lensemble des options n ecessaires `a lex ecution du pro-gramme. Elle offre ainsi la possibilit e de charger les chiers contenant les s equen-ces des r egions en amont de g enes constituant lensemble complet ainsi quecelles constituant le sous-ensemble (Fig. 3.3). Dans un souci de coh erence desresultats, les chiers du sous-ensemble des r egions en amont de g enes, ne prove-nant exclusivement que de lensemble de d epart, il na pas ete offert la possibilit ede les charger directement ` a partir dune interface li ee au syst eme de chier. Cenest pas le cas pour lensemble principal re etant le g enome, bien au contraire.

    Les chiers du sous-ensemble sont alors extraits de la liste des chiers de len-semble principal.Nous pouvons ensuite, au travers de linterface, r egler quelques param` etres

    (Fig. 3.4). Parmi ces param etres nous pouvons effectuer le choix du mode de re-cherche de motifs :

    recherche exacte, recherche approch ee. Pour la recherche approch ee, il est aussi possible de

    denir le nombre de diff erences autoris ees par la recherche.

    Un deuxi eme param etre quil est possible de modier est la m ethode d obten-tion des motifs :

    generes par YM F , personnalis es, chier propos e par lutilisateur.

    Un dernier param etre quil est encore possible de modier dans la partie glo-bale de linterface est la taille maximale des ensembles de motifs evalu es par lelogiciel. En effet, sans cette option, le logiciel ne poss` ede plus de grand int er etpuisque cela reviendrait uniquement a consid erer soit les motifs propos es par luti-lisateur (ce qui reste convenable tous de m eme puisquils seront class es par perti-nence) soit les motifs d eja ordonn es par z-score fournis par YM F .

    45

  • 8/14/2019 Extraction de motifs utilisant des techniques de vecteurs binaires

    46/64

    F IG . 3.3 Fen etre principale du programme.

    3.3.2 Interface pour YMF

    Le logiciel YMF permet de g en erer ou plut ot de rechercher des motifs a fortesignication biologique. Notre logiciel propose une interface pour YM F . Il nous estalors possible de pr eciser lemplacement de lex ecutable ainsi que lemplacementdes chiers qui sont n ecessaires a sa bonne ex ecution (Fig. 3.5).

    Les options param etrant lexecution d YM F a proprement parler peuvent eux-aussi se voir modi es (3.6). Ces param etres nous permettent dune part de r eglerles param etres qui seront pass es a lex ecutable et dautre part ceux pr esents dans lechier de conguration utilis e par YM F .

    Ces derniers r eglent entre autres, le nombre de motifs d esir es, lintervalle descaract eres espacant dans la forme des motifs ou encore le nombre doccurrencesminimal dun motif avant que celui-ci ne soit consid ere comme etant pertinant.

    46

  • 8/14/2019 Extraction de motifs utilisant des techniques de vecteurs binaires

    47/64

    F IG . 3.4 Fen etre contenant les options g en erales du programme.

    47

  • 8/14/2019 Extraction de motifs utilisant des techniques de vecteurs binaires

    48/64

    F IG . 3.5 Fen etre principale du programme

    F IG . 3.6 Fen etre principale du programme

    48

  • 8/14/2019 Extraction de motifs utilisant des techniques de vecteurs binaires

    49/64

    C HAPITRE 4

    Resultats exp erimentaux

    Maintenant que nous avons pu d ecrire lensemble du programme, danssa th eorie, en passant par son implantation et ses optimisations, nous pou-vons nous demander si les r esultats quil propose sont coh erents o u silssont porteurs dinformations.

    Nous verrons les r esultats obtenus sur les m emes jeux de donn es queceux utilis es par Marayuma et al. [9]. Cela nous permettra de juger si notreimplantation est proche ou non de celle th eorique propos ee.

    4.1. Premiers r esultats

    En se replacant dans les conditions de lexp erience de Marayuma et al. [9],nous avons tenter de retrouver les m emes r esultats que ces derniers. Nous redon-nons a titre informatif, leur d emarche exp erimentale.

    Le laboratoire Kuhara de luniversit e de Kyushu a accumul e et inventori e lesprols dexpression de 5 952 g enes de S. cerevisiae , pour lesquels un simple g enerelatif a la regulation de la transcription est discontinu. Il existe actuellement 120prols dexpressions pour les 5 952 g` enes r epertori es.

    De mani ere a rechercher la relation entre les facteurs de transcription et lesgenes putatifs r egul es par ces facteurs, Marayuma et al. [9] ont construit plusieurscollections de g enes a partir de ces donn ees dexpression.

    Ces collections ont ete construites de la mani` ere suivante. Soit gd un gene dis-continu ( i.e., poss edant des br`eches). Nous pouvons voir gd comme lobjet abstraitrepr esentant une famille multig enique . Pour un g ene g, le ratio de g signie la va-leur du log du rapport de la force dexpression de g dans une famille multig eniquegd a celle de g dans un ensemble quelconque de g` enes. Tout dabord, les g` enesdont le ratio est inf erieur a 2 ou sup erieur a + 2 sont collect es, avec et qui sont la moyenne et la d eviation standard, respectivement, des la distribution

    49

  • 8/14/2019 Extraction de motifs utilisant des techniques de vecteurs binaires

    50/64

  • 8/14/2019 Extraction de motifs utilisant des techniques de vecteurs binaires

    51/64

    GY BL021C

    YBR092C YBR093C YBR112C YBR115C YCL018WYDR012W YDR050C YEL034W YFL014W YGL031CYGL062W YGL187C YHR174W YKL060C YKL148CYLR263W YMR280C YMR303C YOR028C YOR290CYOR375C YPR145W

    TAB . 4.1 Les membres de GY BL021C .

    G YPDY BL021C YBL030C YBR026C YDL205C YDL230W YDR148C

    YDR232W YFL018C YGL040C YGL187C YHR008CYHR051W YIL125W YJL166W YJR040W YJR048WYKL141W YKL148C YLL041C YML054C YML091CYNL052W YNR001C YOR065W YPR145W YPR191W

    TAB . 4.2 Les membres de G YPDY BL021C .

    les regions en amont de GY BL021C comme arri`ere-plan de fonctionnement. Cesmotifs, ensuite utilis es par notre application donnent a lensemble m, le deuxi ememeilleur score 0.308.

    Nom Descript