


65 milliards de paramètres, 8 GPU peuvent affiner tous les paramètres : l'équipe de Qiu Xipeng a abaissé le seuil pour les grands modèles
En direction des grands modèles, les géants de la technologie forment des modèles plus grands, tandis que le monde universitaire réfléchit aux moyens de les optimiser. Récemment, la méthode d'optimisation de la puissance de calcul a atteint un nouveau niveau.
Les modèles linguistiques à grande échelle (LLM) ont révolutionné le domaine du traitement du langage naturel (NLP), démontrant des capacités extraordinaires telles que l'émergence et l'épiphanie. Cependant, si vous souhaitez construire un modèle doté de certaines capacités générales, des milliards de paramètres sont nécessaires, ce qui élève considérablement le seuil de recherche en PNL. Le processus de réglage du modèle LLM nécessite généralement des ressources GPU coûteuses, telles qu'un périphérique GPU de 8 × 80 Go, ce qui rend difficile la participation des petits laboratoires et entreprises à la recherche dans ce domaine.
Récemment, les gens étudient les techniques de réglage fin efficaces des paramètres (PEFT), telles que LoRA et Prefix-tuning, qui fournissent des solutions pour régler le LLM avec des ressources limitées. Cependant, ces méthodes ne fournissent pas de solutions pratiques pour le réglage fin de tous les paramètres, qui a été reconnu comme une méthode plus puissante que le réglage fin efficace des paramètres.
Dans l'article « Full Parameter Fine-tuning for Large Language Models with Limited Resources » soumis la semaine dernière par l'équipe Qiu Xipeng de l'université de Fudan, les chercheurs ont proposé un nouvel optimiseur LOw-Memory Optimization (LOMO).
En intégrant LOMO aux techniques d'économie de mémoire existantes, la nouvelle approche réduit l'utilisation de la mémoire à 10,8% par rapport à l'approche standard (solution DeepSpeed). En conséquence, la nouvelle approche permet un réglage précis des paramètres complets d’un modèle 65B sur une machine équipée de 8 × RTX 3090, chacun doté de 24 Go de mémoire.
Lien papier : https://arxiv.org/abs/2306.09782
Dans ce travail, l'auteur a analysé quatre aspects de l'utilisation de la mémoire dans LLM : activation, état de l'optimiseur, gradient tenseur et paramètres, et optimisé le processus de formation sous trois aspects :
- a repensé la fonction de l'optimiseur d'un point de vue algorithmique et a découvert que SGD est un bon moyen d'affiner les paramètres complets de LLM Substitute. Cela permet aux auteurs de supprimer des parties entières de l'état de l'optimiseur, puisque SGD ne stocke aucun état intermédiaire.
- L'optimiseur LOMO nouvellement proposé réduit l'utilisation de la mémoire des tenseurs de gradient à O(1), ce qui équivaut à l'utilisation de la mémoire du plus grand tenseur de gradient.
- Pour stabiliser l'entraînement de précision mixte à l'aide de LOMO, les auteurs intègrent la normalisation du gradient, la mise à l'échelle des pertes et convertissent certains calculs en pleine précision pendant l'entraînement.
La nouvelle technologie rend l'utilisation de la mémoire égale à l'utilisation des paramètres plus l'activation et les tenseurs de gradient maximum. L'utilisation de la mémoire pour le réglage fin complet des paramètres est poussée à l'extrême, ce qui n'équivaut qu'à l'utilisation de l'inférence. En effet, l'empreinte mémoire du processus forward+backward ne doit pas être inférieure à celle du processus forward seul. Il convient de noter que lors de l'utilisation de LOMO pour économiser de la mémoire, la nouvelle méthode garantit que le processus de réglage fin n'est pas affecté, car le processus de mise à jour des paramètres est toujours équivalent à SGD.
Cette étude évalue les performances de mémoire et de débit de LOMO et montre qu'avec LOMO, les chercheurs peuvent entraîner un modèle de paramètres 65B sur 8 GPU RTX 3090. De plus, pour vérifier les performances de LOMO sur les tâches en aval, ils ont appliqué LOMO pour régler tous les paramètres de LLM sur la collection de jeux de données SuperGLUE. Les résultats démontrent l'efficacité de LOMO pour optimiser les LLM avec des milliards de paramètres.
Introduction à la méthode
Dans la section méthode, cet article présente LOMO (LOW-MEMORY OPTIMIZATION) en détail. De manière générale, le tenseur de gradient représente le gradient d'un tenseur de paramètres et sa taille est la même que celle des paramètres, ce qui entraîne une surcharge de mémoire plus importante. Les frameworks d'apprentissage en profondeur existants tels que PyTorch stockent des tenseurs de gradient pour tous les paramètres. Actuellement, il existe deux raisons de stocker les tenseurs de gradient : le calcul de l'état de l'optimiseur et la normalisation des gradients.
Depuis que cette étude adopte SGD comme optimiseur, il n'y a pas d'état d'optimiseur dépendant du gradient, et ils ont des alternatives à la normalisation du gradient.
Ils ont proposé LOMO, comme le montre l'algorithme 1, LOMO intègre le calcul du gradient et la mise à jour des paramètres en une seule étape, évitant ainsi le stockage des tenseurs de gradient.
La figure suivante montre la comparaison entre SGD et LOMO dans les étapes de rétropropagation et de mise à jour des paramètres. Pi est le paramètre du modèle et Gi est le gradient correspondant à Pi. LOMO intègre le calcul du gradient et la mise à jour des paramètres en une seule étape pour minimiser le tenseur du gradient.
Pseudo-code de l'algorithme correspondant LOMO :
, qui est un deux -processus par étapes dimensionnelles, d'abord calculez le dégradé, puis mettez à jour les paramètres. La version fusionnée est
L'idée clé de cette recherche est de mettre à jour les paramètres immédiatement lors du calcul du gradient, afin que le tenseur du gradient ne soit pas stocké en mémoire. Cette étape peut être réalisée en injectant des fonctions de hook dans la rétropropagation. PyTorch fournit des API associées pour l'injection de fonctions de hook, mais il est impossible d'obtenir des mises à jour instantanées précises avec l'API actuelle. Au lieu de cela, cette étude stocke le gradient d’au plus un paramètre en mémoire et met à jour chaque paramètre un par un avec rétropropagation. Cette méthode réduit l'utilisation de la mémoire des dégradés du stockage des dégradés de tous les paramètres aux dégradés d'un seul paramètre.
La majeure partie de l'utilisation de la mémoire LOMO est cohérente avec l'utilisation de la mémoire des méthodes de réglage fin efficaces en termes de paramètres, ce qui indique que la combinaison de LOMO avec ces méthodes n'entraîne qu'une légère augmentation de la mémoire occupée par le dégradé. Cela permet d'ajuster davantage de paramètres pour la méthode PEFT.
Résultats expérimentaux
Dans la partie expérimentale, les chercheurs ont évalué la méthode proposée sous trois aspects, à savoir l'utilisation de la mémoire, le débit et les performances en aval. Sans autre explication, toutes les expériences ont été réalisées en utilisant les modèles LLaMA 7B à 65B.
Utilisation de la mémoire
Les chercheurs ont d'abord analysé l'état du modèle et activé l'utilisation de la mémoire pendant l'entraînement dans différents paramètres. Comme le montre le tableau 1, par rapport à l'optimiseur AdamW, l'utilisation de l'optimiseur LOMO entraîne une réduction significative de l'utilisation de la mémoire, de 102,20 Go à 14,58 Go par rapport à SGD, lors de la formation du modèle LLaMA-7B, l'utilisation de la mémoire diminue ; de 51,99 Go réduit à 14,58 Go. La réduction significative de l'utilisation de la mémoire est principalement due à la réduction des besoins en mémoire pour les gradients et les états de l'optimiseur. Par conséquent, pendant le processus de formation, la mémoire est principalement occupée par des paramètres, ce qui équivaut à l’utilisation de la mémoire lors de l’inférence.
Comme le montre la figure 2, si l'optimiseur AdamW est utilisé pour la formation LLaMA-7B, une proportion considérable de mémoire (73,7 %) est allouée à l'état de l'optimiseur. Le remplacement de l'optimiseur AdamW par l'optimiseur SGD réduit efficacement le pourcentage de mémoire occupé par l'état de l'optimiseur, réduisant ainsi l'utilisation de la mémoire GPU (de 102,20 Go à 51,99 Go). Si LOMO est utilisé, les mises à jour des paramètres et les retours en arrière sont fusionnés en une seule étape, éliminant ainsi les besoins en mémoire pour l'état de l'optimiseur.
Débit
Les chercheurs ont comparé les performances de débit de LOMO, AdamW et SGD. Les expériences ont été menées sur un serveur équipé de 8 GPU RTX 3090.
Pour le modèle 7B, le débit de LOMO présente un avantage significatif, dépassant AdamW et SGD d'environ 11 fois. Cette amélioration significative peut être attribuée à la capacité de LOMO à entraîner le modèle 7B sur un seul GPU, ce qui réduit la surcharge de communication inter-GPU. Le débit légèrement supérieur de SGD par rapport à AdamW peut être attribué au fait que SGD exclut le calcul de la quantité de mouvement et de la variance.
Quant au modèle 13B, en raison de limitations de mémoire, il ne peut pas être entraîné avec AdamW sur les 8 GPU RTX 3090 existants. Dans ce cas, le parallélisme des modèles est nécessaire pour LOMO, qui surpasse toujours SGD en termes de débit. Cet avantage est attribué à la nature économe en mémoire de LOMO et au fait que seuls deux GPU sont nécessaires pour entraîner le modèle avec les mêmes paramètres, réduisant ainsi les coûts de communication et améliorant le débit. De plus, SGD a rencontré des problèmes de manque de mémoire (MOO) sur 8 GPU RTX 3090 lors de la formation du modèle 30B, tandis que LOMO a bien fonctionné avec seulement 4 GPU.
Enfin, le chercheur a réussi à entraîner le modèle 65B à l'aide de 8 GPU RTX 3090, atteignant un débit de 4,93 TGS. Avec cette configuration de serveur et LOMO, le processus de formation du modèle sur 1000 échantillons (chaque échantillon contient 512 tokens) prend environ 3,6 heures.
Performance aval
Afin d'évaluer LOMO in fine- réglage de grands modèles de langage Pour déterminer son efficacité, les chercheurs ont mené une vaste série d'expériences. Ils ont comparé LOMO à deux autres méthodes, l'une est Zero-shot, qui ne nécessite pas de réglage fin, et l'autre est LoRA, une technique de réglage fin populaire et efficace en termes de paramètres.
- # 🎜🎜#LOMO fonctionne nettement mieux que Zero-shot ;
- Dans la plupart des expériences, LOMO surpasse généralement LoRA ;# 🎜🎜## 🎜🎜#LOMO peut s'adapter efficacement à des modèles comportant 65 milliards de paramètres.
- LOMO et LoRA sont essentiellement indépendants l'un de l'autre. Pour vérifier cette affirmation, les chercheurs ont mené des expériences sur les ensembles de données BoolQ et MultiRC à l'aide de LLaMA-13B. Les résultats sont présentés dans la figure 3.
Ils ont constaté que LOMO continuait d'améliorer les performances de LoRA, quel que soit le niveau des résultats obtenus par LoRA. Cela montre que les différentes méthodes de réglage fin employées par LOMO et LoRA sont complémentaires. Plus précisément, LOMO se concentre sur le réglage fin des poids du modèle pré-entraîné, tandis que LoRA ajuste d'autres modules. Par conséquent, LOMO n’affecte pas les performances de LoRA, mais facilite un meilleur réglage du modèle pour les tâches en aval ;
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

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.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

