Chapitre 1 : Ajustement Fin Complet
Quand Utiliser l'Ajustement Fin Complet
- Grand décalage de domaine par rapport aux données de pré-entraînement
- Calcul et données suffisants disponibles
- Performance maximale requise
Exigences de Calcul
| Taille du Modèle | VRAM (FP16) | VRAM (LoRA) |
|---|---|---|
| 7B | 56GB | 16GB |
| 13B | 104GB | 32GB |
| 70B | 560GB | 80GB |
Boucle d'Entraînement
from transformers import Trainer, TrainingArguments
training_args = TrainingArguments(
output_dir="./results",
num_train_epochs=3,
per_device_train_batch_size=4,
gradient_accumulation_steps=8,
learning_rate=2e-5,
warmup_steps=100,
fp16=True,
)
trainer = Trainer(
model=model,
args=training_args,
train_dataset=train_dataset,
eval_dataset=eval_dataset,
)
trainer.train()
Oubli Catastrophique
L'ajustement fin complet peut amener le modèle à oublier les connaissances pré-entraînées. Atténuations :
- Taux d'apprentissage plus bas
- Entraînement plus court
- Régularisation
- Buffers de relecture