Techniques LoRA et QLoRA

Copier l'URL

L'adaptation par modèle auxiliaire (Low-Rank Adaptation, LoRA) et l'adaptation par modèle auxiliaire quantifiée (Quantized Low-Rank Adaptation, QLoRA) sont toutes deux des techniques d'entraînement de modèles d'intelligence artificielle (IA). Plus précisément, elles désignent des formes de réglage fin efficace des paramètres (PEFT), une technique de réglage fin couramment utilisée en raison de son utilisation efficace des ressources par rapport à d'autres méthodes d'entraînement de grands modèles de langage (LLM)

Si les deux techniques aident au réglage fin efficace des LLM, elles présentent des différences en matière de manipulation du modèle et d'utilisation du stockage pour atteindre les résultats escomptés.

Découvrir Red Hat AI

Les LLM sont des modèles complexes constitués de nombreux paramètres (parfois des milliards) qui permettent leur entraînement à partir d'un certain volume de données. Une quantité plus importante de paramètres implique un plus grand stockage de données et, globalement, des capacités renforcées.

La méthode de réglage fin traditionnelle implique de réadapter (via une mise à jour ou un réajustement) chacun des paramètres afin de mettre à jour le LLM. Parfois, le modèle peut être constitué de milliards de paramètres, ce qui représente un temps de calcul et un coût considérables.

La mise à jour de chaque paramètre peut conduire au « surajustement », qui a lieu lorsque le modèle d'IA apprend du bruit ou des données inutiles en plus des données d'entraînement générales.

Découvrir les modèles de fondation 

Prenons l'exemple d'un professeur et ses élèves. La classe a appris les mathématiques durant toute l'année. Juste avant l'examen, le professeur souligne l'importance de la division longue. Pendant l'examen, plusieurs élèves se concentrent tellement sur la division longue qu'ils ont oublié comment résoudre des équations essentielles de parties tout aussi importantes. Cet exemple illustre les effets du surajustement sur le LLM lors d'un réglage fin classique.

En plus des problèmes de surajustement, la méthode de réglage fin traditionnelle peut engendrer une forte utilisation des ressources, et donc un coût important.

Les techniques de réglage fin QLoRA et LoRA offrent des raccourcis qui renforcent l'efficacité du réglage fin dans son ensemble. Plutôt que d'entraîner tous les paramètres, elles divisent le modèle en matrices pour n'entraîner que les paramètres nécessaires à l'apprentissage de nouvelles informations.

Pour poursuivre avec notre exemple, ces techniques de réglage fin sont capables d'introduire efficacement de nouveaux sujets, sans écarter le modèle des autres sujets de l'examen.

En savoir plus sur le réglage fin efficace des paramètres

Red Hat AI

La technique LoRA utilise de nouveaux paramètres pour entraîner le modèle d'IA à partir de nouvelles données.

Plutôt que d'entraîner tout le modèle et ses pondérations préentraînées, elles sont mises de côté (ou figées) afin de n'entraîner qu'une petite partie de ces paramètres. Ces échantillons sont désignés « matrices d'adaptation à faible rang », d'où le terme anglais « LoRA ».

On les appelle ainsi en raison du faible nombre de paramètres et de pondérations qu'ils contiennent. Une fois entraînés, ils sont associés aux paramètres d'origine pour fonctionner en tant que matrice unique. Cette technique permet d'effectuer le réglage fin bien plus efficacement.

Pour mieux comprendre, imaginons que la matrice LoRA est une ligne ou une colonne ajoutée à la matrice.

L'illustration suivante correspond à tous les paramètres qui feront l'objet de l'entraînement :

 

4x4 grid each cell contains a letter "P"

 

L'entraînement de toutes les pondérations des paramètres prend du temps et de la mémoire, et s'avère coûteux. Une fois terminé, un entraînement plus poussé peut être nécessaire, sans compter la quantité de ressources utilisées.

La colonne suivante représente une pondération à faible rang :

 

A single column made up of four cells. A letter "L" in each cell.

 

Lorsque les nouveaux paramètres à faible rang ont été entraînés, la ligne ou la colonne est ajoutée à la matrice d'origine. Le nouvel entraînement peut ainsi être ajouté aux paramètres.

 

5X4 grid with the cells of the first column containing the letter "L". All other cells contain the letter "P"

 

Le modèle d'IA peut désormais fonctionner avec les pondérations qui viennent d'être soumises au réglage fin.

L'entraînement de la pondération à faible rang est plus rapide, économique et utilise moins de mémoire. Une fois l'échantillon entraîné, il peut appliquer ce qu'il a appris dans la matrice globale sans utiliser de mémoire supplémentaire. 

En savoir plus sur l'IA générative

La technique LoRA permet d'accélérer, de simplifier et d'optimiser le réglage fin du modèle. Ses avantages incluent :

  • Diminution des paramètres à entraîner
  • Réduction du risque de surajustement
  • Accélération du délai d'entraînement
  • Réduction des besoins en mémoire
  • Augmentation de la flexibilité d'ajustement (l'entraînement peut se concentrer sur une partie du modèle)

