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, ou Low-Rank Adaptation, est une technique de réglage fin efficace en termes de paramètres, particulièrement utile dans le domaine des grands modèles de langage et, par extension, d'autres grands modèles d'intelligence artificielle, y compris ceux utilisés dans la vision par ordinateur. Essentiellement, LoRA permet d'adapter efficacement des modèles pré-entraînés à des tâches ou à des ensembles de données spécifiques, sans qu'il soit nécessaire de réentraîner l'ensemble du modèle, ce qui peut s'avérer coûteux en temps et en argent.

Qu'est-ce que la LoRA ?

LoRA se concentre sur l'idée que les changements nécessaires pour adapter un modèle pré-entraîné à une nouvelle tâche se situent souvent dans un sous-espace de dimension inférieure. Au lieu de mettre à jour tous les paramètres d'un grand modèle, LoRA gèle les poids du modèle pré-entraîné et injecte un plus petit nombre de nouveaux paramètres, connus sous le nom de matrices de "faible rang", dans chaque couche de l'architecture Transformer. Lors du réglage fin, seules ces matrices de faible rang nouvellement ajoutées sont entraînées, ce qui réduit considérablement le nombre de paramètres pouvant être entraînés. Cette approche permet de réduire considérablement les coûts de calcul et les besoins en mémoire tout en obtenant des performances comparables à celles d'un réglage fin complet.

Cette méthode est particulièrement avantageuse lorsque l'on travaille avec des modèles tels que les grands modèles de langage (LLM) ou même les grands modèles de vision tels que les modèles Ultralytics YOLO , pour lesquels un réglage fin complet peut s'avérer impossible en raison de la taille même des modèles. En utilisant LoRA, les chercheurs et les praticiens peuvent personnaliser efficacement ces puissants modèles pour des applications spécifiques avec des ressources limitées.

Pertinence et applications de la LoRA

L'intérêt principal de LoRA réside dans son efficacité. Elle permet d'affiner des modèles massifs préformés sur des GPU de qualité grand public ou même sur des appareils périphériques, rendant ainsi l'IA avancée plus accessible. Cela a de vastes implications dans diverses applications :

  • Modèles personnalisés : LoRA permet de créer des modèles d'IA personnalisés adaptés aux préférences individuelles des utilisateurs ou à des besoins spécifiques. Par exemple, dans les systèmes de recommandation personnalisés ou la génération de contenu sur mesure, LoRA peut adapter efficacement un modèle général aux données individuelles des utilisateurs. Cela peut être particulièrement utile dans des applications telles que l'amélioration des expériences des utilisateurs avec des assistants virtuels pilotés par l'IA ou la création de contenu sur mesure dans les domaines créatifs.

  • Adaptation efficace au domaine : Dans les scénarios où un modèle pré-entraîné doit être adapté à un domaine très spécifique, comme l'analyse d'images médicales ou les applications industrielles spécialisées, LoRA peut être utilisé pour affiner efficacement le modèle sans avoir à procéder à un réentraînement approfondi. Par exemple, l'adaptation d'un modèle dedétection d'objets Ultralytics YOLO à une tâche très spécifique de détection de défauts de fabrication peut être accélérée à l'aide de LoRA. Cette efficacité est cruciale pour un déploiement et une itération rapides dans des domaines spécialisés.

  • Déploiement en périphérie : La taille réduite des modèles adaptés à LoRA par rapport aux modèles entièrement affinés les rend plus adaptés au déploiement sur des appareils informatiques de périphérie aux ressources de calcul limitées, tels que les smartphones ou les systèmes embarqués. Cela facilite l'inférence en temps réel et le traitement de l'IA sur l'appareil, ce qui ouvre des possibilités pour des applications telles que la détection d'objets en temps réel sur du matériel aux ressources limitées ou des applications mobiles efficaces.

LoRA vs. Full Fine-tuning

Le réglage fin traditionnel consiste à mettre à jour tous les paramètres d'un modèle pré-entraîné. Bien que cette méthode puisse donner d'excellents résultats, elle est coûteuse en termes de calcul et nécessite un espace de stockage important pour chaque modèle affiné. LoRA offre une alternative convaincante en :

  • Réduction des coûts de calcul : En n'entraînant que les matrices de faible rang, le nombre de calculs est considérablement réduit. Le réglage fin est donc plus rapide et moins gourmand en ressources.
  • Une empreinte mémoire plus faible : LoRA crée des modèles affinés beaucoup plus petits, car seules les matrices de faible rang sont ajoutées et entraînées, et non l'ensemble du modèle original. Cela est bénéfique pour le stockage et le déploiement, en particulier dans les environnements où la mémoire est limitée.
  • Expérimentation plus rapide : L'efficacité de LoRA permet d'expérimenter plus rapidement différentes tâches et différents ensembles de données, ce qui accélère le cycle de développement et de déploiement des applications d'IA.

Bien qu'un réglage fin complet puisse encore être préféré pour atteindre la plus grande précision possible dans certains cas, LoRA fournit une approche puissante et pratique pour une adaptation efficace, en trouvant un équilibre entre les performances et l'utilisation des ressources, et en rendant les techniques d'IA avancées plus largement accessibles. Des outils tels que Ultralytics HUB peuvent rationaliser davantage le processus de gestion et de déploiement des modèles adaptés à LoRA, en fournissant une plateforme conviviale pour tirer parti de cette technique efficace de réglage fin.

Tout lire