Vous cherchez un moyen de former une IA puissante pour vos applications spécifiques? Essayez l'apprentissage par transfert !
Si vous souhaitez former votre propre modèle d'IA pour le traitement du langage naturel (PNL) ou la vision par ordinateur, vous devez vous familiariser avec l'apprentissage par transfert et comment utiliser des modèles pré-formés.
Sans apprentissage par transfert, la formation d'un modèle efficace et fiable sera souvent une entreprise aux ressources prohibitives, nécessitant beaucoup d'argent, de temps et d'expertise, avec le développeur ChatGPT OpenAI qui aurait dépensé des millions pour former 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 en peu de temps.
Qu'est-ce que l'apprentissage par transfert d'IA?
L'apprentissage par transfert est l'idée de prendre un modèle pré-formé tel que BERT ou l'un des différents modèles GPT et l'entraîner sur un ensemble de données personnalisé pour travailler sur des tâches auxquelles il n'a pas nécessairement été formé.
Par exemple, vous pouvez prendre un modèle pré-formé pour classer différentes espèces de chats et le former pour 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 de classification des chats d'origine.
Cela fonctionne puisque les chats et les chiens partagent de nombreux traits que le modèle pré-formé peut déjà identifier. Étant donné que le modèle de classification des chats peut identifier les divers traits d'un chat, comme avoir quatre pattes, des manteaux de fourrure et des museaux, le modèle de classification des chiens peut ignorer toute la formation pour identifier ces traits et les hériter de l'original modèle. Après avoir hérité de tous ces réseaux de neurones, vous coupez ensuite les dernières couches du modèle formé utilisé pour identifier les traits plus spécifiques d'un chat et les remplacez par un ensemble de données spécifique 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é-formé. Un modèle pré-formé est communément appelé modèle d'IA formé dans le but d'acquérir des connaissances générales sur un sujet ou une idée particulière. Ces types de modèles pré-formés sont spécialement conçus pour permettre aux utilisateurs d'affiner et de créer des modèles plus spécifiques à l'application. Certains des modèles pré-formés les plus populaires sont pour la PNL, 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 entraînés sur des tâches plus spécifiques que la reconnaissance générale d'objets ou de langage. Tant que le modèle a développé des réseaux de neurones applicables au modèle que vous essayez de former, vous pouvez utiliser à peu près n'importe quel modèle pour l'apprentissage par transfert.
Vous pouvez obtenir des modèles pré-formés accessibles au public à partir d'endroits tels que TensorFlow Hub, Hugging Face et le marché des modèles OpenAI.
Avantages de l'utilisation de l'apprentissage par transfert de l'IA
L'apprentissage par transfert offre plusieurs avantages par rapport à la formation d'un modèle d'IA à partir de zéro.
- Temps de formation réduit: 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, réduisant ainsi considérablement le temps de formation.
- Moins de ressources requises: Étant donné que toutes les connaissances de base sont déjà là, tout ce que vous avez à faire est de former davantage le modèle aux spécificités de votre application. Cela ne nécessite souvent qu'un ensemble de données relativement petit qui peut être traité avec moins de puissance de calcul.
- Performance améliorée: À moins que vous ne dépensiez des millions de dollars pour créer votre modèle à partir de zéro, vous ne pouvez pas vous attendre à un modèle aussi bon ou fiable qu'un modèle de grande langue (LLM) d'une entreprise technologique géante. En utilisant l'apprentissage par transfert, vous pouvez tirer parti des puissantes capacités de ces LLM pré-formés, tels que GPT, pour améliorer les performances de votre modèle.
La formation d'un modèle d'IA à partir de zéro est possible, mais vous avez besoin de plus de ressources pour le faire.
Comment fonctionne l'apprentissage par transfert?
Essentiellement, il y a trois étapes lorsqu'il s'agit d'apprentissage par transfert.
- Sélection d'un modèle pré-entraîné: Un modèle pré-formé subit une formation initiale à l'aide d'un ensemble de données important à partir d'une tâche source, telle qu'ImageNet, ou d'une grande collection de texte. Cette phase de formation initiale permet au modèle d'acquérir des connaissances sur les caractéristiques générales et les modèles trouvés dans l'ensemble de données. La quantité de temps et de ressources que vous économisez grâce à l'apprentissage par transfert dépendra des similitudes entre le modèle pré-formé et le modèle que vous essayez de construire.
- Extraction de caractéristiques: Une fois qu'un modèle pré-formé a été sélectionné pour un réglage fin, les couches initiales du modèle pré-formé (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 conserve les connaissances générales acquises au cours de la phase de pré-formation et les empêche d'être 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ésappris pour que le modèle cible soit formé dans d'autres applications spécifiques.
- Réglage fin: Une fois le modèle pré-formé gelé et les couches supérieures supprimées, un nouvel ensemble de données est envoyé à l'algorithme d'apprentissage, qui est ensuite utilisé pour former le nouveau modèle et les spécificités de son application.
Il y a plus que les trois étapes, mais ce plan détaille approximativement le fonctionnement du processus d'apprentissage par transfert d'IA, avec quelques ajustements.
Limites de l'apprentissage par transfert de l'IA
Bien que l'apprentissage par transfert soit un concept précieux dans la formation de modèles efficaces et fiables, il existe de nombreuses limitations que vous devez connaître lorsque vous utilisez l'apprentissage par transfert pour former un modèle.
- Incompatibilité de tâche: Lors du choix d'un modèle de base pour l'apprentissage par transfert, il doit être aussi pertinent que possible par rapport aux problèmes que le nouveau modèle résoudra. L'utilisation d'un modèle qui classe les 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 pour les plantes. Plus le modèle de base est pertinent par rapport au modèle que vous essayez de créer, plus vous économiserez de temps et de ressources tout au long du processus d'apprentissage par transfert.
- Biais de l'ensemble de données: Bien que les modèles pré-formés soient souvent formés dans de grands ensembles de données, il est toujours possible qu'ils aient développé un biais particulier au cours de leur formation. L'utilisation du modèle de base fortement biaisé ferait également en sorte que le modèle hérite 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 de la boîte noire de l'apprentissage en profondeur.
- Sur-ajustement: L'un des principaux avantages de l'apprentissage par transfert est que vous pouvez utiliser un ensemble de données relativement petit pour entraîner davantage 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 fourni avec de nouvelles données.
Ainsi, bien que l'apprentissage par transfert soit une technique d'apprentissage pratique de l'IA, des limites existent et ce n'est pas une solution miracle.
Devriez-vous utiliser l'apprentissage par transfert?
Depuis la disponibilité 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é-formé pertinent pour les problèmes que votre modèle va 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 en profondeur nécessitera beaucoup de données, de temps et de compétences, ce qui n'aura aucun sens si vous pouvez réutiliser un modèle existant similaire à celui que vous envisagez de former. Donc, si vous souhaitez consacrer moins de temps et d'argent à la formation d'un modèle, essayez de former votre modèle via l'apprentissage par transfert.