Apprentissage profond : traitement du langage appliqué aux protéines

Lexique

1. L'apprentissage profond appliqué aux grands modèles de langage

2. Le modèle Transformer

a. Structure du modèle Transformer
b. Les couches d'attention du modèle Transformer

3. Les modèles de traitement du langage protéique ou pLM

a. Introduction
b. Les pLM basés sur des transformeurs
c. Caractéristiques de quelques pLM

 
d. Jeux d'entraînement des pLM
e. Exemples d'application des pLM en biologie
f. pLM et Python

4. Plongement ou incorporation ou intégration ("embedding")

5. Génération de protéines artificielles

a. Exemples de programmes de génération de protéines artificielles
b. Génération de protéines artificielles et évolution

6. La prédiction de la structure 3D des protéines

7. Liens Internet et références bibliographiques

 

Voir un développement de l'intelligence artificielle appliquée à la biologie.


Lexique
Les représentations distribuées de mots
  • En traitement du langage naturel, elles désignent une manière de représenter des mots ou des phrases sous forme de vecteurs continus dans un espace vectoriel de grande dimension.
  • Aident les algorithmes d'apprentissage en regroupant les mots similaires.
"Skip-gram Word2Vec"
  • Architecture qui permet de calculer des intégrations de mots ("word embeddings").
  • Au lieu d'utiliser les mots environnants pour prédire le mot central, "Skip-gram" utilise le mot central pour prédire les mots environnants.

"n-gram"

Dans l'analyse des séqunces de protéines, c'est un "mot protéique" composé de n acides aminés (exemples : 3-grams à 6-grams) => voir la figure 1 de l'article Asgari & Mofrad (2015).

Segmentation des séquences en acides aminés

Si on définit un "mot protéique" comme un n-gramme, le nombre total de n-grammes possibles est de 20n puisqu'il y a 20 acides aminés.

Pour n = 1, un résidu d'acide aminé est donc traité comme un mot et une séquence protéique comme une phrase.

pLM Les modèles de traitement du langage protéique ("protein Language Models").
Sémantique

"Etude du sens des unités linguistiques et de leurs combinaisons" (déf. Larousse).
Les termes similaires sur le plan sémantique sont plus susceptibles d'avoir des plongements ("word embeddings") proches.

Technique dite d'attention

Processus qui permet aux modèles de traitement du langage naturel de pondérer les données d'entrée pour accorder plus d'importance aux données les plus pertinentes tout en ignorant d'autres.
Couche "Multi- Head Attention".

Encodeur - décodeur Un autoencodeur est un réseau de neurones pour l'apprentissage non supervisé, c'est-à-dire l'apprentissage automatique de données non étiquetées.
Un autoencodeur est composé d'un encodeur qui associe le message à un code et d'un décodeur qui reconstruit le message à partir du code.

Principaux types de codage positionnel

  • Le codage de position absolue est très utilisé en raison de sa simplicité et de son efficacité de calcul.
    • Cependant, il nécessite un codage pour chaque position d'acide aminé, ce qui limite la capacité du pLM à gérer des séquences protéiques de longueurs variables et la capacité d'extrapolation.
    • Le codage de position absolue appris conduit souvent à de meilleures performances en aval des pLM comme ESM-1b.
  • Le codage de position relative est insensible à la longueur totale de la séquence, ce qui le rend plus adapté à la gestion de séquences de longueurs arbitraires et à la capture d'informations de structure.

Jetons ("token")

intelligence artificielle token jeton apprentissage profond automatique deep learning traitement langage naturel pLM Large Language Model transformeur transformer GPT biochimej

Source : Zhang et al. (2024)

Notion de contexte

Un vecteur d'intégration ("plongement") contextualisé pour un jeton ("token") inclue son contexte environnant : en conséquence, 2 jetons identiques n'ont pas forcément le même vecteur d'intégration contextualisé.

Encodage "one-hot"

En traitement du langage naturel :

  • Un vecteur "one-hot" est une matrice de (1 × N) vecteurs utilisée pour distinguer chaque mot d'un vocabulaire de tous les autres mots de ce vocabulaire.
  • Le vecteur est constitué de 0 dans toutes les cases, à l'exception d'un seul 1 dans une case unique pour identifier le mot considéré.
  • un groupe de bits "one-hot" est un groupe au sein duquel les combinaisons de valeurs ne possèdent qu'un bit à 1 et tous les autres à 0

0 (décimal) = 00000001 ("one-hot"); 1 = 00000010; 2 = 00000100; ... ; 7 = 10000000

Inconvénient de l'encodage "one-hot"

Soit un corpus de 1000 mots : l'encodage "one-hot" de chaque mot génère un vecteur de dimension 1000 (uniquement des 0 sauf à la position unique correspondant au mot, où la valeur = 1).

Cet encodage présente l'inconvénient d'une dimensionnalité très élevée si le corpus est étendu.

biochimej Retour haut de page

1. L'apprentissage profond et les grands modèles de langage ("Large Language Models" - LLM)

En 2013, des chercheurs de Google ont développé la technique "word2vec" qui utilise des réseaux de neurones superficiels pour associer des mots uniques à des représentations distribuées de mots (voir le lexique ci-dessous).

