PEFT (Parameter-Efficient Fine-Tuning) (FR)
L' ajustement fin économe en paramètres (en anglais Parameter-Efficient Fine-Tuning, PEFT) est un ensemble de méthodes permettant d'adapter de grands modèles pré-entraînés, tels que les grands modèles de langage (LLM), à des tâches spécifiques avec des coûts de calcul et de ressources minimaux. Contrairement à l' ajustement fin complet (full fine-tuning) traditionnel, qui nécessite la mise à jour de tous les paramètres du modèle, les méthodes PEFT se concentrent sur la modification d'une petite partie seulement des poids (moins de 1 à 5 % du total), laissant la majeure partie du modèle inchangée (« gelée »)[1].
Cette approche permet de réduire considérablement les besoins en mémoire, en espace de stockage et en temps d'entraînement, rendant le processus d'adaptation de modèles fondamentaux puissants plus accessible et plus résistant au problème de l'oubli catastrophique[2].
Problèmes de l'ajustement fin complet
L'ajustement fin complet traditionnel, qui met à jour tous les paramètres du modèle, se heurte à plusieurs problèmes critiques qui ont catalysé le développement du PEFT :
- Coûts de calcul élevés : La mise à jour de centaines de milliards de paramètres nécessite une puissance de calcul énorme (GPU/TPU haute performance) et une grande quantité de mémoire vidéo (VRAM), ce qui rend le processus coûteux et inaccessible pour de nombreux chercheurs.
- Inefficacité du stockage : Pour chaque nouvelle tâche, il est nécessaire de stocker une copie complète du modèle, pesant plusieurs gigaoctets, ce qui entraîne une croissance exponentielle des besoins en espace disque.
- Oubli catastrophique (Catastrophic Forgetting) : En s'adaptant à de nouvelles données, le modèle « oublie » les connaissances générales acquises lors du pré-entraînement, ce qui dégrade ses performances sur d'autres tâches.
- Risque de surapprentissage (Overfitting) : Sur de petits ensembles de données d'ajustement fin, les modèles comptant des milliards de paramètres ont tendance à « mémoriser » les exemples d'entraînement au lieu d'apprendre des motifs généralisables[2].
Taxonomie des méthodes PEFT
Les méthodes PEFT peuvent être classées selon la manière dont elles modifient les paramètres du modèle. Il existe trois catégories principales : additives, sélectives et de reparamétrisation[3].
Méthodes additives
Ces méthodes gèlent tous les poids d'origine du modèle et ajoutent de nouveaux modules entraînables de petite taille.
- Adapters (Adaptateurs) : La plus ancienne méthode additive. De petits modules de réseau de neurones avec une architecture en « goulot d'étranglement » sont insérés entre les couches du transformeur. Seuls les poids de ces adaptateurs sont entraînés[4].
- Méthodes basées sur les prompts souples (Soft Prompts) : Au lieu de modifier les poids du modèle, ces méthodes ajoutent aux données d'entrée des vecteurs entraînables (« jetons virtuels ») qui guident le comportement du modèle. Les variantes clés sont :
- Prompt Tuning : Ajoute des vecteurs entraînables uniquement aux embeddings d'entrée.
- Prefix-Tuning : Ajoute des préfixes vectoriels entraînables aux états cachés de chaque couche du mécanisme d'attention, ce qui permet un contrôle plus fin[5].
- P-Tuning v2 : Une généralisation de l'idée du Prefix-Tuning, qui applique des prompts entraînables à toutes les couches du modèle, atteignant des performances comparables à celles de l'ajustement fin complet[6].
Méthodes sélectives
Ces méthodes n'ajoutent pas de nouveaux paramètres, mais sélectionnent et ajustent un petit sous-ensemble de paramètres existants.
- BitFit : Une méthode extrêmement économe qui n'ajuste que les vecteurs de biais (bias terms) et les paramètres des couches de normalisation, mettant à jour moins de 0,1 % du nombre total de paramètres.
- Élagage différentiel (Diff Pruning) : Utilise un masque entraînable pour déterminer dynamiquement quels poids doivent être mis à jour pendant le processus d'entraînement[3].
Méthodes de reparamétrisation
Cette catégorie repose sur l'hypothèse que les changements de poids pour l'adaptation du modèle ont un « rang intrinsèque » faible. Au lieu de mettre à jour les matrices de poids de rang plein, ces méthodes mettent à jour leur représentation de bas rang.
- LoRA (Low-Rank Adaptation) : La méthode PEFT la plus populaire à ce jour. Elle suppose que la mise à jour de la matrice de poids `ΔW` peut être approximée par le produit de deux matrices de bas rang : `ΔW = BA`. Pendant l'ajustement fin, la matrice d'origine `W` est gelée, et seules les matrices `A` et `B` sont entraînées[7].
- QLoRA : Combine LoRA avec des techniques de quantification pour réduire encore davantage les besoins en mémoire, permettant d'ajuster des modèles de 65 milliards de paramètres sur un seul GPU grand public[8].
Comparaison des performances et des ressources
Les méthodes PEFT permettent d'atteindre des performances comparables à l'ajustement fin complet, tout en réduisant radicalement les coûts.
| Modèle | Méthode | Paramètres entraînables (%) | Résultat sur le benchmark (Avg. Accuracy) | Source |
|---|---|---|---|---|
| BERT-Large | Ajustement fin complet | 100% | 80.4 (GLUE) | [4] |
| BERT-Large | Adapters | 3.6% | 80.0 (GLUE) | [4] |
| LLaMA-7B | LoRA | 0.83% | 74.7% | [9] |
| LLaMA-7B | DoRA (variante de LoRA) | 0.84% | 78.1% | [9] |
Principaux avantages de PEFT en matière d'économie de ressources :
- Mémoire GPU (VRAM) : Pour le modèle LLaMA 65B, l'ajustement fin complet nécessite théoriquement plus de 780 Go de VRAM, tandis que QLoRA permet de l'ajuster sur un GPU avec moins de 48 Go de VRAM[8].
- Espace de stockage : Les checkpoints sauvegardés après un PEFT occupent des mégaoctets plutôt que des gigaoctets. Cela permet de stocker des centaines d'« adaptateurs » pour différentes tâches dans l'espace qu'occuperait un seul modèle entièrement ajusté.
Domaines d'application
Initialement développées pour le NLP, les méthodes PEFT ont été adaptées avec succès à un large éventail de tâches :
- Vision par ordinateur (CV) et modèles multimodaux (VLM) : Adaptation de modèles tels que le Vision Transformer (ViT) et le Segment Anything Model (SAM) pour des tâches de segmentation d'images, y compris dans le domaine biomédical.
- Génération et analyse de code : Ajustement de LLM aux spécificités de projets logiciels, d'API internes ou de bases de code.
- Modèles génératifs : « Stylisation » de modèles de génération d'images comme Stable Diffusion à l'aide d'adaptateurs LoRA (technique Dreambooth).
- Synthèse vocale : Adaptation de modèles pour générer de la parole avec une voix, une intonation ou une coloration émotionnelle spécifique.
Liens externes
- Dépôt de la bibliothèque PEFT sur GitHub
- Documentation officielle de la bibliothèque PEFT par Hugging Face
Bibliographie
- Hu, E.J. et al. (2021). LoRA: Low-Rank Adaptation of Large Language Models. arXiv:2106.09685.
- Dettmers, T. et al. (2023). QLoRA: Efficient Finetuning of Quantized LLMs. arXiv:2305.14314.
- Houlsby, N. et al. (2019). Parameter-Efficient Transfer Learning for NLP. ICML 2019.
- Li, X.L.; Liang, P. (2021). Prefix-Tuning: Optimizing Continuous Prompts for Generation. arXiv:2101.00190.
- Liu, X. et al. (2022). P-Tuning v2: Prompt Tuning Can Be Comparable to Fine-tuning Universally Across Scales and Tasks. arXiv:2110.07602.
- Ben Zaken, E.; Ravfogel, S.; Goldberg, Y. (2021). BitFit: Simple Parameter-Efficient Fine-Tuning for Transformer-Based Masked Language Models. arXiv:2106.10199.
- Guo, D.; Rush, A.M.; Kim, Y. (2020). Parameter-Efficient Transfer Learning with Diff Pruning. arXiv:2012.07463.
- Jiang, Z. et al. (2024). MoRA: High-Rank Updating for Parameter-Efficient Fine-Tuning. arXiv:2405.12130.
- Mao, K. et al. (2024). A Survey on LoRA of Large Language Models. arXiv:2407.11046.
- Chen, S. et al. (2024). Parameter-Efficient Fine Tuning: A Comprehensive Analysis Across Applications. arXiv:2404.13506.
- Zhang, J. et al. (2025). Parameter-Efficient Fine-Tuning for Foundation Models. arXiv:2501.13787.
Références
- ↑ «Parameter-Efficient Fine-Tuning for Foundation Models». arXiv:2501.13787. [1]
- ↑ 2.0 2.1 «5 Problems Encountered Fine-Tuning LLMs with Solutions». Machine Learning Mastery. [2]
- ↑ 3.0 3.1 «PEFT: Parameter-Efficient Fine-Tuning Methods for LLMs». Hugging Face Blog. [3]
- ↑ 4.0 4.1 4.2 Houlsby, N., et al. «Parameter-Efficient Transfer Learning for NLP». Proceedings of the 36th International Conference on Machine Learning. [4]
- ↑ Li, X.L., Liang, P. «Prefix-Tuning: Optimizing Continuous Prompts for Generation». arXiv:2101.00190. [5]
- ↑ Liu, X., et al. «P-Tuning v2: Prompt Tuning Can Be Comparable to Fine-tuning Universally Across Scales and Tasks». arXiv:2110.07602. [6]
- ↑ Hu, E.J., et al. «LoRA: Low-Rank Adaptation of Large Language Models». arXiv:2106.09685. [7]
- ↑ 8.0 8.1 Dettmers, T., et al. «QLoRA: Efficient Finetuning of Quantized LLMs». arXiv:2305.14314. [8]
- ↑ 9.0 9.1 «Parameter Efficient Fine Tuning: A Comprehensive Analysis Across Applications». arXiv:2404.13506. [9]