Utilisez-vous toujours Lora pour affiner votre LLM?
LORA (Adaptive à faible rang - arXiv.org/abs/2106.09685) est une technologie populaire qui est des modèles de grande langue rentables et affinés (LLM). Mais en 2024, un grand nombre de nouvelles technologies de réglage des paramètres efficaces ont émergé, et diverses alternatives LORA ont émergé les unes après les autres: SVF, SVFT, Milora, Pissa, Lora-XS? ... la plupart d'entre elles sont basées sur une technologie matricielle que j'aime beaucoup: la décomposition de la valeur singulière (SVD). Plongeons-y en profondeur.
Lora
L'informatique initiale de LORA est que tous les poids des modèles de réglage fin sont surévalués. Au lieu de cela, Lora gèle le modèle et ne forme qu'une paire de petites matrices "adaptateurs" de faible rang. Voir l'illustration ci-dessous (où W est n'importe quelle matrice de poids dans Transformer LLM).
Puisqu'il y a beaucoup moins de gradients à calculer et à stocker, la mémoire et les cycles de calcul peuvent être enregistrés. Par exemple, il s'agit d'un modèle Gemma 8b qui utilise le réglage fin de Lora pour simuler comment les pirates parlent: seulement 22 millions de paramètres peuvent être formés, et 8,5 milliards de paramètres restent gelés.
Lora est très populaire. Il est même entré dans les frameworks ML traditionnels tels que Keras en tant qu'API à une seule ligne:
<code>gemma.backbone.enable_lora(rank=8)</code>
Mais Lora est-elle la meilleure? Les chercheurs ont travaillé pour améliorer la formule. En fait, il existe de nombreuses façons de choisir une plus petite matrice «adaptateur». Étant donné que la plupart d'entre eux utilisent intelligemment la décomposition de la valeur singulière (SVD) de la matrice, faisons une pause pour un peu de mathématiques.
SVD: mathématiques simples
SVD est un bon outil pour comprendre la structure matricielle. Cette technique décompose la matrice en trois: w = usv t , où u et v sont orthogonaux (c'est-à-dire la transformée de base), et S est une matrice diagonale de valeurs singulières triées. Cette décomposition existe toujours.
Dans le "manuel", SVD, U et V sont des matrices carrées, tandis que S est une matrice rectangulaire avec des valeurs singulières sur la diagonale et les zéros suivis. En fait, vous pouvez utiliser la matrice carrée S et les rectangles u ou v - voir l'image - la partie tronquée est simplement multipliée par zéro. Ce SVD "économie" est utilisé dans des bibliothèques communes telles que Numpy.Linalg.Svd.
Alors, comment utilisons-nous cela pour choisir plus efficacement les poids pour s'entraîner? Jetons un coup d'œil à cinq techniques récentes de réglage fin basées sur SVD avec des instructions de commentaires.
SVF
L'alternative la plus simple à LORA est d'utiliser SVD sur la matrice de poids du modèle, puis de définir directement les valeurs singulières. Étrangement, il s'agit de la dernière technologie, appelée SVF, publiée dans le papier Transformers² (arXiv.org/abs/2501.06252v2).
SVF est beaucoup économique en termes de paramètres que LORA. De plus, il rend le modèle final composable. Pour plus d'informations à ce sujet, voir My Transformers² Description Ici, mais combiner deux modèles de réglage fin SVF n'est qu'une opération d'addition:
SVFT
Si vous avez besoin de paramètres plus formables, le papier SVFT (arxiv.org/abs/2405.19597) explore une variété de méthodes, d'abord en ajoutant des poids plus entraînables sur la diagonale.
Il évalue également une variété d'autres alternatives, comme les diffuser au hasard dans la matrice "M".
Plus important encore, le papier SVFT confirme que le fait d'avoir des valeurs plus entraînables que les diagonales est utile. Voir les résultats fins ci-dessous.
Viennent ensuite plusieurs techniques pour diviser les valeurs singulières en deux groupes de "gros" et de "petit". Mais avant de continuer, faisons une pause pour un peu plus de mathématiques SVD.
Plus de mathématiques SVD
Le SVD est généralement considéré comme décomposé en trois matrices w = usv t , mais il peut également être considéré comme une somme pondérée de nombreuses matrices de rang 1, pondérées par des valeurs singulières:
Si vous voulez le prouver, utilisez la formule de la forme usv t et de la multiplication matricielle pour exprimer un seul élément de matrice w jk d'une part, et utilisez la forme σ s i u i v i t d'autre part, et simplifiez le fait que S est une diagonale, et notez que c'est la même chose.
Dans cette représentation, il est facile de voir que vous pouvez diviser la somme en deux parties. Et comme vous pouvez toujours trier les valeurs singulières, vous pouvez les diviser en valeurs "grandes" et "petites" singulières.
Pour en revenir à la forme des trois matrices w = usv t , c'est à quoi ressemble la segmentation:
Sur la base de cette formule, deux articles explorent ce qui se passe si vous ajustez uniquement de grandes valeurs singulières ou seulement de petites valeurs singulières, c'est-à-dire Pissa et Milora.
Pisse
Pissa (principales valeurs singulières et adaptation vectorielle singulière, arXiv.org/abs/2404.02948) affirme que vous ne devriez ajuster que les grandes valeurs maîtresses. Le mécanisme est le suivant:
Extrait de l'article: "Pissa vise à approximer le réglage fin complet en ajustant les principaux composants singuliers qui sont censés capturer la nature de la matrice de poids. Au lieu de cela, Milora est conçue pour s'adapter à de nouvelles tâches tout en maximisant les connaissances du modèle sous-jacent."
Il y a aussi une découverte intéressante sur le papier Pissa: le réglage fin complet est sujet à un sur-ajustement. Avec des techniques de réglage fin à faible rang, vous pouvez obtenir de meilleurs résultats sur les valeurs absolues.
Milora
Milora, en revanche, affirme que vous ne devez ajuster la petite valeur maître. Il utilise un mécanisme similaire à Pissa:
Étonnamment, Milora semble avoir le dessus, du moins lorsqu'il a affiné les ensembles de données mathématiques, ce qui peut être assez cohérent avec la pré-formation d'origine. On peut affirmer que la Pissa devrait être plus adaptée pour plier davantage le comportement de la LLM de sa pré-formation.
Lora-xs
Enfin, je veux mentionner Lora-XS (arXiv.org/abs/2405.17604). Très similaire à Pissa, mais le mécanisme est légèrement différent. Cela montre également que beaucoup moins de paramètres que LORA donnent également de bons résultats.
Le document fournit une explication mathématique que cette configuration est "idéale" dans deux cas:
- Couper la valeur principale inférieure de SVD se rapproche toujours du puits de matrice de poids
- La distribution de données à réglage fin est proche de la distribution de données pré-formation
Les deux me semblent douter, donc je n'entrerai pas dans les mathématiques en détail. Quelques résultats:
L'hypothèse fondamentale semble être que les valeurs singulières sont divisées en "grandes" et "petites", mais est-ce vrai? J'ai rapidement vérifié le Gemma2 9b sur Colab. Conclusion: 99% des valeurs singulières sont dans la plage de 0,1 à 1,1. Je ne sais pas s'il est logique de les diviser en "gros" et "petits".
en conclusion
Il existe de nombreuses autres techniques de réglage fin pour une paramétrisation efficace. Il convient de mentionner:
- Dora (arXiv.org/abs/2402.09353), qui divise les poids en taille et en orientation, puis ajuste ces poids.
- Adalora (arXiv.org/abs/2303.10512), qui a un mécanisme complexe pour trouver le meilleur rang d'ajustement pour un budget de poids formé donné.
Ma conclusion: Pour dépasser la norme LORA avec des paramètres 10X, j'aime la simplicité du SVF de Transformers². Si vous avez besoin de poids plus entraînables, SVFT est une simple extension. Les deux utilisent toutes les valeurs singulières (rang complet, pas d'élagage des valeurs singulières) et sont toujours bon marché ?. Je vous souhaite une bonne affinerie!
Remarque: Toutes les illustrations sont créées par l'auteur ou extraites des articles arXiv.org pour des commentaires et des discussions.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Outils d'IA chauds

