Techniques de filtrage à laide de graines espacées Laurent Noé Travail commun avec Gregory Kucherov Séminaire Symbiose – 4 mars 2004
2 Plan Introduction Deux problèmes –Problème de lalignement local (AL) –Problème de pattern matching approché (PMA) Résolution utilisant des techniques de filtrage –Définition dun filtre –Filtrage sans perte dans le cadre du pattern matching approché (PMA) –Filtrage avec perte pour lalignement local (AL) Design de graines –pour lalignement local (AL) –pour le problème de pattern matching approché (PMA) Conclusion –Deux problèmes sont considérés (AL et PMA) –Des techniques de filtrage (quelquefois semblables) sont proposées pour les résoudre Nhésitez surtout pas à minterrompre si vous avez des questions ou des remarques !!
3 Introduction Motivations : –De nombreuses méthodes en BioInformatique reposent sur les résultats issus de comparaisons ( de séquences/structures/… ) entre différentes entités ( gènes/chromosomes/espèces/…) –Le coût des algorithmes utilisés est en général quadratique. Cependant, des gains significatifs peuvent être réalisés à laide de techniques dites de filtrage qui permettent déviter de considérer tout lespace de recherche. Problèmes posés: –Problème dalignement local (AL). –Problème de Pattern Matching Approché (PMA) relatif à la sélection doligonucléotides
4 Alignement Local Alignement –« Processus par lequel deux séquences sont comparées afin d'obtenir le plus de correspondances (identités ou substitutions conservatives) possibles entre les lettres qui les composent. » Alignement Local –« Alignement des deux séquences seulement sur une portion de leur longueur. » –Deux sous-chaînes sont alignées. Exemple GCAACATAG ||||||||| GCAACATAG TACATGCG ||:||||| TAGATGCG TGTGC-TTG ||||| ||| TGTGCCTTG T 1 : TGTGCTTGGCAACATAGATAGATGCG T 2 : TACATGCGCAACATAGCTGTGCCTTG T 1 : TGTGCTTGGCAACATAGATAGATGCG T 2 : TACATGCGCAACATAGCTGTGCCTTG T 1 : TGTGCTTGGCAACATAGATAGATGCG T 2 : TACATGCGCAACATAGCTGTGCCTTG T 1 : TGTGCTTGGCAACATAGATAGATGCG T 2 : TACATGCGCAACATAGCTGTGCCTTG (AL)
5 Qualité dun alignement Objectif : essayer de distinguer les alignements dits significatifs du bruit de fond (redondance naturelle de la séquence). Evaluation basée sur une technique dite de score. –Chacune des opérations unitaires lors de la construction dun alignement possède un coût. correspondance/substitution dune nucléotide dans un alignement. insertion/suppression de nucléotides –Pour un alignement donné, la somme des coûts des opérations unitaires associées donne le score de lalignement La qualité dun alignement sera jugée selon le score de lalignement TGTGC-TTG ||.|| ||| TGCGCCTTG (AL)
6 Exemple Alignement donné : Fonction de score –Matrice de substitution s(a,b) –Coût pour linsertion/la suppression de nucléotides (indels) g = -3 Score de lalignement 1*(8 matches) –1 * (1 transition) – 2 * (1 transversion ) – 3 * (1 indel)= 2 ATGTGC-TTGC |||:|| |.|| ATGAGCCTCGC ATGC A T 1 G -2 1 C -2 1 (AL)
7 Méthode dévaluation Meilleur Alignement Local –Celui qui maximise le score. GATATGTGCTTGCTT CAATGAGCTTCGCCC ATGTGCTT |||:|||| ATGAGCTT ATGTGCTT-GC |||:|||| || ATGAGCTTCGC ATG-TGCTT-GC ||| |||| || ATGA-GCTTCGC 54 0 GATATGTGCTTGCTT CAATGAGCTTCGCCC GATATGTGCTTGCTT CAATGAGCTTCGCCC (AL)
8 Recherche des alignements locaux Algorithme de Smith-Waterman –Etant données deux séquences T 1 et T 2, lalgorithme recherche le score S(i, j) du meilleur alignement local se terminant à la position i sur la séquence T 1 à la position j sur la séquence T 2 S(i, j) = max S(i-1, j-1) + s( T 1 [i], T 2 [j] ) S(i-1, j) + g S(i, j-1) + g 0 s(a,b) = coût dune substitution entre les lettres a et b g = coût dun gap (AL)
9 Coût de la méthode exacte Algorithme quadratique. –Adopté sur des séquences relativement courtes (< b) Optimisations –Crochemore Autre démarche sur séquences chromosomiques –Lalgorithme de recherche exhaustive nest plus applicable en temps raisonnable. –Adopter une technique heuristique basée sur un filtrage avec perte. (AL)
10 Pattern Matching Approché Problème posé Étant donnés –un motif P de longueur m ( ex P = GCTACGACTTCGAGCTGC, m=18 ) –un nombre maximal derreurs k ( ex k = 3 ) trouver dans un texte T les positions i des occurrences approchées de P : D Hamming ( P, T [ i..i+m-1 ] ) k Notation GCTACGACTTCGAGCTGC ||||x|||x||||||x||...CTCAGCTATGACCTCGAGCGGCCTATCTA... P : T : m k (m,k) (PMA)
11 Liens entre les deux problèmes Le problème de Pattern Matching Approché ~ une restriction du problème dalignement local: –alignements recherchés sont de taille fixée m et ne possèdent pas dindels. –alignements recherchés possèdent au plus k erreurs de type substitution. Les deux problèmes peuvent être résolus à laide de techniques de filtrage. (PMA AL)
12 Plan Introduction Deux problèmes –Problème de lalignement local (AL) –Problème de pattern matching approché (PMA) Résolution utilisant des techniques de filtrage –Définition dun filtre –Filtrage sans perte dans le cadre du pattern matching approché (PMA) –Filtrage avec perte pour lalignement local (AL) Design de graines –pour lalignement local (AL) –pour le problème de pattern matching approché (PMA) Conclusion
13 Filtrage Deux types de Filtrage –Sans perte Éliminer les régions qui nont aucune chance dêtre similaires selon un critère donné. –Avec perte Éliminer les régions qui ont peu de chances dêtre similaires selon un critère donné. Filtrage –En général basé sur la connaissance de sous parties conservées. Ces sous parties conservées seront appelées graines. On propose détudier par la suite deux méthodes de filtrage: –Filtrage sans perte pour PMA –Filtrage avec perte pour AL
14 Filtrage sans perte PEX [4] –Recherche du plus long fragment conservé (graine contiguë). PEX (avec erreurs) –Recherche du plus long fragment k -conservé (graine contiguë avec erreur). parcours des mots k-dérivés dans lindex. Efficace si –petites tailles dalphabets (ADN,ARN) –nombre k relativement faible ( 2) m k #### ######### (1) (m,k) (PMA)
15 Filtrage sans perte Graines espacées (Q-grams espacés) Technique étudiée par Burkhardt & Kärkkäinen [3]. Principe Plutôt que rechercher des fragments contigus dans le texte, baser sa recherche sur des fragments dits espacés (graines espacées). –La graine est composée à la fois De caractères match « # » De caractères jokers « - » –Distinction entre le poids et la taille (étendue) Poids : nombre de caractères de type « # ». Etendue : nombre total de caractères. –La graine est conçue (design) pour résoudre un problème ( m,k ) donné. ###-## (PMA)
16 Exemple Sur le problème (m=18,k=3) ###-## (PMA)
17 Exemple Sur le problème (m=18,k=3) ###-## (PMA)
18 Exemple Sur le problème (m=18,k=3) ###-## (PMA)
19 Exemple Sur le problème (m=18,k=3) ###-## (PMA)
20 Exemple Sur le problème (m=18,k=3) ###-## (PMA)
21 Exemple Sur le problème (m=18,k=3) ###-## (PMA)
22 Exemple Sur le problème (m=18,k=3) ###-## (PMA)
23 Exemple Sur le problème (m=18,k=3) ###-## (PMA)
24 Exemple Sur le problème (m=18,k=3) ###-## (PMA)
25 Exemple Sur le problème (m=18,k=3) ###-## (PMA)
26 Exemple Sur le problème (m=18,k=3) ###-## (PMA)
27 Exemple Sur le problème (m=18,k=3) ###-## (PMA)
28 Exemple Sur le problème (m=18,k=3) ###-## (PMA)
29 Exemple Sur le problème (m=18,k=3) ###-## (PMA)
30 Exemple Sur le problème (m=18,k=3) ###-## (PMA)
31 Filtrage avec Perte Techniques semblables à celles du filtrage sans perte. –Basées sur la recherche de sous éléments conservés dun alignement (graines) : ces graines doivent avoir une forte probabilité dapparition dans les alignements recherchés Dans le cadre de lalignement local, ces graines servent à la fois dindicateurs sur la présence potentielle dun alignement, et de points dancrages pour réaliser une extension de lalignement. (AL) T 1 : T 2 :
32 Critère de Hit de BLAST [5] BLASTn: Recherche basée sur des graines contiguës de taille (poids) 11: si lalignement contient une fragment de texte conservé de taille 11 alors il est détecté (Hit) et transmit à un algorithme dalignement. Gapped-BLAST: Plutôt que rechercher un seul fragment (poids 11), critère basé sur la présence dans lalignement de deux fragments de texte de poids plus faible (9) séparé par une distance d < seuil. ########### ######### d (AL)
33 Critère de Hit de BLAT [6] Notion de graine avec erreur –Autoriser dans une graine contiguë pouvant éventuellement contenir une erreur. –Utiliser des graines de poids plus élevé pour conserver un niveau de sélectivité suffisant. –Coût supplémentaire à lexécution : index multiple (coût mémoire) index simple (il est nécessaire de parcourir tous les mots dérivés) ############## (1) (AL)
34 Critère de Hit de PatternHunter [1] Notion de graine espacée Apport de PatternHunter : proposer un design de ces graines (choix du motif) ###-#--#-#--##-### (AL) ###-#-#--#-###
35 Filtrage : analyse Quantités considérées Mesures effectuées –Sélectivité : VP/(FP+VP) –Sensibilité : VP/(FN+VP) Vrais Positifs Faux Négatifs Faux Positifs Vrais Négatifs Détectés / Non détectés par le filtre Vérifient / Ne vérifient pas le critère de similarité
36 Filtrage sans perte dans le cadre du PMA Quantités considérées Filtrage sans perte: le nombre de faux négatifs est nul donc la sensibilité VP/(FN+VP) est = 1. Maximiser la sélectivité VP/(FP+VP) soit minimiser le nombre de faux positifs. Estimation de cette quantité: Si la longueur du texte est n, le nombre attendu de faux positifs est ~ n.m.δ (sur des séquences i.i.d). PEX : δ = 1/|A| 4, Graines espacées : δ = 1/|A| 5 (PMA) #### ###-## Vrais Positifs Faux Négatifs Faux Positifs Vrais Négatifs Détectés / Non détectés par le filtre Vérifient / Ne vérifient pas le critère de similarité
37 Filtrage avec perte dans le cadre de lAL Filtrage avec perte –Mesure de la sélectivité : VP/(FP+VP) reste basée sur lestimation de δ donc liée au poids des graines. –Mesure de la sensibilité : VP/(FN+VP) Nécessité de définir le critère dun alignement étalon. ces deux quantités sont antagonistes. Vrais Positifs Faux Négatifs Faux Positifs Vrais Négatifs Détectés / Non détectés par le filtre Vérifient / Ne vérifient pas le critère dun alignement étalon (AL)
38 Sensibilité des différentes approches Modèle choisi : Alignements étalons –Alignements sans gaps (pas dindels dans lalignement) –Utiliser un système de score courant (celui de BLAST) +1/-3 (match/mismatch) Paramètres proposés –Fixer une valeur pour le score des séquences générées –Faire varier la longueur de lalignement (abscisse). Mesure : Probabilité dun hit –A sélectivité égale, on considère la sensibilité : probabilité de trouver de tels alignements selon le critère de hit de BLAST le critère de hit de Gapped-BLAST le critère de hit de PatternHunter (AL)
39 Sensibilité Comparaison avec les approches choisies par BLASTn et Gapped-BLAST (score 25) (AL)
40 Sensibilité Comparaison avec les approches choisies par BLASTn et Gapped-BLAST (score 35) (AL)
41 Sensibilité Comparaison avec les approches choisies par BLASTn et PatternHunter (score 25) (AL)
42 Sensibilité Comparaison avec les approches choisies par BLASTn et PatternHunter (score 25) (AL)
43 Critère de Hit de YASS modèle inspiré des alignements biologiques –Les transitions sont toujours sur-représentées. graine espacée autorisant des transitions –mot défini sur un alphabet à 3 lettres }. signifie soit match soit transition –poids dun graine = # / 2; exemples de graines optimales trouvées –Alignements générés selon un modèle de Bernoulli. –Alignements générés selon un modèle de Markov dordre 5 AT GC transitions transversions (AL)
44 Sensibilité Sur des alignements générés selon un modèle de Bernoulli. la sensibilité dépend du ratio entre le nombre de transitions et transversions. (AL)
45 Sensibilité Sur des alignements générés selon un modèle de Markov (ordre 5). (AL)
46 Critère de Hit de YASS Critère de Hit à la fois multi-seed (Gapped Blast) avec des propriétés issues de techniques single-seed (BLAST). principes: –regrouper efficacement les graines en sous-ensembles représentatifs dalignements potentiels un modèle statistique de la séquence pour simuler les effets des mutations et des indels sur la répartition des graines dans lalignement. –évaluer un critère global distribué sur lalignement Mesure du nombre de matches apportées par les graines Hit si dépassement dun seuil. (AL)
47 Critère de Hit de YASS (AL)
48 Critère de Hit de YASS (AL)
49 Plan Introduction Deux problèmes –Problème de lalignement local (AL) –Problème de pattern matching approché (PMA) Résolution utilisant des techniques de filtrage –Définition dun filtre –Filtrage sans perte dans le cadre du pattern matching approché (PMA) –Filtrage avec perte pour lalignement local (AL) Design de graines –pour lalignement local (AL) –pour le problème de pattern matching approché (PMA) Conclusion
50 Design de graines espacées Les techniques de filtrage par graines espacées necessitent une conception (design) de la graine: –dans le cadre du filtrage avec perte (AL) –dans le cadre du filtrage sans perte (PMA) Sur quels critères peut-on établir le choix de la graine ? ###-#-#--#-### ###-#--###-#--###-#
51 Design dans le cadre du filtrage avec perte Méthode –On choisit un Modèle dalignement Alignements de taille 64 Alignements sans indels Alignements générés selon un modèle de Bernoulli/Markov. –Évaluer la sensibilité des graines de poids fixé w sur ce modèle. Mesure de la sensibilité –Algorithme de programmation dynamique (Keich & all). –Automate (Bulher & all). –Alignements Homogènes (Kucherov & all). ###-#--#-#--##-### (AL)
52 Algorithme proposé par Keich & all Données : –Une graine espacée –Modèle générant des alignements. alignements de longueur fixée modèle de Bernoulli pour générer ces alignements Résultat : –probabilité dapparition de cette graine dans un alignement généré selon le modèle. Algorithme de programmation dynamique : –utiliser un mot suffixe pour réaliser le calcul ###-#-#--#-### (AL)
53 Algorithme proposé par Buhler & all Données : –Une graine espacée –Modèle générant des alignements. alignements de longueur fixée modèle de Bernoulli/Markov pour générer ces alignements Résultat : –probabilité dapparition de cette graine dans un alignement généré selon le modèle. Algorithme basé sur un automate. –mots reconnus par la graine : langage régulier fini. (automate) –Travaux de Nicodème & all [4]. (AL) ###-#-#--#-###
54 Algorithme proposé par Kucherov & all Idée: –les alignements de score maximum sont ceux qui sont recherchés par les algorithmes dalignements (Smith-Waterman). –ne sintéresser quà ce type dalignements, et non à des alignements purement aléatoires. Méthode: –compter le nombre dalignements de score maximum possibles. –calculer (programmation dynamique) la probabilité dapparition dune graine donnée sur les alignements de score maximum. (AL)
55 Résultats Filtrage avec perte pour lalignement local –Des graines efficaces sur le modèle dalignement proposé –Des graines dont le motif est irrégulier Quen est-il du filtrage sans perte pour le problème de Pattern Matching Approché ? ###-#--#-#--##-### ###-#-#--#-### (AL-> PMA)
56 Filtrage sans perte pour PMA Les graines obtenues dans ce cadre sont régulières Exemples Problème ( m=25,k=2 ) : une seule graine de poids optimal 12 Problème ( m=18,k=2 ) : une graine de poids optimal 8 Pourquoi une telle régularité ? ###-#--###-#--###-# ###-#--###-# (PMA)
57 Explications Le motif répété résout un problème circulaire Problème Circulaire ( m=11,k=3 ) Problème Linéaire ( m=30,k=3 ) ###-#--#--- ###-#--#---###-#--# (PMA)
58 Famille de Graines Utiliser un ensemble de graines de manière disjonctive Une famille de graines est un ensemble de s graines qui résout toutes les instances dun problème (m,k) donné. Les graines dune famille sont de même poids. Extensions ##-#-#### ###---#--##-# Dans toute instance du problème (m,k), Il existe au moins une occurrence dune des graines de la famille dans cette instance (PMA)
59 Exemple ##-##-##### ###-####--## ###-##---#-### ##----####-### ###---#-#-##-## ###-#-#-#-----### Famille de graines espacées ##-#-#### ###---#--##-# ###-##---#-### ###---#--##-# (PMA)
60 Exemple ##-##-##### ###-####--## ###-##---#-### ##----####-### ###---#-#-##-## ###-#-#-#-----### Famille de graines espacées ##-#-#### ###---#--##-# ###---#-#-##-## ##----####-### ###-#-#-#-----### ##-#-#### (PMA)
61 Famille de graines espacées La propriété de circularité sapplique également Problème Circulaire ( m=11,k=3 ) Problème Linéaire ( m=25,k=3 ) ###-#--#--- ###-#--#---###-#--# #--#---###-#--#---### (PMA)
62 Famille de graines espacées La propriété de circularité sapplique également Problème Circulaire ( m=11,k=3 ) Problème Linéaire ( m=25,k=3 ) ###-#--#--- ###-#--#---###-#--# #--#---###-#--#---### (PMA)
63 Conclusion Deux problèmes –lalignement local –un problème de pattern matching approché Résolution par filtrage à laide de graines –Graines et modèles dérivés –Graines espacées et modèles dérivés (YASS) Problème du design de graines –Mesure de la sensibilité dans le cadre du Filtrage avec perte (AL) –Design régulier dans le cadre du Filtrage sans perte (PMA) Vers de meilleures stratégies de filtrage ?
64 Références [1] M. Bin, J. Tromp John and L. Ming, PatternHunter: Faster and more sensitive homology search, Bioinformatics 18: [2] J. Buhler, U. Keich and Y. Sun, Designing seeds for Similarity Search in Genomic DNA, RECOMB [3] S. Burkhardt and J. Kärkkäinen, Better Filtering with Gapped q-Grams, Fundamenta Informaticae, 23: [4] P. Nicodeme, B Salvy, P. Flajolet, Motif Statistics, Rapport de Recherche INRIA N° 3606, 1999 [5] S. Altschul, and all, Gapped BLAST and PSI-BLAST: a new generation of protein database search programs, Nucleic Acids Research, 27: [6] J.Kent, BLAT--The BLAST-Like Alignment Tool, Genome Research 12, [7] G. Navarro and M. Raffinot, Flexible Pattern Matching in Strings -- Practical on-line search algorithms for texts, Cambridge University Press 2002
65 ? ? ? Questions