Qu'est-ce que l'apprentissage par transfert ?

L’apprentissage par transfert (TL) est une technique de machine learning (ML) dans laquelle un modèle préentraîné sur une tâche est optimisé pour une nouvelle tâche connexe. L'entraînement d'un nouveau modèle de ML est un processus chronophage et intensif qui nécessite d'importants volumes de données, de la puissance de calcul et plusieurs itérations avant d'être prêt pour la production. Au lieu de cela, les organisations utilisent le TL pour réentraîner des modèles existants sur des tâches connexes avec de nouvelles données. Par exemple, si un modèle de machine learning peut identifier des images de chiens, il peut être entraîné à identifier des chats avec un plus petit ensemble d'images mettant en évidence les différences entre les caractéristiques des chiens et des chats.

Quels sont les avantages de l'apprentissage par transfert ?

TL offre plusieurs des avantages suivants aux chercheurs qui créent des applications d'apprentissage automatique.

Efficacité améliorée

La formation des modèles de machine learning prend du temps car ils permettent d'acquérir des connaissances et d'identifier des modèles. Il nécessite également un grand ensemble de données et est coûteux en termes de calcul. Dans TL, un modèle préentraîné conserve les connaissances fondamentales des tâches, des caractéristiques, des poids et des fonctions, ce qui lui permet de s'adapter plus rapidement à de nouvelles tâches. Vous pouvez utiliser un ensemble de données beaucoup plus restreint et moins de ressources tout en obtenant de meilleurs résultats. 

Accessibilité accrue

La création de réseaux neuronaux d'apprentissage profond nécessite d'importants volumes de données, de ressources, de puissance de calcul et de temps. TL surmonte ces obstacles à la création, permettant aux organisations d'adopter le ML pour des cas d'utilisation personnalisés. Vous pouvez adapter les modèles existants à vos besoins à une fraction du coût. Par exemple, à l'aide d'un modèle de reconnaissance d'image préentraîné, vous pouvez créer des modèles pour l'analyse d'imagerie médicale, la surveillance environnementale ou la reconnaissance faciale avec un minimum d'ajustements.

Performances améliorées

Les modèles développés par le biais de TL font souvent preuve d'une plus grande robustesse dans des environnements divers et difficiles. Ils gèrent mieux la variabilité et le bruit du monde réel, ayant été exposés à un large éventail de scénarios lors de leur formation initiale. Ils donnent de meilleurs résultats et s'adaptent de manière plus flexible aux conditions imprévisibles.

Quelles sont les différentes stratégies d'apprentissage par transfert ?

La stratégie que vous utiliserez pour faciliter le TL dépendra du domaine du modèle que vous créez, de la tâche à accomplir et de la disponibilité des données d'entraînement.

Apprentissage par transfert transductif

L'apprentissage par transfert transductif implique le transfert de connaissances d'un domaine source spécifique vers un domaine cible différent mais connexe, l'accent étant mis principalement sur le domaine cible. Cela est particulièrement utile lorsque le domaine cible contient peu ou pas de données étiquetées.

L'apprentissage par transfert transductif demande au modèle de faire des prédictions sur des données cibles en utilisant les connaissances acquises précédemment. Les données cibles étant mathématiquement similaires aux données source, le modèle trouve des modèles et fonctionne plus rapidement. 

Par exemple, envisagez d'adapter un modèle d'analyse des sentiments basé sur les critiques de produits pour analyser les critiques de films. Le domaine source (critiques de produits) et le domaine cible (critiques de films) diffèrent en termes de contexte et de spécificités, mais présentent des similitudes en termes de structure et d'utilisation de la langue. Le modèle apprend rapidement à appliquer sa compréhension du sentiment du domaine du produit au domaine du film.

Apprentissage par transfert inductif

Dans l'apprentissage par transfert inductif, les domaines source et cible sont identiques, mais les tâches que le modèle doit accomplir sont différentes. Le modèle préentraîné connaît déjà les données source et s'entraîne plus rapidement aux nouvelles fonctions.

Le traitement du langage naturel (NLP) est un exemple d'apprentissage par transfert inductif. Les modèles sont préentraînés sur un large ensemble de textes, puis affinés à l'aide de l'apprentissage par transfert inductif vers des fonctions spécifiques telles que l'analyse des sentiments. De même, les modèles de vision par ordinateur tels que VGG sont préentraînés sur de grands ensembles de données d'images, puis affinés pour développer la détection d'objets.

Apprentissage par transfert non supervisé

