Le Transfer Learning, également appelé l’ap­pren­tis­sage par transfert en français, est une approche qui consiste à utiliser un modèle pré-entraîné et à l’adapter à une nouvelle tâche, qu’elle soit similaire ou non. Cette méthode permet d’éco­no­mi­ser du temps et des res­sources et d’améliorer les per­for­mances des modèles de Machine Learning. Il existe dif­fé­rentes stra­té­gies pour adapter les modèles pré-entraînés à une nouvelle tâche.

Qu’est-ce que le Transfer Learning ?

Le Transfer Learning est une méthode du domaine du Machine Learning qui consiste à optimiser un modèle pré-entraîné pour une nouvelle tâche similaire. Ainsi, au lieu de former un nouveau modèle de A à Z pour une tâche spé­ci­fique, on utilise les con­nais­sances déjà acquises. Quelques ajus­te­ments suffisent à adapter le modèle initial aux nouvelles ca­rac­té­ris­tiques afin qu’il puisse être utilisé pour une autre tâche. L’uti­li­sa­tion d’un modèle déjà existant économise du temps et des res­sources, car la quantité de données né­ces­saires à l’en­traî­ne­ment est nettement moins im­por­tante. La méthode est donc plus efficace et plus per­for­mante.

Outils d'IA
Exploitez toute la puissance de l'in­tel­li­gence ar­ti­fi­cielle
  • Créez votre site Web en un temps record
  • Boostez votre activité grâce au marketing par IA
  • Gagnez du temps et obtenez de meilleurs résultats

Comment fonc­tionne le Transfer Learning ?

Le Transfer Learning consiste à prendre un modèle qui a déjà été en­tiè­re­ment entraîné pour une tâche donnée et à l’appliquer à une nouvelle tâche similaire. Cela fonc­tionne par­ti­cu­liè­re­ment bien avec des données non struc­tu­rées, comme du texte, des images ou des vidéos. Un modèle entraîné à re­con­naître des images de voitures peut être ajusté pour iden­ti­fier d’autres types de véhicules, comme des camions. De nom­breuses ca­rac­té­ris­tiques des deux groupes, comme les roues, les portes ou la forme générale, peuvent être reprises.

Choisir un modèle entraîné

Comme point de départ, vous avez besoin d’un modèle entraîné. Celui-ci est formé à l’aide d’un ensemble de données très complet et d’exemples marqués. Le modèle reconnaît peu à peu des motifs et des relations dans les données et apprend ainsi à accomplir la tâche prévue. Dans le domaine du Machine Learning, on parle de couches qui sont reliées entre elles et per­met­tent d’effectuer des calculs. Plus un modèle a de couches, plus il peut apprendre des re­pré­sen­ta­tions complexes.

Pour l’ap­pren­tis­sage par transfert, vous choi­sis­sez un modèle ayant déjà franchi ces étapes avec succès. Pour ce faire, il vaut la peine de regarder at­ten­ti­ve­ment la tâche source d’un modèle existant. Plus cette tâche est proche de la nouvelle, plus le transfert sera facile.

Re­con­fi­gu­rer le modèle et l’entraîner

La deuxième étape consiste à con­fi­gu­rer le modèle déjà pré-entraîné pour la nouvelle tâche. Il existe deux méthodes pour cela : vous pouvez choisir celle qui convient le mieux à vos besoins.

La première méthode consiste à remplacer la dernière couche du modèle initial formé. Cette couche est également appelée « couche de sortie ». Elle sert d’unité de clas­si­fi­ca­tion finale, c’est-à-dire qu’elle évalue si un fichier répond ou non aux pa­ra­mètres définis. Dans notre exemple, cela signifie que cette couche décide si l’image présentée re­pré­sente une voiture. Dans de nombreux cas d’ap­pli­ca­tion, vous pouvez supprimer cette couche et en insérer une nouvelle à sa place, adaptée à votre uti­li­sa­tion. Dans notre exemple, elle iden­ti­fie­rait donc les camions.

Dans le cadre du Transfer Learning, il est également possible de geler les pa­ra­mètres existants et d’ajouter de nouvelles couches en rem­pla­ce­ment. Cette technique, appelée Fine-Tuning, consiste à réen­traî­ner uni­que­ment certaines couches du modèle pour les adapter à la nouvelle tâche. Ces nouvelles couches sont ajustées et intégrées de manière spé­ci­fique à l’orien­ta­tion souhaitée. Ensuite, le modèle est entraîné sur un ensemble de données plus restreint, contenant des exemples re­pré­sen­ta­tifs. Il apprend ainsi à re­con­naître de nouveaux motifs et relations tout en s’appuyant sur les con­nais­sances acquises lors de son en­traî­ne­ment initial.

