Maison > Article > Périphériques technologiques > La longueur du contexte LLaMA2 monte en flèche jusqu'à 1 million de jetons, avec un seul hyperparamètre à ajuster.
Avec seulement quelques ajustements, la taille du contexte de support des grands modèles peut être étendue de 16 000 jetons à 1 million ? !
Toujours sur LLaMA 2 qui ne possède que 7 milliards de paramètres.
Vous devez savoir que même les Claude 2 et GPT-4 actuellement populaires prennent en charge des longueurs de contexte de seulement 100 000 et 32 000. Au-delà de cette plage, les grands modèles commenceront à dire des bêtises et seront incapables de se souvenir des choses.
Maintenant, une nouvelle étude de l'Université de Fudan et du Laboratoire d'intelligence artificielle de Shanghai a non seulement trouvé un moyen d'augmenter la longueur de la fenêtre contextuelle pour une série de grands modèles, mais a également découvert les règles.
Selon cette règle, il suffit d'ajuster 1 hyperparamètre, peut garantir l'effet de sortie tout en améliorant de manière stable les performances d'extrapolation des grands modèles.
L'extrapolation fait référence à la modification des performances de sortie lorsque la longueur d'entrée du grand modèle dépasse la longueur du texte pré-entraîné. Si la capacité d'extrapolation n'est pas bonne, une fois que la longueur d'entrée dépasse la longueur du texte pré-entraîné, le grand modèle « dira des bêtises ».
Alors, qu'est-ce que cela peut exactement améliorer les capacités d'extrapolation des grands modèles, et comment fait-il ?
Cette méthode d'amélioration des capacités d'extrapolation de grands modèles est liée au module appelé Positional Encoding dans l'architecture Transformer.
En fait, le module de mécanisme d'attention simple (Attention) ne peut pas distinguer les jetons dans différentes positions. Par exemple, « Je mange des pommes » et « Les pommes me mangent » n'ont aucune différence à ses yeux.
Par conséquent, un codage positionnel doit être ajouté pour lui permettre de comprendre les informations sur l'ordre des mots et de vraiment comprendre le sens d'une phrase.
Les méthodes actuelles d'encodage de position du Transformer incluent l'encodage de position absolue (intégration des informations de position dans l'entrée), l'encodage de position relative (écriture des informations de position dans le calcul du score d'attention) et l'encodage de position de rotation. Parmi eux, le plus populaire est l’encodage de position de rotation, qui est RoPE.
RoPE obtient l'effet de codage de position relative grâce à un codage de position absolue, mais par rapport au codage de position relative, il peut mieux améliorer le potentiel d'extrapolation des grands modèles.
Comment stimuler davantage les capacités d'extrapolation des grands modèles à l'aide du codage de position RoPE est également devenu une nouvelle direction dans de nombreuses études récentes.
Ces études sont principalement divisées en deux grandes écoles : limitation de l'attention et ajustement de l'angle de rotation.
Les recherches représentatives sur la limitation de l'attention incluent ALiBi, xPos, BCA, etc. Le StreamingLLM récemment proposé par le MIT peut permettre aux grands modèles d'atteindre une longueur d'entrée infinie (mais n'augmente pas la longueur de la fenêtre contextuelle), ce qui appartient au type de recherche dans cette direction.
△L'auteur de la source de l'image
a encore du travail à faire pour ajuster l'angle de rotation. Les représentants typiques tels que l'interpolation linéaire, Giraffe, Code LLaMA, LLaMA2 Long, etc. appartiennent tous à ce type de recherche.
△Auteur de la source de l'image
Prenant comme exemple la recherche récemment populaire LLaMA2 Long de Meta, il a proposé une méthode appelée RoPE ABF, qui a réussi à étendre la longueur du contexte des grands modèles en modifiant un hyperparamètre à 32 000 jetons. .
Cet hyperparamètre est exactement le "switch" découvert par des études telles que Code LLaMA et LLaMA2 Long -
la base de l'angle de rotation (base).
Ajustez-le simplement pour garantir de meilleures performances d'extrapolation des grands modèles.
Mais qu'il s'agisse de Code LLaMA ou de LLaMA2 Long, ils ne sont affinés que sur une base précise et une durée d'entraînement continue pour renforcer leurs capacités d'extrapolation.
Pouvons-nous trouver une règle garantissant que tous les grands modèles utilisant le codage de position RoPE puissent améliorer de manière stable les performances d'extrapolation ?
Des chercheurs de l'Université de Fudan et de l'Institut de recherche sur l'IA de Shanghai ont mené des expériences sur ce problème.
Ils ont d'abord analysé plusieurs paramètres qui affectent les capacités d'extrapolation RoPE et ont proposé un concept appelé Dimension critique (Dimension critique). Ensuite, sur la base de ce concept, ils ont résumé un ensemble de Loi de mise à l'échelle de l'extrapolation RoPE de l'extrapolation basée sur RoPE.
Appliquez simplement cetteloi pour garantir que tout grand modèle basé sur le codage positionnel RoPE peut améliorer les capacités d'extrapolation.
Voyons d’abord quelle est la dimension critique.D'après la définition, il est lié à la longueur du texte de pré-entraînement Ttrain, au nombre de dimensions de la tête d'auto-attention d et à d'autres paramètres. La méthode de calcul spécifique est la suivante : .
Parmi eux, 10000 est la "valeur initiale" de l'hyperparamètre et de la base de l'angle de rotation.
L'auteur a découvert que, que la base soit agrandie ou réduite, la capacité d'extrapolation du grand modèle basé sur RoPE peut finalement être améliorée. En revanche, lorsque la base de l'angle de rotation est de 10 000, la capacité d'extrapolation du grand modèle est. le pire.
Cet article estime qu'une base d'angle de rotation plus petite peut permettre aux informations de position d'être perçues dans plus de dimensions, et qu'une base d'angle de rotation plus grande peut exprimer des informations de position plus longues.
Dans ce cas, face à des corpus d'entraînement continu de différentes longueurs, de combien de base d'angle de rotation faut-il réduire et agrandir pour garantir que la capacité d'extrapolation des grands modèles est maximisée ?
L'article donne une règle de mise à l'échelle pour l'extrapolation RoPE étendue, qui est liée à des paramètres tels que les dimensions critiques, la longueur du texte d'entraînement continu et la longueur du texte de pré-entraînement des grands modèles :
Sur la base de cette règle, différents pré- une formation peut être effectuée et une formation continue sur la longueur du texte pour calculer directement les performances d'extrapolation du grand modèle, en d'autres termes, prédire la longueur du contexte prise en charge par le grand modèle.
À l'inverse, en utilisant cette règle, vous pouvez rapidement déduire comment ajuster au mieux la base de l'angle de rotation, améliorant ainsi les performances d'extrapolation des grands modèles.
L'auteur a testé cette série de tâches et a découvert qu'à titre expérimental, la saisie actuelle d'une longueur de 100 000, 500 000 ou même 1 million de jetons peut garantir que l'extrapolation peut être réalisée sans restrictions d'attention supplémentaires.
Dans le même temps, les travaux visant à améliorer les capacités d'extrapolation des grands modèles, notamment Code LLaMA et LLaMA2 Long, ont prouvé que cette règle est effectivement raisonnable et efficace.
De cette façon, il vous suffit « d'ajuster un paramètre » selon cette règle, et vous pouvez facilement étendre la longueur de la fenêtre contextuelle du grand modèle basé sur RoPE et améliorer la capacité d'extrapolation.
Liu Xiaoran, le premier auteur de l'article, a déclaré que cette recherche améliore actuellement les effets des tâches en aval en améliorant le corpus de formation continue. Une fois terminé, le code et le modèle seront open source. ~
Adresse papier :
https://arxiv.org/abs/2310.05209
Dépôt Github :
https://github.com/OpenLMLab/scaling-rope
Analyse papier blog :
https:// zhuanlan.zhihu.com/p/660073229
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!