Une matrice de substitution associe un score à chaque paire de résidus. Ce score (appelé log-odds ou lod score) indique la vraisemblance qu'a cette paire de résidus de se retrouver dans une alignement de séquences homologues.
En termes évolutifs, le lod-score peut être interprété comme une indication de l'acceptabilité de la substitution. Ce concept d'acceptabilité a été proposé par Margret Dayhoff en 1978, sur base de l'analyse d'une collection d'alignements de séquences protéiques. L'idée sous-jacente est que certaines substitutions ont de plus fortes chances de perturber la fonction de la protéine.
Par exemple:
En analysant une collection d'alignements entre paires de protéines homologues, Margret Dayhoff réalise que certaines paires de résidus se retrouvent plus fréquemment alignées que ce qu'on s'attendrait à observer au hasard. Elle définit le lod-score, qui mesure cette propriété.
Le log-odds score est le logarithme de vraisemblance de trouver une substitution au sein d'un alignement entre séquences homologues.
Illustrations: voir diapos
si,j = sj,i = log2(fi,j/(fifj))
fi,j = (nj,i) / Σi,j(ni,j)
Le produit fifj indique la fréauence relative attendue au hasard, c'est-à-dire la probabilité d'aligner les résidus i et j si on les avait tirés aléatoirement, de façon indépendante, suivant leurs fréquences respectives.
Le rapport fi,j/(fifj) indique le niveau de sur- ou sous-représentation de la substitution i, j au sein des alignements. Il prend une valeur
Le LOD est la transformation logarithmique (en base 2) de ce rapport. Il est donc
Henikoff et Henikoff (1982) définissent une série de matrices de substitution sur base d'alignements locaux multiples ("blocks" d'alignements). Les matrices de cette série portent toutes le préfixe BLOSUM (pour "BLOck SUbstitution Matrix"), suivi d'un suffixe indiquant le pourcentage d'identité minimal entre séquences utilisées pour construire la matrice.
La matrice BLOSUM62 a été construite à partir de blocks de séquences protéiques alignées présentant un pourcentage d'identité ≥62%.

La matrice BLOSUM30 a été construite à partir de blocks de séquences protéiques alignées présentant un pourcentage d'identité ≥30%. Elle est donc adaptée à des alignemements de protéines évolutivement distantes.

