Transfer Learning
L’apprentissage par transfert réutilise un modèle entraîné pour une tâche comme point de départ pour une autre, de sorte que la nouvelle tâche nécessite beaucoup moins de données étiquetées et de temps d’entraînement.
Le transfert d’apprentissage est une technique d’apprentissage automatique qui réutilise un modèle entraîné sur une tâche comme point de départ pour une tâche connexe. Entraîner un réseau neuronal à partir de poids aléatoires nécessite de grands jeux de données annotés et une puissance de calcul importante, tandis qu’un modèle préentraîné sur des millions d’images a déjà appris les caractéristiques visuelles dont la plupart des nouvelles tâches ont besoin. En partant de ces poids du modèle appris, un nouveau modèle atteint une grande précision avec beaucoup moins d’images annotées et en une fraction du temps d’entraînement, raison pour laquelle le transfert d’apprentissage est la méthode par défaut pour créer des modèles de vision par ordinateur destinés à des tâches personnalisées.
Fonctionnement de l’apprentissage par transfert#
Le transfert d’apprentissage fonctionne parce que les réseaux profonds apprennent des caractéristiques hiérarchisées. Les premières couches d’un backbone réagissent aux contours, aux couleurs et aux textures présents dans presque toutes les images, tandis que les couches plus profondes les combinent en parties d’objets et en concepts propres à la tâche. Une étude de Yosinski et al. a mesuré cette progression dans les réseaux convolutifs : elle a montré que les caractéristiques de la première couche sont générales, que la transférabilité diminue dans les couches supérieures à mesure que les caractéristiques se spécialisent pour la tâche d’origine, et que les caractéristiques transférées améliorent la capacité de généralisation même après un ajustement fin sur le nouveau jeu de données.
Le processus se déroule en deux phases :
- Préentraînement : Un modèle apprend des représentations générales sur un grand jeu de données de référence comme ImageNet, COCO ou Objects365, produisant ainsi un ensemble de poids préentraînés.
- Adaptation : Les couches de sortie, comme un classificateur ou une tête de détection, sont remplacées ou redimensionnées pour les nouvelles classes, puis entraînées sur le jeu de données cible. Lors de l’extraction de caractéristiques, les couches préentraînées restent gelées et seules les nouvelles couches apprennent. Lors de l’ajustement fin, certaines ou toutes les couches préentraînées sont également mises à jour, généralement avec un taux d’apprentissage plus faible.
La quantité de couches du réseau à réentraîner dépend de deux questions : quelle quantité de données annotées possède la nouvelle tâche, et à quel point elle ressemble aux données de préentraînement. Les notes du cours CS231n de Stanford présentent les quatre cas qui en résultent :
Transfert d’apprentissage pour la détection d’objets#
Les modèles de détection sont presque toujours entraînés par transfert : les points de contrôle officiels YOLO26 ont été préentraînés sur Objects365 pendant 150 époques avant leur affinage sur COCO, comme l’indique la recette d’entraînement YOLO26. Appeler train() sur un point de contrôle chargé avec un nouveau jeu de données transfère tous les poids compatibles, réinitialise les lignes de sortie propres aux classes si leur nombre change tout en conservant celles dont les noms correspondent, et accepte un argument freeze qui maintient fixes les premières couches, ce qui est particulièrement utile avec les petits jeux de données.
from ultralytics import YOLO
# Charger les poids YOLO26n préentraînés sur les 80 classes de COCO
model = YOLO("yolo26n.pt")
# Adapter à un nouveau jeu de données ne comportant qu’une seule classe ; freeze=10 maintient fixes les 10 premières couches
results = model.train(data="medical-pills.yaml", epochs=20, freeze=10)Le backbone préentraîné détecte déjà les formes, les contours et les textures : l’entraînement doit donc seulement apprendre à quoi ressemble une pilule à partir des 92 images d’entraînement annotées du jeu de données Medical Pills.
Transfert d’apprentissage et termes connexes#
- Ajustement fin : Une méthode de transfert d’apprentissage dans laquelle les poids préentraînés continuent d’être mis à jour avec les nouvelles données. L’extraction de caractéristiques avec un backbone gelé est l’autre méthode principale.
- Adaptation de domaine : Forme de transfert d’apprentissage où la tâche reste la même, mais où la distribution des données change, par exemple entre des images prises de jour et de nuit, souvent avec peu ou pas d’annotations cibles.
- Apprentissage sans exemple et apprentissage à partir de quelques exemples : Ces méthodes traitent de nouvelles classes sans exemples annotés ou avec seulement une poignée d’exemples, en s’appuyant sur les connaissances générales d’un modèle préentraîné plutôt que sur une phase d’adaptation complète.
- Ajustement fin efficace en paramètres (PEFT) : Adapte de très grands modèles préentraînés en entraînant un petit ensemble de paramètres ajoutés ou sélectionnés, comme les matrices LoRA, tandis que les poids d’origine restent gelés.
- Oubli catastrophique : Perte des compétences acquises pour la tâche d’origine lorsqu’un modèle est soumis à un ajustement fin sur de nouvelles données. L’ajout d’images de classes d’origine au nouvel ensemble d’entraînement ou le gel d’un plus grand nombre de couches permet de limiter ce phénomène.