Undress AI Tool
Images de déshabillage gratuites

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Stock Market GPT
Recherche d'investissement basée sur l'IA pour des décisions plus intelligentes

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Le projet, surnommé «FOMC in Silico», recrée numériquement une réunion du comité fédéral de marché ouvert - la branche décisionnelle de la Banque centrale américaine - en utilisant des agents de l'IA pour représenter les membres réels du conseil d'administration. L'équipe de recherche a nourri chaque agent de données sur INDI

Lit une introduction à la liste des nominés en constante expansion, avec des dépôts juridiques remplis de décisions en justice, des livres faux attribués à de vrais auteurs et un hôte Airbnb utilisant l'IA pour fabriquer des images suggérant un invité causé des dommages qu'ils

Dans le même temps, les protocoles de stockage traditionnels sont remplacés par des technologies plus récentes qui répondent mieux aux besoins des charges de travail AI évolutives et hautes performances. Les solutions de stockage pour l'IA choisissent de plus en plus le stockage d'objets par rapport au stockage traditionnel en bloc et au stockage de fichiers. Ce changement est ironique car le stockage d'objets a été initialement développé en tant que plate-forme évolutive, durable et à faible coût, principalement pour les sauvegardes, les archives, le contenu des médias et les lacs de données à l'échelle du cloud. Cependant, contrairement aux systèmes traditionnels de stockage de fichiers et de blocs qui sont submergés par les demandes de traitement parallèle à grande échelle, le stockage d'objets fournit les capacités d'échelle et les performances requises par les applications d'IA. Fondée il y a plus de dix ans, Minio est un premier leader du marché du stockage d'objets. L'entreprise

L'impact psychologique de cette transformation est profond. Pendant des années, la technologie d'assistance a été lourde, stigmatisante et rigide - pour les utilisateurs dans un moule à une taille unique. Mais l'IA réécrit cette histoire, offrant des solutions personnalisées t

Un véhicule Waymo sans aucun passagers voyageait le long de Rural Road près de l'Arizona State University à Tempe lorsqu'il a commencé à ralentir pour se transformer à droite en parking - se préparant vivement à ramasser son prochain cavalier. Waymo confirme le signal de virage

Fait intéressant, de nouvelles études révèlent que l'une des utilisations les plus courantes pour les chatbots d'IA aujourd'hui est un soutien émotionnel et en santé mentale. De nombreux utilisateurs trouvent plus facile de s'ouvrir sur des sujets profondément personnels qu'ils pourraient hésiter à discuter avec des amis, de la famille, O

Il reste à voir que cela soit réalisable, mais une évaluation de Forbes de la dernière version de FSD a révélé qu'elle reste sujette aux erreurs. Lors d'un essai routier de 90 minutes à Los Angeles, dans les quartiers résidentiels et les autoroutes, le modèle Y 2024 avec T

La société a annoncé une augmentation de 359% dans son arriéré de commande lors de l'appel de bénéfice du premier trimestre 2026, déclenchant une augmentation de 36% de sa valeur de l'action ce jour-là. Cette étape a propulsé Ellison - un propriétaire de plus de 40% des actions de la société - au sommet du Billiona de Forbes