AI Hentai Generator
Générez AI Hentai gratuitement.

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)

Imaginez un modèle d'intelligence artificielle qui non seulement a la capacité de surpasser l'informatique traditionnelle, mais qui permet également d'obtenir des performances plus efficaces à moindre coût. Ce n'est pas de la science-fiction, DeepSeek-V2[1], le modèle MoE open source le plus puissant au monde est ici. DeepSeek-V2 est un puissant mélange de modèle de langage d'experts (MoE) présentant les caractéristiques d'une formation économique et d'une inférence efficace. Il est constitué de 236B paramètres, dont 21B servent à activer chaque marqueur. Par rapport à DeepSeek67B, DeepSeek-V2 offre des performances plus élevées, tout en économisant 42,5 % des coûts de formation, en réduisant le cache KV de 93,3 % et en augmentant le débit de génération maximal à 5,76 fois. DeepSeek est une entreprise explorant l'intelligence artificielle générale

Plus tôt ce mois-ci, des chercheurs du MIT et d'autres institutions ont proposé une alternative très prometteuse au MLP – KAN. KAN surpasse MLP en termes de précision et d’interprétabilité. Et il peut surpasser le MLP fonctionnant avec un plus grand nombre de paramètres avec un très petit nombre de paramètres. Par exemple, les auteurs ont déclaré avoir utilisé KAN pour reproduire les résultats de DeepMind avec un réseau plus petit et un degré d'automatisation plus élevé. Plus précisément, le MLP de DeepMind compte environ 300 000 paramètres, tandis que le KAN n'en compte qu'environ 200. KAN a une base mathématique solide comme MLP est basé sur le théorème d'approximation universelle, tandis que KAN est basé sur le théorème de représentation de Kolmogorov-Arnold. Comme le montre la figure ci-dessous, KAN a

