P

Adapter Tuning : Définition et Exemples

Technique de fine-tuning efficiente qui consiste à insérer de petits modules entraînables (appelés adapters) dans un modèle de langage pré-entraîné, sans modifier ses poids originaux.

Définition complète

L'Adapter Tuning est une méthode d'adaptation de modèles de langage qui repose sur l'insertion de petits réseaux de neurones supplémentaires — les adapters — entre les couches existantes d'un modèle pré-entraîné. Lors de l'entraînement, seuls les paramètres de ces adapters sont mis à jour, tandis que les poids du modèle original restent gelés. Cela permet d'adapter un modèle à une tâche spécifique en n'entraînant qu'une fraction infime de ses paramètres totaux.

Cette approche a été popularisée par les travaux de Houlsby et al. (2019) chez Google Research. L'idée centrale est qu'un modèle massif comme GPT ou BERT contient déjà une représentation riche du langage, et qu'il suffit d'ajouter une couche d'adaptation légère pour le spécialiser. Chaque adapter est typiquement composé d'une projection vers une dimension réduite (bottleneck), d'une fonction d'activation non-linéaire, puis d'une projection retour vers la dimension originale.

L'avantage principal de l'Adapter Tuning est son efficacité en termes de ressources. Là où un fine-tuning classique nécessite de stocker une copie complète du modèle pour chaque tâche, l'Adapter Tuning ne requiert que le stockage des petits modules ajoutés, soit généralement moins de 5 % des paramètres du modèle. Il devient ainsi possible de déployer un seul modèle de base avec plusieurs jeux d'adapters interchangeables selon la tâche.

L'Adapter Tuning fait partie d'une famille plus large de techniques appelées PEFT (Parameter-Efficient Fine-Tuning), qui inclut également LoRA, Prefix Tuning et Prompt Tuning. Ces méthodes répondent toutes au même défi : comment personnaliser des modèles de plus en plus grands sans exploser les coûts de calcul et de stockage.

Étymologie

Le terme "adapter" provient de l'anglais et désigne un dispositif permettant de rendre compatible un système avec un usage différent de celui pour lequel il a été conçu. En apprentissage automatique, le concept a été emprunté pour décrire ces modules légers qui "adaptent" un modèle généraliste à une tâche spécifique. Le terme "tuning" (réglage) fait référence au processus d'ajustement des paramètres.

Exemples concrets

Adapter un modèle de langage généraliste pour la classification de sentiments dans des avis clients, sans modifier le modèle de base

Tu es un modèle spécialisé dans l'analyse de sentiments grâce à un adapter entraîné sur des avis clients français. Classe le sentiment de ce texte comme positif, négatif ou neutre : "Le produit est correct mais la livraison a été catastrophique."

Utiliser plusieurs adapters sur un même modèle de base pour gérer différentes langues ou domaines métier

Active l'adapter 'juridique-fr' pour analyser ce contrat. Identifie les clauses potentiellement abusives et explique-les en langage courant.

Expliquer à une équipe technique pourquoi choisir l'Adapter Tuning plutôt qu'un fine-tuning complet pour un projet avec des ressources limitées

Usage pratique

En prompt engineering, comprendre l'Adapter Tuning permet de mieux choisir sa stratégie d'adaptation de modèle. Si vous devez spécialiser un LLM sur un domaine précis (médical, juridique, technique) avec un budget limité, l'Adapter Tuning est souvent le meilleur compromis entre performance et coût. Concrètement, des bibliothèques comme Hugging Face PEFT permettent d'implémenter cette technique en quelques lignes de code sur des modèles open source.

Concepts liés

LoRA (Low-Rank Adaptation)Fine-TuningPEFT (Parameter-Efficient Fine-Tuning)Transfer Learning

FAQ

Quelle est la différence entre l'Adapter Tuning et LoRA ?
L'Adapter Tuning insère de nouveaux modules (couches supplémentaires) entre les couches existantes du modèle, tandis que LoRA modifie les poids existants via des matrices de faible rang sans ajouter de nouvelles couches. LoRA est généralement plus léger en inférence car il n'ajoute pas de latence, alors que les adapters introduisent des calculs supplémentaires à chaque couche.
Combien de paramètres sont entraînés avec l'Adapter Tuning ?
Typiquement entre 1 % et 5 % des paramètres totaux du modèle, selon la taille du bottleneck choisi pour les adapters. Par exemple, sur un modèle de 7 milliards de paramètres, on n'entraîne que 70 à 350 millions de paramètres, ce qui réduit considérablement les besoins en mémoire GPU et en temps de calcul.
Peut-on utiliser l'Adapter Tuning avec des modèles comme GPT-4 ou Claude ?
Non, l'Adapter Tuning nécessite un accès aux couches internes du modèle, ce qui n'est possible qu'avec des modèles open source (LLaMA, Mistral, etc.). Pour les modèles propriétaires comme GPT-4 ou Claude, on utilise plutôt le fine-tuning via API quand il est proposé, ou des techniques de prompt engineering pour adapter le comportement du modèle sans modifier ses poids.

Voir aussi

Recevez de nouveaux prompts chaque semaine

Rejoignez notre newsletter.