Accessibility Tools

- Le blog participatif de bioinformatique francophone depuis 2012 -

Que vous soyez bio-​informaticien aguerri, étudiant en master ou simplement curieux ayant déjà manipulé un fichier FASTA un jour dans votre vie, ce billet de blog est pour vous. Nous allons explorer pourquoi et comment nos repères actuels en génomique sont en train de changer de forme.

Le génome de référence classique

Prenons l'exemple du sacro-​saint génome de référence humain (GRCh38 ou hg38 pour les intimes). Il a un gros problème d'égo : il ne représente quasiment qu'un seul individu. C'est pratique, mais ça efface totalement la diversité structurale de l'ADN humain. C'est pourquoi la bio-​informatique se tourne aujourd'hui vers le graphe de pangénome.

Pour bien comprendre, il faut remonter un peu dans le temps. Le génome de référence est une chimère, un patchwork de séquences provenant de plusieurs donneurs. Sauf que dans les faits, environ 70% de la séquence de GRCh38 provient d'un seul et unique donneur anonyme originaire de Buffalo, dans l’État de New York. Conséquence directe : notre étalon-​or génomique souffre d'un bon gros biais d'ascendance européenne.

Dès 2010, les limites de ce modèle linéaire ont commencé à craquer. En assemblant de novo des génomes de populations africaines et asiatiques et en les comparant à la référence de l'époque (NCBI33), des chercheurs ont mis en évidence environ 5Mb de séquence totalement absentes de ce dernier.

La même année, le célèbre projet 1000 Genomes enfonçait le clou en révélant que chaque être humain porte en lui des dizaines de milliers de variants structuraux par rapport à la référence. Pire encore, on estime aujourd'hui qu'un pangénome humain complet contiendrait entre 19 et 40Mb de séquences "nouvelles " par rapport à hg38 !

Le piège du biais de la référence

En bio-​informatique, cela crée ce qu'on appelle le biais de la référence (reference bias). Si le génome que vous séquencez possède une grosse insertion ou une variation structurale complexe par rapport au gars provenant de Buffalo, vos reads ne s'aligneront pas, ou pire, s'aligneront au mauvais endroit. Vous devenez aveugles à une partie de la biologie de votre échantillon.

Les rustines qui n'ont pas tenues

Face à ce constat, le Genome Reference Consortium (GRC) a bien essayé de "patcher" la ligne droite. Ils ont ajouté ce qu'on appelle des "locus alternatifs" (ou alt-​contigs) pour les régions hyper-​variables, comme le complexe HLA du système immunitaire.

Mais pour nous, derrière nos écrans, c'est vite devenu un cauchemar. Aligner des données sur une référence qui contient des morceaux alternatifs flottants ruine totalement la simplicité du système de coordonnées 1D. Il fallait une remise à plat totale.

Finie la ligne droite, place au Graphe !

Pour résoudre ce problème, le Human Pangenome Reference Consortium (HPRC) a décidé de changer de paradigme et de lancer un effort mondial officiellement annoncé vers 2019. Finie la séquence linéaire stockée sagement dans un fichier .fasta. Place au "Graphe de Pangénome" (souvent stockée au format .gfa pour Graphical Fragment Assembly).

"La carte n'est pas le territoire" - Alfred Korzybski

Concrètement, imaginez que le génome linéaire est une voie ferrée unique. Le pangénome, lui, ressemble au plan du métro parisien :

  • Les nœuds : Ce sont les séquences d'ADN partagées par la population.
  • Les arêtes (ou les chemins) : Ce sont les liens qui connectent ces séquences.
Visualisation d'un graphe de pangénome avec sequenceTubeMap
Visualisation d'un graphe de séquence avec sequenceTubeMap

C'est ici qu'intervient un mot magique en biologie : l'haplotype, qui est la combinaison spécifique de variants sur un même chromosome. Avec notre génome linéaire classique, les haplotypes sont écrasés. En revanche, au sein d'un graphe de pangénome, un haplotype n'est rien d'autre qu'un "trajet" spécifique et continu que l'on trace à travers les nœuds.

Ainsi, dans ce modèle, une mutation n'est plus une "erreur" par rapport à une référence, c'est juste un chemin alternatif.

  • Un SNP ? C'est une bifurcation sur la route qui se rejoint immédiatement après.
  • Une délétion ? C'est un raccourci qui saute un nœud.
  • Une insertion ? C'est un petit détour par un nœud supplémentaire que seule une partie de la population emprunte.