Exemples de modèles parmi les plus performants (et connus) dans le domaine du traitement du langage naturel :

  • ELMo (Allen Institute for AI) : représentation de mots contextualisée qui modélise les caractéristiques complexes de l'utilisation des mots (syntaxe et sémantique) et qui modélise la manière dont ces utilisations varient d'un contexte linguistique à un autre (polysémie).
  • BERT ("Bidirectional Encoder Representations from Transformers" - Google 2018) : architecture basée sur le modèle Transformer.
    • Elle permet de créer des représentations contextuelles similaires à ELMo, mais elle est entraînée avec un objectif de modélisation du langage qui est différent.
    • Modèle d'autoencodage : il prédit les jetons masqués en utilisant le contexte bidirectionnel.
  • La famille des modèles GPT (GPT-3.5 à GPT5 - "Generative Pretrained Transformer", OpenAI) qui génère des paragraphes cohérents de texte, mot à mot.
    • Modèle autorégressif : il prédit le jeton suivant en fonction de tous les jetons précédents (il conserve l'ordre d'origine). Incapable de capturer le contexte bidirectionnel.
  • Le modèle WuDao 2 (2021 - 1,75 1012 paramètres), outre sa capacité à générer du texte (comme les modèles GPT), est capable de prédire la structure 3D de protéines à partir des séquences en acides aminés comme AlphaFold.

intelligence artificielle apprentissage profond automatique deep learning traitement langage naturel pLM Large Language Model transformeur transformer encoder decoder BERT GPT biochimej

Source : Transformer models: an introduction and catalog

Classement des modèles par architecture selon leurs types de tâches

Encodeur seul (bidirectionnel)

Prédiction des jetons masqués à partir de tous les autres jetons, généralement utilisé pour les tâches de compréhension/classification du langage (exemples : BERT, XLNet, ELECTRA).

Décodeur seul

Modèles unidirectionnel (de gauche à droite ou inversement) : prédiction du jeton suivant à partir des jetons précédents, généralement utilisé pour les tâches de génération de langage (exemple : GPT).

Encodeur-décodeur Modèles "séquence à séquence" : génération de séquences de sortie à partir de séquences d'entrée masquées, utilisable à la fois pour les tâches de compréhension et de génération du langage (exemples : T5, BART).

biochimej Retour haut de page

intelligence artificielle apprentissage profond automatique deep learning traitement langage naturel pLM Large Language Model transformeur transformer BERT GPT biochimej

Source : Ran Ding - 1 To (T : Téra) = 1012 octets

biochimej Retour haut de page

2. Le modèle Transformer

En 2017, le modèle Transformer (Google) a permis d'obtenir des résultats révolutionnaires dans le traitement des séquences protéiques.

  • Transformer est un modèle d'apprentissage profond pour le traitement du langage naturel qui traite les séquences d'entrée en parallèle grâce à un mécanisme dit d'auto-attention ("self-attention" - voir le lexique).
  • Appliqué aux séquences d'acides aminés, ce mécanisme permet au modèle d'ajuster dynamiquement l'importance des informations provenant de différentes positions des acides aminés lors du traitement de chaque position de la séquence d'entrée, lui permettant ainsi de mieux capturer les dépendances globales.
  • Cela confère donc au modèle la capacité à capturer différentes relations sémantiques selon différents poids d'attention ("various attention weights" - voir le lexique).

Transformer se compose :

  • D'un encodeur qui extrait les intégrations (plongements) de la séquence d'entrée.
  • D'un décodeur qui utilise la sortie de l'encodeur et l'auto-attention pour générer la séquence cible étape par étape, couramment utilisée dans les tâches de séquence à séquence.

fonction protein codage one-hot semantic semantique embedding integration plongement token jeton intelligence artificielle apprentissage profond automatique deep learning traitement langage naturel pLM Large Language Model transformeur transformer biochimej

Source : Zhang et al. (2024)

biochimej Retour haut de page

a. Structure du modèle Transformer

L'encodeur et le décodeur contiennent chacun 1 couche d'intégration (plongement) ("Embedding layer") et 1 couche de codage positionnel ("Position Encoding layer") (en bas de la figure ci-dessous).

  • La phrase d'entrée ("Input") et la phrase cible ("Target") sont transmises à la couche d'intégration et à la couche de codage positionnel de l'encodeur et du décodeur, respectivement.
  • Ces 2 couches génèrent une représentation codée de chaque mot de la phrase d'entrée (symbole croix dans un rond) qui capture le sens et la position de chaque mot.
Encodeur Modèle "Transformer"

Décodeur

La pile d'encodeurs (figure ci-contre, à gauche) contient plusieurs encodeurs dont chacun contient :

  • 1 couche d'attention multi-têtes ("Multi-Head Attention layer") : cette couche est composée de 3 matrice de poids (Q, K et V - voir ci-dessous) est une tête d'attention ("Head Attention").
  • 1 couche de rétroaction ("Feed-forward layer")