Vérifier les progrès

La dernière étape est es­sen­tielle : un suivi rigoureux, ac­com­pagné d’ajus­te­ments si né­ces­saire, permet d’optimiser le matériel d’en­traî­ne­ment et, le cas échéant, d’adapter les nouvelles couches. Ce processus garantit que le modèle d’in­tel­li­gence ar­ti­fi­cielle s’ajuste ef­fi­ca­ce­ment à la nouvelle tâche. En ajustant les pa­ra­mètres durant l’en­traî­ne­ment, la précision des résultats s’améliore pro­gres­si­ve­ment, et l’in­tel­li­gence ar­ti­fi­cielle affine sa capacité à répondre aux nouvelles exigences.

Stra­té­gies d’uti­li­sa­tion du Transfer Learning

Il existe dif­fé­rentes stra­té­gies pour l’uti­li­sa­tion de l’ap­pren­tis­sage par transfert. Celle qui vous convient le mieux dépend avant tout de l’uti­li­sa­tion que vous souhaitez en faire. Voici quelques approches :

  • Ex­trac­tion de ca­rac­té­ris­tiques : dans le cas de l’ex­trac­tion de ca­rac­té­ris­tiques, vous utilisez le modèle préa­la­ble­ment formé comme facteur fixe pour les ca­rac­té­ris­tiques de base telles que les textures. Les nouvelles couches sont ensuite utilisées pour iden­ti­fier des ca­rac­té­ris­tiques par­ti­cu­lières. Cette ap­pli­ca­tion est utile lorsque la source et la cible se recoupent largement.
  • Ap­pren­tis­sage par transfert inductif : dans ce cas, le domaine source et le domaine cible sont iden­tiques, mais les tâches source et cible diffèrent. De nouvelles fonctions peuvent ainsi être apprises plus ra­pi­de­ment.
  • Ap­pren­tis­sage par transfert trans­duc­tif : dans cette stratégie, les con­nais­sances acquises dans la tâche source sont di­rec­te­ment trans­fé­rées à certaines instances de la nouvelle tâche, afin de pouvoir mieux les classer, par exemple. Cette approche est pro­met­teuse lorsque les tâches source et cible pré­sen­tent com­pa­ra­ti­ve­ment peu de points communs.
  • Ap­pren­tis­sage par transfert non surveillé : ici, les domaines source et cible sont si­mi­laires et les tâches res­pec­tives sont dif­fé­rentes. Toutefois, les données ne sont pas éti­que­tées. Le modèle apprend alors les dif­fé­rences et les points communs des données non éti­que­tées et peut les gé­né­ra­li­ser.
  • Mul­ti­tas­king : dans l’approche mul­ti­tâche, un modèle exécute si­mul­ta­né­ment plusieurs tâches qui ne sont pas iden­tiques, mais qui ont un lien entre elles. Cela permet de partager les con­nais­sances.
  • Pré­dic­tion : dans cette forme de Transfer Learning, le modèle doit compléter lui-même certains aspects manquants des données. Par exemple, les mots d’une phrase sont prédits. Un ajus­te­ment précis doit permettre d’améliorer les résultats.
  • Zero-Shot et Few-Shot : il s’agit là aussi d’une forme de Transfer Learning du domaine de l’IA gé­né­ra­tive, dans laquelle les con­nais­sances d’une source doivent être trans­fé­rées à une cible lorsqu’il n’existe que peu de che­vau­che­ments (Few-Shot) ou aucun che­vau­che­ment (Zero-Shot) entre les deux. Cette méthode est utilisée lorsque très peu de données d’en­traî­ne­ment sont dis­po­nibles.
  • Dé­sen­che­vê­tre­ment : pour cette approche, les données sont divisées en dif­fé­rents facteurs. Le modèle peut alors con­si­dé­rer et manipuler sé­pa­ré­ment le style et le contenu, par exemple.

Quels sont les domaines d’ap­pli­ca­tion du Transfer Learning ?

Il existe de nombreux domaines d’ap­pli­ca­tion possibles pour le Transfer Learning. Cette méthode permet d’éco­no­mi­ser des coûts, du temps et des res­sources et présente donc de nombreux avantages. Les prin­ci­paux domaines d’ap­pli­ca­tion à ce jour sont :

  • la re­con­nais­sance d’images
  • la re­con­nais­sance vocale
  • la lo­ca­li­sa­tion d’objets
  • le diag­nos­tic dans le domaine de la santé.

Il est fort probable qu’à l’avenir, le Transfer Learning sera utilisé dans de nombreux autres domaines.

Aller au menu principal