Search engine for genomic sequencing data
Moteur de recherche pour données de séquençage génomique
Résumé
High throughput sequencing technologies generate massive amounts of biological sequence datasets as costs fall. One of the current algorithmic challenges for exploiting these data on a global scale consists in providing efficient query engines on these petabyte-scale datasets. Most methods indexing those datasets rely on indexing sequence datasets through their constituent words of fixed length k, called kmers. In many applications, it is required to retrieve the abundance of a kmer in a dataset.
Approximate membership query (AMQ) data structures are widely used for representing these large sets of kmers. A counting AMQ (cAMQ) data structure can index the abundance of kmers along with their presence in a dataset. However, these (c)AMQ suffer by nature from non-avoidable false-positive calls and overestimated calls that bias downstream analyses.
In this work, we propose two contributions, findere and fimpera, that enable the improvement of any (c)AMQ data structure performance. Applied to the widely used Bloom filter, findere reduces the false positive rate by two orders of magnitude while speeding up the queries. Fimpera reduces the false positive rate of a counting Bloom filter while improving the precision of the reported abundances.
Les technologies de séquençage à haut débit génèrent des quantités massives de jeux de données de séquences biologiques à mesure que les coûts diminuent. L'un des défis actuels pour exploiter ces données consiste à développer des moteurs de recherche pour ces jeux d'une taille de l'ordre du pétaoctet. La plupart des méthodes existantes reposent sur l'indexation des séquences via leurs mots de longueur k, appelés kmers. Dans de nombreux domaines de la bioinformatique, il est nécessaire de retrouver l'abondance d'un kmer dans un ensemble de données.
Des structures de données, appelées "filtre AMQ", sont largement utilisées pour représenter ces grands ensembles de kmers. D'autres structures de données similaires, les filtres cAMQ, représentent des multiensembles, de façon à pouvoir retrouver l'abondance d'un kmer dans un jeu. Cependant, par nature, ces filtres AMQ renvoient des faux positifs et, dans le cas d'un multiensemble, ont tendance à surestimer l'abondance des kmers.
Dans ce manuscrit, nous présentons deux contributions, findere et fimpera, qui permettent d'améliorer les performances des filtres (c)AMQs. Appliqué au filtre de Bloom, qui est largement utilisé en bioinformatique, findere réduit son taux de faux positifs de deux ordres de grandeur tout en accélérant ses requêtes. fimpera réduit le taux de faux positifs d'un filtre de Bloom avec comptage tout en améliorant la précision des abondances renvoyées.
Origine | Fichiers produits par l'(les) auteur(s) |
---|---|
Licence |