fonction protein attention self-attention layer couche vecteur matrice codage one-hot semantic semantique embedding integration plongement token jeton intelligence artificielle apprentissage profond automatique deep learning traitement langage naturel pLM Large Language Model transformeur transformer biochimej
Source : "Transformers Explained Visually"

La pile de décodeurs (à droite) contient plusieurs décodeurs dont chacun contient :

  • 2 couches d'attention multi-têtes
  • 1 couche de rétroaction

La sortie ("output " - en haut à droite) contient :

  • 1 couche linéaire
  • 1 couche Softmax

biochimej Retour haut de page

b. Les couches d'attention du modèle Transformer

Chaque couche d'attention est caractérisée par 3 matrices de poids apprises par le transformeur : poids de la requête ("Query" - Q), poids de la clé ("Key" - K) et poids de la valeur ("Value" - V) (figure ci-dessous).

Le vecteur d'intégration (représentation) de chaque mot de la phrase d'entrée est multiplié par chacune de ces 3 matrices afin de générer 3 vecteurs (de requête, de clé et de valeur, respectivement).

Couche d'auto-attention de l'encodeur ("Encoder Self-Attention layer") Modèle "Transformer"

Couche d'auto-attention du décodeur ("Decoder Self-Attention")

La représentation codée de chaque mot de la phrase d'entrée ("input sequence" - figure ci-contre) est transmise aux 3 matrices de poids d'entrée de la couche d'auto-attention du 1er encodeur, qui génère une nouvelle représentation codée de chaque mot de la phrase d'entrée en y intégrant les scores d'attention de chaque mot.

Le traitement par plusieurs couches d'auto-attention permet d'ajouter de multiples scores d'attention à la représentation de chaque mot.

fonction protein attention self-attention layer couche vecteur matrice codage one-hot semantic semantique embedding integration plongement token jeton intelligence artificielle apprentissage profond automatique deep learning traitement langage naturel pLM Large Language Model transformeur transformer biochimej
Source : "Transformers Explained Visually"

La représentation codée de chaque mot de la phrase cible ("target sequence") est transmise aux 3 matrices de poids de la couche d'auto-attention du 1er décodeur, qui génère une nouvelle représentation codée de chaque mot de la phrase cible en y intégrant les scores d'attention de chaque mot.

Après avoir traversé la couche de normalisation ("Norm Out"), cette représentation améliorée est transmise au vecteur "requête" de la couche d'attention encodeur-décodeur ("Encoder-Decoder Attention") du 1er décodeur.

La normalisation a pour but de modifier les données afin que leur moyenne = 0 et leur écart-type = 1 pour obtenir une distribution standard des données.

Voir la fonction "Normalize()" du module "transforms" de la bibliothèque PyTorch.

Formule du calcul d'attention :fonction protein attention self-attention layer couche vecteur matrice softmax query key value requete cle valeur intelligence artificielle apprentissage profond automatique deep learning traitement langage naturel pLM Large Language Model transformeur transformer biochimej

Les modèles de transformeurs (et les modèles d'apprentissage profond de manière générale), sont des objets complexes du point de vue mathématique et informatique.

Voir par exemple : "The Transformer Model in Equations : precise mathematical definition of the transformer model" Thickstun J.

biochimej Retour haut de page

3. Les modèles de traitement du langage protéique ("protein Language Models") ou pLM

Les premiers modèles de traitement du langage ont permis de développer l'emploi des réseaux neuronaux pour la représentation des caractéristiques des protéines : ils ont ouvert la voie aux modèles de traitement du langage protéique ou pLM.

a. Introduction

Les séquences d'acides aminés sont considérées comme les phrases d'un langage du vivant.

De manière analogue à l'analyse sémantique et syntaxique du langage naturel, certains pLM interprètent les séquences protéiques comme du texte brut et utilisent des techniques d'inférence autorégressive avec des mécanismes d'auto-attention (voir le lexique).

Ces mécanismes, qui analysent notamment le "contexte à plus ou moins longue portée" de chaque acide aminé dans des millions de séquences protéiques ("amino acid level long-short-range interactions"), révèlent des interdépendances "cachées" entre acides aminés qui sont relatives aux relations [séquence-structure] et [structure-fonction] des protéines.

fonction protein amino acid primary sequence acice amine intelligence artificielle apprentissage profond automatique deep learning traitement langage naturel pLM Large Language Model transformeur transformer biochimej

Source : Wang et al. (2025)

  • Les modèles de traitement du langage protéique ou pLM sont construits par pré-apprentissage sur la base d'un très vaste corpus de séquences protéiques (généralement des centaines de millions, voire davantage) non étiquetées (c'est-à-dire, sans indication ("tag") particulière).
  • Les pLM sont affinés pour un type d'analyse particulier avec des données (généralement moins nombreuses) étiquetées (par exemple, une liste de séquences d'anticorps indiquant les cibles spécifiques auxquelles ils se lient).
  • Les premiers modèles (Word2Vec, GloVe, ...) apprenaient l'intégration (plongement) des mots de manière "statique" : chaque mot était représenté d'une manière indépendendante du contexte de la phrase dans lequel il était employé.
  • Les pLM apprennent la sémantique des acides aminés (les "mots") selon leur contexte dans la séquence (la "phrase").

