Tout savoir sur Transfer learning

Le transfert learning, ou apprentissage par transfert en français, est une technique d’apprentissage automatique. À travers cette méthode, les connaissances acquises à partir d’une tâche sont réutilisées pour améliorer les performances sur une mission similaire, mais plus précise. Cette notion est de plus en plus en vogue et prend de la place dans le domaine de l’intelligence artificielle. On vous en dit plus sur le transfer learning (TL) et tout ce qui l’englobe.

Qu’est-ce que le transfer learning ?

Le transfer learning comprend l’ensemble des méthodes qui aident au transfert des acquisitions à partir de la résolution d’un problème donné, pour en résoudre un autre. Il s’agit d’une technique en machine learning où un modèle d’intelligence artificielle, déjà entraîné sur une mission bien définie, est adapté pour une autre mission similaire, mais plus spécifique. Pour la petite histoire, c’est en 1976 que tout commence. Un professeur en science informatique, Stevo Bozinovski, et un professeur de psychologie, Ante Fulgosi, publient un article sur l’apprentissage par transfert.

Cette approche utilise les facultés déjà acquises afin d’améliorer l’efficacité et la performance du modèle sur la nouvelle mission. L’objectif est d’utiliser moins de temps de travail, mais aussi moins de données. En effet, les modèles généralement utilisés nécessitent des temps de calcul importants et des ressources conséquentes. En ayant recours à des modèles pré-entraînés comme base, le TL aide au développement de modèles plus performants. Il peut ainsi résoudre des problèmes plus complexes.

D’une certaine façon, cette méthode est intuitivement déjà utilisée par l’humain. Lorsque quelqu’un maîtrise le piano et souhaite apprendre la guitare, il peut compter sur ses acquis pour apprendre à jouer de ce nouvel instrument. 

 

Comment fonctionne le transfer learning ?

Cette méthode consiste en trois principales étapes. Tout d’abord, l’utilisation d’un modèle pré-entraîné est requise. Ensuite, l’adaptation de ce modèle, et enfin, l’entraînement.

L’utilisation d’un modèle pré-entraîné

Un modèle source pré-entraîné est requis. Il est choisi pour transférer ses connaissances précises au modèle cible. Ce modèle est généralement un réseau de neurones, ou plutôt un empilement de couches de neurones. Ce dernier a été entraîné grâce à une grande base de données. Et surtout, pour une mission bien définie, comme définir une image (chat ou chien, voiture ou camion, bus ou citerne, etc.). Les premières couches de neurones se concentrent sur les caractéristiques génériques, tandis que les couches plus profondes se focalisent sur la mission à accomplir (définir ce qu’il y a exactement sur l’image).

L’adaptation du modèle source pour créer le modèle cible

L’adaptation est essentielle. Le modèle source peut présenter certaines caractéristiques différentes de celles du modèle cible. Il peut présenter des données d’entraînement différentes. Ainsi, il est indispensable de configurer et d’adapter ces caractéristiques avant de transférer tous les acquis au modèle cible. Par exemple, le modèle source pourrait être capable de classer des milliers de catégories d’objets, alors que son homologue ne pourrait en classer que quelques-unes.

L’entraînement du modèle source pour obtenir le modèle cible

Enfin, la préparation du modèle source est la dernière étape, et pas des moindres. Une fois le réglage du modèle source effectué, le modèle cible est conçu en utilisant le modèle source comme point de départ. Cette préparation permet d’obtenir de meilleures performances en un laps de temps réduit. De manière générale, la présence de modèles déjà bien installés est primordiale dans le domaine du Deep Learning.

 

Quelles sont les principales méthodes et techniques utilisées en transfer learning ?

Le TL utilise plusieurs méthodes et techniques pour adapter et réutiliser les modèles pré-entraînés. Son approche de base est de réexploiter les facultés déjà acquises par un modèle, dans d’autres configurations (source). Tout cela dans le but de résoudre un problème ou d’accomplir une mission (cible).

 

L’apprentissage par transfert inductif (Inductive Transfer Learning)

Dans l’apprentissage par transfert inductif, les domaines source et cible sont identiques. Ils utilisent les mêmes types de données, mais les missions sont différentes (même si proches). Cela consiste à utiliser les modèles existants pour réduire le champ d’application des modèles, grâce à un biais de sujet favorable.

Exemple :

Domaine source = images d’animaux Tache source = détection d’animaux
Domaine cible = images d’animaux Tache cible = identification de lapins

 

L’apprentissage par transfert non supervisé (Unsupervised Transfer Learning)