Mais comment définit-​on une nouvelle arête ? Une arête n'est pas "fixe" : elle est ajoutée dès qu'un nouvel individu séquencé présente une connexion inédite entre deux blocs de séquence. Pour éviter de transformer le graphe en un fouillis d'erreurs de séquençage (les fameux "bugs"), les outils de construction filtrent les chemins en fonction de leur fréquence ou de leur qualité. Si un chemin n'est vu qu'une seule fois avec une faible couverture, il est souvent considéré comme du bruit.

Ce changement de structure de données permet de cartographier la diversité allélique de dizaines, voire de centaines d'individus dans un seul et même objet mathématique.

Et est-​ce que cela ne s'applique qu'à l'humain ? Absolument pas ! Si le consortium humain fait beaucoup parler de lui en ce moment, n'oublions pas que les microbiologistes construisent des pangénomes de bactéries depuis une vingtaine d'années. La grande révolution d'aujourd'hui, c'est d'arriver à appliquer ces graphes à d'énormes génomes eucaryotes, comme ceux des plantes, qui présentent une complexité et des variations structurales dans des proportions hallucinantes.

Pangénome : entre biologie, informatique et échelles

Petite parenthèse sémantique (car la confusion est fréquente, même en conférence) : il ne faut pas confondre la biologie et l'informatique. Le pangénome est le concept biologique, c'est-à-dire l'ensemble des séquences et gènes présents dans une espèce ou une population. Le graphe de pangénome (ou pangenome graph), en revanche, est la structure de données informatique et mathématique que nous utilisons pour le modéliser.

Il est important de noter que nous avons ici parlé de graphes au niveau des séquences (nucléotides). Cependant, en microbiologie notamment, on travaille souvent à l'échelle des gènes (présence/​absence de gènes entiers). Des outils (français !) comme PPanGGOLiN permettent d'étudier cette diversité génique via des approches de graphes statistiques très puissantes.

Mais comment diable aligne-​t-​on des reads là-​dessus ?

C'est là que les chose se corsent. Nos vieux et fidèles algorithmes comme BWA-​MEM et Bowtie2 reposent sur la transformée de Burrows-​Wheeler. Ils sont super efficaces, mais ils ont été conçus pour faire de la recherche de chaîne de caractère sur une ligne droite. Ils sont incapables de gérer des bifurcations.

Les nouveaux algorithmes de graphes

Les algorithmes d'aujourd'hui (et de demain) utilisent donc des index basés sur les graphes. Voici donc les nouveaux venus avec lesquels il va falloir se familiariser :

  • Pour construire le graphe : Deux grands pipelines s'imposent aujourd'hui pour assembler vos multiples génomes en un graphe cohérent : Minigraph-​Cactus (MC) et PGGB (Pangenome Graph Builder). Si vous voulez bien comprendre leurs fonctionnements respectifs et leurs différence, je vous recommande chaudement cette revue publiée dans Nature Genetics (2024).
  • Pour manipuler et aligner : vg (Variation Graph) est la boîte à outils (actuellement) la plus complète pour manipuler les pangénome. Son aligneur, vg giraffe, est spécifiquement conçu pour aligner des short reads sur des graphes de manière rapides et avec une très haute précision. Heng Li (le papa de BWA, de minimap2 et de samtools entre autres…) a également développé minigraph, redoutable pour mapper des variations structurales.
  • Pour standardiser : PanSN-​spec est un effort en cours pour nommer les chemins dans ces graphes de manière consistante (parce que nommer les choses en bio-​informatique, c'est toujours la moitié du problème).

Le défi algorithmique est colossal : au lieu de chercher la meilleure correspondance sur une ligne, l'outil doit explorer de multiples chemins simultanés dans un réseau complexe, tout en calculant des scores d'alignement.

Graphe de pangénome complexe généré avec l'outil Bandage
Voilà à quelle horreur beauté on peut s'attendre en face d'un vrai graphe d'assemblage complexe. Un gros plat de spaghettis coloré avec des centaines de nœuds entremêlés ! (réalisé avec l'outil Bandage)

En résumé : après avoir passé 10 ans à apprendre à parser un FASTA ou un VCF à coup de grep et de awk, on va maintenant devoir se mettre à la théorie des graphes et prier pour que notre RAM tienne le coup. 🫠

Merci à Marion P et azerin pour leurs précieux conseils de relecture !




Commentaires

Laisser un commentaire

Pour insérer du code dans vos commentaires, utilisez les balises <code> et <\code>.