L'apprentissage par transfert non supervisé utilise une stratégie similaire à l'apprentissage par transfert inductif pour développer de nouvelles capacités. Toutefois, vous utilisez cette forme d'apprentissage par transfert lorsque vous ne disposez que de données non étiquetées dans les domaines source et cible. 

Le modèle apprend les caractéristiques communes des données non étiquetées afin de les généraliser avec plus de précision lorsqu'on leur demande d'effectuer une tâche cible. Cette méthode est utile s'il est difficile ou coûteux d'obtenir des données sources étiquetées.

Par exemple, considérez la tâche consistant à identifier différents types de motos sur les images de la circulation. Dans un premier temps, le modèle est entraîné sur un grand nombre d'images de véhicules non étiquetées. Dans ce cas, le modèle détermine indépendamment les similitudes et les caractéristiques distinctives entre différents types de véhicules tels que les voitures, les bus et les motos. Ensuite, le modèle est présenté à un petit ensemble spécifique d'images de motos. Les performances du modèle s'améliorent considérablement par rapport à avant.

Quelles sont les étapes de l'apprentissage par transfert ?

L'affinement d'un modèle d'apprentissage automatique pour une nouvelle tâche se déroule en trois étapes principales.

Sélectionner un modèle préentraîné

Tout d'abord, sélectionnez un modèle préformé avec des connaissances ou des compétences préalables pour une tâche connexe. Un contexte utile pour choisir un modèle approprié est de déterminer la tâche source de chaque modèle. Si vous comprenez les tâches initiales effectuées par le modèle, vous pouvez en trouver une qui permet de passer plus efficacement à une nouvelle tâche.

Configurer vos modèles préentraînés

Après avoir sélectionné votre modèle source, configurez-le pour transmettre les connaissances à un modèle afin d'effectuer la tâche correspondante. Il existe deux méthodes principales pour ce faire.

Congeler les couches préformées

Les couches sont les éléments constitutifs des réseaux neuronaux. Chaque couche est constituée d'un ensemble de neurones et effectue des transformations spécifiques sur les données d'entrée. Les pondérations sont les paramètres que le réseau utilise pour prendre des décisions. Initialement définis sur des valeurs aléatoires, les poids sont ajustés au cours du processus d'apprentissage au fur et à mesure que le modèle apprend à partir des données.

En gelant les poids des couches pré-entraînées, vous les maintenez fixes, préservant ainsi les connaissances que le modèle du deep learning a obtenues à partir de la tâche source.

Supprimer la dernière couche

Dans certains cas d'utilisation, vous pouvez également supprimer les dernières couches du modèle pré-entraîné. Dans la plupart des architectures ML, les dernières couches sont spécifiques aux tâches. La suppression de ces dernières couches vous permet de reconfigurer le modèle en fonction des nouvelles exigences des tâches.

Introduire de nouvelles couches

L'ajout de nouvelles couches à votre modèle préentraîné vous aide à vous adapter à la nature spécialisée de la nouvelle tâche. Les nouvelles couches adaptent le modèle aux nuances et aux fonctions de la nouvelle exigence.

Entraîner le modèle pour le domaine cible

Vous entraînez le modèle sur les données de tâches cibles afin de développer sa sortie standard afin de l'aligner sur la nouvelle tâche. Le modèle préentraîné produit probablement des résultats différents de ceux souhaités. Après avoir surveillé et évalué les performances du modèle pendant l'entraînement, vous pouvez ajuster les hyperparamètres ou l'architecture de base du réseau neuronal afin d'améliorer encore les résultats. Contrairement aux poids, les hyperparamètres ne sont pas appris à partir des données. Ils sont prédéfinis et jouent un rôle crucial dans la détermination de l'efficience et de l'efficacité du processus de formation. Par exemple, vous pouvez ajuster les paramètres de régularisation ou les taux d'apprentissage du modèle pour améliorer ses capacités par rapport à la tâche cible.

Quelles sont les stratégies d'apprentissage par transfert dans l'IA générative ?

Les stratégies d'apprentissage par transfert sont essentielles à l'adoption de l'IA générative dans divers secteurs. Les entreprises peuvent personnaliser les modèles de base existants sans avoir à en former de nouveaux sur des milliards de paramètres de données à grande échelle. Voici quelques stratégies d'apprentissage par transfert utilisées dans l'IA générative.

Formation contradictoire dans un domaine

