Apprentissage par transfert
L'apprentissage par transfert (transfer learning, en anglais) consiste à appliquer des connaissances obtenues en effectuant une tâche afin de résoudre un problème différent, mais qui présente des similitudes.
La création d'algorithmes qui facilitent les processus d'apprentissage par transfert est devenue un objectif pour les spécialistes de l'apprentissage automatique, qui s'efforcent de rapprocher ce dernier le plus possible du comportement humain.
Les algorithmes d'apprentissage automatique sont généralement conçus pour traiter des tâches ponctuelles. L'apprentissage par transfert permet d'élaborer des méthodes pour transférer des connaissances provenant d'une ou de plusieurs de ces tâches sources afin d'améliorer l'apprentissage dans l'exécution d'une tâche cible similaire. L'objectif de ce transfert de stratégies d'apprentissage est de faire évoluer l'apprentissage automatique afin qu'il soit aussi efficace que l'apprentissage humain.
Théorie de l'apprentissage par transfert
L'apprentissage par transfert permet d'exploiter les connaissances tirées d'une tâche source pour améliorer l'apprentissage dans l'exécution d'une nouvelle tâche. Si la méthode de transfert entraîne une baisse des performances de la nouvelle tâche, on parle de transfert négatif. Lorsqu'on élabore une méthode de transfert, l'un des principaux enjeux consiste à créer un transfert positif entre des tâches similaires, mais en évitant un transfert négatif entre des tâches moins similaires.
Lorsqu'on applique à une nouvelle tâche des connaissances apprises d'une tâche source, les caractéristiques de cette dernière sont généralement mises en correspondance avec celles de la nouvelle tâche. L'humain fait naturellement cette mise en correspondance, mais des méthodes sont élaborées pour l'automatiser.
Exemples d'apprentissage par transfert
Dans l'apprentissage automatique, les connaissances ou les données obtenues lors de la résolution d'un problème sont stockées, étiquetées puis appliquées à un problème différent, mais similaire. Par exemple, les connaissances acquises par un algorithme d'apprentissage automatique pour reconnaître des voitures peuvent ensuite être transférées pour être utilisées dans un autre modèle d'apprentissage automatique créé, pour reconnaître d'autres types de véhicules, tels que des camions.
L'apprentissage par transfert est également utile lors du déploiement d'une technologie mise à jour telle qu'un chatbot. Si le nouveau domaine est suffisamment similaire aux déploiements précédents, l'apprentissage par transfert permet de déterminer les connaissances à transplanter dans le nouveau déploiement. Grâce à cet apprentissage par transfert, les développeurs peuvent décider quelles connaissances et données peuvent être réutilisées et les transférer pour les appliquer au développement de la version mise à jour.
Pour mesurer l'efficacité des techniques d'apprentissage par transfert, trois indicateurs sont couramment utilisés. Le premier détermine si la tâche cible peut être exécutée en utilisant uniquement les connaissances transférées. Le deuxième mesure le temps nécessaire pour apprendre la tâche cible en utilisant les connaissances acquises grâce au transfert par comparaison avec le temps que prendrait l'apprentissage sans ces connaissances. Le troisième mesure si le résultat final de la tâche apprise grâce à l'apprentissage par transfert est comparable à l'exécution de la tâche d'origine sans le transfert des connaissances.