Si vous souhaitez former votre propre modèle d’IA pour le traitement du langage naturel (NLP) ou la vision par ordinateur, vous devez vous familiariser avec l’apprentissage par transfert et l’utilisation de modèles pré-entraînés.
Sans l’apprentissage par transfert, la formation d’un modèle efficace et fiable sera souvent une entreprise prohibitive, nécessitant beaucoup d’argent, de temps et d’expertise. On estime que le développeur de ChatGPT, OpenAI, a dépensé des millions pour la formation de GPT-3, GPT-3.5 et GPT-4. Grâce à la puissance de l’apprentissage par transfert, vous pouvez former votre propre modèle aussi puissant que le dernier modèle GPT avec peu de ressources et en peu de temps.
Qu’est-ce que l’apprentissage par transfert de l’IA ?
L’apprentissage par transfert consiste à prendre un modèle pré-entraîné tel que BERT ou l’un des différents modèles GPT et à l’entraîner sur un ensemble de données personnalisé afin qu’il puisse travailler sur des tâches pour lesquelles il n’a pas nécessairement été entraîné.
Par exemple, vous pouvez prendre un modèle pré-entraîné pour classer les différentes espèces de chats et l’entraîner à classer les chiens. Grâce à l’apprentissage par transfert, la formation de votre modèle de classification des chiens devrait prendre beaucoup moins de temps et de ressources pour devenir aussi fiable que le modèle original de classification des chats.
Cette méthode fonctionne car les chats et les chiens partagent de nombreux traits que le modèle pré-entraîné peut déjà identifier. Étant donné que le modèle de classification des chats peut identifier les différentes caractéristiques d’un chat, telles que ses quatre pattes, sa fourrure et son museau proéminent, le modèle de classification des chiens peut sauter tout l’entraînement nécessaire à l’identification de ces caractéristiques et les hériter du modèle d’origine. Après avoir hérité de tous ces réseaux neuronaux, vous coupez les dernières couches du modèle formé pour identifier les caractéristiques plus spécifiques d’un chat et vous les remplacez par un ensemble de données spécifiques aux chiens.
Quels modèles d’IA pouvez-vous utiliser pour l’apprentissage par transfert ?
Pour utiliser l’apprentissage par transfert, vous aurez besoin d’un modèle pré-entraîné. Un modèle pré-entraîné est communément appelé un modèle d’IA formé dans le but d’acquérir des connaissances générales sur un sujet ou une idée en particulier. Ces types de modèles pré-entraînés sont conçus à dessein pour permettre aux utilisateurs d’affiner et de créer des modèles plus spécifiques à une application. Certains des modèles pré-entraînés les plus populaires concernent le NLP, comme BERT et GPT, et la vision par ordinateur, comme VGG19 et Inceptionv3.
Bien que populaires, ces modèles facilement ajustables ne sont pas les seuls que vous pouvez utiliser pour l’apprentissage par transfert. Vous pouvez également utiliser des modèles formés à des tâches plus spécifiques que la reconnaissance générale d’objets ou de langues. Tant que le modèle a développé des réseaux neuronaux applicables au modèle que vous essayez d’entraîner, vous pouvez utiliser à peu près n’importe quel modèle pour l’apprentissage par transfert.
Vous pouvez obtenir des modèles pré-entraînés publiquement disponibles sur des sites tels que TensorFlow Hub, Hugging Face et le marché de modèles OpenAI.
Avantages de l’apprentissage par transfert d’IA
L’apprentissage par transfert présente plusieurs avantages par rapport à la formation d’un modèle d’IA à partir de zéro.
- Réduction du temps de formation : Lors de la formation d’un modèle à partir de zéro, une grande partie du processus de formation est consacrée aux connaissances générales de base. Grâce à l’apprentissage par transfert, votre modèle hérite automatiquement de toutes ces connaissances fondamentales, ce qui réduit considérablement le temps de formation.
- Moins de ressources nécessaires : Étant donné que toutes les connaissances fondamentales sont déjà présentes, il vous suffit d’entraîner davantage le modèle en fonction des spécificités de votre application. Cela ne nécessite souvent qu’un ensemble de données relativement restreint qui peut être traité avec une puissance de calcul moindre.
- Amélioration des performances : À moins de dépenser des millions de dollars pour construire votre modèle à partir de zéro, vous ne pouvez pas vous attendre à un modèle aussi bon ou fiable qu’un grand modèle de langage (LLM) d’une entreprise technologique géante. En utilisant l’apprentissage par transfert, vous pouvez exploiter les puissantes capacités de ces LLM pré-entraînés, tels que GPT, pour améliorer les performances de votre modèle.
Il est possible de former un modèle d’IA à partir de zéro, mais il faut pour cela disposer de ressources plus importantes.
Comment fonctionne l’apprentissage par transfert ?
L’apprentissage par transfert se déroule essentiellement en trois étapes.
- Sélection d’un modèle pré-entraîné : Un modèle pré-entraîné subit un entraînement initial à l’aide d’un ensemble de données assez important provenant d’une tâche source, telle que ImageNet, ou d’une grande collection de textes. Cette phase de formation initiale permet au modèle d’acquérir des connaissances sur les caractéristiques et les modèles généraux trouvés dans l’ensemble de données. Le temps et les ressources économisés grâce à l’apprentissage par transfert dépendent des similitudes entre le modèle pré-entraîné et le modèle que vous essayez de construire.
- Extraction de caractéristiques : Une fois qu’un modèle pré-entraîné a été sélectionné pour le réglage fin, les couches initiales du modèle pré-entraîné (les plus proches de l’entrée) sont gelées ; cela signifie que leurs poids sont maintenus fixes pendant le réglage fin. Le gel de ces couches permet de conserver les connaissances générales acquises au cours de la phase de pré-entraînement et d’éviter qu’elles ne soient fortement influencées par l’ensemble de données spécifiques aux tâches du modèle cible. Pour les modèles entièrement formés pour des applications spécifiques, les couches finales des modèles sont supprimées ou désapprises pour que le modèle cible soit formé à d’autres applications spécifiques.
- Mise au point : Une fois que le modèle pré-entraîné a été gelé et que les couches supérieures ont été retirées, un nouvel ensemble de données est transmis à l’algorithme d’apprentissage, qui est ensuite utilisé pour entraîner le nouveau modèle et les spécificités de son application.
Ces trois étapes ne suffisent pas, mais ces grandes lignes décrivent grosso modo le fonctionnement du processus d’apprentissage par transfert de l’IA, moyennant quelques ajustements.
Limites de l’apprentissage par transfert d’IA
Bien que l’apprentissage par transfert soit un concept précieux pour la formation de modèles efficaces et fiables, il existe un certain nombre de limites que vous devez connaître lorsque vous utilisez l’apprentissage par transfert pour former un modèle.
- Inadéquation des tâches : Lors du choix d’un modèle de base pour l’apprentissage par transfert, celui-ci doit être aussi pertinent que possible par rapport aux problèmes que le nouveau modèle va résoudre. L’utilisation d’un modèle de classification des chats pour créer un modèle de classification des chiens est plus susceptible de donner de meilleurs résultats que l’utilisation d’un modèle de classification des voitures pour créer un modèle de classification des plantes. Plus le modèle de base est pertinent par rapport au modèle que vous essayez de construire, plus vous économiserez du temps et des ressources tout au long du processus d’apprentissage par transfert.
- Biais de l’ensemble de données : Bien que les modèles pré-entraînés soient souvent entraînés sur de grands ensembles de données, il est toujours possible qu’ils aient développé un biais particulier au cours de leur entraînement. L’utilisation d’un modèle de base fortement biaisé aurait pour conséquence que le modèle hériterait de ses biais, réduisant ainsi la précision et la fiabilité de votre modèle. Malheureusement, l’origine de ces biais est difficile à cerner en raison de la nature « boîte noire » de l’apprentissage profond.
- Surajustement : L’un des principaux avantages de l’apprentissage par transfert est qu’il permet d’utiliser un ensemble de données relativement restreint pour perfectionner un modèle. Cependant, l’entraînement du modèle sur un ensemble de données trop petit peut entraîner un surajustement, ce qui réduit considérablement la fiabilité du modèle lorsqu’il est alimenté par de nouvelles données.
Ainsi, bien que l’apprentissage par transfert soit une technique d’apprentissage de l’IA pratique, il existe des limites et il ne s’agit pas d’une solution miracle.
Faut-il utiliser l’apprentissage par transfert ?
Depuis l’apparition des modèles préformés, l’apprentissage par transfert a toujours été utilisé pour créer des modèles plus spécialisés. Il n’y a vraiment aucune raison de ne pas utiliser l’apprentissage par transfert s’il existe déjà un modèle pré-entraîné correspondant aux problèmes que votre modèle doit résoudre.
Bien qu’il soit possible de former un modèle d’apprentissage automatique simple à partir de zéro, le faire sur un modèle d’apprentissage profond nécessitera beaucoup de données, de temps et de compétences, ce qui n’aura pas de sens si vous pouvez réutiliser un modèle existant similaire à celui que vous prévoyez de former. Par conséquent, si vous souhaitez consacrer moins de temps et d’argent à la formation d’un modèle, essayez de former votre modèle par le biais de l’apprentissage par transfert.