1 / 96

Bio-informatique appliquée Alignement, recherche des signaux

Bio-informatique appliquée Alignement, recherche des signaux. Emese Meglécz Emese.Meglecz@imbe.fr Groupe Bureau Virtuel: AMU_BI4U2_bioinfo TDs et cours de Jacques van Helden: http://jacques.van-helden.perso.luminy.univmed.fr/bioinformatics_introductory_course/web_course/BI4U2/.

chaz
Download Presentation

Bio-informatique appliquée Alignement, recherche des signaux

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Bio-informatique appliquéeAlignement, recherche des signaux Emese Meglécz Emese.Meglecz@imbe.fr Groupe Bureau Virtuel: AMU_BI4U2_bioinfo TDs et cours de Jacques van Helden: http://jacques.van-helden.perso.luminy.univmed.fr/bioinformatics_introductory_course/web_course/BI4U2/ Cours basé sur les cours de Céline Brochier-Armanet et Jacques van Helden

  2. Contenu du cours • Modèles évolutifs • Mutations, duplications, divergence • Homologie, orthologie, paralogie, etc … • Alignements de paires de séquences • Matrices de substitutions • Dot plots (dottup, dotmatcher) • Alignement par glissement • Alignement avec indels • Global (Needleman-Wunsch) • Local (Smith-Waterman) • Recherche de similarités dans les bases de données (Fasta, BLAST) • Alignements multiples • Identification de motifs dans les séquences

  3. Alignements par paires

  4. Matrice de points (Matrice de pixels; dot-plot) ADSTARYEMQSDQIYTQN | | | ||||| AETSAQYDMQSDQEFTRD Le dot plot est une représentation graphique simple des résidus identiques entre les deux séquences. • Les deux séquences sont représentées sur les deux axes • Un point (dot) est tracé pour chaque correspondance entre deux résidus de séquences. • Les lignes diagonales révèlent les régions alignables entre les deux séquences.

  5. Matrice de points (Matrice de pixels; dot-plot) • Points dans les cases avec score BLOSUM62 > 1 ADSTARYEMQSDQIYTQN |:::|:|:||||| :|:: AETSAQYDMQSDQEFTRD

  6. Matrice de points (Matrice de pixels; dot-plot) • Garder les diagonales avec au moins 2 points successives (fenêtre glissant) À chaque position de la séquence une paire de mots de taille w sont extraits à partir des deux séquences.Le score de la paire de mots est calculé en additionnant les scores des paires des résidus.Si le score dépasse le seuil, une diagonale noire s'affiche à la position correspondante.

  7. Matrice de points (Matrice de pixels; dot-plot) • Détections des INDELs Un décalage entre deux diagonales indique un indel

  8. Matrice de points (Matrice de pixels; dot-plot) • Répétitions intra-séquence Seq1 RégionB RégionA RégionA RégionB Seq1

  9. Matrice de points (Matrice de pixels; dot-plot) • L’échelle génomique

  10. Matrice d’alignement Une matrice d'alignement est conceptuellement liée à une matrice de pixels Un score est attribué à chaque match Dans une matrice d'alignement, les «bons» alignements apparaissent comme diagonales à scores élevés

  11. Matrice de points (Matrice de pixels; dot-plot) • Comparaison visuelle de deux séquences • Une suite de points en diagonale indique une similarité locale. • Méthode simple et rapide : Algorithme en O(nm). • Visualisation des répétitions directes ou inversées. • Pas d’alignement global. • Pas de score associé.

  12. Programmes pour dot-plot • Dotlet • Junier T, Pagni M (2000) Dotlet: diagonal plots in a web browser. Bioinformatics. 16:178-9. • http://myhits.isb-sib.ch/cgi-bin/dotlet • Dnadot • http://www.vivo.colostate.edu/molkit/dnadot/ • Ddot plots pour acide nucléiques. • Dotter • Sonnhammer EL, Durbin R (1995) A dot-matrix program with dynamic threshold control suited for genomic DNA and protein sequence analysis. Gene. 167:GC1-10. • http://www.cgb.ki.se/cgb/groups/sonnhammer/Dotter.html

  13. Trouver le meilleur alignement entre deux séquences

  14. Alignement sans gap TTGCGGT | 1 TTAGCCGT TTGCGGT |--|-- 2 TTAGCCGT TTGCGGT --|- 1 TTAGCCGT TTGCGGT --- 0 TTAGCCGT TTGCGGT -| 1 TTAGCCGT TTGCGGT ||----- 2 TTAGCCGT TTGCGGT -| TTAGCCGT TTGCGGT --- 0 TTAGCCGT TTGCGGT |-||-|| 5 TTAGCCGT TTGCGGT | 2 TTAGCCGT TTGCGGT ---- 0 TTAGCCGT TTGCGGT ---||- 2 TTAGCCGT TTGCGGT ---|- 1 TTAGCCGT TTGCGGT ----- 0 TTAGCCGT - substitution | match • Faire glisser une séquence sur l'autre • Calculer le score de l'alignement pour chaque décalage possible • Choisir l’alignement avec le meilleur score

  15. Alignement sans gap • Algorithme simple mais pas très efficace (pas des indels) • Temps de calcul: • L1, L2 => longueurs des deux séquences • L2<L1 • L1+L2-1 alignements possibles • Pour chaque alignement le score est la somme des scores sur la région chevauchante (max=L2)

  16. Alignement exact avec gaps • Alignements sans gaps sont rarement instructifs, car ils ne parviennent pas à détecter les insertions et délétions • Possibilité d’avoir plusieurs régions locales similaires entre deux séquences, séparées par des régions non conservées: ----TTTGCGTT--AAATCGTGTAGCAATTTAA s|s||||| s|| |||||||s| AAGAATGGCGTTTTTAA-----TAGCAATAT— • L’Introduction des gaps augmente la complexité du problème: à chaque position il peut être • gap dans la première séquence • gap dans la deuxième séquence • superposition de résidu 1 avec résidu 2 (match ou substitution)

  17. Alignement exact avec gaps • Le temps de calcul est proportionnel à 3L, où L est la taille de la séquence la plus courte. • Le nombre de possibilités augmente ainsi de manière exponentielle avec la longueur de séquence. • Pour deux séquences de taille 1000, il y a ~ 31000 (10477) alignements possibles • Programmation dynamique : • Rechercher le meilleur alignement possible pour une fonction de score donnée sans calculer le score de tout les alignements possibles: • Needleman et Wunsch (alignement global). • Smith et Waterman (alignement local).

  18. Algorithme Needleman et Wunsch • Needleman et Wunsch ont proposé un algorithme appelé programmation dynamique • Effectue un alignement global (les séquences sont alignées sur toute la longueur) • Le temps de traitement est proportionnel au produit des longueurs de séquence. • Garanti pour trouver l'alignement optimal Reference:Needleman, S. and Wunsch, C. (1970). A general method applicable to the search for similarities in the aminoacid sequences of two proteins. J. Mol. Biol., 48:444–453.

  19. Algorithme Needleman et Wunsch A G C T A • Pour chaque position dans l’alignement on peut avoir • -Gap dans la séquence 1 • -Gap dans la séquence 2 • -Résidus alignés (match or substitution) A T T A

  20. Algorithme Needleman et Wunsch A G C T A Deux exemples d’alignement possibles AGCTA | ||| A-TTA AGCT-A- -A--TTA A T T A

  21. Needleman et Wunsch - Soit deux séquences A et B de longueurs m et n - Définition de la matrice de chemin S : Dans chaque case de cette matrice on stocke S(i, j), le score optimum de la trajectoire permettant d’arriver à cette case. S(i, j)

  22. Construction de la matrice Needleman et Wunsch • Soit S(i, j) la valeur optimum du score dans la case de coordonnées (i, j) : • Définition par rapport aux scores dans les trois cases adjacentes (i – 1, j), (i – 1, j – 1) et (i, j – 1) :

  23. On ajoute une ligne et une colonne supplémentaires afin d’initialiser la matrice. Construction de la matrice Needleman et Wunsch A G C T A Identité: +1 Substitution: 0 Indel: -2 A T T A -2 – 2 = -4 0 +1 = +1

  24. Construction de la matrice Needleman et Wunsch Identité: +1 Substitution: 0 Indel: -2 A G C T A A T T A

  25. Construction de la matrice Needleman et Wunsch Identité: +1 Substitution: 0 Indel: -2 A G C T A AGCTA A-TTA S= 3-2=1 AGCTA AT-TA S= 3-2=1 A T T A

  26. Alignement global et local A2 C2 A’2 B2 A1 B1 A’1 C1 Seq1 Seq2 Alignement local Alignement global A1 B1 A’1 C1 A1 A2 B1 B2 A’1 A’2 C1 C2 Seq1 A’1 A2 Seq2 A2 C2 A’2 B2 A1 A’2

  27. Alignement global et local • Alignment global • LQGPSKGTGKGS-SRSWDN |----|--|||---|--|- LN-ITKSAGKGAIMRLGDA • Alignment local LQGPSSKTGKGS-SSRIWDN |-||| LN-ITKKAGKGAIMRLGDA

  28. Smith et Waterman • Algorithme dérivé de Needleman et Wunsch : • Initialisation des bords à 0. • N’importe quelle case de la matrice peut être considérée comme point de départ pour le calcul du score. • Smith, T. F. & Waterman, M. S. (1981). Identification of common molecular subsequences. J Mol Biol 147, 195-7.

  29. Smith et Waterman

  30. Résumé de programmation dynamique • Alignement exact => trouve l’alignement avec le score optimal • Trouve tous les alignements avec le score optimal. • Le temps de calcul est proportionnel au produit des longueurs de séquence. • Peut être adapté pour l’alignement global (Needleman et Wunsch) ou local (Smith-Waterman). • Alignement global • approprié pour l'alignement des séquences conservées sur toute leur longueur (divergence récente). • Alignement local • capable de détecter des domaines qui ne couvrent qu'une petite partie des séquences • capable de trouver un alignement complet, si la conservation couvre toute la séquence

  31. Outils (programmation dynamique) • EMBOSS suite • needle Needleman-Wunsch • water Smith-Waterman • http://www.ebi.ac.uk/Tools/psa/

  32. Recherche par similarité dans les bases des données

  33. Recherche dans les bases de données • Comparaison d’une séquence avec des séquences d’une banque des données • Les algorithmes fondés sur la programmation dynamique sont longs • Méthodes heuristiques : • Alignement n’est pas forcément optimal • Beaucoup plus rapide que les méthodes optimales BLAST, FastA

  34. FastA MVD VDF DFY YYL FYY ... 1 2 3 pos 12345678901234567890123456789012 seq MVDFYYLPGSSMVDVFDFYAKAVGVELNKKLL position index k-tuple positions MVD 1, 12 VDF 2 DFY 3,17 ... ... 3-tuples • FastA génère un index avec les positions de tous les mots de longueur k (k-mer) présents dans la séquence requête. • Le programme détecte alors des diagonales de k-mer entre la requête et les séquences de bases de données. • Quand une diagonale significative est détectée, les deux séquences sont alignées avec l'algorithme et Smith-Waterman. • La longueur des mots (k) influe sur le comportement du programme: lorsque k augmente, la recherche est plus rapide, mais on pourrait rater quelques matchs.

  35. BLAST (version sans gaps, Altschul et al., 1990) • Construit un dictionnaire de k-mers (mots) dans la séquence requête. • Utilise une matrice de substitution (par exemple BLOSUM) pour calculer un score entre ces mots et chaque mot possible de la même longueur. Ne retient que les mots ayant un score élevé (protéines) • Chaque fois qu'une paire de mots du dictionnaire est trouvée (hits) dans la base de donnée et dans la séquence requête, BLAST étend l’alignement dans les deux sens (sans espace), afin d'obtenir une ‘High Scoring Pair’ (HSP). • Le programme renvoie les séquences avec les HSPs.

  36. BLASTBasic Local Alignement Search Tool • Recherche des mots de dictionnaire entre les deux séquences (W=3 pour les aa, W=11 pour les nucléotides) AAATGTCCTGTCTGTACTGTACATGGTCAAACTGGTGAATGGTAGC ||||||||||| ||||||||||| AAATGTCCTGTGTGAATGGTAGATGGTCAAACTGGTCAATTGTATC

  37. BLASTElongation de l’alignement The quick brown fox jumps over the lazy dog The quiet brown cat purrs when she sees him Identité = 1 Substitution = -1

  38. BLASTElongation de l’alignement Identité = 1 Substitution = -1 The quick brown fox jump The quiet brown cat purr 123 45654 56789 876 5654 <= SCORE

  39. BLASTElongation de l’alignement The quick brown fox jump The quiet brown cat purr 123 45654 56789 876 5654 <= SCORE 000 00012 10000 123 4345 <=(SCORE(max)-SCORE) Elongation s’arrête si (SCORE(max)-SCORE) > limite prédéfinie

  40. BLASTElongation de l’alignement HSP (High Scoring Pair): The quick brown ||| ||| ||||| The quiet brown The quick brown fox jump The quiet brown cat purr 123 45654 56789 876 5654 <= SCORE 000 00012 10000 123 4345 <=(SCORE(max)-SCORE) Ecourter l’alignement jusqu’au dernier Score(max)

  41. BLAST – élongation • Elongation de l’alignement de deux côtés à partir des mots du dictionnaire • L’élongation s’arrête si le score diminue au-delà d’une limite prédéfinie par rapport au dernier maximum • L’alignement est écourté jusqu’au dernier score maximal (S) => HSP (High Scoring Pair)

  42. BLAST – exemple TAAATGGTCATGTGATGGTCCTGACTGATGCTGCCTGA GAAATGGTCATGTGATGGTCGTAACGATGCAATTGGGC Faites un alignement local entre ces deux séquences en suivant l’algorithme de BLAST version1 Identité: 1 Substitution: -1 Différence maximal entre le score actuel et le score maximale : 5

  43. BLAST – exemple TAAATGGTCATGTGATGGTCCTGACTGATGCTGCCTGA GAAATGGTCATGTGATGGTCGTAACGATGCAATTGGGC Faites un alignement local entre ces deux séquences en suivant l’algorithme de BLAST version1 Identité: 1 Substitution: -1 Différence maximal entre le score actuel et le score maximale : 5 Noyau

  44. BLAST – exemple TAAATGGTCATGTGATGGTCCTGACTGATGCTGCCTGA Seq1 GAAATGGTCATGTGATGGTCGTAACGATGCAATTGGGC Seq2 12345678911111111111111211111 Score 01234567898989098765 Identité: 1 Substitution: -1 Différence maximal entre le score actuel et le score maximale : 5

  45. BLAST – exemple TAAATGGTCATGTGATGGTCCTGACTGATGCTGCCTGA Seq1 GAAATGGTCATGTGATGGTCGTAACGATGCAATTGGGC Seq2 12345678911111111111111211111 Score 01234567898989098765 00000000000000000001010012345 Score(max)-Score Identité: 1 Substitution: -1 Différence maximal entre le score actuel et le score maximale : 5

  46. BLAST – exemple TAAATGGTCATGTGATGGTCCTGACTGATGCTGCCTGA Seq1 ||||||||||||||||||| | || GAAATGGTCATGTGATGGTCGTAACGATGCAATTGGGC Seq2 12345678911111111111111211111 Score 01234567898989098765 00000000000000000001010012345 Score(max)-Score Identité: 1 Substitution: -1 Différence maximal entre le score actuel et le score maximale : 5

  47. BLAST – exemple TAAATGGTCATGTGATGGTCCTGACTGATGCTGCCTGA Seq1 ||||||||||||||||||| | || GAAATGGTCATGTGATGGTCGTAACGATGCAATTGGGC Seq2 11111111111987654321 89876543210 Score 10000000000000000000 Score(max)-Score Identité: 1 Substitution: -1 Différence maximal entre le score actuel et le score maximale : 5

  48. BLAST – exemple HSP (High Scoring Pair; Hit) TAAATGGTCATGTGATGGTCCTGACTGATGCTGCCTGA Seq1 ||||||||||||||||||| | || GAAATGGTCATGTGATGGTCGTAACGATGCAATTGGGC Seq2 11111111111987654321 89876543210 Score 10000000000000000000 Score(max)-Score Identité: 1 Substitution: -1 Différence maximal entre le score actuel et le score maximale : 5

  49. BLAST (gapped version, Altschul et al., 1997) • Version 2 (1997) • Utilise des mots plus courts, mais ne s'étend que quand il y a deux hits sur la même diagonale. • Extension capable de traiter les gaps (programmation dynamique). • Le calcul de l'extension est plus longue, mais le nombre de fois où il est fait est réduit, car l'extension nécessite une paire de hits. • PSI-BLAST (Position-Specific Iterated BLAST, 1997) • Une deuxième étape après le BLAST original. • Une fois que le BLAST a renvoyeé un ensemble de séquences, ces séquences sont alignées et utilisées pour construire un profil de motif. • La base de données est ensuite scannée avec ce profil pour trouver des séquences similaires supplémentaires. • Le processus peut être réitéré plusieurs fois • collecter des séquences> créer un profil -> collecter des séquences -> créer un profil

  50. BLAST E-value • E-value: • Le nombre des HSP avec un score équivalent ou mieux que S (le score de l’alignement), qu’on peut trouver uniquement par hasard dans un banque de taille m. • E(S) = Kmne –λS m: taille de la banque n: taille de la séquence requête S: score λ et K :paramètres qui dépendent de la composition de la banque et la matrice des scores • Plus la banque est grande, plus grand est la E-value, pour le même alignement

More Related