La formation contradictoire au domaine implique la formation d'un modèle de base permettant de produire des données impossibles à distinguer des données réelles du domaine cible. Cette technique utilise généralement un réseau discriminateur, comme on le voit dans les réseaux antagonistes génératifs, qui tente de faire la distinction entre les données vraies et les données générées. Le générateur apprend à créer des données de plus en plus réalistes.

Par exemple, lors de la génération d'images, un modèle formé à partir de photographies peut être adapté pour générer des illustrations. Le discriminateur permet de s'assurer que l'illustration générée est stylistiquement cohérente avec le domaine cible.

Apprentissage enseignant-élève

L'apprentissage enseignant-élève implique un modèle « enseignant » plus vaste et plus complexe qui enseigne un modèle « étudiant » plus petit et plus simple. Le modèle étudiant apprend à imiter le comportement de l'enseignant, transférant ainsi efficacement les connaissances. Cela est utile pour déployer de grands modèles génératifs dans des environnements aux ressources limitées.

Par exemple, un grand modèle de langage (LLM) pourrait servir d’enseignant à un modèle plus petit, transférant ainsi ses capacités de génération linguistique. Cela permettrait au modèle plus petit de générer du texte de haute qualité avec moins de frais de calcul.

Démêlage des fonctionnalités

Le démêlage des fonctionnalités dans les modèles génératifs implique de séparer différents aspects des données, tels que le contenu et le style, en représentations distinctes. Cela permet au modèle de manipuler ces aspects indépendamment dans le processus d'apprentissage par transfert.

Par exemple, dans le cadre d'une tâche de génération de visages, un modèle peut apprendre à dissocier les traits du visage du style artistique. Cela lui permettrait de générer des portraits dans différents styles artistiques tout en conservant la ressemblance du sujet.

Apprentissage par transfert intermodal

L'apprentissage par transfert intermodal implique le transfert de connaissances entre différentes modalités, comme le texte et les images. Les modèles génératifs peuvent apprendre des représentations applicables à ces modalités. Un modèle formé à l'aide de descriptions textuelles et d'images correspondantes pourrait apprendre à générer des images pertinentes à partir de nouvelles descriptions textuelles, transférant ainsi efficacement sa compréhension du texte à l'image.

Apprentissage Zero-shot et en quelques coups

Dans le cadre de l'apprentissage zero-shot et en quelques coups, les modèles génératifs sont entraînés à effectuer des tâches ou à générer des données pour lesquelles ils n'ont vu que peu ou pas d'exemples au cours de la formation. Ceci est réalisé en apprenant des représentations riches qui se généralisent bien. Par exemple, un modèle génératif peut être entraîné pour créer des images d'animaux. En utilisant un apprentissage en quelques étapes, il pourrait générer des images d'un animal rarement vu en comprenant et en combinant les caractéristiques d'autres animaux.

Comment AWS peut-il vous aider à répondre à vos besoins de formation par transfert ?

Amazon SageMaker JumpStart est un hub de machine learning qui vous permet d'accéder à des modèles préformés, notamment des modèles de base, pour effectuer des tâches telles que la synthèse d'articles et la génération d'images. Vous pouvez utiliser l'apprentissage par transfert pour produire des modèles précis sur vos plus petits ensembles de données, avec des coûts de formation inférieurs à ceux liés à la formation du modèle d'origine. Par exemple, avec SageMaker JumpStart, vous pouvez :

  • Personnalisez entièrement les modèles préformés en fonction de votre cas d'utilisation et avec vos données pour un déploiement plus rapide en production.
  • Accédez à des solutions prédéfinies pour résoudre les cas d'utilisation courants.
  • Partagez des artefacts de machine learning, y compris des modèles de machine learning et des blocs-notes, au sein de votre organisation.

Lorsque vous utilisez l'approche d'apprentissage par transfert intermodal, vous pouvez également utiliser Amazon SageMaker Debugger pour détecter de graves problèmes cachés. Par exemple, vous pouvez examiner les prévisions du modèle pour détecter les erreurs, valider la robustesse de votre modèle et déterminer dans quelle mesure cette robustesse provient des capacités héritées. Vous pouvez également valider les entrées et les préprocessus du modèle pour des attentes réalistes.

Démarrez l'apprentissage par transfert sur AWS en créant un compte gratuit dès aujourd'hui.

Prochaines étapes sur AWS

Créer gratuitement un compte

Obtenez un accès instantané à l'offre gratuite AWS.

S'inscrire 
Commencez à créer sur la console

Démarrez la création dans la console de gestion AWS.

Se connecter