Découvrez le transfert d'apprentissage pour former une IA hautement précise avec moins de données. Apprenez à tirer parti des poids pré-entraînés Ultralytics pour accélérer vos projets de vision par ordinateur.
Le transfert d'apprentissage est une technique puissante dans le domaine de l' apprentissage automatique (ML) qui consiste à réutiliser un modèle développé pour une tâche spécifique comme point de départ pour un modèle destiné à une deuxième tâche connexe. Au lieu de former un réseau neuronal à partir de zéro, ce qui nécessite des ensembles de données massifs et une puissance de calcul importante, les développeurs exploitent les connaissances déjà acquises par une IA. Cette approche imite la façon dont les humains apprennent ; par exemple, savoir jouer du piano facilite grandement l'apprentissage de l'orgue car les connaissances fondamentales en théorie musicale et la dextérité des doigts sont transférables. Dans le contexte de l' apprentissage profond, cela signifie qu'un modèle peut atteindre une grande précision sur un nouveau problème avec beaucoup moins de données et de temps.
L'efficacité de l'apprentissage par transfert réside dans la nature hiérarchique de l' extraction des caractéristiques. Les modèles d'apprentissage profond, en particulier ceux utilisés dans la vision par ordinateur, apprennent à reconnaître des modèles par couches. Les couches initiales de la colonne vertébrale detect des caractéristiques detect et universelles telles que les bords, les courbes et les textures. Ces caractéristiques de bas niveau sont applicables à presque toutes les tâches visuelles.
Le processus comprend généralement deux phases principales :
L'apprentissage par transfert a démocratisé l'IA en permettant la création de solutions spécialisées sans avoir recours aux ressources des géants technologiques.
Il est utile de distinguer l'apprentissage par transfert d'autres termes étroitement liés :
Le texte suivant Python Cet extrait de code illustre l'apprentissage par transfert à l'aide de la fonction
ultralytics bibliothèque. Nous chargeons le YOLO26 modèle,
qui est fourni avec des poids pré-entraînés dérivés de COCO . Lorsque nous lançons l'entraînement sur un nouvel ensemble de données, le
modèle transfère automatiquement ses caractéristiques pré-apprises à la nouvelle tâche.
from ultralytics import YOLO
# Load a pre-trained YOLO26 model (transferring weights from COCO)
model = YOLO("yolo26n.pt")
# Train the model on a new, smaller dataset to adapt its knowledge
# This leverages the pre-learned backbone for faster convergence
results = model.train(data="coco8.yaml", epochs=5)
Pour gérer les ensembles de données et exécuter ces cycles de formation dans le cloud, des outils tels que la Ultralytics rationalisent le processus, permettant aux équipes de collaborer efficacement à l'annotation des données et au déploiement de modèles transférés.
Pour approfondir la théorie académique, les notes Stanford CS231n offrent un excellent aperçu, tandis que le tutorielPyTorch Learning fournit des détails techniques complets pour la mise en œuvre.