L’IA change effectivement les mathématiques. Récemment, Tao Zhexuan, qui a prêté une attention particulière à cette question, a transmis le dernier numéro du « Bulletin de l'American Mathematical Society » (Bulletin de l'American Mathematical Society). En se concentrant sur le thème « Les machines changeront-elles les mathématiques ? », de nombreux mathématiciens ont exprimé leurs opinions. L'ensemble du processus a été plein d'étincelles, intense et passionnant. L'auteur dispose d'une équipe solide, comprenant Akshay Venkatesh, lauréat de la médaille Fields, le mathématicien chinois Zheng Lejun, l'informaticien de l'Université de New York Ernest Davis et de nombreux autres universitaires bien connus du secteur. Le monde de l’IA a radicalement changé. Vous savez, bon nombre de ces articles ont été soumis il y a un an.

Boston Dynamics Atlas entre officiellement dans l’ère des robots électriques ! Hier, l'Atlas hydraulique s'est retiré "en larmes" de la scène de l'histoire. Aujourd'hui, Boston Dynamics a annoncé que l'Atlas électrique était au travail. Il semble que dans le domaine des robots humanoïdes commerciaux, Boston Dynamics soit déterminé à concurrencer Tesla. Après la sortie de la nouvelle vidéo, elle a déjà été visionnée par plus d’un million de personnes en seulement dix heures. Les personnes âgées partent et de nouveaux rôles apparaissent. C'est une nécessité historique. Il ne fait aucun doute que cette année est l’année explosive des robots humanoïdes. Les internautes ont commenté : Les progrès des robots ont fait ressembler la cérémonie d'ouverture de cette année à des êtres humains, et le degré de liberté est bien plus grand que celui des humains. Mais n'est-ce vraiment pas un film d'horreur ? Au début de la vidéo, Atlas est allongé calmement sur le sol, apparemment sur le dos. Ce qui suit est à couper le souffle

