Les grands modèles varient également en taille, et leur taille est mesurée par le nombre de paramètres. GPT-3 possède 17,5 milliards de paramètres, et Grok-1 est encore plus impressionnant, avec 31,4 milliards de paramètres. Bien sûr, il en existe aussi des plus minces comme Llama, dont le nombre de paramètres n'est compris qu'entre 7 milliards et 70 milliards.
Le 70B mentionné ici ne fait peut-être pas référence à la quantité de données d'entraînement, mais aux paramètres densément regroupés dans le modèle. Ces paramètres sont comme de petites « cellules cérébrales ». Plus ils sont nombreux, plus le modèle peut être intelligent et mieux il peut comprendre les relations complexes entre les données. Grâce à ces « cellules cérébrales », les modèles peuvent être plus performants dans leurs tâches. Cependant, ces paramètres peuvent souvent causer des problèmes, en particulier dans les modèles à grande échelle. Ces « cellules cérébrales » peuvent interagir les unes avec les autres lors du traitement des tâches, ce qui rend difficile pour le modèle de comprendre les relations complexes entre les données. Grâce à ces « cellules cérébrales », les modèles peuvent être plus performants dans leurs tâches. Par conséquent, nous devons trouver un moyen de gérer la relation entre ces paramètres lorsque nous travaillons sur la tâche. Une méthode couramment utilisée consiste à régulariser.Les paramètres de ces grands modèles sont comme les «architectes» à l'intérieur du modèle, grâce à des algorithmes complexes et des processus de formation, cet immense monde linguistique se construit petit à petit. Chaque paramètre a son rôle, et ils fonctionnent ensemble pour permettre au modèle de comprendre plus précisément notre langage et de donner des réponses plus appropriées.
Alors, comment sont composés les paramètres du grand modèle ?
1. Paramètres dans les grands modèles
2. Exigences de mémoire pour les paramètres de grands modèles
2.1 Besoins en mémoire pendant la phase de formation
A tout moment de l'entraînement, pour chaque paramètre du modèle, il doit toujours y avoir suffisamment de mémoire GPU pour stocker :
La phase d'inférence est terminée en utilisant pré- Tâches LLM formées telles que la génération ou la traduction de texte. Ici, les besoins en mémoire sont généralement inférieurs, les principaux facteurs d'influence étant :
Contexte limité : l'inférence traite généralement des séquences d'entrée plus courtes, nécessitant moins de mémoire pour stocker les activations associées à des morceaux de texte plus petits. Pas de rétropropagation : Lors de l'inférence, LLM n'a pas besoin de conserver les valeurs intermédiaires de rétropropagation, une technique utilisée pour l'entraînement pour ajuster les paramètres. Cela élimine une grande partie de la surcharge de mémoire.2.3 Estimation de la mémoire des grands modèles basés sur Transformer
Plus précisément, pour les grands modèles basés sur Transformer, essayez de calculer la mémoire requise pour l'entraînement, où soit :
l : le nombre de couches de Transformera : Le nombre de têtes d'attentionDe plus, il y a deux couches Norm dans le transformateur, chacune nécessitant encore un espace de stockage bshp, pour un total de 2 bshp.
Ainsi, la mémoire requise pour la formation de grands modèles basée sur Transformer est d'environ : L(9bshp+bsh+2abssp+abss +2bshp) = Lbshp[16+2/p+(as/h)(2+1/p)]
Expliquez que la mémoire requise pour entraîner un grand modèle basé sur Transformer est approximativement : le nombre de couches du modèle x la taille du lot d'entraînement x la longueur de la séquence x la dimension de la couche cachée x la précision Une limite inférieure théorique sur les besoins en mémoire des paramètres du modèle lors de l'entraînement.
3. Exigences GPU pour les paramètres de grands modèles
Avec les exigences de mémoire pour les paramètres de grands modèles, nous pouvons estimer davantage le nombre de GPU requis pour la formation et l'inférence de grands modèles. Cependant, comme l'estimation du nombre de GPU repose sur un peu plus de paramètres, quelqu'un (Dr Walid Soula, https://medium.com/u/e41a20d646a8) a donné une formule simple pour une estimation approximative, qui a également une certaine signification de référence dans ingénierie.
Les paramètres du modèle en milliards sont le nombre de paramètres du modèle dans B ;
18 est le facteur d'utilisation de la mémoire des différents composants pendant l'entraînement 1,25 représente le processus d'activation requis. Quantité de mémoire ; Factor,Activation est une structure de données dynamique qui change à mesure que le modèle traite les données d'entrée.À des fins de déduction, cela peut être simplifié à 1/8 ~ 1/9 de la phase de formation. Bien sûr, ce ne sont que des estimations approximatives au sens général.
Comprendre la composition des grands paramètres de modèle et leurs exigences en matière de mémoire et de GPU aidera à comprendre en profondeur les défis rencontrés par la formation distribuée dans la pratique de l'ingénierie.
Le processus de mise en œuvre des stratégies de formation distribuée peut être considérablement simplifié en adoptant des frameworks conçus pour la formation distribuée, tels que TensorFlow ou PyTorch, qui fournissent des outils et des API riches. En utilisant des techniques telles que l'accumulation de gradient avant la mise à jour du modèle, ou en utilisant des techniques telles que la compression de gradient pour réduire la quantité d'échange de données entre les nœuds, les coûts de communication peuvent être efficacement réduits. Il est crucial de déterminer la taille de lot optimale pour la formation distribuée (le paramètre b mentionné ci-dessus) ; une valeur b trop petite peut augmenter la surcharge de communication, tandis qu'une valeur trop grande peut entraîner une mémoire insuffisante.
L'importance des LLMOps devient de plus en plus importante. La surveillance régulière des indicateurs de performance configurés pour la formation distribuée et l'ajustement des hyperparamètres, des stratégies de partitionnement et des paramètres de communication pour optimiser les performances sont essentiels pour améliorer l'efficacité de la formation. La mise en œuvre d'un mécanisme de point de contrôle pour le modèle et d'une récupération efficace en cas d'échec garantit que le processus de formation se poursuit sans avoir à repartir de zéro.
En d'autres termes, la formation/inférence de grands modèles est essentiellement un défi d'ingénierie d'architecture de système distribué complexe, tel que :
Cependant, en fait, la plupart des ingénieurs ne sont peut-être pas directement impliqués dans des travaux de formation spécifiques, mais se concentrent sur la façon d'utiliser les paramètres de grands modèles lors de la création d'applications.
Images
Ici, nous nous concentrons principalement sur les trois paramètres qui peuvent être configurés lors de l'utilisation de grands modèles pour produire du texte : Température, Top-K et Top-P. Le paramètre
Température est souvent compris à tort comme un interrupteur qui contrôle uniquement la créativité du modèle, mais en fait son rôle le plus profond est d'ajuster la « douceur » de la distribution de probabilité. Lorsque la valeur de Température est élevée, la distribution de probabilité devient plus douce et plus uniforme, ce qui encourage le modèle à générer une sortie plus diversifiée et plus créative. À l'inverse, des valeurs de température plus faibles rendront la distribution plus nette et auront des pics plus évidents, tendant ainsi à produire un résultat similaire aux données d'entraînement.
Le paramètre Top-K est utilisé pour limiter le modèle à la sortie des jetons Top-K les plus probables à chaque étape. De cette manière, le contenu incohérent ou dénué de sens dans la sortie peut être réduit. Cette stratégie crée un équilibre entre le maintien de la meilleure cohérence possible de la sortie tout en permettant un certain degré d'échantillonnage créatif.
Top-P est une autre méthode de décodage qui sélectionne un ensemble minimum de mots dont la probabilité cumulée dépasse la valeur P en sortie en fonction de la valeur P définie (0≤P≤1). Cette méthode permet d'augmenter ou de diminuer dynamiquement le nombre de mots sélectionnés en fonction de la distribution de probabilité du mot suivant. En particulier, lorsque la valeur P est 1, Top-P sélectionnera tous les mots, ce qui équivaut à un échantillonnage de la distribution entière, produisant ainsi une sortie plus diversifiée, tandis que lorsque la valeur P est 0, Top-P sélectionne uniquement les mots ; avec la probabilité la plus élevée, similaire au décodage gourmand, rend la sortie plus ciblée et cohérente.
Ces trois paramètres fonctionnent ensemble pour affecter le comportement du modèle. Par exemple, lorsque vous définissez Température = 0,8, Top-K = 36 et Top-P = 0,7, le modèle calcule d'abord la distribution de probabilité logarithmique non normalisée complète de l'ensemble du vocabulaire en fonction du contexte. Température = 0,8 signifie que chaque log de probabilité est divisée par 0,8, ce qui augmente effectivement la confiance du modèle dans ses prédictions avant normalisation. Top-K=36 signifie sélectionner les 36 marqueurs avec la probabilité logarithmique du rapport de fréquence la plus élevée. Ensuite, Top-P=0,7 applique un filtrage dans cet ensemble Top-K=36, en conservant le tri de probabilité élevée à faible jusqu'à ce que la probabilité cumulée atteigne 0,7. Enfin, cet ensemble filtré est renormalisé et utilisé dans le processus d'échantillonnage ultérieur.
Dans la pratique de l'ingénierie, il est important de comprendre les paramètres des grands modèles. Les paramètres jouent un rôle décisif dans les grands modèles. Ils définissent le comportement, les performances, les coûts de mise en œuvre et les besoins en ressources des grands modèles. Comprendre les paramètres d'un grand modèle en ingénierie signifie saisir la relation entre la complexité, les performances et les capacités du modèle. La configuration et l'optimisation correctes de ces paramètres du point de vue du stockage et de l'informatique permettent de mieux sélectionner et optimiser les modèles dans des applications pratiques pour s'adapter aux différentes exigences des tâches et contraintes de ressources.
【Référence】
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!