Comparaison et alignement de séquences 2Calcul du Z-score : Z = S-m/e => Comme déjà vu pour...

63
Comparaison et alignement de séquences 2 Sophie Pasek [email protected] LV348 -BI

Transcript of Comparaison et alignement de séquences 2Calcul du Z-score : Z = S-m/e => Comme déjà vu pour...

  • Comparaison etalignement de séquences 2

    Sophie Pasek

    [email protected]

    LV348 -BI

  • Comment comparer uneséquence contre une

    banque ?

  • Comparaison séquence/banque Pourquoi ? :

    Réunir un échantillon taxonomique (homologues) pourfaire une phylogénie

    Annoter un génome nouvellement séquencé (fonctionsputatives)

    Étudier une famille (consensus, domaines)

    Vocabulaire :

    Séquence à rechercher = QuerySéquence de la banque = Subject

  • Comparaison séquence/banque

    Comment ?

    Forcément, on cherche du local !

    SW = algorithme exacte qui donne l'alignement optimal

    Si on cherchait pour chaque « Subject » son alignementoptimal avec la « Query » et puis on classe par Z-scoredécroissant …

    Problème : Si 1 alignement SW prend 15 msBanque SwissProt (> 500 000 entrées) prend 2h => Trop lent ! Il faut trouver des heuristiques

  • Blast: Basic Local Alignement Search ToolAltschul & al., 1990

    BLAST  :est une heuristique qui recherche dans une banque lesséquences (Subject) présentant une bonne similarité localeavec une séquence requête (Query)

    assigne un score et une espérance à chaque couple Query-Subject

    optimise le temps de recherche au détriment de lasensibilité et de la précision de l'alignement

    BLAST n'est pas un programme d'alignement optimal deséquences !

  • Blast: Basic Local Alignement Search Tool 3 grandes étapes :

    1) Identifier les k-mots « similaires » w de taille kpour les an, k=10 ou 11 / pour les aa, k=3 ou 4

    2) a) Etendre l'alignement (sans indel) de chaque côtéde w tant que le score cumulé est ≥ M (seuil fixé) =>HSPs = High Scoring Segment Pairs b) Eventuellement rassembler les HSPs

    3) Evaluation statistique des segments similairesobtenus

  • Blast: étape 1 Indexation de la banque (parcours 1 seule fois la banque !)

    Banque :

    >PrSub1EKFKAAMLLKSDTRCLGYRNVCKEG>PrSub2YYDDVGLLCEKADTRALMAQFVPPL>PrSub3SACILSTVNHSILKKSVHCLGYRSV

  • Blast: étape 1 Indexation de la banque (parcours 1 seule fois la banque !)

    Banque :

    >PrSub1EKFKAAMLLKSDTRCLGYRNVCKEG>PrSub2YYDDVGLLCEKADTRALMAQFVPPL>PrSub3SACILSTVNHSILKKSVHCLGYRSV

    Index :

    EKFKA PrSub1 1

    k=5

  • Blast: étape 1 Indexation de la banque (parcours 1 seule fois la banque !)

    Banque :

    >PrSub1EKFKAAMLLKSDTRCLGYRNVCKEG>PrSub2YYDDVGLLCEKADTRALMAQFVPPL>PrSub3SACILSTVNHSILKKSVHCLGYRSV

    Index :

    EKFKA PrSub1 1KFKAA PrSub1 2

    k=5

  • Blast: étape 1 Indexation de la banque (parcours 1 seule fois la banque !)

    Banque :

    >PrSub1EKFKAAMLLKSDTRCLGYRNVCKEG>PrSub2YYDDVGLLCEKADTRALMAQFVPPL>PrSub3SACILSTVNHSILKKSVHCLGYRSV

    Index :

    EKFKA PrSub1 1KFKAA PrSub1 2FKAAM PrSub1 3

    k=5

  • Blast: étape 1 Indexation de la banque (parcours 1 seule fois la banque !)

    Banque :

    >PrSub1EKFKAAMLLKSDTRCLGYRNVCKEG>PrSub2YYDDVGLLCEKADTRALMAQFVPPL>PrSub3SACILSTVNHSILKKSVHCLGYRSV

    Index :

    EKFKA PrSub1 1KFKAA PrSub1 2FKAAM PrSub1 3

    …CLGYR PrSub1 15

    k=5

  • Blast: étape 1 Indexation de la banque (parcours 1 seule fois la banque !)

    Banque :

    >PrSub1EKFKAAMLLKSDTRCLGYRNVCKEG>PrSub2YYDDVGLLCEKADTRALMAQFVPPL>PrSub3SACILSTVNHSILKKSVHCLGYRSV

    Index :

    EKFKA PrSub1 1KFKAA PrSub1 2FKAAM PrSub1 3

    …CLGYR PrSub1 15

    …...

    CLGYR PrSub1 15 PrSub3 19...

    k=5

  • Blast: étape 1 Indexation de la banque (parcours 1 seule fois la banque !)

    Index :

    EKFKA PrSub1 1KFKAA PrSub1 2FKAAM PrSub1 3

    …CLGYR PrSub1 15

    …...

    CLGYR PrSub1 15 PrSub3 19...

    Index trié :

    AAMLL PrSub1 5ACILS PrSub3 2...CILST PrSub3 3CLGYR PrSub1 15 PrSub3 19DDVGL PrSub2 3DTRAL PrSub2 13DTRCL PrSub1 12 . . .KSDTR PrSub1 10KSVHC PrSub3 15etc.

    Tri

    Le tri de l'index ainsi créé (tablede hachage) optimise le temps derecherche

  • Blast: étape 1 Recherche des mots de la Query dans l'index de la banque

    Query

    >ProtQSKCDKSDTRALLAQYIPSTVNHPIL

    Index trié :

    AAMLL PrSub1 5ACILS PrSub3 2...CILST PrSub3 3CLGYR PrSub1 15 PrSub3 19DDVGL PrSub2 3DTRAL PrSub2 13DTRCL PrSub1 12 . . .KSDTR PrSub1 10KSVHC PrSub3 15etc.

    k=5

  • Blast: étape 1 Recherche des mots de la Query dans l'index de la banque

    Query

    >ProtQSKCDKSDTRALLAQYIPSTVNHPIL

    SKCDK => 0

    Index trié :

    AAMLL PrSub1 5ACILS PrSub3 2...CILST PrSub3 3CLGYR PrSub1 15 PrSub3 19DDVGL PrSub2 3DTRAL PrSub2 13DTRCL PrSub1 12 . . .KSDTR PrSub1 10KSVHC PrSub3 15etc.

    k=5

  • Blast: étape 1 Recherche des mots de la Query dans l'index de la banque

    Query

    >ProtQSKCDKSDTRALLAQYIPSTVNHPIL

    SKCDK => 0KCDKS => 0

    Index trié :

    AAMLL PrSub1 5ACILS PrSub3 2...CILST PrSub3 3CLGYR PrSub1 15 PrSub3 19DDVGL PrSub2 3DTRAL PrSub2 13DTRCL PrSub1 12 . . .KSDTR PrSub1 10KSVHC PrSub3 15etc.

  • Blast: étape 1 Recherche des mots de la Query dans l'index de la banque

    Query

    >ProtQSKCDKSDTRALLAQYIPSTVNHPIL

    SKCDK => 0KCDKS => 0CDKSD => 0

    Index trié :

    AAMLL PrSub1 5ACILS PrSub3 2...CILST PrSub3 3CLGYR PrSub1 15 PrSub3 19DDVGL PrSub2 3DTRAL PrSub2 13DTRCL PrSub1 12 . . .KSDTR PrSub1 10KSVHC PrSub3 15etc.

  • Blast: étape 1 Recherche des mots de la Query dans l'index de la banque

    Query

    >ProtQSKCDKSDTRALLAQYIPSTVNHPIL

    SKCDK => 0KCDKS => 0CDKSD => 0DKSDT => 0

    Index trié :

    AAMLL PrSub1 5ACILS PrSub3 2...CILST PrSub3 3CLGYR PrSub1 15 PrSub3 19DDVGL PrSub2 3DTRAL PrSub2 13DTRCL PrSub1 12 . . .KSDTR PrSub1 10KSVHC PrSub3 15etc.

  • Blast: étape 1 Recherche des mots de la Query dans l'index de la banque

    Query

    >ProtQSKCDKSDTRALLAQYIPSTVNHPIL

    SKCDK => 0KCDKS => 0CDKSD => 0DKSDT => 0KSDTR => PrSub1 10

    Index trié :

    AAMLL PrSub1 5ACILS PrSub3 2...CILST PrSub3 3CLGYR PrSub1 15 PrSub3 19DDVGL PrSub2 3DTRAL PrSub2 13DTRCL PrSub1 12 . . .KSDTR PrSub1 10KSVHC PrSub3 15etc.

    SKCDKSDTRALLAQYIPSTVNHPILEKFKAAMLLKSDTRCLGYRNVCKEG

  • Blast: étape 1 Recherche des mots de la Query dans l'index de la banque

    Query

    >ProtQSKCDKSDTRALLAQYIPSTVNHPIL

    SKCDK => 0KCDKS => 0CDKSD => 0DKSDT => 0KSDTR => PrSub1 10 SDTRA => 0

    Index trié :

    AAMLL PrSub1 5ACILS PrSub3 2...CILST PrSub3 3CLGYR PrSub1 15 PrSub3 19DDVGL PrSub2 3DTRAL PrSub2 13DTRCL PrSub1 12 . . .KSDTR PrSub1 10KSVHC PrSub3 15etc.

  • Blast: étape 1 Recherche des mots de la Query dans l'index de la banque

    Query

    >ProtQSKCDKSDTRALLAQYIPSTVNHPIL

    SKCDK => 0KCDKS => 0CDKSD => 0DKSDT => 0KSDTR => PrSub1 10 SDTRA => 0DTRAL => PrSub2 13

    Index trié :

    AAMLL PrSub1 5ACILS PrSub3 2...CILST PrSub3 3CLGYR PrSub1 15 PrSub3 19DDVGL PrSub2 3DTRAL PrSub2 13DTRCL PrSub1 12 . . .KSDTR PrSub1 10KSVHC PrSub3 15etc.

  • Blast: étape 1 Recherche des mots de la Query dans l'index de la banque

    Query

    >ProtQSKCDKSDTRALLAQYIPSTVNHPIL

    SKCDK => 0KCDKS => 0CDKSD => 0DKSDT => 0KSDTR => PrSub1 10 SDTRA => 0DTRAL => PrSub2 13TRALL => 0Etc.

    Index trié :

    AAMLL PrSub1 5ACILS PrSub3 2...CILST PrSub3 3CLGYR PrSub1 15 PrSub3 19DDVGL PrSub2 3DTRAL PrSub2 13DTRCL PrSub1 12 . . .KSDTR PrSub1 10KSVHC PrSub3 15etc.

    YYDDVGLLCEKADTRALMAQFVPPLSKCDKSDTRALLAQYIPSTVNHPIL

  • Blast: étape 2 Extension de l'alignement (sans indel) => HSPs

    Mots « similaires » de taille k=5 (en aa)

    L

    Extension du segment tant que S ≥M (seuil fixé)

    SKCDKSDTRALLAQYIPSTVNHPILEKFKAAMLLKSDTRCLGYRNVCKEG

    ProtQPrSub1

    SKCDKSDTRALLAQYIPSTVNHPILEKFKAAMLLKSDTRCLGYRNVCKEG

    ProtQPrSub1

  • Blast:

    Comment améliorer les première etdeuxième étapes ?

  • Blast: étape 1 Identification des k-mots « approximatifs » au lieud'exiger k aa identiques successifsScore des k-mots ≥ T

    Exemple : DTRAL, T = 5

    D T R A L S=6 + 0 + 5 + -2 + 2 = 11 => OKD V R H I

    D T R A L S=-3 + 0 + -1 + -1 + -4 = -9 => NONM A T R G

    D T R A L S=2 + 1 + 2 + 1 + 2 = 8 => OKE S K S M

    D T R A L S=6 + 5 + 5 + 4 + 4 = 24 => OKD T R A L

  • Blast: étape 1 Identification des k-mots « approximatifs » au lieud'exiger k aa identiques successifsScore des k-mots ≥ T

    Au lieu d'écrire dans l'index : DTRAL PrSub2 13

    On pré-calcule les mots approximatifs, et on écrit :DTRAL PrSub2 13 24DVRHI PrSub2 13 11ESKSM PrSub2 13 8

    ...(tous les 5-mots de score ≥ T)

    => Beaucoup de lignes d'index par mot de la banqueConstruction de l'index lenteRecherche dans l'index longue

    => Sauf si k est petit !

  • Blast: étape 2

    ● On applique un double- critère: les séquences doivent partager 2petits mots (au lieu d'un grand)

    Query

    Subject

    Query

    Subjecttrouver 2 paires de mots "voisins" PKV (s >= T) à égale distance d dans les 2 séquences (d

  • Blast: étape 2

    ● vérifier que l'on peut étendre ces amorces pour obtenir desalignements sans gaps de score s>T

    Query

    Subject

    ● faire l'alignement local Smith & Waterman

  • Blast: étape 2 Recherche des HSPs = High Scoring Pairs

    Basé sur l'idée que :

    En général, l'alignementoptimal contient plusieursHSPs dont sûrement la MSP(= Maximal Scoring Pair).

    Une HSP contient au moinsun k-mot de score > T

  • Blast: étape 3 Significativité du score des HSPs

    Quelle est la probabilité (”p-value”) d’obtenir parhasard les HSPs effectivement obtenus ?

    Soit P(S) = e-λS la probabilité d'obtenir une HSP de score S

    On définit l'espérance E telle que : E-value = KB*lQ*e-λS

    où KB dépend de la taille et de la composition de la banquelQ= taille séquence Query

    => La E-value représente le nombre de HSPs de scoreS attendues au hasard dans la banque

  • Blast: étape 3 Significativité du score des HSPs

    La E-value représente le nombre de HSPs de score S attenduau hasard dans la banqueE-value = 3 signifie « si je comparais ma séquence à une banque aléatoire demême taille et de même composition que la banque initiale, je m’attendrais àtrouver 3 alignements de score S »

    => pas significatif

    Plus la Evalue est petite, plus la similarité est pertinente (nondue au hasard)

    Cette E-value dépend : De la matrice de substitution (=> S et taille des HSPs) De la taille et de la composition de la banque

  • Blast: étape 3 Significativité du score des HSPs

    Score S dépend des scores des différents Matchs(cf matrice de substitution)

    Les valeurs de cette matrice (log-odds) fondée surl'hypothèse d'indépendance entre les différentespositions (chaque aa de la séquence)

    Ceci est faux pour les régions répétées desséquences => fausse la E-value

    Solution : masquer les séquences

  • Blast vs. Smith-Waterman

  • La famille Blast

    Tblastn

  • Fasta / FastP

    Ancêtre de Blast  = Fasta ….

  • Fasta : Pearson & Lipman, PNAS 1988

    A

    C

    AA

    DC

    B

    A) Recherche des motsidentiques de taille l ≥ k(matchs successifs joints sidistance < seuil)B) Sur la base des 10meilleurs, re-calcul du scoreavec PAM250,raccourcissement => Zonesde + haut score = « initialregion »C) Jonction des régions paralignement avec gap selonseuilD) Alignement NWS descouples Subject-Querysélectionnés autour de cesrégions

  • Fasta : Pearson & Lipman, PNAS 1988 Significativité du score des alignements

    Basée sur la calcul d'un Z-score :

    Distribution de Score d'alignements « dus au hasard » =>moyenne (m) et écart-type (e)

    Calcul du Z-score : Z = S-m/e

    => Comme déjà vu pour l'alignement 2 à 2 (Nws et SW).

  • Retour à la Génomique comparative

    On sait identifier des gènes qui se ressemblent

    Que peuvent me dire ces gènes sur l'histoire évolutive des génomes ?

    => Homologie (orthologie/paralogie) et synténie

  • Gène et HomologieRappel des définitions

    Les gènes issus d’un gène ancestral commun parhéritage vertical sont dits orthologues. Pardéfinition il existe donc au plus un orthologue pargénome pour chaque gène considéré.

    Des gènes homologues sont issus d’un gèneancestral commun:

    Si ces gènes ont évolués par duplication l’un del’autre ils sont dits paralogues

  • ORTHOLOGIE

    Gène et HomologieExemple orthologues

    ORTHOLOGIE

  • ORTHOLOGIE

    Gène et HomologieExemple paralogues

    ORTHOLOGIE

    PARALOGIE

  • Gène et Homologie Divergence + Fluidité

    ORTHOLOGUES ?

    PARALOGUES ?

  • Gène et Transfert horizontal

  • La similarité ne permet pas à elleseule d'établir des liensd'homologie !

    Retour à la Génomique comparative

  • Gènes et OrthologieMéthode du BBH

    Deux gènes a et b (codant pour des protéines pa et pb) appartenant respectivement aux génomesdes organismes A et B sont dits en BBH si etseulement:

    • Le meilleur hit blast de pb chez A est pa• Le meilleur hit blast de pa chez B est pbCritères supplémentaires :

    •Hit blast < 10^-6

    •taille(pa)=taille(pb)

    •Taille alignement = taille des protéines

  • Espèce A Espèce B

    a1a2a3a4a5

    b1b2b3b4b5

    Gènes et OrthologieMéthode BBH

    b6

    a2 et b1 sontorthologues

  • Espèce A Espèce B

    a1a2a3a4a5

    b1b2b3b4b5

    BBH « Multi-Espèces »Exemple BBH en « étoile » pour 3 espèces

    b6

    a2, b1 et c1 sont orthologues pour le BBH en « étoile »

    Espèce C

    c1c2c3c4

    PIVOT

  • Espèce A Espèce B

    a1a2a3a4a5

    b1b2b3b4b5

    BBH « Multi-Espèces »Exemple BBH en « clique » pour 3 espèces

    b6

    Espèce C

    c1c2c3c4

    a2, b1 et c1 ne sont pas orthologues pour le BBH en « clique »

    => BBH en « clique » coûteux et très contraignant

  • La synténie

  • Synténie de GènesDéfinition

    Ensemble de segments génomiques appartenant àdifférents génomes partageant « pratiquement » lesmêmes gènes

    Ces segments témoignent d’une conservation locale duvoisinage génomique pouvant être affectée parquelques réarrangements (orientation, duplication,insertion, fusion, etc.)

  • Synténie de Gènes1ère approche : le dotplot

    2 isolats deClostridium difficile

    Colinéarité = Synténie

  • Espèce 1

    Espèce 2

    Espèce 3Espèce 4

    Espèce 5

    Espèce 6

    Gène : G1 G2 G3 G4 G5 G6 G7

    Note: avant la détection des synténies, il faut définir les liensd’orthologie. Ici, les gènes d’une même couleur ont été identifiés(via le « BBH » par exemple) comme étant orthologues

    Synténie de GènesExemple

  • u x a a wZ

    f u a wX

    z a x yY

    1 2 3 4

    7 9 10

    17 18 19 20 21

    u, a et w sont en synténie sur X et Z à un gap près

    Synténie de GènesDéfinition “gene team” (Raffinot et al., 2004)

  • • La détection de synténies permet d’identifier desgènes susceptibles d’être fonctionnellement liés et/ou d’interagir (opérons, clusters de gènes)

    • La synténie permet également d’évaluer etd’identifier les réarrangements affectant lesgénomes tels que les transpositions, délétions,insertions, inversions, fusions et fissions (mesurephylogénétique, étude de la dynamique/fluidité desgénomes)

    Synténie de GènesIntérêts de la synténie

  • 13

    2

    45

    67

    9 811 1012

    13141516

    1718

    B1

    13

    2

    456

    79 811 10

    1213

    141516

    1718

    A1

    32

    4

    56

    7 9811

    10

    12

    13141516

    1718

    B2

    Inversion autour du terminus

    ExempleFluidité des génomes

  • Gènes orthologues : 123456789

    101112131415161718

    1 2 3 4 13 121110 9 8 7 6 5 14 15161718

    ExempleCaractérisation des zones conservées: les synténies

    B1

    B2

  • Gènes orthologues : 123456789

    101112131415161718

    1 2 3 4 13 121110 9 8 7 6 5 14 15161718

    ExempleCaractérisation des zones conservées: les synténies

    B1

    B2

  • (Eisen et al., Genome Biology, 2000)

    ExempleCas réel

  • ExempleCas réel

  • Micro-synténie: ensemble de segments génomiquesappartenant à différents génomes partageant« pratiquement » les mêmes gènes

    Macro-synténie: deux gènes « côte à côte » sur lechromosome d’une espèce sont sur le mêmechromosome dans une autre espèce

    Synténie de GènesMacro-synténie, Micro-synténie

  • Homme / Mouse

  • Jaillon et al., Nature, 2004

    Diapo 1Diapo 2Diapo 3Diapo 4Diapo 5Diapo 6Diapo 7Diapo 8Diapo 9Diapo 10Diapo 11Diapo 12Diapo 13Diapo 14Diapo 15Diapo 16Diapo 17Diapo 18Diapo 19Diapo 20Diapo 21Diapo 22Diapo 23Diapo 24Diapo 25Diapo 26Diapo 27Diapo 28Diapo 29Diapo 30Diapo 31Diapo 32Diapo 33Diapo 34Diapo 35Diapo 36Diapo 37Diapo 38Diapo 39Diapo 40Diapo 41Diapo 42Diapo 43Diapo 44Diapo 45Diapo 46Diapo 47Diapo 48Diapo 49Diapo 50Diapo 51Diapo 52Diapo 53Diapo 54Diapo 55Diapo 56Diapo 57Diapo 58Diapo 59Diapo 60Diapo 61Diapo 62Diapo 63