fonction protein structure function amino acid primary sequence acice amine intelligence artificielle apprentissage profond automatique deep learning traitement langage naturel pLM Large Language Model transformeur transformer biochimej

Le modèle BioVec (Asgari & Mofrad, 2015)

  • ProtVec et GeneVec ont été les premiers modèles à appliquer des méthodes de représentation de mots à des séquences de protéines et d'acides nucléiques, respectivement, sous forme de vecteurs (représentation sous forme de "n-gram" (voir la figure 1 - Asgari & Mofrad, 2015).
  • ProtVec traite les triplets d'acides aminés comme des mots, puis applique le modèle "skip-gram" de word2vec (voir le lexique) à l'ensemble de données Swiss-Prot, générant ainsi des représentations des protéines à 100 dimensions.

biochimej Retour haut de page

b. Les pLM basés sur des transformeurs

Les pLM (modèles de traitement du langage protéique) utilisent donc de plus en plus des modèles de type Transformer, BERT ou GPT fortement paramétrés comme architecture de base.

Voir un tableau récapitulatif.

fonction protein structure function amino acid primary sequence acice amine intelligence artificielle apprentissage profond automatique deep learning traitement langage naturel pLM Large Language Model transformeur transformer GPT biochimej

Source : Wang et al. (2025)

biochimej Retour haut de page

c. Caractéristiques de quelques pLM

Voir le tableau 5 Zhang et al. (2024).

Encodeur seul

ESM-2nv ("Evolutionary Scale Modeling") comporte 36 couches, 40 têtes d'attention ("attention heads"), un espace caché de dimension 2560 et contient 3 millards de paramètres.

Décodeur seul

ProtGPT2

Encodeur - décodeur

ProstT5 ("Protein structure-sequence T5") traduit la séquence d'une protéine en sa structure (Heinzinger et al., 2024).

Le modèle ProT-VAE ("Protein Transformer Variational AutoEncoder").

Le modèle S-PLM : pour une protéine donnée, ce pLM prédit son ontologie (termes GO), sa classification selon la réaction enzymatique catalysée et son numéro "Enzyme Commission" (EC), ses structures secondaires et son repliement 3D.

biochimej Retour haut de page

Illustration de ProtGPT2

  • L'entraînement de ce pLM a été effectué avec les séquences UniRef50 (regroupement de séquences d'UniProt présentant 50% d'identité).
  • Les ensembles de données d'apprentissage finaux contiennent respectivement 44,9 et 4,9 millions de séquences pour l'apprentissage et l'évaluation.
  • Le modèle final est une architecture décodeur seul de 36 couches et 738 millions de paramètres.

Dans les modèles autorégressifs, la probabilité d'un acide aminé (wi) dans une séquence dépend uniquement de son contexte, à savoir des acides aminés précédents dans la séquence. La probabilité totale d'une séquence (W) est la combinaison des probabilités individuelles de chaque acide aminé :

Exemple d'entraînement du pLM en minimisant la valeur du log(vraisemblance négative) sur l'ensemble des séquences : le modèle doit apprendre les relations entre un acide aminé et tous les précédents de la séquence pour chaque séquence k de l'ensemble de données D :

biochimej Retour haut de page

