Glossaire

LoRA (Low-Rank Adaptation)

Découvre comment LoRA affine efficacement les grands modèles d'IA comme YOLO , en réduisant les coûts et en permettant un déploiement en périphérie avec un minimum de ressources.

Entraîne les modèles YOLO simplement
avec Ultralytics HUB

En savoir plus

LoRA (Low-Rank Adaptation) est une technique efficace utilisée pour adapter de grands modèles d'apprentissage machine (ML) pré-entraînés, tels que ceux utilisés pour le traitement du langage naturel (NLP) ou la vision par ordinateur (CV), à des tâches ou des ensembles de données spécifiques sans réentraîner l'ensemble du modèle. Il réduit considérablement le coût de calcul et les besoins en mémoire associés au réglage fin de modèles massifs, ce qui rend l'IA avancée plus accessible. LoRA s'inscrit dans le cadre des méthodes de paramétrage fin efficace (PEFT), qui se concentrent sur l'adaptation des modèles avec des changements minimaux de leurs paramètres.

Comment fonctionne la LoRA

Le réglage fin traditionnel consiste à mettre à jour tous les paramètres (ou poids du modèle) d'un modèle pré-entraîné à l'aide de nouvelles données. Pour les modèles comportant des milliards de paramètres, comme de nombreux LLM modernes ou de grands modèles de vision, ce processus exige des ressources informatiques considérables, en particulier des processeurs GPU et du temps. LoRA part du principe, étayé par la recherche, que les changements nécessaires à l'adaptation d'un modèle résident souvent dans un espace de moindre dimension, ce qui signifie qu'il n'est pas nécessaire de modifier chaque poids.

Au lieu de modifier tous les poids d'origine, LoRA les fige et injecte des matrices de "faible rang", plus petites et entraînables, dans des couches spécifiques de l'architecture du modèle, souvent dans des blocs Transformer (un composant commun à de nombreux grands modèles, expliqué plus en détail dans l'article L'attention est tout ce dont tu as besoin). Seules ces matrices nouvellement ajoutées (souvent appelées adaptateurs) sont mises à jour au cours du processus de réglage fin. Cela réduit considérablement le nombre de paramètres pouvant être entraînés, souvent par des ordres de grandeur (par exemple, des millions au lieu de milliards), tout en obtenant des performances comparables à celles d'un réglage fin complet dans de nombreux cas. Le document de recherche LoRA original fournit des détails techniques supplémentaires sur la méthodologie et son efficacité. Cette approche rend le processus de réglage fin beaucoup plus rapide et moins gourmand en mémoire.

Pertinence et avantages

Le principal avantage de la LoRA est son efficacité, qui se traduit par plusieurs avantages clés :

  • Coût de calcul réduit : Nécessite beaucoup moins de mémoireGPU et de puissance de calcul par rapport à un réglage fin complet, ce qui permet d'adapter de grands modèles sur du matériel moins puissant.
  • Empreinte de stockage plus petite : Puisque les poids du modèle original sont gelés, seuls les petits adaptateurs LoRA doivent être sauvegardés pour chaque tâche spécifique. C'est beaucoup plus efficace que de stocker une copie complète du modèle affiné pour chaque tâche.
  • Passage plus rapide d'une tâche à l'autre : le chargement de différents adaptateurs LoRA permet de passer rapidement d'une tâche à l'autre sans avoir à charger de grands modèles entièrement nouveaux.
  • Des performances comparables : Malgré l'apprentissage de beaucoup moins de paramètres, LoRA atteint souvent des niveaux de précision similaires à ceux obtenus par un réglage fin complet sur des tâches spécifiques en aval.
  • Permettre le déploiement en périphérie : La réduction des besoins en ressources facilite l'adaptation des modèles aux scénarios d'edge computing où la puissance de calcul et la mémoire sont limitées, ce qui permet d'apporter de puissantes capacités d'IA à des appareils comme les smartphones ou les systèmes embarqués(Edge AI expliqué par Intel).
  • Démocratisation : Abaisse la barrière à l'entrée pour les chercheurs et les développeurs qui souhaitent personnaliser des modèles de pointe comme GPT-4 ou Ultralytics YOLO d'Ultralytics.

Applications de LoRA

L'efficacité de LoRA la rend précieuse dans divers domaines :

  1. Adaptation de grands modèles linguistiques (LLM) : C'est l'une des utilisations les plus courantes. Les développeurs peuvent prendre un LLM massif pré-entraîné (comme ceux disponibles via Hugging Face) et utiliser LoRA pour le spécialiser dans des applications spécifiques telles que les chatbots personnalisés, les systèmes de réponse aux questions spécifiques à un domaine ou l'amélioration du résumé de texte pour des types de documents particuliers. Des bibliothèques comme la bibliothèque PEFT deHugging Face fournissent des implémentations faciles de LoRA.
  2. Personnalisation des modèles de vision par ordinateur : LoRA peut être appliqué à de grands modèles de vision par ordinateur pour des tâches telles que la détection d'objets, la segmentation d'images ou l'estimation de la pose. Par exemple, un modèle Ultralytics YOLO pré-entraîné sur un grand ensemble de données comme COCO pourrait être affiné efficacement à l'aide de LoRA pour détecter des types d'objets spécifiques dans un domaine de niche, comme des espèces menacées pour la conservation de la faune ou des défauts spécifiques dans le contrôle de la qualité de la fabrication. Des plateformes comme Ultralytics HUB peuvent rationaliser la formation et le déploiement de tels modèles adaptés.

LoRA et concepts connexes

Il est utile de distinguer la LoRA des autres techniques d'adaptation des modèles :

  • Mise au point complète : Cette méthode met à jour tous les poids d'un modèle pré-entraîné sur un nouvel ensemble de données. Bien que souvent efficace, elle nécessite des ressources informatiques et un stockage importants pour chaque modèle adapté. LoRA, en revanche, fige les poids d'origine et n'entraîne que les petites matrices d'adaptation injectées. Tu trouveras plus de détails dans notre glossaire sur le réglage fin et dans la présentation du réglage fin deNVIDIA.
  • Réglage des invites : Cette technique maintient les poids du modèle complètement gelés et apprend à la place des "invites douces" continues (vecteurs ajoutés à l'intégration des données d'entrée) pour orienter le comportement du modèle pour des tâches spécifiques. Contrairement à LoRA, elle ne modifie pas les poids du modèle mais se concentre uniquement sur l'adaptation de la représentation de l'entrée. En savoir plus sur le réglage des invites et l'ingénierie des invites.
  • Autres méthodes PEFT : LoRA n'est qu'une technique parmi d'autres dans le domaine plus large du Parameter-Efficient Fine-Tuning (PEFT). Les autres méthodes comprennent Adapter Tuning (similaire mais avec des structures d'adaptateur légèrement différentes), Prefix Tuning, et IA³, chacune offrant des compromis différents en matière d'efficacité des paramètres et de performance.

En résumé, LoRA offre un moyen puissant et économe en ressources de personnaliser de grands modèles de base pré-entraînés pour un large éventail de tâches spécifiques à la fois en NLP et en vision par ordinateur, ce qui rend l'IA avancée plus pratique et accessible.

Tout lire