Aller au contenu
IA & Machine Learning

Fine-Tuning

Le processus d'entraînement supplémentaire d'un modèle pré-entraîné sur des données spécifiques pour améliorer les performances.

Également appelé: Affinage, Adaptation de domaine, Entraînement spécifique

Définition

Le fine-tuning est le processus de prise d’un modèle de langage pré-entraîné et de son entraînement supplémentaire sur un ensemble de données plus petit et spécifique à une tâche. Cela adapte les capacités générales du modèle pour exceller dans des tâches ou domaines spécifiques : comme l’analyse de documents juridiques, le conseil fiscal ou le diagnostic médical, sans entraîner depuis zéro.

Pourquoi c’est important

Le fine-tuning comble le fossé entre les modèles généralistes et les applications spécialisées :

  • Expertise de domaine: les modèles apprennent la terminologie et les modèles spécifiques au secteur
  • Optimisation de tâche: améliore les performances sur des workflows spécifiques (classification, extraction, résumé)
  • Efficacité: nécessite beaucoup moins de données et de calcul que le pré-entraînement
  • Personnalisation: aligne le comportement du modèle aux exigences organisationnelles
  • Réduction des hallucinations: l’entraînement axé sur le domaine améliore l’exactitude factuelle

Le fine-tuning fait souvent la différence entre une démo capable et un système prêt pour la production.

Comment ça fonctionne

┌────────────────────────────────────────────────────────────┐
│                   PIPELINE DE FINE-TUNING                  │
├────────────────────────────────────────────────────────────┤
│                                                            │
│  ┌──────────────────────┐    ┌──────────────────────┐      │
│  │   MODÈLE PRÉ-ENTRAÎNÉ│    │  DATASET DOMAINE     │      │
│  │   (GPT, LLaMA, etc.) │    │  (1K-100K exemples)  │      │
│  │   Milliards de params│    │  Données spécifiques │      │
│  └──────────┬───────────┘    └──────────┬───────────┘      │
│             │                           │                  │
│             └───────────┬───────────────┘                  │
│                         ▼                                  │
│  ┌────────────────────────────────────────────────────┐    │
│  │              PROCESSUS D'ENTRAÎNEMENT              │    │
│  │  • Faible learning rate (éviter oubli catastroph.) │    │
│  │  • Peu d'epochs (1-5 typiquement)                  │    │
│  │  • Optionnel: LoRA, QLoRA (efficace param.)        │    │
│  └────────────────────────────────────────────────────┘    │
│                         │                                  │
│                         ▼                                  │
│  ┌────────────────────────────────────────────────────┐    │
│  │              MODÈLE FINE-TUNÉ                      │    │
│  │  Connaissances générales + Expertise domaine       │    │
│  │  Optimisé pour tâche/style spécifique              │    │
│  └────────────────────────────────────────────────────┘    │
└────────────────────────────────────────────────────────────┘

Approches de fine-tuning :

  1. Fine-tuning complet: met à jour tous les paramètres du modèle (coûteux, puissant)
  2. LoRA/QLoRA: entraîne de petites couches d’adaptation, gèle le modèle de base
  3. Instruction tuning: entraîne sur des paires instruction-réponse
  4. RLHF: utilise le feedback humain pour aligner le comportement du modèle
  5. Prefix tuning: apprend des soft prompts spécifiques à la tâche

Questions fréquentes

Q : Quand fine-tuner vs. utiliser le prompt engineering ?

R : Commencez par le prompt engineering. C’est plus rapide et moins cher. Fine-tunez quand : vous avez besoin d’un formatage de sortie cohérent, avez une terminologie spécifique au domaine, nécessitez une meilleure exactitude que le prompting, ou voulez réduire l’utilisation de tokens.

Q : De combien de données ai-je besoin pour le fine-tuning ?

R : Typiquement 500-10 000 exemples de haute qualité. La qualité compte plus que la quantité. Pour LoRA, même 100-500 exemples peuvent montrer une amélioration sur des tâches spécifiques.

Q : Qu’est-ce que l’oubli catastrophique ?

R : Quand un modèle perd ses capacités originales en apprenant de nouvelles. Évité en utilisant de faibles learning rates, des epochs limitées et des méthodes efficaces en paramètres comme LoRA.

Q : Le fine-tuning est-il coûteux ?

R : Le fine-tuning complet de grands modèles nécessite des ressources GPU significatives. Les méthodes efficaces (LoRA, QLoRA) réduisent les coûts de 10-100x, rendant le fine-tuning accessible sur du matériel grand public.

Termes associés

  • LLM: modèles de base qui sont fine-tunés
  • LoRA: méthode de fine-tuning efficace en paramètres
  • Transfer Learning: concept plus large que le fine-tuning implémente
  • Instruction Tuning: approche spécifique de fine-tuning

Références

Howard & Ruder (2018), “Universal Language Model Fine-tuning for Text Classification”, ACL. [5 000+ citations]

Hu et al. (2022), “LoRA: Low-Rank Adaptation of Large Language Models”, ICLR. [4 000+ citations]

Wei et al. (2022), “Finetuned Language Models Are Zero-Shot Learners”, ICLR. [3 500+ citations]

Ouyang et al. (2022), “Training language models to follow instructions with human feedback”, NeurIPS. [6 000+ citations]

References

Howard & Ruder (2018), “Universal Language Model Fine-tuning for Text Classification”, ACL. [5,000+ citations]

Hu et al. (2022), “LoRA: Low-Rank Adaptation of Large Language Models”, ICLR. [4,000+ citations]

Wei et al. (2022), “Finetuned Language Models Are Zero-Shot Learners”, ICLR. [3,500+ citations]

Ouyang et al. (2022), “Training language models to follow instructions with human feedback”, NeurIPS. [6,000+ citations]