Illustration de ProteinBERT (pLM inspiré de l'architecture de BERT)

  • Ce pLM est pré-entraîné sur environ 106 millions de protéines issues de UniRef90.
  • Il est testé sur 9 ensembles de séquences représentant les principales caractéristiques des protéines (structure, modifications post-traductionnelles et peptide signal, propriétés biophysiques (fluorescence et stabilité)).

Les séquences protéiques ont été codées sous forme de séquences de jetons entiers avec 26 jetons uniques représentant :

  • Les 20 acides aminés standards
  • La sélénocystéine (U), un acide aminé indéfini (X) et un autre acide aminé ("OTHER")
  • 3 jetons supplémentaires ("START", "END" et "PAD").

fonction protein structure function amino acid primary sequence acice amine intelligence artificielle apprentissage profond automatique deep learning traitement langage naturel pLM Large Language Model transformeur transformer GPT biochimej

Source : Wang et al. (2025)

Pour chaque séquence protéique, les jetons START et END ont été ajoutés avant et après le dernier acide aminé, respectivement.

Les annotations GO associées à chaque séquence ont été codées sous forme de vecteur binaire de taille fixe (8943) : toutes les entrées sont des 0, à l'exception de celles correspondant à l'annotation GO associée à la protéine.

biochimej Retour haut de page

d. Jeux d'entraînement des pLM

SwissProtCLAP : jeu de données qui comprend 441.000 paires [texte - séquence protéique] (construit à partir des données de la base de données SwissProt).

ProtDescribe : jeu de données qui comprend 553.052 paires [séquences protéiques alignées - descriptions de leurs propriétés] (construit à partir des données de la base de données SwissProt).

UniProtQA : jeu de données (dérivé d'UniProt) qui comprend des protéines et des requêtes textuelles qui englobent 4 propriétés de ces protéines (caractéristiques fonctionnelles, nomenclature officielle, familles de protéines, localisation subcellulaire).

InstructProtein : jeu de données textuelles sur les protéines dérivées du graphe de connaissances construit par la base de données [UniProt/Swiss-Prot] qui englobe une collection complète de 2,8 millions de données.

ProteinLMBench : 1er jeu de référence pour l'évaluation des capacités de compréhension des pLM (944 questions à choix multiples soigneusement sélectionnées couvrant un large éventail de tâches liées aux protéines).

Il existe de très nombreux autres jeux de données de divers types pour les prédictions concernant les acides nucléiques, les données "single-cell", l'annotation - ontologie, ...

biochimej Retour haut de page

e. Exemples d'application des pLM en biologie
Génotype - phénotype Prédiction des conséquences phénotypiques à partir des millions d'effets possibles des variants faux-sens dans le génome humain.
Nouveaux médicaments

Modèles de langage chimique à partir des bibliothèques de composés chimiques pour prédire des petites molécules médicaments capables de cibler des protéines impliquées dans des maladies.

Structure des protéines

Prédiction de la fonction et de la structure des protéines.

Nouvelles protéines

Génération de nouvelles protéines artificielles.

Lutte antivirale Guider l'évolution en laboratoire des variants d'anticorps neutralisant des virus (exemples : Ebola, SARS-CoV-2, ...).
Antibiorésistance

ARG-BERT : pLM qui utilise l'architecture de ProteinBERT pour la prédiction des mécanismes de résistance aux antibiotiques ("Antibiotic Resistance Genes" - ARG).

Single-cell Transformeur scBERT ("single cell BERT") pour annoter avec précision les types de cellules à partir de données "single cell" - scRNAseq.
Réseaux de gènes Prédiction de la dynamique des réseaux de gènes pour la découverte de régulateurs clés de réseaux et de cibles thérapeutiques.
Ontologie GOProFormer : méthode de transformation multimodale pour la prédiction de l'ontologie de la fonction des protéines (annotation).

Evolution des protéines

EVOLVEpro : méthode d'apprentissage permettant d'améliorer in silico l'évolution dirigée des protéines ("directed evolution of proteins") grâce à une combinaison de pLM et de prédicteurs de la fonction des protéines.
Anticorps AntiBERTy : pLM spécifique des anticorps, pré-entraîné avec 558 millions de séquences d'anticorps naturels.
Modifications post-traductionnelles

PTG-PLM : pLM pour la prédiction des sites de glycosylation et de glycation.

pLMSNOSite et LMSuccSite : pLM pour la prédiction des sites de S-nitrosylation et de succinylation des protéines, respectivement

Voir un développement très détaillé : Zhang et al. (2024).

biochimej Retour haut de page

f. pLM et Python

Un très grand nombre de pLM sont écrits en Python, utilisant :

  • Des bibliothèques de gestion des données (Pandas, NumPy, ...).
  • Des bibliothèques logicielles spécifiques pour l'apprentissage profond (Pytorch, TensorFlow, Keras, ...).

Il existe des outils de développement ("Jupyter notebooks" sur un ordinateur personnel, "Google Colab notebooks" sur le "cloud", ...).

Exemple de script ProtGPT2 pour la génération de protéines de novo. ProtGPT2 génère des séquences les plus probables suivant l'acide aminé "M" selon l'entrée.

from transformers import pipeline
protgpt2 = pipeline('text-generation', model="nferruz/ProtGPT2")
# longueur exprimée en jetons ("token"), où chaque jeton a une longueur moyenne de 4 acides aminés.
sequences = protgpt2("<|endoftext|>", max_length=100, do_sample=True, top_k=950, repetition_penalty=1.2, num_return_sequences=10, eos_token_id=0)
for seq in sequences:
print(seq):
{'texte généré': 'MINDLLDISRIISGKMTLDRAEVNLTAIARQVVEEQRQAIEYIREWKTTKGG'}
{'texte généré': 'MQGDSSISSSNRMFTLCKPLTVANETSTLSTTSPTP'}
{'texte généré': 'MSTHVSLENTLASLQATFFSLEARHTALESTQS'}
{'texte généré': 'MVLLSTGPLPILFLGPSLAELNQKYQVVSDTLLRFTNTV\TFNTLKFLGSDS'}

biochimej Retour haut de page

3. Plongement ou incorporation ou intégration ("embedding")

"sentence or word embedding" : selon les sources, traduit en français par "plongement lexical ou sémantique", "incorporation de phrase ou de mot", "intégration de phrase ou de mot".

En traitement du langage naturel, c'est une méthode d'apprentissage qui encode les informations sémantiques (voir le lexique) significatives d'une phrase ou d'un mot sous la forme d'un vecteur de nombres réels (avec une table de correspondance, "lookup table") dans un espace vectoriel pouvant compter des milliers de dimensions.

La comparaison de ces vecteurs permet de mieux évaluer la proximité des mots encodés.

biochimej Retour haut de page

Le modèle de plongement lexical "skip-gram"

  • Un ensemble de mots d'un vocabulaire de taille V est projeté dans un espace vectoriel dont les vecteurs, qui représentent ces mots, ont une taille N petite.
  • La méthode emploie des réseaux de neurones pour construire les vecteurs et les modèles sont entraînés avec des corpus lexicaux extrêmement volumineux. Le but est de prédire un mot à partir de son contexte ou inversement.
  • Le réseau de neurones a une couche d'entrée X et une couche de sortie Y (vecteurs binaires de dimension V) avec une couche cachée à N dimensions intercalée.
  • L'entraînement de ce réseau génère une matrice W de taille (V × N) : à la fin de l'étape d'apprentissage, la matrice W contient les plongements ou incorporations de tous les mots du vocabulaire d'entrée.

fonction protein structure function amino acid primary sequence acice amine intelligence artificielle apprentissage profond automatique deep learning traitement langage naturel pLM Large Language Model transformeur transformer GPT biochimej

Source : "Plongement lexical" (Wikipédia)

 

biochimej Retour haut de page

Illustration du plongement

  • Considérons les intégrations (plongements) à 3 dimensions des mots similaires "apple" = [1,40, 0,02, -0,36] et "orange" = [1,52, 0,16, -0,11]. Les deux intégrations ont une valeur positive en 1ère position.
  • Considérons les intégrations des mots similaires "apple" = [2,24, -0,03, -2,18] et "microsoft" = [-0,62, -0,38, -1,53]. Les deux ont une valeur négative en 3è position.

fonction protein structure function amino acid primary sequence acice amine intelligence artificielle apprentissage profond automatique deep learning traitement langage naturel pLM Large Language Model transformeur transformer GPT biochimej

Source : "Word Embedding Demo : Tutorial"

Le plongement (ou représentation) sous forme de vecteurs permet un très grand nombre de calculs et d'opérations.

Par exemple, l'analogie par arithmétique vectorielle (figure ci-dessous) : le mot "man" est à "king" ce que le mot "woman" est à "king – man + woman" = "queen".

fonction protein structure function amino acid primary sequence acice amine intelligence artificielle apprentissage profond automatique deep learning traitement langage naturel pLM Large Language Model transformeur transformer GPT biochimej

Source : "Word Embedding Demo : Tutorial"

Illustration avec les séquences d'acides aminés

fonction protein structure function amino acid primary sequence acice amine intelligence artificielle apprentissage profond automatique deep learning traitement langage naturel pLM Large Language Model transformeur transformer GPT biochimej

Source : Liam Bai

biochimej Retour haut de page

Exemple de tâche à accomplir

Soit la séquence protéique suivante dont les acides aminés à certaines positions sont masqués : L T [?] A A L Y [?] D C
Demander à l'encodeur de prédire les acides aminés probables à ces positions.

a. L'encodeur traduit une séquence d'acides aminés en un ensemble de vecteurs d'intégration (plongement).

fonction protein amino acid primary sequence acice amine intelligence artificielle apprentissage profond automatique deep learning traitement langage naturel pLM Large Language Model transformeur transformer plongement embedding integration encodage vecteur biochimej

Figure adaptée de : "How to represent a protein sequence" (L. Bai)

b. Pour générer un vecteur décrivant la séquence entière, on moyenne les valeurs des vecteurs des acides aminés de cette séquence.

fonction protein amino acid primary sequence acice amine intelligence artificielle apprentissage profond automatique deep learning traitement langage naturel pLM Large Language Model transformeur transformer plongement embedding integration encodage vecteur biochimej

Figure adaptée de : "How to represent a protein sequence" (L. Bai)

c. Chaque séquence protéique connue constitue un exemple d'apprentissage étiqueté (apprentissage auto-supervisé). Si le modèle prédit efficacement un acide aminé masqué, il apprend des informations significatives sur la séquence de la protéine.

fonction protein amino acid primary sequence acice amine intelligence artificielle apprentissage profond automatique deep learning traitement langage naturel pLM Large Language Model transformeur transformer plongement embedding integration encodage vecteur biochimej

Figure adaptée de : "How to represent a protein sequence" (L. Bai)

Retour haut de page

5. Génération de protéines artificielles

Les pLM sont des outils trés performants pour générer artificiellement des protéines fonctionnelles aux propriétés inédites : c'est un moyen puissant de trouver des solutions thérapeutiques et environnementales.

a. Exemples de programmes de génération de protéines artificielles

ProGen

pLM entraîné à prédire le prochain acide aminé avec plus de 280 millions de séquences protéiques issues de milliers de familles de protéines PFAM. Des protéines artificielles générées par ce pLM liées à 5 familles distinctes de lysozymes antibactériens ont été ainsi générées et leurs propriétés structurales et enzymatiques analysées :

  • Elles ont des activités catalytiques similaires aux lysozymes naturels malgré un taux d'identité de seulement 31%.
  • Elles adoptent le même repliement et conservent la même position des résidus d'acides aminés du site actif des protéines naturelles.

ProtGPT2

  • ProtGPT2 (Ferruz et al., 2022) est un modèle "Transformer" uniquement décodeur, basé sur l'architecture "GPT2 Transformer".
  • Il contient 36 couches avec une dimensionnalité de modèle de 1280, pour un total de 738 millions de paramètres.
  • C'est un pLM non supervisé et pré-entraîné sur la base de données de protéines UniRef50 (séquences brutes sans en-têtes FASTA).

Retour haut de page

b. Génération de protéines artificielles et évolution

La capacité des pLM à générer des protéines artificielles raccourcit de manière spectaculaire l'évolution extrêmement lente des séquences des protéines par pression de sélection naturelle.

Le programme de prédiction - génération de structures de protéines de novo ESM3 ("Evolutionary Scale Modeling") est un multi-transformeur qui raisonne conjointement sur la séquence, la structure et la fonction ddes protéines.

Ce programme est entraîné avec 3,15 milliards de séquences protéiques et 236 millions de structures, soit 98 milliards de paramètres.

Source : EvolutionaryScale

  • Aller au site ESM Metagenomic Atlas : atlas ouvert de preque 800 millions de structures protéiques prédites.
  • F. Arnold - Prix ??Nobel de chimie 2018 "for the directed evolution of enzymes".

biochimej Retour haut de page

Le programme ESM3 a généré une nouvelle protéine fluorescente verte ("Green Fluorescent Protein" - GFP), dénommée esmGFP, qui possède 58 % de similarité avec la plus proche GFP "naturelle" similaire (Hayes et al., 2025).

La génération par apprentissage profond de cette structure en quelques heures revient (selon les auteurs) à simuler 500 millions d'années d'évolution.

fonction protein amino acid primary sequence acice amine intelligence artificielle apprentissage profond automatique deep learning traitement langage naturel pLM Large Language Model transformeur transformer plongement embedding integration encodage vecteur biochimej

Source : EvolutionaryScale

Retour haut de page

6. La prédiction de la structure 3D des protéines

Les algorithmes d'apprentissage automatique pour la prédiction de la fonction des protéines incluent généralement 4 étapes :

  • L'extraction de caractéristiques des séquences d'acides aminés (notamment composition, fréquence, position, ordre et propriétés physico-chimiques, existence de domaines structuraux).
  • La sélection de caractéristiques correspond à la réduction du "bruit" et de la redondance des caractéristiques extraites précédemment afin d'augmenter l'efficacité de l'étape suivante d'entraînement du modèle et, en conséquence, la précision de la prédiction de ce modèle.
  • L'étape d'entraînement du modèle est basée sur l'ensemble des caractéristiques précédemment sélectionnées. Elle utilise des algorithmes d'apprentissage automatique spécifiques (exemples : algorithme génétique, méthode "K-Nearest Neighbor" (KNN), méthode "Support Vector Machine" (SVM)) pour construire le modèle de classification.
  • La prédiction de classification introduit les caractéristiques de la séquence à tester dans le modèle lors de la phase de formation. Elle utilise le modèle pour déterminer si la séquence à tester appartient à la même classe qu'une séquence protéique avec une fonction spécifique.

biochimej Retour haut de page

a. Démarche générale de prédiction de la structure 3D des protéines

Voir un développement sur la comparaison et prédiction des structures par apprentissage profond.

Etapes générales de la démarche de prédiction de la structure des protéines sans "modèle" ("template-free protein structure prediction pipeline") :

  • (i) Génération d'alignements de séquences multiples ("Multiple Sequence Alignment" - MSA).
  • (ii) Prédiction de cartes de contacts ("contact maps"), de distogrammes ou de distances à valeur réelle.
  • (iii) Assemblage de [structures/fragments].
  • (iv) Assurance qualité & affinement des structures prédites ("refinement").

fonction protein structure function amino acid primary sequence acice amine intelligence artificielle apprentissage profond automatique deep learning traitement langage naturel alphafold rosetta transformeur transformer GPT biochimej

Source : Pakhrin et al. (2022)

biochimej Retour haut de page

b. Les programmes Alphafold & Rosetta : prix Nobel de chimie 2024

Conceptuellement, AlphaFold était à l'origine un réseau de neurones pour prédire les distances probables entre les paires d'acides aminés et les angles de chaque liaison peptidique reliant les résidus d'acides aminés.

Ces 2 prédictions ont ensuite été intégrées à un score avec le "score2" du logiciel de modélisation Rosetta.

AlphaFold utilise la distribution entière des distances 2 à 2 entre résidus d'acides aminés comme une fonction potentielle statistique (spécifique de la protéine) qui est directement minimisée par la descente de gradient pour obtenir le repliement de la protéine.

Le programme AlphaFold est au coeur de la base de données (système de prédiction) AlphaFold DB.

  • AlphaFold prédit la structure de plus de 98% des protéines du protéome humain avec une très haute précision.
  • AlphaFold DB (DeepMind - Uniprot) contient plus de 200 millions de structures de protéines issues de centaines de milliers d'espèces.

Le prix Nobel de Chimie 2024 a été attribué à D. Baker "for computational protein design" (programme Rosetta) et à D. Hassabis & J. Jumper "for protein structure prediction" (programme AlphaFold).

7. Liens Internet et références bibliographiques

pLM et transformeurs

pLM de UNIPROT

ProtNLM ("Protein Natural Language Model") de UNIPROT

Transformers : architecture et code.

Listes de transformeurs

The Illustrated Transformer

"BERT détaillé"

 

pLM de UNIPROT

ProtNLM

Transformers

Voir la liste

Aller au site

Aller au site

Plongement - intégration - incorporation ("embedding")

The Illustrated Word2vec

Protvec : Amino Acid Embedding Representation for Machine Learning Features

bio_embeddings : python package & pipeline for embedding generation

bio-embeddings library 0.2.2 (Python)

Application en ligne : "Incorporations de mots à l'aide d'un modèle Keras simple" - TensorFlow (Google)

Exercices pratique "embedding"

 

Word2vec

Protvec

package

library

Application en ligne

Exercices en ligne

BioNeMo (NVIDIA)

Fonctions d'activation

BioNeMo

Applet Java

Lin et al. (2002) "Amino acid encoding schemes from protein structure alignments: multi-dimensional vectors to describe residue types" J. Theor. Biol. 216, 361 - 365

Mei et al. (2005) "A new set of amino acid descriptors and its application in peptide QSARs" Biopolymers 80, 775 - 786

Article

Article

Mikolov et al. (2013) "Efficient Estimation of Word Representations in Vector Space" arXiv:1301.3781

Asgari & Mofrad (2015) "Continuous Distributed Representation of Biological Sequences for Deep Proteomics and Genomics" PLoS One 10, e0141287

Article

Article

Transformer : "Nous proposons une nouvelle architecture de réseau simple, le Transformer, basée uniquement sur des mécanismes d'attention, se passant entièrement de récurrence et de convolutions."
Vaswani et al. (2017) "Attention Is All You Need" arXiv:1706.03762

Article

ElAbd et al. (2020) "Amino acid encoding for deep learning applications" BMC Bioinformatics 21, 235

Colin Raffel et al. (2020) "Exploring the Limits of Transfer Learning with a Unified Text-to-Text Transformer" J. Mach. Learn. Res 21, 1 - 67

Article

Article

Jumper et al. (2021) "Highly accurate protein structure prediction with AlphaFold" Nature 596, 583 - 589

Rives et al. (2021) "Biological structure and function emerge from scaling unsupervised learning to 250 million protein sequences" Proc. Natl. Acad. Sci. USA 118, e2016239118

Dallago et al. (2021) "Learned Embeddings from Deep Learning to Visualize and Predict Protein Sets" Curr. Protocols in Bioinformatics 10.1002/cpz1.113

Article

Article

Article

Baek et al. (2022) "Accurate prediction of protein structures and interactions using a 3-track neural network" Science 373, 871 - 876

Elnaggar et al. (2022) "ProtTrans: Toward Understanding the Language of Life Through Self-Supervised Learning" IEEE Trans. Pattern Anal. Mach. Intell. 44, 7112 - 7127

Pakhrin et al. (2022) "Deep Learning-Based Advances in Protein Structure Prediction" Int. J. Mol. Sci. 22, 5553

Elnaggar et al. (2022) "ProtTrans: Toward Understanding the Language of Life Through Self-Supervised Learning" IEEE Trans. Pattern Anal. Mach. Intell. 44, 7112 - 7127

Bandyopadhyay et al. (2022) "Interactive Visualizations of Word Embeddings for K-12 Students" EAAI-22

Ferruz et al. (2022) "ProtGPT2 is a deep unsupervised language model for protein design" Nat. Commun. 13, 4348

Brandes et al. (2022) "ProteinBERT: a universal deep-learning model of protein sequence and function" Bioinformatics 38, 2102 - 2110

Article

Article

Article

Article

Article

Article

Article

Kaminski et al. (2023) "pLM-BLAST: distant homology detection based on direct comparison of sequence representations from protein language models" Bioinformatics 39, btad579

Madani et al. (2023) "Large language models generate functional protein sequences across diverse families" Nat. Biotechnol. 41, 1099 - 1106

Lin et al. (2023) "Evolutionary-scale prediction of atomic level protein structure with a language model" Science 379, 6637

Pokharel et al. (2023) "Integrating Embeddings from Multiple Protein Language Models to Improve Protein O-GlcNAc Site Prediction" Int. J. Mol. Sci. 24, 16000

Lin et al. (2023) "Evolutionary-scale prediction of atomic-level protein structure with a language model" Science 379, 1123 - 1130

Elnaggar et al. (2023) "Ankh : optimized protein language model unlocks general-purpose modelling" bioRxiv doi: 10.1101/2023.01.16.524265

Article

Article

Article

Article

Article

Article

Heinzinger et al. (2024) "Bilingual language model for protein sequence and structure" NAR Genom. Bioinform. 6, lqae150

Zhang et al. (2024) "Scientific Large Language Models: A Survey on Biological & Chemical Domains" arXiv:2401.14656

Article

Article

Hayes et al. (2025) "Simulating 500 million years of evolution with a language model" Science 387, 850 - 858

Wang et al. (2025) "A Comprehensive Review of Protein Language Models" arXiv, 2502.06881v1

Article

Article

Retour haut de page