Comme le précédent, l’apprentissage par transfert non supervisé comprend des domaines source et cible identiques, et des missions différentes. Sauf qu’ici les données des deux domaines ne sont pas labellisées. Obtenir de grandes quantités de données non labellisées est souvent plus simple et moins onéreux. En combinant cette méthode avec le TL, il est possible de tirer profit d’un vaste ensemble de données non labellisées. Il existe le Self-taught clustering. Il s’agit d’une approche qui réalise le clustering de petites données cibles grâce à une grande quantité de données sources non labellisées.

L’apprentissage par transfert supervisé (Transductive Transfer Learning)

Dans l’apprentissage par transfert supervisé, les tâches source et cible sont identiques. Seulement, les domaines sont différents. Les données sources et cibles sont différentes, mais la mission est identique. Cette approche est utilisée quand les données cibles sont rares ou difficiles à annoter.

Exemple :

Tache source = retranscription de livre Domaine source = texte en anglais
Tache cible = retranscription de livre Domaine cible = texte en français

 

Quels sont les principaux avantages du transfer learning ?

Le TL présente plusieurs avantages dans le domaine du Deep Learning et de l’IA. Dans un premier temps, il offre un démarrage rapide, car le sujet est pré-entraîné à l’accomplissement de la mission. Cela demande aussi moins de temps d’exercice, donc une utilisation des ressources informatiques plus efficace.

Le TL permet aussi d’obtenir des modèles performants, même avec des datas limitées pour une mission cible. Il réduit aussi les coûts, car il est plus rapide. Il améliore les acquisitions générales utilisées pour des missions similaires. Il fournit également de meilleurs résultats que ceux qui ne sont pas entraînés. Enfin, il est très polyvalent et s’adapte rapidement à d’autres modèles. 

 

Dans quels scénarios le transfer learning est-il particulièrement efficace ?

Le TL est particulièrement efficace pour les data scientists. Ils ont besoin d’un sujet de machine learning déjà formé sur une mission similaire. Ils ne peuvent pas l’utiliser dans toutes les situations, mais dans certains cas, c’est essentiel. 

Lorsqu’il n’y a pas assez de données, les professionnels du Deep Learning peuvent avoir recours à un sujet pré-entraîné qui les aiderait à construire de meilleurs modèles. Lorsqu’il n’y a pas assez de temps pour former certains modèles, il est aussi utile d’avoir recours à un modèle pré-entraîné. Ils gagnent du temps au lieu de créer un nouveau modèle. 

 

Comment le transfer learning est-il utilisé dans le traitement du langage naturel ?

Le transfer learning est largement utilisé dans le domaine du traitement du langage naturel (NLP – Natural Language Processing). Il s’agit d’un domaine de l’intelligence artificielle basée sur l’interaction entre les ordinateurs et le langage humain naturel.

Il peut être utilisé pour :

  • la classification de texte ;
  • la reconnaissance d’entités ;
  • la traduction automatique ;
  • la génération de texte ;
  • le développement d’assistance virtuelle ;
  • l’analyse de texte, etc.

 

Il existe des modèles pré-entraînés comme BERT, GPT ou XLNet. Ils apprennent à représenter les mots et les phrases. D’autres sont utilisés dans la classification de texte ou la traduction. D’autres encore sont adaptés à des jeux de données spécifiques dans une langue. Certains sont capables d’extraire des représentations de texte pour faire d’autres tâches de machine learning.

 

Comment le transfer learning peut-il être appliqué dans d’autres domaines ?

Le transfer learning est appliqué à de nombreux domaines, hors NLP. Cette technique de machine learning peut s’adapter à d’autres exécutions et domaines. La classification d’images en est un très bon exemple. Il utilise des modèles pré-entraînés pour classer les images similaires ou des objets définis. La détection d’objets dans une image est aussi un exemple clé.

Dans le médical, il est aussi possible d’y avoir recours (détection de pathologies sur des images radio). La prédiction des résultats cliniques fait aussi partie des domaines potentiels d’application. Dans le domaine de la robotique, le TL est aussi fortement apprécié. 

 

Quels sont les défis associés à l’utilisation du transfer learning ?

Le principal défi de cette utilisation reste le manque de datas fiables et suffisantes. Un modèle pré-entraîné peut manquer d’informations, ou ne pas avoir les plus adaptées. Il se peut aussi que les datas soient de mauvaise qualité et entraînent des inexactitudes. Il existe également un risque de sur-apprentissage. C’est le cas lorsque le modèle est adapté aux données d’entraînement, mais ne généralise pas suffisamment les nouvelles informations. 

Il est aussi possible que des caractéristiques ne soient pas pertinentes pour accomplir la mission cible. Bien que ces aléas surviennent rarement, ils existent. Le TL est une approche prometteuse, qui a de beaux jours devant lui, mais qui a quelques limites. Surmonter ces défis pour garantir une efficacité maximale est un enjeu pour nos scientifiques.