Il existe indubitablement une correspondance entre les substitutions fréquentes (marquées en vert) des matrices BLOSUM62 et BLOSUM30. Cependant, certaines substitutions obtiennent des scores différents selon la distance évolutive, et peuvent même passer d'un score négatif (substitutions contre-sélectionnées) à un score positif (substitutions dites "conservatives" ou "acceptées"). Il est donc crucial de choisir, pour chaque alignement, une matrice BLOSUM dont le suffixe correspond approximativement au taux de conservation (identités) entre protéines alignées.
Ceci pose évidemment un problème de circularité: comment peut-on savoir quelle matrice choisir avant d'avoir réalisé l'alignement ? La solution la plus simple est de commencer par faire un alignement avec une matrice de conservation "moyenne" (typiquement, la BLOSUM62, ce qui explique sa popularité), puis de choisir la meilleure matrice sur base du premier alignement, pour faire l'alignement final.
Quand on aligne deux ou plusieurs protéines, il est important de choisir la matrice de substitutions la plus appropriée, c'est-à-dire celle qui correspond le mieux possible leur taux d'identité.
Pour la série de matrices BLOSUM (Henikoff & Henikoff, 1992), le numéro de matrice indique le pourcentage d'identité minimal pour lequel la matrice est appropriée.
Par exemple,
Bien entendu, cette règle pose un problème de circularité: pour pouvoir aligner des protéines, il faut choisir la matrice appropriée sur base de leur pourcentage d'identité, mais pour connaître ce pourcentage, il faut déjà disposer d'un alignement.
Une règle pratique assez simple consiste à suivre le protocole suivant:
Le dot plot est une représentation graphique qui indique les régions identiques ou similaires entre deux séquences biologiques. La première séquence entrée est projetée sur l'axe horizontal, la seconde sur l'axe vertical.
Illustrations: voir diapos
[Retour à la table des matières]Un alignement par paire indique les régions similaires entre deux séquences biologiques (nucléiques ou peptidiques).
Afin d'aligner au mieux les résidus identiques ou similaires (scores positifs dans les matrices de substitutions), les programmes d'alignement peuvent insérer des espacements (gaps) au sein des séquences alignées. Les gaps sont représentés par des traits d'union "-".
R L A S V E T D M P - - - - - L T L R Q H
T L T S L Q T T L K N L K E M A H L G T H
Les gaps peuvent être interprétés selon deux scénarios évolutifs alternatifs:
L'alignement d'une paire de séquences ne permet pas de départager ces deux possibilités. On définit le terme indel (in extenso: insertion ou délétion) pour indiquer cet événement évolutif de nature indéterminé qui est à l'origine du gap.
Pour calculer le score brut (raw score) d'un alignement, on associe à chaque paire de résidus alignés le score correspondant dans la matrice de substitutions.
Dans l'exemple ci-dessous, nous avons calculé le score de l'alignement suivant avec la matrice BLOSUM62.
R L A S V E T D M P - - - - - L T L R Q H
T L T S L Q T T L K N L K E M A H L G T H
-1 +4 +0 +4 +1 +2 +5 -1 +2 -1 -1 -2 +4 -2 -1 +8
On applique un traitement particulier pour assigner un score aux gaps: on définit (de façon quelque peu arbitraire) deux pénalités.
On peut dès lors calculer le score brut (raw score) en additionnant, tout au long de l'alignement, des scores d'identité, de substitution, d'ouverture et d'extension de gap.
R L A S V E T D M P - - - - - L T L R Q H
T L T S L Q T T L K N L K E M A H L G T H
-1 +4 +0 +4 +1 +2 +5 -1 +2 -1 -10 -1 -1 -1 -1 -1 -2 +4 -2 -1 +8 = 7
Enfin, pour faciliter la lecture de l'alignement, on insère entre les deux séquences alignées un ligne de symboles.
| | | identités |
| : | substitutions conservatives (celles qui ont un score positif dans la matrice de substitution) |
| . | substitutions non-conservatives (celles qui ont un score strictement négatif dans la matrice de substitution) |
| - | gaps |
R L A S V E T D M P - - - - - L T L R Q H
. | . | : : | . : . . . | . . |
T L T S L Q T T L K N L K E M A H L G T H
-1 +4 +0 +4 +1 +2 +5 -1 +2 -1 -10 -1 -1 -1 -1 -1 -2 +4 -2 -1 +8 = 7
Au-delà du score brut, on peut dériver une série de scores qui fournissent des informations complémentaires concernant la qualité de l'alignement.
| Longueur de l'alignement | Nombre de colonnes de l'alignement. Attention, la longueur
de l'alignement diffère généralement de celle des séquences
alignées, pour différentes raisons:
|
| Nombre d'identités | nombre de positions où sont alignés deux résidus identiques |
| Pourcentage d'identités | Nombre d'identités divisé par la longueur totale de l'alignement. |
| Nombre de similarités ("positives") | Nombre de positions de l'alignement caractérisées par un score positif dans la matrice de substitution (identités et substitutions "conservatives"). |
| Pourcentage de similarités | Nombre de similarités divisé par la longueur totale de l'alignement. |
Un alignement global recouvre les séquences alignées sur l'ensemble de leur longueur, tandis qu'un alignement local peut se limiter à un fragment de chaque séquence.
L'intérêt de l'alignement global est de révéler les événements évolutifs (délétions, insertions, substitutions) sur l'ensemble de la longueur des séquences d'intérêt. On recourt par exemple aux alignements globaux quand on veut étudier l'évolution d'une famille de protéines dans son ensemble.
Les alignements locaux révèlent les segments conservés entre deux ou plusieurs séquences. On les utilise par exemple pour extraire un domaine conservé à partir d'une famille de séquences homologues.
[Retour à la table des matières]BLAST est une méthode de recherche de séquences par similarité qui effectue des alignements locaux entre une séquence requête (query sequence) et chacune des séquences d'une base de données (par exemple UniprotKB, qui recouvre 40 millions de séquences protéiques).
Pour pouvoir effectuer cette tâche énorme dans un temps raisonnable, BLAST se base sur une approche heuristique: les séquences de la base de données sont préalablement indexées dans un "dictionnaire de mots", qui dresse la liste des séquences de la base de données contenant chaque oligomère (oligopeptide pour les bases de données de protéines, oligonucléotides pour les séquences nucléiques) d'une taille donnée.
Quand on lance une recherche, BLAST commence par analyser la séquence requête en dressant la liste des oligomères présents. Il consulte ensuite le dictionnaire pour extraire la liste des séquences de la base de données qui contiennent ces mots, et lance un alignement par paire avec ce sous-ensemble des séquences.
Cette heuristique est plus rapide que les méthodes d'alignement par paire par programmation dynamique (Needleman-Wunsch en alignement global, Smith-Waterman en alignement local), mais elle présente un certain risque de louper des similarités.
BLAST permet non seulement de comparer des séquences de même type (protéine versus protéine, acide nucléique versus acide nucléique), mais également d'effectuer des recherches avec une séquence requête d'un type (peptidiques ou nucléiques) dans une base de donnée de l'autre type. Pour ces recherches croisées, les séquences nucléiques sont traduites dans les 6 cadres de lectures (3 cadres de lecture par brin), et le résultat est analysé avec l'algorithme blastp.
| Requête | Base de données | Logiciel | Exemples d'applications |
|---|---|---|---|
| séquence peptidique | séquence peptidique | blastp |
|
| séquence nucléique | séquence nucléique | blastn |
|
| séquence nucléique (traduite dans les 6 cadres) | séquence peptidique | blastx |
|
| séquence peptidique | séquence nucléique (traduite dans les 6 cadres) | tblastn |
|
| séquence nucléique (traduite dans les 6 cadres) | séquence nucléique (traduite dans les 6 cadres) | tblastx |
| Statut réel | |||
|---|---|---|---|
| + | - | ||
| Prédiction | + | VP (vrai positif) | FP (faux positif) |
| - | FN (faux négatif) | VN (vrai négatif) | |
| Sn | Sensibilité
=taux de couverture |
fraction d'éléments de statut réel positif prédits comme positifs | Sn = VP / (VP + FN) |
| PPV | Valeur prédictive positive | fraction de prédictions positives possédant un statut réel positif. | PPV = VP / (VP + FP) |
| FPR | Taux de faux-positifs
(false positive rate) |
fraction de prédictions positives parmi les éléments de statut réel négatif | FPR = FP / (FP + VN) |
| Sp | Spécificité | fraction de prédictions négatives parmi les éléments de statut réel négatif | Sp = VN / (FP + VN) |
Il existe généralement un compromis entre sensibilité et PPV: si l'on augmente les contraintes sur les prédictions (par exemple en augmentant les seuils de similarité), on augmentera la valeur prédictive positive mais on diminuera la sensibilité.
[Retour à la table des matières]La e-valeur (en anglais: e-value ou expect pour expected value) représente le nombre de résultats qu'on s'attendrait à obtenir au hasard, en fonction des paramètres utilisés pour un programme.
Par exemple, le logiciel BLAST caractérise chaque alignement par une e-valeur, qui est calculée en fonction du le score brut, de la longueur des protéines alignées, et de la taille de la base de données (quand la taille d'une base de données augmente, on a plus de chances d'observer un hit fortuit). La e-valeur est le paramètre le plus informatif, d'une part parce qu'elle tient compte de l'ensemble des autres paramètres, d'autre part parce que son interprétation est directe: elle nous informe quant au risque que nous prenons si nous considérons la similarité comme significative. La e-valeur est liée au concept de risque de faux positifs: le risque de considérer comme significatif un résultat qui ne l'est pas.
Une e-valeur faible indique qu'un résultat est statistiquement significatif.
Par exemple, si un alignement obtenu par BLAST est associé à une e-valeur de 1e-3, cela signifie qu'on s'attendrait à 0.001 faux-positifs dans des condisions similaires. Autrement dit, si l'on faisait l'analyse avec des séquences aléatoires, un alignement d'aussi bonne qualité sortirait en moyenne une fois sur 1000.
Au contraire, des résultats associés à une e-valeur supérieure à 1 devraient toujours être considérés avec prudence (je dirais même méfiance). En effet, une e-valeur de 10 signifie que si l'on avait effectué une analyse avec des données aléatoires, on s'attendrait à obtenir une dizaine de résultats. Ces résultats pourraient être qualifiés de faux-positifs, c'est-à-dire des éléments déclarés significatifs alors qu'ils ne le sont pas. Il est donc généralement recommandé d'imposer un seuil stringent sur l'e-valeur.
Il n'est pas rare que des alignements de BLAST retournent une e-valeur très basse, par exemple 1e-150. Ce score très significatif indique qu'il est extrêmement improbable que ce la similarité entre la protéine requête et le hit provienne du hasard. L'hypothèse alternative est que cette similarité de séquence reflète le fait que les deux séquences dérivent d'un ancètre commun. Dans un tel cas, on peut conclure que les deux séquences sont très vraisemblablement homologues.
La e-valeur ne s'applique pas uniquement aux résultats de BLAST. La plupart des logiciels bioinformatiques indiquent la significativité des résultats, sous forme de e-valeur ou d'autres statistiques apparentées. Il est essentiel de pouvoir interpréter ces nombres pour éviter de se faire flouer par un résultat apparemment prometteur.
[Retour à la table des matières]La méthode la plus utilisée pour aligner plusieurs protéines est l'alignement progressif. Elle se décompose en plusieurs étapes:
La première étape d'un alignement progressif consiste à aligner chaque paire de séquences, et à calculer leur distance. On regroupe les résultats dans une matrice de distances, où
| seq 1 | seq 2 | ... | seq n | |
|---|---|---|---|---|
| seq 1 | d1,1 | d1,2 | ... | d1,n |
| seq 2 | d2,1 | d2,2 | ... | d2,n |
| ... | ... | ... | ... | ... |
| seq n | dn,1 | dn,2 | ... | dn,n |
Les alignements par paires peuvent être effectués en utilisant la programmation dynamique (algorithme de Needleman-Wunsch) ou une heuristique plus rapide (fasta, blast).
A partir de la matrice de distance, on peut construire un arbre-guide par la méthode du Neighbour joining (NJ).
Le principe est d'établir en premier lieu un branchement qui relie les deux séquences les plus proches (celles qui ont la distance minimale dans la marice de distances), puis les séquences un peu moins proches, et ainsi de suite jusqu'à avoir branché toutes les séquences.
Attention: l'arbre-guide ne doit en aucun cas être considéré comme inférence des relations phylogénétiques entre séquences.
Il s'agit uniquement d'un outil utilisé temporairement pour déterminer l'ordre d'incorporation des séquences dans l'alignement entre séquences multiples.
L'inférence phyogénétique nécessite des analyses plus poussées, qui ne pourront être effectuées q'uaprès avoir obtenu l'alignement multiple.
Après avoir calculé la matrice de distance et construit l'arbre-guide, on construit l'alignement multiple en incorporant progressivement les séquences selon leur ordre de branchement dans l’arbre guide, en remontant des plus proches aux plus éloignées.
[Retour à la table des matières]Chaîne de caractère indiquant les résidus conservés à chaque colonne d'un alignement multiple.
Le consensus est obtenu en retenant, pour chaque colonne d'un alignement multiple, soit un seul résidu (on parle alors de consenssu strict, soit une combinaison de résidus représentatifs (consensus dégénéré). Les consensus dégénérés peuvent être représentés par des expressions régulières, combinées avec les spécifications IUPAC pour les résidus ambigüs.
Un consensus fournit une représentation compacte d'un motif séquentiel. Les consensus sont par exemple utilisés
Le consensus fournit une représentation compacte et intuitive d'un motif, mais souffre de quelques limitations.
Une expression régulière est une chaîne de caractères qui décrit un motif (ou pattern) composé de différents types d'éléments.
Exemples:
Duplication: une duplication est une mutation qui génère un doublement d'une partie de l'ADN génomique. La duplication peut recouvrir l'ensemble du génome (formation de polyploïdes), un chromosome entier, ou un fragment de chromosome de taille plus ou moins grande.
Les duplications peuvent entraîner la formation de copies multiples d'un ou plusieurs gènes, provoquant ainsi une certaine redondance de l'information génétique. Dans certains cas, l'une des copies dupliquées du gène acquiert, par accumulation de mutations, de nouvelles caractéristiques qui lui permettent d'assumer une nouvelle fonction. Ce mécanisme, appelé duplication-divergence, est à l'origine de la diversification des fonctions biologiques.
Spéciation: processus évolutif qui résulte en la formation d'espèces distinctes à partir d'une seule espèce.
Homologie: lien évolutif entre deux traits (organes, séquences, ...) qui dérivent d'un trait ancestrale commune.
Les différences entre les deux caractères homologues résultent de l’accumulation de mutations à partir de l’ancêtre commun. Il s’agit donc d’une évolution par divergence évolutive.
Analogie: ressemblance entre deux traits (organes, séquence) qui ne résulte pas d'une origine ancestrale commune (par opposition à l'homologie).
En cas d'analogie, on suppose que les traits similaires sont apparus de façon indépendante. Leur ressemblance peut éventuellement manifester l’effet d’une pression évolutive qui a sélectionné les mêmes propriétés. Dans ce cas, on parle de convergence évolutive.
UTO : Unité taxonomique opérationnelle. Noeud d'un arbre phylogénétique pour lequel on dispose d'échantillons (en phylogénie moléculaire, les échantillons consistent en séquences macromoléculaires). Les unités opérationnelles correspondent à des espèces actuelles. Sur un arbre phylogénétique, les UTO apparaissent comme des feuilles (noeuds terminaux).
UTH: Unité taxonomique hypothétique. Noeud d'un arbre taxonomique pour lequel on ne dispose pas d’échantillons. Les UTH correspondent aux espèces ancestrales des UTO. Elles sont inférées durant le processus d'analyse phylogénétique. Sur un arbre phylogénétique, les UTH apparaissent comme des noeuds internes.
Noeud non résolu: noeud interne (UTH) connecté à plus de deux branches descendantes (branchement non-binaire). Les noeuds non résolus correspondent à des situations pour lesquelles il subsiste une ambiguité concernant l'ordre des événements évolutifs.
Clade: groupe monophylétique comportant une unité taxonomique et l'ensemble de ses descendants. Sur un cladogramme, le clade correspond à l'ensemble des ramifications descendant à partir d'un noeud interne.
Arbre phylogénétique représentant les relations entre espèces (et l'ordre des branchements entre leurs ascendants), sans indication des distances évolutives.
Arbre phylogénétique dont les longueurs des branches représentent les distances évolutives (nombre de modifications).
Arbre phylogénétique dont les longueurs des branches représentent le temps.
L’hypothèse de l’horloge moléculaire consiste à supposer que les taux d’évolution ne varient pas entre branches.
Cette hypothèse n’est généralement pas valide:
Cette hypothèse a cependant une valeur pragmatique, car elle permet de positionner les noeuds ancestraux (HTU) dans un chronogramme.
Certaines méthodes d'inférences (UPGMA) produisent des arbres enracinés (l'inférence d'une racine fait partie intrinsèque de l'algorithme). Dans le cas de l'algorithme UPGMA, la racine est positionnée sur le point de l’arbre équidistant de toutes les feuilles. Ceci suppose que toutes les lignées ont évolué à la même vitesse depuis leur divergence (Hypothèse de l’horloge moléculaire).
D'autres méthodes (Neighbour Joining, parcimonie, maximum de vraisemblance) produisent des arbres sans racine: l'algorithme n'émet pas d'hypothèse concernant la localisation de la racine.
On applique deux approches alternatives pour insérer une racine:
Réconciliation de l'arbre des molécules et de l'arbre des espèces. La réconciliation consiste à comparer un arbre des molécules et un arbre des espèces pour identifier l'événement évolutif (duplication ou spéciation) qui a donné lieu à chaque branchement d'une famille de séquences homologues.
Voir diapos
[Retour à la table des matières]Le booststrap est une stratégie basée sur le rééchantillonnage, qui vise à estimer la robustesse d'une procédure appliquée à un jeu de données. Le principe est d'appliquer de façon itérative la même procédure à un sous-ensemble des données sélectionné aléatoirement. On compare ensuite les résultats obtenus avec les différents sous-ensembles: s'ils sont similaires, la procédure sera qualifiée de robuste.
Dans le domaine de la phylogénie moléculaire, on utilise le bootstrap pour estimer la robustesse de l'arbre phylogénétique inféré par rapport aux données (alignement multiple) qui ont servi à le générer. Pour ce faire, on sélectionne aléatoirement un sous-ensemble des colonnes de l'alignement multiple, à partir desquelles on infère un arbre phylogénétique. On répète l'opération (typiquement 100 ou 1000 fois) et on compare les arbres obtenus. Chaque branchement de l'arbre initial (celui obtenu avec toutes les colonnes de l'alignement) est annotée en indiquant le nombre de fois où ce même branchement se retrouve dans les bootstraps.
Valeurs de boostrap sur l'arbre phylogénétique des alcohol déhydegénases de bactéries.
[Retour à la table des matières]| Méthode | Type d'arbre | Hypothèse d'horloge moléculaire | Enracinement |
|---|---|---|---|
| Parcimonie | Cladogramme | Non | Non |
| UPGMA | Chronogramme | Oui | Oui |
| Neighbour joining | Phylogramme | Non | Non |
| Maximum de vraisemblance ("Maximum likelihood" en anglais) | Phylogramme | Non | Non |