vidjil, a platform for the interactive analysis of immune ... · immune repertoire sequencing...
TRANSCRIPT
Vidjil, a platform for the interactive analysis ofimmune repertoires
Aurelien Beliard, Marc Duez, Mathieu Giraud, Ryan Herbert,Tatiana Rocher, Mikael Salson, Florian Thonier
Bonsai bioinformatics Hopital Rennes
CRIStAL (Universite Lille, CNRS), Inria, GBMHM/Inca GBMHM/Inca
November 21, [email protected]
Vidjil Platform
High-throughput Repertoire Sequencing (RepSeq) analysis
Web Application
Algorithm
C++
Client
Javascript, d3.js
Patient databaseServer
Python, web2py,AJAX
I all the Vidjil components are open-source (GPL v3)
I code on http://www.vidjil.org/ and on GitHub
I continuous integration, > 2, 000 unit and functional tests
Duez et al., PLOS One, 2016
Vidjil analyzes recombinations on all human TR/Ig locus
V(D)J DesignationComparison against IMGT V(D)J germline genes
V(D)J DesignationComparison against IMGT V(D)J germline genes
V(D)J DesignationComparison against IMGT V(D)J germline genes
V(D)J DesignationComparison against IMGT V(D)J germline genes, dynamic programming
3. Algorithmes pour l’analyse des recombinaisons V(D)J 25
a) n
o
M
b) o
m
c) n
d
� d �V
J
V
J
V
J
D M �read
Figure 3.5 – Détermination de la recombinaison VDJ d’une séquence par programmation dynamique(phase 2). Une présentation de la comparaison de séquences par programmation dynamique peut se trouverdans [86, chapitre 6], ou, en français, dans [71, chapitre 7]. a) Les meilleurs alignements de la read avecun gène V et un gène J sont recherchés en temps O(Mn), où M est la taille totale des répertoires V et J etn la taille de la read. Dans cette première étape, les segments V et J sont traités de manière indépendante.b) Si les meilleurs alignements trouvés font se chevaucher le segment V et le segment J sur o � n positions,le meilleur point de recombinaison est cherché par une autre programmation dynamique en temps O(mo),où m est la somme des tailles des gènes V et J de référence considérés. c) Dans le cas d’une recombinaisonVDJ, le meilleur D est recherché par un alignement local en temps O(M �(d+2�)), où M � est la taille totaledu répertoire D et d + 2� � n la taille de la zone de la read où le D est recherché. Les chevauchementspotentiels entre V et D ou entre D et J sont traités de la même manière que précédemment. Au final,l’ensemble des étapes est en temps O((M + M �)n).
1c. Extraction de la fenêtre et regroupement des reads. Si la découpe de la chaîne d’affectation aété estimée pertinente, on extrait une fenêtre, de taille w = 50 nt, centrée sur le k-mer débutantau milieu des positions i et j. Toutes les reads partageant exactement la même fenêtre sont alorsregroupées dans un clone. Notons que la localisation par k-mots peut être approximative, à quelquesnucléotides près (figure 3.4, voir aussi évaluation à la section 4.1). L’essentiel est que la fenêtrecontienne suffisamment de matériel spécifique pour ne pas mener à des regroupements illusoires.Une localisation approximative mène à plusieurs clones qui seront regroupés, automatiquement oumanuellement, à la fin de l’algorithme.
Phase 2 : Analyse précise de chaque clone. Lorsque toutes les reads ont été regroupées enclones, une séquence consensus de chaque clone est extraite, là encore sans effectuer d’alignement.Dans chaque read, nous considérons les régions dont tous les k-mers sont présents avec une certaineproportion (par défaut 50%) dans toutes les reads du clone. La séquence consensus est alors la plusgrande de ces régions. Elle inclut nécessairement la fenêtre de 50 nt.
La dénomination V(D)J se fait ensuite sur cette séquence, par programmation dynamique, enutilisant des méthodes similaires à celles des logiciels existants (Fig. 3.5). L’ensemble de l’analyseest ainsi très rapide, car, lors de la première phase, aucun alignement n’est réalisé entre les readset les répertoires de gènes V(D)J. Une évaluation de cet algorithme sur des jeux de données depatients atteints de leucémie est présentée dans la section 4.1.
3.4 Analyse multi-locus et recombinaisons incomplètes
Locus et pseudo-locus. L’algorithme que nous avons proposé s’applique à l’ensemble des lo-cus Ig et TR (voir Fig. 2.5). Les locus menant à des recombinaisons VJ (Ig�, Ig�, TR�, TR�)s’analysent en sélectionnant les bons répertoires V et J pour construire les index de k-mers corres-pondants. Les recombinaisons VDJ (IgH, TR� et TR�) sont traitées par le même algorithme, en
Immune Repertoire Sequencing (RepSeq)Identification of all VDJ recombinations
1 000 000 VDJ = 100 000 s
1 000 000 VDJ = 100 sGiraud, Salson et al., BMC Genomics, 2014
Immune Repertoire Sequencing (RepSeq)Clone clustering
1 000 000 VDJ = 100 000 s1 000 000 VDJ = 100 sGiraud, Salson et al., BMC Genomics, 2014
Immune Repertoire Sequencing (RepSeq)Clone clustering
1 000 000 VDJ = 100 000 s1 000 000 VDJ = 100 sGiraud, Salson et al., BMC Genomics, 2014
Immune Repertoire Sequencing (RepSeq)Clone clustering
1 000 000 VDJ = 100 000 s
1 000 000 VDJ = 100 sGiraud, Salson et al., BMC Genomics, 2014
Immune Repertoire Sequencing (RepSeq)Clone clustering
1 000 000 VDJ = 100 000 s
1 000 000 VDJ = 100 sGiraud, Salson et al., BMC Genomics, 2014
Fast identification of a window centered on the CDR3Clone clustering
O(n) linear time
Giraud, Salson et al., BMC Genomics, 2014
Fast identification of a window centered on the CDR3Clone clustering
ACAC CACG ACGG CGGC GGCCGCCG TCTT CTTC TTCC TCCACCAA CAAC AACC ACCT CCTTCTTG TTGG TGGA ACTT ...
parts of V genes
ATAC TACT ACTT CCAG CAGCAGCA GCAC TGGG GGGC GGCAGCAA CAAG AAGA AGAG GAGTAGTT GTTG TTGG ...
parts of J genes
O(n) linear time
Giraud, Salson et al., BMC Genomics, 2014
Fast identification of a window centered on the CDR3Clone clustering
ACAC CACG ACGG CGGC GGCCGCCG TCTT CTTC TTCC TCCACCAA CAAC AACC ACCT CCTTCTTG TTGG TGGA ACTT ...
parts of V genes
ATAC TACT ACTT CCAG CAGCAGCA GCAC TGGG GGGC GGCAGCAA CAAG AAGA AGAG GAGTAGTT GTTG TTGG ...
parts of J genes
O(n) linear time
Giraud, Salson et al., BMC Genomics, 2014
Fast identification of a window centered on the CDR3Clone clustering
ACAC CACG ACGG CGGC GGCCGCCG TCTT CTTC TTCC TCCACCAA CAAC AACC ACCT CCTTCTTG TTGG TGGA ACTT ...
parts of V genes
ATAC TACT ACTT CCAG CAGCAGCA GCAC TGGG GGGC GGCAGCAA CAAG AAGA AGAG GAGTAGTT GTTG TTGG ...
parts of J genes
O(n) linear time
Giraud, Salson et al., BMC Genomics, 2014
Fast identification of a window centered on the CDR3Clone clustering
ACAC CACG ACGG CGGC GGCCGCCG TCTT CTTC TTCC TCCACCAA CAAC AACC ACCT CCTTCTTG TTGG TGGA ACTT ...
parts of V genes
ATAC TACT ACTT CCAG CAGCAGCA GCAC TGGG GGGC GGCAGCAA CAAG AAGA AGAG GAGTAGTT GTTG TTGG ...
parts of J genes
O(n) linear time
Giraud, Salson et al., BMC Genomics, 2014
Immune Repertoire Sequencing (RepSeq)Clone clustering
1 000 000 VDJ = 100 000 s
1 000 000 VDJ = 100 sGiraud, Salson et al., BMC Genomics, 2014
Vidjil analyzes recombinations on all human TR/Ig locus
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
V1-03 D2 J4
Indexing labelled sequences (current PhD)
AGCTCATACGTCAGGAGG
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
V1-03 D2 J4
Indexing labelled sequences (current PhD)
AGCTCATACGTCAGGAGG
A G C T C A T A C GT C A G G A G G
FM-Index
V1-03: 1–9D2: 11–13J4: 15–18
Wavelet Tree
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
V1-03 D2 J4
Indexing labelled sequences (current PhD)
AGCTCATACGTCAGGAGG
A G C T C A T A C GT C A G G A G G
FM-Index
V1-03: 1–9D2: 11–13J4: 15–18
Wavelet Tree
Combined sequence/label queries
Vidjil Platform
High-throughput Repertoire Sequencing (RepSeq) analysis
Web Application
Algorithm
C++
Client
Javascript, d3.js
Patient databaseServer
Python, web2py,AJAX
I all the Vidjil components are open-source (GPL v3)
I code on http://www.vidjil.org/ and on GitHub
I continuous integration, > 2, 000 unit and functional tests
Duez et al., PLOS One, 2016