Les performances de JAX, promu par Google, ont dépassé celles de Pytorch et TensorFlow lors de récents tests de référence, se classant au premier rang sur 7 indicateurs. Et le test n’a pas été fait sur le TPU présentant les meilleures performances JAX. Bien que parmi les développeurs, Pytorch soit toujours plus populaire que Tensorflow. Mais à l’avenir, des modèles plus volumineux seront peut-être formés et exécutés sur la base de la plate-forme JAX. Modèles Récemment, l'équipe Keras a comparé trois backends (TensorFlow, JAX, PyTorch) avec l'implémentation native de PyTorch et Keras2 avec TensorFlow. Premièrement, ils sélectionnent un ensemble de

La dernière vidéo du robot Optimus de Tesla est sortie, et il peut déjà fonctionner en usine. À vitesse normale, il trie les batteries (les batteries 4680 de Tesla) comme ceci : Le responsable a également publié à quoi cela ressemble à une vitesse 20 fois supérieure - sur un petit "poste de travail", en sélectionnant et en sélectionnant et en sélectionnant : Cette fois, il est publié L'un des points forts de la vidéo est qu'Optimus réalise ce travail en usine, de manière totalement autonome, sans intervention humaine tout au long du processus. Et du point de vue d'Optimus, il peut également récupérer et placer la batterie tordue, en se concentrant sur la correction automatique des erreurs : concernant la main d'Optimus, le scientifique de NVIDIA Jim Fan a donné une évaluation élevée : la main d'Optimus est l'un des robots à cinq doigts du monde. le plus adroit. Ses mains ne sont pas seulement tactiles

La détection de cibles est un problème relativement mature dans les systèmes de conduite autonome, parmi lesquels la détection des piétons est l'un des premiers algorithmes à être déployés. Des recherches très complètes ont été menées dans la plupart des articles. Cependant, la perception de la distance à l’aide de caméras fisheye pour une vue panoramique est relativement moins étudiée. En raison de la distorsion radiale importante, la représentation standard du cadre de délimitation est difficile à mettre en œuvre dans les caméras fisheye. Pour alléger la description ci-dessus, nous explorons les conceptions étendues de boîtes englobantes, d'ellipses et de polygones généraux dans des représentations polaires/angulaires et définissons une métrique de segmentation d'instance mIOU pour analyser ces représentations. Le modèle fisheyeDetNet proposé avec une forme polygonale surpasse les autres modèles et atteint simultanément 49,5 % de mAP sur l'ensemble de données de la caméra fisheye Valeo pour la conduite autonome.

Le FP8 et la précision de quantification inférieure en virgule flottante ne sont plus le « brevet » du H100 ! Lao Huang voulait que tout le monde utilise INT8/INT4, et l'équipe Microsoft DeepSpeed a commencé à exécuter FP6 sur A100 sans le soutien officiel de NVIDIA. Les résultats des tests montrent que la quantification FP6 de la nouvelle méthode TC-FPx sur A100 est proche ou parfois plus rapide que celle de INT4, et a une précision supérieure à celle de cette dernière. En plus de cela, il existe également une prise en charge de bout en bout des grands modèles, qui ont été open source et intégrés dans des cadres d'inférence d'apprentissage profond tels que DeepSpeed. Ce résultat a également un effet immédiat sur l'accélération des grands modèles : dans ce cadre, en utilisant une seule carte pour exécuter Llama, le débit est 2,65 fois supérieur à celui des cartes doubles. un