La technique QLoRA est similaire à la technique LoRA dont elle est issue, mais elle présente un atout supplémentaire : elle utilise moins de mémoire.

Dans « QLoRA », la lettre « Q » signifie « quantifiée ». Dans ce contexte, la quantification du modèle désigne la compression de paramètres très complexes et précis (présentant beaucoup de nombres décimaux et une forte demande en mémoire) afin de les réduire et les rendre plus concis.

L'objectif est de soumettre une partie du modèle au réglage fin à l'aide des ressources de stockage et la mémoire d'un seul processeur graphique (GPU). Pour ce faire, la technique utilise le nouveau type de données NF4 NormalFloat (4 bits), qui est capable de quantifier les matrices en utilisant moins de ressources de mémoire que la technique LoRA. En comprimant les paramètres en données plus petites et faciles à gérer, la technique permet de réduire l'empreinte mémoire nécessaire jusqu'à quatre fois sa taille d'origine.

Une fois le modèle quantifié, l'utilisateur peut plus facilement effectuer son réglage fin en raison de sa petite taille.

Imaginons que la ligne suivante correspond aux paramètres d'origine du modèle :

 

A row of cells each containing the letter "P" representing 12 parameters. 3 are green, 6 are blue, 2 are yellow, and 1 is pink

 

Parmi ces 12 paramètres, 3 sont verts, 6 sont bleus, 2 sont jaunes et 1 est rose. Lorsque le modèle est quantifié, il est comprimé en une représentation du modèle précédent. 

 

A row of 4 cells, 1 green, 2 blue, and 1 yellow.

 

Après cette étape, il ne nous reste qu'un échantillon contenant 1 paramètre vert, 2 paramètres bleus et 1 paramètre jaune.

Lors de la quantification, nous risquons de perdre des données pendant la compression en raison de leur petite taille. Par exemple, le paramètre rose est manquant, car il ne constituait qu'une petite fraction du paramètre et ne représentait pas assez de données pour être reporté dans la version comprimée.

Si, dans cet exemple, le nombre de paramètres passe de 12 à 4, dans la réalité, des milliards de paramètres sont comprimés pour former un nombre fini pouvant être plus facilement réglé à l'aide d'un seul GPU.

Dans l'idéal, les données perdues peuvent être récupérées à partir des paramètres d'origine lorsque la matrice venant d'être entraînée est rajoutée à la matrice d'origine, sans pour autant perdre en précision ou en exactitude, mais ce n'est toutefois pas garanti.

Cette technique associe calcul haute performance et stockage de la mémoire à faible maintenance, ce qui permet de garantir l'extrême précision du modèle à l'aide de ressources limitées. 

Découvrir comment les modèles quantifiés gèrent les tâches à long contexte

QLoRA est une technique qui met l'accent sur de faibles besoins en mémoire. À l'instar de la technique LoRA, elle privilégie l'efficacité afin d'accélérer et de faciliter le processus de réglage fin. Ses avantages incluent :

  • Diminution des besoins en mémoire par rapport à la technique LoRA
  • Diminution des risques de surajustement des données
  • Maintien d'un niveau élevé de précision
  • Rapidité et facilité du réglage des modèles

Quel niveau de précision perd-on lors de la quantification des LLM ? Découvrez ce qui se passe lors de l'évaluation d'un demi-million de LLM quantifiés.

La technique LoRA peut être utilisée seule pour effectuer un réglage fin efficace des modèles. La technique QLoRA s'utilise quant à elle pour compléter la technique LoRA avec des processus qui renforcent son efficacité. De plus, elle nécessite nettement moins d'espace de stockage.

Pour déterminer la technique la plus adaptée à leurs besoins, les entreprises doivent réfléchir aux capacités de stockage et aux ressources dont elles disposent. En cas d'espace de stockage limité, la technique QLoRA sera plus facile à exécuter.

Red Hat® AI est une gamme de produits et services qui permettent aux entreprises d'avancer dans le déploiement de l'IA, qu'elles soient au tout début du processus ou déjà prêtes à évoluer dans le cloud hybride.

Elles bénéficient de modèles spécifiques, de techniques de personnalisation efficaces ainsi que de la flexibilité nécessaire pour développer et déployer des applications dans tous types d'environnements.

Découvrir Red Hat AI

Red Hat AI

La gamme Red Hat AI offre des solutions flexibles et économiques pour accélérer le développement et le déploiement de solutions d'intelligence artificielle (IA) dans les environnements de cloud hybride.

En savoir plus

L'AIOps, qu'est-ce que c'est ?

L'AIOps correspond à l'intelligence artificielle appliquée à l'exploitation informatique. Découvrez sa définition et ses exemples d'usage.

La génération augmentée de récupération, qu'est-ce que c'est ?

La génération augmentée de récupération ou RAG (Retrieval-Augmented Generation) associe des ressources externes à un LLM pour améliorer la précision des sorties d'un modèle d'IA générative.

Mise en œuvre des pratiques MLOps avec Red Hat OpenShift

Red Hat OpenShift accélère les workflows d'IA/ML et la distribution des applications intelligentes basées sur l'IA.

IA/ML : ressources recommandées

Articles associés