Amis de ChatGPT : Lisez l'article classique du grand modèle de langage jusqu'à ce que vous le recrachiez

Zhihu : Autruche

Poste : Ingénieur Algorithme Alibaba

Texte original : https://zhuanlan.zhihu.com/p/620360553

Pour dire que l'entrée avec le plus d'écrans de balayage en 2023, ChatGPT peut être considérée comme inégalée. Depuis le récent GPT-4, l'innovation technologique a montré une tendance à briser le cercle, du cercle académique au cercle industriel en passant par le cercle des capitaux, et elle a progressivement affecté la vie quotidienne et le travail des gens ordinaires.

Franchement, pour les travaux liés à la génération de grands modèles de langage, j'ai longtemps eu une attitude conservatrice, pensant que cette direction est davantage une poursuite idéale de l'apprentissage en profondeur. Maintenant que le clown est en fait moi-même, peut-être qu'un excellent travail est appelé un excellent travail parce qu'il nécessite la poursuite continue d'un état idéal.

Plus près de nous, cette série entend suivre le mouvement et discuter des technologies liées au ChatGPT.Le contenu principal est divisé en trois parties, et il sera également divisé en trois articles :

1. Lecture intensive d'articles classiques [ceci] : en lisant cet article, vous pouvez comprendre l'idée générale du travail classique lié à ChatGPT et les principales conclusions de chaque période ;

2. Technologie de mise en œuvre open source [bientôt] : Résumez les principales orientations et méthodes des travailleurs open source qui ont suivi ChatGPT au cours des derniers mois ;

3. Le passé, le présent et l'avenir des tâches de génération de langage naturel [plus tard] : En plus du grand modèle de langage, parlez de la direction de recherche "traditionnelle" et de l'imagination future de la génération de langage naturel.

En raison du développement rapide des technologies connexes, le contenu des trois parties sera mis à jour régulièrement. Cet article est principalement destiné à l'étude de la première partie des articles classiques, et il existe de nombreux travaux connexes (comme le montre la figure), il n'est pas réaliste de les lire un par un, donc cet article choisit la série OpenAI la plus durable et les séries Google, ainsi que LLaMA, qui a une influence relativement importante ces derniers temps, et enfin l'adaptation chinoise est meilleure pour GLM et ChatGLM.

ed5888f0080236fa5ca65948f8598d15.png

Grands modèles au-dessus de 10B (le jaune est open source)

De plus, la lecture de cet article nécessite certains concepts de base du NLP, tels que savoir ce qu'est BERT et Transformer, quelle est l'architecture Encoder-Decoder, qu'est-ce que la pré-formation et le réglage fin, qu'est-ce qu'un modèle de langage, etc.

Série OpenAI

L'objectif de cette section est de lire les grands principes de ChatGPT à travers la série d'articles OpenAI. Son contexte de travail avancé peut être résumé par la figure suivante. Pour remonter à partir des dépendances, il faut comprendre Codex et instructGPT, puis GPT-3, puis GPT-2 et GPT-1. (GPT-4 est simplement considéré comme la version Plus de GPT-3.5 pour le moment, et il a augmenté la capacité de traitement des données multimodales, et nous en discuterons une fois que plus de détails seront rendus publics.)

8468e01f7d1f8ed8bcc1f25f80f42527.jpeg

GPT-1

Lien vers l'article : "Améliorer la compréhension des langues par la pré-formation générative"

motivation

L'objectif de la tâche est le même que le BERT (mais avant le BERT). On espère que la pré-formation avec des données non étiquetées à grande échelle et le réglage fin des tâches en aval peuvent résoudre les tâches classiques de la PNL et atténuer le problème des coûts élevés de collecte de données pour les tâches supervisées. . Bien que GPT-1 ne soit pas le premier travail à utiliser l'architecture de pré-formation-réglage fin, il s'agit également d'un travail très précoce utilisant Transformer-Decoder pour des tâches connexes.

Aperçu du programme

  • Structure du modèle : partie décodeur du transformateur

  • Méthode d'entraînement : méthode de génération autorégressive pour le pré-entraînement du modèle de langage, structure discriminative pour l'ajustement des tâches en aval.

quelques détails

  • Pré-formation :

    • Perte : l'objectif d'entraînement du modèle de langage classique, qui exprime la bibliothèque d'échantillons sans étiquette sous la forme d'un ensemble de séquences de jetons U = {u_1, ..., u_n}, et maximise l'estimation de probabilité suivante. Autrement dit, prédisez le jeton suivant jusqu'au jeton précédent d'un paragraphe, où k est la fenêtre de contexte.

4df4edf9f59b8a6f05c98874629097a7.jpeg
    • Modèle : Modélisation P à l'aide d'un décodeur Transformer multicouche, la formule simplifiée s'exprime comme suit. W_e est la matrice d'incorporation de jetons, W_p est la matrice de vecteurs de position, à travers le bloc transformateur multicouche, et enfin chaque jeton devient le vecteur codé h_n à travers le bloc transformateur, et passe finalement à travers une couche linéaire + softmax, qui est le prédit distribution du jeton suivant.

d7481f013e715f56193fc686f6c78870.jpeg
    • Données : Les premières données ne sont pas très exagérées. Il existe deux données principales de GPT-1 :

      • Ensemble de données BooksCorpus : comprend plus de 7 000 livres inédits ;

      • 1B Word Benchmark (facultatif).

  • réglage fin:

    • Modification du modèle : en ajoutant des jetons spéciaux au début [Début] et à la fin [Extraire] de l'entrée, etc., la sortie de la couche cachée de la fin [Extraire] est connectée à la couche entièrement connectée, ainsi qu'à la classification en aval et à d'autres variantes. les tâches sont exécutées. comme le montre l'image:

62425d6b1856e8b372929b550d5646f1.jpeg
    • perte:

5ff43017e054058d5775a8c77eba41ad.jpeg cd91d76da4808339910f6e2037134451.jpeg
    • Petits détails : dans le processus de réglage fin, l'ajout d'objectifs de pré-formation sur la base d'objectifs de tâches en aval permettra d'obtenir de meilleurs résultats.

09eb2badee30be35dde2544681cced03.jpeg

Résultats et discussion

  • Méthode de vérification principale : l'article vérifie principalement l'efficacité de la stratégie à travers l'effet des tâches en aval, à travers certains ensembles de données de tâches classiques. En conclusion, il existe encore de bons résultats sur de nombreux ensembles de données, en prenant comme exemple l'ensemble de données basé sur la classification, comme le montre la figure. On peut voir qu'il n'y a aucune trace de BERT dans l'élément de comparaison à ce moment.

cb081c2a247b1eba92b7d0112eb23d82.jpeg

GPT-2

Lien vers l'article : "Les modèles linguistiques sont des apprenants multitâches non supervisés"

motivation

Peu de temps après GPT-1, BERT est apparu, effectuant diverses tâches sur la liste. GPT-1 a essayé d'augmenter la taille du modèle, mais dans le cadre de la formation de pré-formation + réglage fin, il ne pouvait toujours pas battre BERT avec la même taille de paramètre ; mais la recherche doit continuer, essayer de changer le jeu, utilisez Zero-Shot comme argument de vente, et l'effet est bon.

Aperçu du programme

La méthode de GPT-2 pour réaliser Zero-Shot semble être relativement simple maintenant : toutes les tâches NLP sont considérées comme la modélisation de p(output|input), et si le système est implémenté en utilisant un modèle avec une capacité suffisante, il faut pour dire au modèle quelles tâches doivent être accomplies, alors l'objectif de modélisation peut être exprimé comme p(sortie|entrée, tâche).

Pour la sélection d'un grand modèle unifié, la structure du réseau est la même que GPT-1, et le mode d'utilisation est également très naturel : la tâche et l'entrée utilisent le langage naturel comme entrée pour GPT, et le modèle continue de prédire la prochaine plus grand jeton possible étape par étape jusqu'à la fin. Par exemple, des tâches de traduction : le modèle saisit "traduire le chinois vers l'anglais, le texte original est "J'aime l'apprentissage en profondeur"", et le modèle affiche "J'aime l'apprentissage en profondeur". Un autre exemple est la tâche de compréhension de lecture, le modèle entre "répondez à la question, le contenu 'xxx', la question 'xxx ?'", et le modèle génère la réponse à la question.

C'est vrai, c'est la première méthode d'invite (en fait, ce n'est pas la plus ancienne). La base de cela est qu'il existe une grande quantité de corpus structuré par Prompt dans l'ensemble de données de formation, ce qui permet au modèle d'apprendre ce qui doit être généré après avoir rencontré des invites similaires.

fa5ab37ac7eade394f51879ed04e094a.jpeg

quelques détails

  • Données d'entraînement : afin de prendre en charge le Zero-Shot multitâche, le modèle doit voir autant de données riches que possible, et l'objectif de la collecte de données est le même. Les points principaux sont les suivants :

    • Open source Common Crawl, données de pages Web de l'ensemble du réseau, l'ensemble de données est suffisamment volumineux et riche, mais il y a des problèmes de qualité, il n'est donc pas utilisé directement ;

    • Ensemble de données WebText et données de pages Web auto-construites, en se concentrant sur des pages Web propres et de haute qualité : ne conservez que les pages Web qui ont été filtrées par des personnes, mais le coût du filtrage humain est très élevé. La méthode ici est aussi longue que la plate-forme Reddit (similaire aux bars de publication nationaux, aux plateformes de partage social) Le lien hors site partagé par l'utilisateur nécessite également que la publication ait au moins 3 karma (similaire aux likes ?). On peut considérer que ce qui est partagé est souvent un contenu intéressant, utile ou intéressant.

    • WebText inclut enfin des liens 4500w, processus de post-traitement : 1. Après extraction du contenu de la page Web ; 2. Conservation du contenu après 2017 ; 3. Déduplication ; 4. Nettoyage heuristique pour obtenir des documents 800w+, environ 40 Go ; 4. Hors Encyclopédie Wiki documents, pour éviter le chevauchement avec les données de test en aval (car de nombreuses tâches de test incluent des données Wikipedia, donc d'autres données ne se chevauchent pas ?).

  • Modèle : La structure GPT est utilisée, mais certains ajustements ont été apportés au codage des entrées des fonctionnalités du modèle, à l'initialisation du poids, à la taille du dictionnaire, à la longueur des entrées, à la taille des lots, etc., principalement des mises à niveau.

Conclusion et discussion

  • conclusion principale :

    • L'article a essayé quatre tailles de modèles, dont 117M correspond à Bert-base (et GPT-1), 345M correspond aux paramètres Bert-large et le plus grand modèle est 1542M (1,5 milliard de paramètres).

de518cafd1cea863acfa7eb30094f083.jpeg
    • La sélection du modèle utilise 5 % de WebText comme données de vérification. L'expérience a révélé que les modèles de toutes tailles sont encore sous-ajustés. À mesure que le temps de formation augmente, l'effet sur l'ensemble de vérification peut encore continuer à s'améliorer.

    • Bien sûr, les meilleurs résultats à cette époque ont également été obtenus sur la plupart des ensembles de tâches Zero-Shot :

7bb3d12e0285c8422b946a1b03b86603.jpeg
  • Conclusion secondaire : dans la plupart des tâches, la relation entre la capacité du modèle et les indicateurs de base peut être trouvée selon laquelle, à mesure que la capacité du modèle augmente, l'effet continue de se renforcer. 1,5 milliard de paramètres ne semble pas avoir atteint le goulot d'étranglement, c'est-à-dire que si nous continuons à augmenter la capacité du modèle, la mesure dans laquelle l'effet peut être atteint est très imaginative. (Il y aura aussi une suite GPT-3 pour faire des miracles)

    • Tâches du test de livre pour enfants :

d93765f92faa430aa42ed4cf4f49252b.jpeg
    • Tâches Winograd Schema Challenge :

8df668e2ffb1322de9e7c9c1f97d58b6.jpeg
    • Autres tâches Zero-Shot

5154b26efd78f87a7b0e305e3f467a7a.jpeg
    • L'effet de l'ensemble de pré-formation du modèle de langage et de l'ensemble de vérification (plus la perplexité est petite, mieux c'est)

6c7ce3b565d7c669161c20ba91cc52cf.jpeg

GPT-3

Lien vers l'article : "Les modèles linguistiques sont des apprenants peu nombreux"

motivation

Après la sortie du BERT, bien que l'architecture pré-formation + mise au point ait obtenu des résultats étonnants (la série GPT n'est pas comparable à court terme), cette mise au point a de nombreuses limites :

  • Le réglage fin nécessite plus de données de domaine, le coût de l'étiquetage est élevé et certaines tâches spéciales sont encore plus difficiles (telles que la correction d'erreurs, l'écriture, les questions et réponses, etc.).

  • Le réglage fin fonctionne bien avec de petites quantités de données, il s'agit probablement d'un surajustement. On dit que de nombreuses tâches sont meilleures que les humains, mais les performances réelles sont en fait exagérées (le modèle n'exécute pas de tâches basées sur la connaissance et le raisonnement, et n'est pas intelligent).

  • Par rapport aux habitudes d'apprentissage humaines, une fois que les humains ont suffisamment de connaissances (pré-formation), ils n'ont pas besoin d'examiner une grande quantité de données supervisées pour effectuer des tâches (correspondant à un réglage fin), mais n'ont besoin d'en examiner qu'un petit nombre. d'échantillons.

L'article estime que bien que le réglage fin soit vraiment inefficace maintenant, il vaut toujours la peine de poursuivre le non-réglage fin. La méthode consiste à poursuivre la conclusion finale de GPT-2, un modèle plus grand, plus de données et plus d'informations (apprentissage en contexte).

Brève programmation

Principalement comparé à GPT-2 :

  • Suivant le modèle GPT-2 et la méthode de formation, la taille du modèle est mise à niveau à 175B (175 milliards de paramètres contre 1,5 milliard), ce modèle 175B est appelé GPT-3 ;

  • Contrairement au modèle BERT/GPT-1 qui utilise le réglage fin des tâches en aval pour la vérification des effets, et GPT-2 qui n'utilise que Zero-Shot pour la vérification, GPT-3 vérifie principalement sa capacité d'apprentissage en contexte (peut être considéré comme une amende -tuning, no Le mode de mise à jour du gradient dépend de la capacité à effectuer des tâches spécifiques via une invite et quelques exemples en entrée).

  • GPT-3 n'est pas incapable de faire des réglages fins, et je vais faire quelques travaux pour voir les performances des réglages fins à l'avenir (voici le travail de Codex, InstructGPT et ChatGPT).

quelques détails

  • Méthode de formation du modèle : comme mentionné précédemment, il n'y a pas d'innovation par rapport à GPT-2, c'est-à-dire un modèle plus grand, des données plus nombreuses et plus riches et un temps de formation plus long, non seulement Zero-Shot, mais aussi One-Shot et Few-Shot. tâches (le x-Shot ici n'ajuste pas le modèle, qui est ce qu'on appelle l'apprentissage en contexte, et il n'y a pas d'opération spéciale dans la phase de pré-formation), comme le montre la figure.

ca0ce1cd67e4fcbc3447f8fc2bfb14c7.jpeg
  • Modèle : suivant la structure de GPT-2, certaines optimisations ont été apportées à l'initialisation, à la normalisation et à la tokenisation du modèle. De plus, certains avantages similaires à Sparse Transformer ont été "copiés" (en bref, certaines opérations qui ont été vérifiées et efficaces dans la même période ont été ajoutés ou vérifiez une petite opération qui fonctionne par vous-même). Afin de vérifier l'effet de la capacité du modèle, l'article a formé des modèles de différentes tailles, le plus grand 175B appelé GPT-3. Afin de former de grands modèles, j'ai également travaillé sur le parallélisme des modèles et l'amélioration de l'efficacité (en fait, cette partie est également importante, mais je ne l'ai pas développée). La comparaison des paramètres de taille du modèle et de la surcharge des ressources de formation de certains travaux au cours de la même période est illustrée dans la figure :

37b69d6a610daa30fa84668ad21e4dc4.jpeg b89e946b6ac9c94e5d2ed8b12d2488b5.jpeg
  • Préparation des données d'entraînement :

    • L'article a révélé qu'après l'élargissement du modèle, l'impact négatif de l'introduction de certaines données sales n'est pas si important. Par conséquent, par rapport à GPT-2, GPT-3 a commencé à utiliser l'ensemble de données Common Crawl, mais a effectué un travail de nettoyage : 1. Conserver un contenu similaire à des ensembles de données de haute qualité (en utilisant des méthodes similaires ou discriminantes) ; 2. Déduplication ;

    • Enfin, combinez les données Common Crawl nettoyées avec l'ensemble de données de haute qualité existant pour obtenir l'ensemble de données d'apprentissage et utilisez-le pour l'échantillonnage avec différentes pondérations :

bf76639d01f32f368fd62876f84fb4d1.jpeg
  • Modèle de processus de formation :

    • Une plus grande taille de lot peut être utilisée pour les grands modèles, mais un taux d'apprentissage plus faible est requis ; la taille du lot est ajustée dynamiquement en fonction de l'échelle de bruit du gradient ; afin d'éviter l'OOM des grands modèles, une gamme complète de parallélisme de modèle est utilisé, et Microsoft fournit un support matériel et logiciel.

Conclusion et discussion

  • La principale conclusion : l'effet global est bon, comparé à divers ensembles de données, tâches liées à la NLU, GPT-3 a bien fonctionné (certains ensembles de données ont même dépassé la méthode de réglage fin supervisé ); dans l'AQ, la traduction, le raisonnement et d'autres tâches, il L'écart entre la supervision à distance et le réglage fin des modèles est évident, les tâches de génération peuvent être fondamentalement difficiles à distinguer pour les humains. Par exemple, plusieurs tâches principales :

    • SuperGLUE : comprendre la tâche avant tout

90f8f5d2683d1094c94656fd946fbba8.jpeg
    • Winogrande : raisonnement basé sur les tâches

d9bcc83a15ee815a412358dd3664fd6f.jpeg
    • TriviaQA : Compréhension de lecture basée sur les tâches

0fbbe37378596dfcc22ed036742b2928.jpeg
  • Conclusions secondaires :

    • À partir de la courbe de conclusion principale, on peut clairement constater que peu de coups est meilleur que zéro coup, et plus le modèle est grand, mieux c'est (absurdité), et le 175B ne semble pas avoir atteint la limite, et l'effet de les modèles plus grands peuvent continuer à augmenter.

    • Une autre donnée montre que plus le modèle est grand, plus l'espace pour la réduction des pertes est grand.Le plus grand modèle de la version actuelle n'a toujours pas convergé (courbe jaune ; taux de sortie) diminue progressivement.

2896626094cb81476b2894ca1810dc66.jpeg
    • Parce que l'effet de génération de modèle est difficile à distinguer entre vrai et faux, l'article se concentre également sur le biais, l'immoralité et l'utilisation abusive du modèle, il est donc également décidé de ne pas ouvrir de source (OpenAI est sur la route de CloseAI) !

Manuscrit

Lien vers l'article : "Evaluating Large Language Models Trained on Code"

motivation

Comme mentionné dans le document GPT-3, le GPT peut être affiné, mais cela se fera à l'avenir, et le Codex est l'une des tâches d'ajustement. La tâche consiste à explorer l'affinement du modèle GPT dans le sens de la génération de code, ce qui peut être considéré comme un article dans le sens de l'application.

Brève programmation

Plus précisément, le Codex utilise des commentaires de code pour générer du code. Les données d'entraînement sont obtenues à partir de github, principalement en langage python. Afin de vérifier l'effet du modèle, le Codex a créé un nouvel ensemble de données (164 questions de code originales, qui peuvent être considérées comme des questions de leetcode classiques et des questions d'entretien), et a vérifié l'exactitude du code généré par le biais de tests unitaires.

En fin de compte, le Codex peut atteindre un taux de réussite au test de 28 % (GPT-3 ne peut résoudre que 0 %) ); si l'échantillonnage répété est autorisé à générer plusieurs résultats, choisissez 100, et un taux de réussite de 70 % peut être atteint (pensez à propos de combien vous pouvez passer). Après quelques stratégies de reclassement, le taux de réussite est proche de 80 %.

dffcfb13d2d847ce2cad8cbcf249cc6b.jpeg

quelques détails

  • Préparation de l'ensemble de vérification : comme il n'y avait pas d'ensemble de vérification prêt à l'emploi généré par le code d'évaluation auparavant, l'article a conçu un HumanEval par lui-même. Et utilisez pass@k comme indicateur d'évaluation (si l'un des k résultats peut passer, il sera considéré comme réussi, puis le taux de réussite sera calculé). Considérant que la sécurité du code généré est incontrôlable, il doit être exécuté dans un environnement sandbox (ce n'est pas grave s'il plante). Les exemples de données de HumanEval sont les suivants, y compris les commentaires de code et les réponses standard :

e334ac5ed7b84331e43dacdf06f2ed5c.jpeg
  • Données de formation : en mai 2020, impliquant 5,4 millions de référentiels Github, dont 179 Go de fichiers Python, la taille du fichier est inférieure à 1 Mo. Effectuez un filtrage, les principaux éléments de filtrage sont du code généré automatiquement, la longueur de ligne moyenne est supérieure à 100, la longueur de ligne maximale est supérieure à 1000, contient un certain pourcentage de nombres, etc. La taille finale du jeu de données est de 159 Go.

  • Modèle : Compte tenu de la tâche de génération, il devrait être avantageux d'utiliser le modèle de pré-formation de la série GPT. Le modèle 13B GPT a été sélectionné comme modèle principal pour le réglage fin. Il convient de mentionner que l'utilisation d'un réglage fin GPT pré-formé n'est pas meilleure que l'utilisation de données de code pour former à partir de zéro (cela devrait être parce que la quantité de données est suffisamment importante), mais l'utilisation d'un réglage fin converge plus rapidement. Détails du modèle :

    • La configuration des paramètres est similaire à celle de GPT-3 ; en fonction des caractéristiques des données de code, un tokenizer spécial est créé, et finalement 30 % des jetons sont réduits ; caractères d'arrêt spéciaux ('\nclass', '\ndef' , etc.) sont utilisés pour assurer l'intégrité du code de données d'échantillon ;

Conclusion et discussion

  • conclusion principale :

    • Différents ajustements de paramètres et le nombre d'échantillons affectent de manière significative le taux de réussite du code généré.

70895bec57b7bd2cb23102ff6bb3ced3.jpeg
    • Si vous ne choisissez qu'une seule réponse, l'utilisation de certains indicateurs de sortie du modèle, tels que la log-probabilité moyenne maximale, peut être meilleure que la sélection aléatoire ; l'utilisation de tests unitaires avec des connaissances préalables pour la sélection de code peut obtenir les meilleurs résultats théoriques (Oracle) .

bef478f317b5654e6692fe2a138f2856.jpeg
  • Conclusion secondaire : Parce que l'effet n'est pas mauvais, il semble que l'effet sera amélioré lorsque le modèle sera plus grand dans la tendance. À la fin de l'article, nous discutons de la préoccupation concernant la capacité de la machine à écrire du code (l'auto-optimisation est le plus terrible); de plus, il n'y a pas de surprises dans le code Discrimination, préjudice moral. (Cela vient probablement du fait qu'il y a des gens dans le code qui le disent bien, le code se nomme avec Fxxk, et il y a des préjugés là où il y a des gens).

InstruireGPT

Lien vers l'article : "Entraîner des modèles de langage pour suivre des instructions avec un retour humain"

motivation

Une autre exploration de mise au point de GPT, utilisant des instructions utilisateur et des réponses préférées pour affiner le modèle GPT, afin que le contenu généré par le modèle soit plus conforme aux intentions de l'utilisateur, plus réaliste et utile (Alignement, processus d'alignement). Le point de départ pour ce faire est de faire face à un scénario d'application classique. L'utilisateur déclare une intention à une commande et s'attend à ce que le modèle génère un contenu utile et inoffensif. Cependant, le grand modèle de langage GPT formé avec une grande quantité de données de page Web ne peut pas répondre directement à cette demande, il est donc nécessaire d'affiner.

Brève programmation

Le processus de mise au point des instructions se décompose en trois étapes (RLHF, Reinforcement Learning from Human Feedback), comme le montre la figure ci-dessous :

1. Préparez un lot d'invites (écrites à la main par les annotateurs source et les demandes de l'API OpenAI) ; pour ce lot d'invites, les annotateurs écrivent les réponses attendues à la main et utilisent ces données d'invite + réponse pour affiner le modèle de génération GPT-3, qu'on appelle ici politique supervisée ;

2. Utilisez le modèle affiné pour générer des réponses basées sur plusieurs invites (une invite génère plusieurs échantillons pour générer une réponse). À ce stade, l'externalisation n'a besoin que de marquer l'ordre relatif du contenu généré ; utilisez ces données marquées pour former un modèle de récompense (modèle RM), une invite d'entrée et une réponse, et le modèle génère un score (le modèle GPT est également utilisé ici).

3. Échantillonner plus d'invites, en utilisant la voie de l'apprentissage par renforcement, continuer à former le modèle génératif, et la récompense de l'apprentissage par renforcement est notée par le modèle à l'étape 2.

Les étapes 2 et 3 sont un processus itératif continu, c'est-à-dire que le meilleur modèle génératif (politique) formé à l'étape 3 peut être utilisé pour collecter plus de données avec des étiquettes d'ordre relatif, qui sont utilisées pour former un nouveau modèle RM (c'est-à-dire l'étape 2 ), puis formez un nouveau modèle génératif (correspondant à l'étape 3). La plupart des données d'annotation d'ordre relatif proviennent de l'étape 1, et certaines proviennent des itérations des étapes 2 et 3.

De plus, cet article n'est pas le premier ouvrage utilisant cette méthode, il existe également un article précédent "Apprendre à résumer à partir de la rétroaction humaine", qui utilise une méthode similaire en trois étapes pour résumer les tâches. C'est aussi le travail d'OpenAI, qui reflète la continuité du travail, pas du jour au lendemain, et l'inspiration ne veut pas dire qu'il y a quelque chose.

bad407eb25fb3983c9d1817d3d72bc47.jpeg

quelques détails

  • processus de collecte de données

    • Étape de démarrage à froid : supervisez la première version d'InstructGPT entraînée par certaines données d'invite et de réponse étiquetées manuellement ; étape d'enrichissement : déployez le service en ligne de la version d'essai pour collecter des invites utilisateur réelles plus nombreuses et plus riches. Ce travail n'utilise pas les données de l'utilisateur du service de l'environnement formel en ligne, les données de la version d'essai seront utilisées pour l'étiquetage des données et la formation du modèle, et l'utilisateur est également informé à l'avance ;

    • Les invites collectées sont dédupliquées en fonction du préfixe commun le plus long ;

    • Chaque utilisateur dispose d'un maximum de 200 invites pour éviter que le modèle ne réponde aux préférences individuelles de l'utilisateur ; l'ensemble d'apprentissage, l'ensemble de vérification et l'ensemble de test n'incluent pas les mêmes utilisateurs (ce qui met l'accent sur la capacité de généralisation de la dimension utilisateur) ;

    • Le filtrage des informations liées à l'identité personnelle dans l'invite permet également d'éviter que le modèle n'apprenne les caractéristiques de l'utilisateur ;

    • Les données d'entraînement de la première version d'InstructGPT étaient des invites et des réponses écrites à la main par des sous-traitants. Les invites de démarrage à froid comprennent 3 catégories : 1. Toutes les questions courantes sur les tâches, poursuivant la richesse des tâches ; 2. Rédigez plusieurs requêtes et réponses dans le même type d'invite. 3. Demandes d'invite d'imitation d'utilisateurs réels ;

    • Après les opérations ci-dessus, trois types de données sont obtenus : 1. Ensemble de données SFT, ensemble d'entraînement 13k invites (de l'API et manuscrites par les annotateurs), utilisé pour entraîner le modèle SFT ; 2. Ensemble de données RM, ensemble d'entraînement 33k invites (de l'API et Écrit à la main par l'étiqueteur), le tri des réponses de sortie du modèle de génération manuelle d'étiquettes est utilisé pour former le modèle RM ; 3. L'ensemble de données PPO, 31k invites (uniquement à partir de l'API), ne nécessite pas d'étiquetage manuel et est utilisé pour le réglage fin RLHF.

  • fonctionnalités d'invite :

    • La distribution et les exemples de types d'instructions rapides d'utilisateurs réels sont présentés dans la figure, dont 96 % sont en anglais, mais on constate qu'il a une capacité de généralisation à d'autres langues.

e0e1746446c116ff817ccff6d85ba72c.jpeg
  • Détails de l'annotation des données (également critiques, dignes de référence) :

    • Une équipe de labellisation externalisée, composée de 40 prestataires, est censée améliorer la diversité de la labellisation et éviter que le modèle ne soit sensible au style de la labellisation ;

    • Les annotateurs ont été testés (examens, tests de personnalité) dans le but de sélectionner les annotateurs sensibles à différents groupes (religion, orientation sexuelle, race, etc.) et capables d'identifier des contenus potentiellement préjudiciables ;

    • Les annotateurs doivent être capables de juger avec précision les intentions de l'utilisateur et d'éviter les intentions ambiguës ; prendre en compte les intentions implicites et être capables d'identifier certains jurons, préjugés et fausses informations potentiels et inductifs ;

    • Il y a un léger conflit dans l'alignement des intentions des phases de formation et de vérification : la phase de formation met l'accent sur l'utilité du contenu généré, tandis que la phase de vérification se concentre sur la véracité et l'innocuité du contenu ;

    • Dans le processus de labellisation, le développement des algorithmes et le personnel de labellisation communiquent étroitement.Pour ce faire, un processus d'entrée a été fait pour le personnel de labellisation externalisé (peut avoir à payer la sécurité sociale=_=) ;

    • Afin de tester la capacité de généralisation du modèle aux étiqueteurs, une partie des étiqueteurs test (étiqueteurs tenus, vrais outillages, rigoureux) sont réservés.Les données produites par ces étiqueteurs ne sont pas utilisées pour la formation, et ces personnels n'ont pas été testés.

    • Bien que la tâche d'étiquetage soit difficile, la cohérence d'étiquetage des étiqueteuses n'est pas mauvaise. La cohérence d'étiquetage des étiqueteuses de formation est de 72,6 ± 1,5 % et la cohérence des étiqueteuses de test est de 77,3 ± 1,3 %.

  • Mise en œuvre du modèle : identique au processus de formation, comprenant trois parties

    • Réglage fin supervisé (SFT) : à l'aide des données marquées par l'étiqueteuse, réglage fin supervisé du modèle GPT, formé pour 16 époques, et la décroissance du cosinus du taux d'apprentissage. La sélection du modèle utilise le score du modèle RM (poulet et œuf) sur le jeu de validation. Il convient de mentionner que le modèle SFT ici sur-adapte après 1 époque sur l'ensemble de vérification, mais continuer à faire plus d'époques est bénéfique pour le score RM et la préférence humaine.

    • Modélisation des récompenses (RM) :

      • Modèle : La même structure de modèle SFT GPT, mais un autre 6B est formé (175B est instable, ne convient pas à la formation RL suivante), l'entrée est l'invite et le contenu généré, et la mise en commun est suivie d'une connexion complète (peut-être) pour générer des points de récompense scalaires.

      • La fonction de perte est exprimée comme suit :

467ed23eebaf573f37b434579dbd9a47.jpeg
      • K est le nombre de réponses générées par un modèle d'invite, et les étiqueteurs trient les modèles K ; K est de 4 à 9, et le coût du marquage de 9 et 4 est similaire ;

      • Un biais est nécessaire pour normaliser la récompense afin que sa valeur moyenne soit 0, ce qui est pratique pour l'utilisation de RL en aval (le biais peut ici être la valeur moyenne de la reformulation, qui est également une opération de routine de RL) ;

    • Apprentissage par renforcement (RL), deux modèles expérimentaux :

      • Modèle 'PPO' : utiliser directement l'algorithme PPO classique, un algorithme RL hors ligne, le but est de maximiser la récompense du retour du modèle, tout en tenant compte de la divergence KL du modèle en ligne et du modèle hors ligne (ici le modèle hors ligne est le modèle SFT, et le modèle en ligne est Pour que le modèle cible soit optimisé, les paramètres du modèle en ligne seront périodiquement synchronisés avec le modèle hors ligne. Si vous n'êtes pas familier avec RL, vous pouvez simplement comprendre son objectif); la sortie de récompense par le modèle est noté par RM ;

      • Modèle 'PPO-ptx' : cible de pré-formation PPO+ (avec cette cible, il a été vérifié qu'elle peut prendre en compte l'effet des tâches publiques du TAL), cible finale d'optimisation, maximisant :

fa11a57770cc7c3921ad3a4f42921292.jpeg
  • Méthode de vérification : évaluez la capacité du modèle sous deux aspects, 1. Si la réponse générée est appréciée par les gens ; 2. Dans quelle mesure la tâche PNL classique est-elle résolue.

    • L'effet de vérification rapide dans la demande d'API :

      • L'invite de sous-échantillonnage de la distribution réelle est utilisée comme ensemble de test ;

      • le modèle SFT GPT-3 de 175B comme ligne de base ;

      • Les annotateurs évaluent le contenu généré par chaque modèle avec un score de 1 à 7 likes/reconnaissance ;

      • La base de la reconnaissance est utile, honnête et inoffensive, et il existe de nombreuses règles détaillées pour chaque dimension.

    • Dans les ensembles de données NLP open source, il existe deux catégories :

      • Mesurer les ensembles de données pour la sécurité, l'authenticité, les dommages et les biais ;

      • Résultats zéro entropie des ensembles de données de tâches PNL classiques, tels que la compréhension de la lecture, la réponse aux questions, le résumé, etc.

Conclusion et discussion

  • conclusion principale :

    • Pour l'invite de l'ensemble de tests obtenue via l'API, RLHF s'avère meilleur que la ligne de base :

921afb1714de39427408a4e1b61a11c1.jpeg
    • Comparé à d'autres modèles, il est également bon:

1e4739cca137c8ee10c518cfa17b17a7.jpeg
  • Conclusions secondaires (évaluation vernaculaire du contenu généré par InstructGPT) :

    • Les annotateurs pensent généralement que le contenu généré par InstructGPT est bien meilleur que GPT-3 ;

    • Le contenu généré par le modèle InstructGPT est plus factuel que GPT-3 (moins d'erreurs factuelles) ;

    • Le contenu généré par InstructGPT est meilleur que GPT-3 en termes de nocivité, mais pas beaucoup plus fort en biais ;

    • Dans le processus de réglage fin du RLHF, en raison de la "taxe d'alignement", les performances des tâches de PNL open source se sont détériorées, mais l'objectif de pré-formation du modèle de langage peut être ajouté sur la base du RLHF, qui peut être pris en compte (PPO-ptx).

    • Le modèle InstructGPT a également montré une bonne généralisation sur les annotateurs "tenus" ;

    • L'exécution des tâches d'ensemble de données NLP public n'est pas poursuivie par InstructGPT (ChatGPT l'est);

    • L'invite du modèle InstructGPT en dehors de la distribution de l'ensemble de données de réglage fin RLHF a également une bonne capacité de généralisation ;

    • Le contenu généré par InstructGPT souffre toujours de quelques erreurs simples ;

ChatGPT

Pas de papier, blog officiel : "https://openai.com/blog/chatgpt"

OpenAI n'a pas ouvert les détails de ChatGPT. Il n'y a que deux descriptions générales de méthodes. Le résumé comprend :

  • La méthode est à peu près la même que InstructGPT, mais la collecte de données est légèrement différente. Les données sous forme de dialogue utilisées par ChatGPT, c'est-à-dire plusieurs séries d'invites et de contextes, et l'ensemble de données de InstructGPT sont également converties au format de dialogue et utilisées ensemble.

  • Entraînez le modèle RM, utilisez les résultats générés par plusieurs modèles, sélectionnez au hasard le contenu généré par le modèle et laissez les annotateurs trier en fonction de la qualité du contenu, puis utilisez le modèle RM pour effectuer une formation de réglage fin PPO ultérieure. Encore une fois, il s'agit d'un processus itératif.

Plus de détails ont disparu, mais plus de détails peuvent être vus dans un article de l'ami d'OpenAI, Anthropic (le fondateur est également d'OpenAI). À en juger par la continuité du travail d'OpenAI, ceux qui quittent l'entreprise devraient également poursuivre le travail connexe.

Avant de lire Anthropic, insérez une série de résumés de travail d'OpenAI et enregistrez-la sous forme de fichier. Après avoir lu l'article ci-dessus, vous devriez être en mesure de comprendre approximativement le contenu de ce tableau (référence) :

capacité nom du modèle méthode de formation API OpenAI
Avant GPT-3


Pré-entraînement + Fintune comme Bert GPT-1 Modélisation du langage + ajustement des tâches -
Génération + tâche Zero-shot GPT-2 Modélisation du langage -
Série GPT-3


Génération + Connaissance du monde + Apprentissage en contexte Initiale GPT-3 Modélisation du langage da Vinci
+Suivez les instructions humaines+généralisez à une tâche invisible Instruire-GPT initial Réglage des instructions Davinci-Instruct-Bêta
+ Compréhension du code + Génération de code Initiale du codex Formation sur Code Code-Cushman-001
Série GPT-3.5


++Compréhension du code++Génération de code++Raisonnement complexe / chaîne de pensée (pourquoi ?)+dépendance à long terme (probablement) Modèle actuel Codex le plus puissant de la série GPT3.5 Formation sur texte + code Tuning sur instructions Code-Davinci-002 (actuellement libre. courant = décembre 2022)
++ Suivez l'instruction humaine - Apprentissage en contexte - Raisonnement ++ Génération zéro coup Instruct-GPT superviséTrade apprentissage en contexte pour la génération zéro coup Réglage des instructions supervisé Texte-Davinci-002
+Suivez la valeur humaine+Génération plus détaillée+Apprentissage en contexte+Génération zéro coup Instruct-GPT RLHF Plus aligné que 002, moins de perte de performances Réglage des instructions w. RLHF Texte-Davinci-003
++Suivre la valeur humaine++Génération plus détaillée++Rejeter les questions au-delà de ses connaissances (pourquoi ?) ++Contexte de dialogue de modèle --Apprentissage en contexte ChatGPT Commerce d'apprentissage en contexte pour la modélisation de l'historique des dialogues Réglage sur la boîte de dialogue w. RLHF -

Il est peut-être vrai que comme certains gros bonnets l'ont dit, ChatGPT n'a aucune innovation, c'est juste une superposition d'un tas de stratégies pour faire un modèle puissant ; certaines personnes disent que ChatGPT est plus une combinaison d'ingénierie et d'algorithmes. Quoi qu'il en soit, la méthode est vraiment travail.

Anthropique的Claude

Lien vers le document de référence : "Former un assistant utile et inoffensif avec un apprentissage par renforcement à partir de la rétroaction humaine"

Peu de temps après la sortie de ChatGPT, Anthropic a rapidement lancé Claude, qui est le concurrent le plus puissant de ChatGPT sous le calibre médiatique. Pour pouvoir suivre si rapidement, il y a une forte probabilité que ce soit le travail de la même période (ou même plus tôt, et les documents de travail pertinents sont plusieurs mois plus tôt). Anthropic est une start-up d'où partent les employés d'OpenAI, on dit qu'elle ne fait pas partie de la philosophie d'OpenAI (peut-être n'est-elle pas ouverte, socialement responsable ?).

Quelques conclusions de tests internes : par rapport à ChatGPT, Claude peut éviter des problèmes potentiellement dangereux, et est légèrement inférieur dans la génération de code, et l'invite générale n'est pas différente. En termes d'effet, ChatGPT peut être plus fonctionnel, tandis que Claude est plus "inoffensif" (ou, en d'autres termes, a moins d'impact négatif potentiel sur la société), ce qui se reflète également dans le titre du document de référence.

motivation

Introduisez le modèle de préférence et RLHF (apprentissage par renforcement de la rétroaction humaine) pour affiner le grand modèle de langage (probablement en raison du départ d'OpenAI, GPT-3 n'est pas mentionné), et obtenez un assistant personnel utile et inoffensif (similaire à ChatGPT) ; cet ajustement de l'alignement (alignement), améliore considérablement le modèle de langage pré-formé dans presque toutes les tâches de la PNL, et peut compléter des compétences de tâche spécifiques, telles que le codage, le résumé et la traduction.

Brève programmation

En fait, l'idée est similaire à celle d'InstructGPT, un RLHF en trois étapes. La différence est que 1. Une formation itérative sur le modèle en ligne est effectuée : le modèle et la stratégie RL sont mis à jour avec de nouvelles données de rétroaction manuelles chaque semaine, et les données et le modèle sont continuellement itérés ; 2. Des données dans un format de dialogue sont utilisées ; 3. Plus d'attention est accordée au modèle Utile et inoffensif.

En plus de la conception du modèle et de la stratégie, l'article se concentre sur la stabilité du RLHF ; il analyse également des questions telles que l'étalonnage du modèle, le conflit de cible et l'identification OOD (hors distribution).

Le conflit d'objectifs fait référence au conflit d'objectifs entre utile et inoffensif, car si le modèle répond "ne sait pas" à toutes les questions, bien qu'il soit inoffensif, il n'est pas du tout utile.

quelques détails

  • Ensemble de données de préférence de dialogue :

    • Un lot d'ensembles de données de dialogue d'utilité et d'innocuité a été collecté, et l'annotation des données a été complétée par l'interaction entre l'annotateur et divers modèles de langage 52B sur la page d'annotation de dialogue. Annotez la page comme indiqué sur la figure ;

24c3c89c98ee8732ca53fc733ed66ed1.jpeg
    • Les annotateurs ont un dialogue ouvert avec le modèle sur la page interactive, ou demandent de l'aide, ou donnent des instructions, ou guident le modèle pour qu'il produise du contenu préjudiciable (comme comment voler avec succès). Pour les réponses multiples produites par le modèle, l'étiqueteur doit marquer celle qui est la plus utile ou celle qui est la plus nuisible à chaque tour de dialogue ;

    • Trois données ont été collectées, une du modèle initial (SFT), une de l'échantillonnage du modèle de préférence précoce (RM) et la dernière du modèle d'apprentissage par renforcement en ligne avec rétroaction humaine (mise à jour hebdomadaire) ;

    • Open source trois données : https://github.com/anthropics/hh-rlhf

  • Collecte de données et processus de formation du modèle (les concepts impliqués dans le milieu doivent lire les articles précédents et comprendre) :

b0c54057d1bb17653b3f3843d5e8248b.jpeg

LLaMa与Alpaca

Les choses ont évolué jusqu'à présent, il y a un petit problème, c'est que le modèle devient de plus en plus gros, et l'open source est de moins en moins (en fait, la plupart des gens ne peuvent pas y jouer s'il est open source). Tout d'abord, les modèles de la série GPT-3 sont très volumineux et les modèles d'entraînement et d'inférence nécessitent un grand nombre de cartes graphiques ; deuxièmement, les données utilisées par GPT-3 ne sont pas publiques et il est difficile de les reproduire avec l'informatique puissance, vous devez donc enregistrer les données vous-même ; en GPT La source fermée de ChatGPT après -3 est encore plus fermée, et les intérêts commerciaux peuvent devoir être davantage pris en compte.

Dans ce contexte, les travaux sur l'amélioration de l'efficacité et l'ouverture du modèle de première ligne se multiplient, les plus influents dans un futur proche étant LLama de Meta AI et Alpaca basé sur LLama de Stanford. Le premier est similaire au grand modèle de langage de GPT, et le second est similaire à ChatGPT.

Lama

论文:《LLaMA : Modèles de langage de base ouverts et efficaces》

Code : https://github.com/facebookresearch/llama

motivation

  • Dans les travaux liés aux grands modèles linguistiques, l'hypothèse générale dans le passé était que plus le modèle était grand, meilleur était l'effet. Cependant, certains travaux récents ont montré que sous l'hypothèse de ressources informatiques données, le meilleur effet n'est pas obtenu par le plus grand modèle, mais par un modèle relativement petit avec plus de données. Ce dernier est plus convivial pour l'étape d'inférence ou de réglage fin et constitue une meilleure poursuite.

  • En conséquence, le travail de cet article consiste à former un lot de modèles, ce qui permet d'obtenir de meilleurs résultats et de réduire les coûts de prédiction. Une façon d'obtenir cet effet est de laisser le modèle voir plus de jetons. Ces modèles formés sont LLama.

Brève programmation

La pensée de LLama est relativement simple, et elle a été à peu près incluse dans la motivation. D'autres caractéristiques de ce travail peuvent être brièvement résumées comme suit :

  • Fournit des modèles de 7B à 65B, l'effet du modèle 13B peut dépasser GPT-3 (175B) et l'effet du modèle 65B est proche du PaLM de Google (540B);

  • Le modèle de formation utilise uniquement des ensembles de données open source, des milliards de jetons.

  • Plusieurs tâches sont sur SOTA et tous les poids de modèle sont open source.

quelques détails

  • Ensemble de données de formation (principalement en anglais, donc les effets de réglage fin chinois et chinois sont inquiétants)

ec72875b8138eb1e830d6a306a56214f.jpeg
  • Présentation de la capacité du modèle

aa2b81c4dd7bbe180d202272a9491dba.jpeg
  • Structure du modèle :

Comme GPT, c'est aussi l'architecture Transformer Decoder, qui utilise diverses petites optimisations dont l'efficacité a été vérifiée (telles que : pré-normalisation, fonction d'activation SwiGLU, intégration rotative, optimiseur AdamW, etc.). Dans le même temps, certaines optimisations de l'efficacité de la formation ont été réalisées, notamment la mise en œuvre du modèle et l'optimisation parallèle du modèle.

  • Processus de formation : les modèles 7B et 13B sont formés sur des jetons 1T ; les modèles 33B et 65B sont formés sur des jetons 1,4T.

63b677719372bd467b26b029edeea7f1.jpeg

Conclusion et discussion

  • LLama comparé à GPT, et principalement vérifié sur les tâches Zero-Shot et Few-Shot ; en même temps, étant donné que le réglage fin des instructions est l'une des applications les plus populaires à l'heure actuelle, il est également vérifié sur la tâche de réglage fin des instructions.

    • Tir zéro

837a5028d0a9af4739b62453c2371e8c.jpeg
    • Peu de coups

8ff588bdeb5b5b782bd378daea100d5e.jpeg
    • Réglage fin des instructions (principalement par rapport à la série Flan de Google) :

216f4ef99ace3a63769ee5ac7bb14729.jpeg

Alpaga

Article : https://crfm.stanford.edu/2023/03/13/alpaca.html

Code : https://github.com/tatsu-lab/stanford_alpaca

motivation

Comme on peut le voir précédemment, les modèles de réglage fin des instructions tels que GPT-3.5, ChatGPT, Claude et Bing Chat se sont avérés exceptionnels, mais il existe toujours des problèmes tels que le faux contenu, les préjugés et la malveillance. Afin d'accélérer la résolution de ces problèmes, les universitaires (professeurs pauvres, étudiants, entreprises) doivent se joindre à la recherche, mais les modèles GPT-3.5 sont volumineux et fermés.

LLama est sorti il ​​y a quelque temps, donnant de l'espoir. Par conséquent, le modèle Alpaca a été obtenu en affinant les instructions basées sur LLama.L'effet est similaire à celui de GPT-3.5, et il est simple et à faible coût de reproduction.

Brève programmation

  • L'affinement des instructions par les pauvres nécessite deux conditions préalables : 1. Un modèle de langage pré-entraîné avec de petits paramètres et de bons effets ; 2. Des données de formation à l'instruction de haute qualité.

  • Ces deux conditions préalables semblent être facilement remplies maintenant : 1. Le modèle LLama modèle 7B est acceptable ; 2. Les données de formation peuvent être générées automatiquement via le modèle de langage fort existant (préparez l'invite et appelez l'API OpenAI de la série GPT-3.5).

quelques détails

  • Méthode de formation : utilisez la méthode de réglage fin des instructions pour vous entraîner sur le modèle LLama 7B ; la taille des données de formation est de 52 000 et la source est l'appel à l'API OpenAI GPT-3.5 (coûtant 500 $ ); le processus de réglage fin est formé sur 8 cartes graphiques 80G A100s pendant 3 heures (en utilisant les services de cloud computing, coût 100 $). Le processus de formation est illustré sur la figure.

0dede9841506f9728ef2c4f87b09871f.jpeg

Conclusion et discussion

Actuellement ouvert : démo de test, ensemble de données d'entraînement, processus de génération de données d'entraînement, code d'entraînement ; les poids pré-entraînés seront ouverts à l'avenir (certains facteurs externes peuvent être pris en compte) ;

  • Démo : une démo interactive pour que chacun puisse essayer Alpaca.

  • Données : 52 000 démonstrations utilisées pour affiner Alpaca.

  • Processus de génération de données : le code pour générer les données.

  • Code d'entraînement : pour affiner le modèle à l'aide de l'API Hugging Face.

Orientations possibles à l'avenir (sans compter l'optimisation de la capacité de raisonnement, peut-être que celles-ci devraient être laissées aux riches) :

  • Vérification du modèle : évaluation plus systématique et rigoureuse du modèle, à partir de HELM (Holistic Evaluation of Language Models), pour vérifier la génération du modèle et sa capacité à commander ;

  • Sécurité du modèle : une évaluation plus complète du risque du modèle ;

  • Comprendre le modèle (interprétable) : Qu'est-ce que le modèle de recherche a appris ? Quelle est la connaissance du choix du modèle de base ? Qu'apporte l'augmentation des paramètres du modèle ? Quelles sont les données de commande les plus critiques ? Existe-t-il un autre moyen de collecter des données ?

GLM et ChatGLM

Bien que LLama soit bon, il utilise plus d'ensembles de données en anglais, mais il ne fonctionne pas bien en chinois. De même, après avoir peaufiné les instructions, la limite supérieure devrait être relativement basse dans la scène chinoise. Par conséquent, en chinois, il est nécessaire d'avoir sa propre direction de recherche.Les versions open source actuelles avec une influence relativement élevée sont GLM et ChatGLM de Tsinghua.

Il existe de nombreuses introductions liées à GLM et ChatGLM. Les extraits suivants font partie du contenu pour une brève compréhension.

GLM

papier:

  • 《GLM : pré-entraînement du modèle de langage général avec remplissage de blanc autorégressif》

  • 《GLM-130B : UN MODÈLE BILINGUE OUVERT PRÉENTRAÎNÉ》

Brève programmation

GLM-130B est une tentative dans le sens du grand modèle de langage de Tsinghua après GPT-3. Différent de l'architecture de BERT, GPT-3 et T5, GLM-130B est un modèle de pré-formation autorégressif avec de multiples fonctions objectives.

f00b34271f3df6806796314dd0cb5f29.jpeg

quelques détails

Ouvert en août 2022, le GLM-130B présente des avantages uniques :

  • Bilingue : prend en charge le chinois et l'anglais.

  • Haute précision (anglais) : Mieux que GPT-3 175B (API : davinci, modèle de base), OPT-175B et BLOOM-176B sur la liste publique de langage naturel anglais LAMBADA, MMLU et Big-bench-lite.

  • Haute précision (chinois) : bien meilleure que ERNIE TITAN 3.0 260B et YUAN 1.0-245B sur 7 ensembles de données CLUE à échantillon nul et 5 ensembles de données FewCLUE à échantillon zéro.

  • Inférence rapide : Le premier modèle INT4 quantifié à 100 milliards prend en charge une inférence rapide et largement sans perte avec un serveur 4 cartes 3090 ou 8 cartes 2080Ti.

  • Reproductibilité : Tous les résultats (plus de 30 tâches) sont reproductibles avec notre code open source et les paramètres du modèle.

  • Multiplateforme : prise en charge de la formation et de l'inférence sur les processeurs domestiques Haiguang DCU, Huawei Ascend 910 et Shenwei et les puces américaines Nvidia.

ChatGLM

Article : https://chatglm.cn/blog

Code : https://github.com/THUDM/ChatGLM-6B

Présentation du programme

ChatGLM fait référence à l'idée de conception de ChatGPT, injecte une pré-formation de code dans le modèle de base de 100 milliards GLM-130B et réalise l'alignement de l'intention humaine grâce à un réglage fin supervisé et à d'autres technologies.

Afin de mieux promouvoir le développement de la technologie des modèles à grande échelle avec la communauté, Tsinghua a également ouvert le modèle ChatGLM-6B. ChatGLM-6B est un modèle linguistique bilingue chinois-anglais avec 6,2 milliards de paramètres. En utilisant la même technologie que ChatGLM (http://chatglm.cn), ChatGLM-6B dispose de fonctions de questions-réponses et de dialogue en chinois, et prend en charge le raisonnement sur un seul 2080Ti.

quelques détails

ChatGLM-6B possède les fonctionnalités suivantes :

  • Pré-formation bilingue suffisante en chinois et en anglais : ChatGLM-6B a formé des jetons 1T sur le rapport 1: 1 des matériaux chinois et anglais, et a une capacité bilingue.

  • Architecture et taille de modèle optimisées : sur la base de l'expérience de formation GLM-130B, la mise en œuvre de l'encodage de position RoPE bidimensionnel a été révisée et la structure FFN traditionnelle est utilisée. La taille des paramètres de 6B (6,2 milliards) permet également aux chercheurs et aux développeurs individuels d'affiner et de déployer ChatGLM-6B par eux-mêmes.

  • Seuil de déploiement inférieur : sous la demi-précision FP16, ChatGLM-6B nécessite au moins 13 Go de mémoire vidéo pour le raisonnement. Combiné à la technologie de quantification de modèle, cette exigence peut être encore réduite à 10 Go (INT8) et 6 Go (INT4), ce qui rend ChatGLM-6B déployable sur les cartes graphiques grand public.

  • Longueur de séquence plus longue : par rapport à GLM-10B (longueur de séquence 1024), ChatGLM-6B a une longueur de séquence de 2048, prenant en charge des conversations et des applications plus longues.

  • Formation à l'alignement de l'intention humaine : ajustement supervisé, amorce de rétroaction, apprentissage par renforcement à partir de la rétroaction humaine et d'autres méthodes sont utilisées pour rendre le modèle initialement capable de comprendre les intentions d'instruction humaine. Le format de sortie est Markdown, ce qui est pratique pour l'affichage.

Par conséquent, ChatGLM-6B a une meilleure capacité de dialogue et de réponse aux questions sous certaines conditions. ChatGLM-6B présente également quelques limitations et lacunes connues :

  • Petite capacité de modèle : La petite capacité de 6B détermine sa mémoire de modèle relativement faible et sa capacité linguistique. ChatGLM-6B peut générer des informations incorrectes lorsqu'il est confronté à de nombreuses tâches de connaissances factuelles ; elle n'est pas non plus douée pour résoudre des problèmes logiques (tels que les mathématiques, la programmation).

  • Peut générer des instructions préjudiciables ou un contenu biaisé : ChatGLM-6B n'est qu'un modèle de langage initialement aligné sur l'intention humaine, qui peut générer un contenu préjudiciable et biaisé.

  • Faible capacité de dialogue à plusieurs tours : la capacité de compréhension du contexte de ChatGLM-6B n'est pas suffisante. Face à la génération de réponses longues et aux scénarios de dialogue à plusieurs tours, une perte de contexte et des erreurs de compréhension peuvent se produire.

  • Maîtrise insuffisante de l'anglais : la plupart des instructions utilisées pendant la formation sont en chinois, et seule une petite partie des instructions est en anglais. Par conséquent, lors de l'utilisation d'instructions en anglais, la qualité de la réponse peut ne pas être aussi bonne que celle des instructions en chinois, ou même contredire la réponse selon les instructions en chinois.

  • Trompeur : la "perception de soi" de ChatGLM-6B peut être problématique et peut facilement être induite en erreur et produire de fausses déclarations. Par exemple, si la version actuelle du modèle est erronée, sa perception de soi sera déviée. Même si le modèle a subi une pré-formation bilingue d'environ 1 000 milliards d'identifiants (jetons), un ajustement des instructions et un apprentissage par renforcement par rétroaction humaine (RLHF), mais en raison de la faible capacité du modèle, il peut produire des effets néfastes sous certaines instructions. contenu trompeur.

résumé

À ce stade, la charge de travail est encore faible, et l'écriture est vomi.Plusieurs travaux de la série Google doivent encore être complétés dans un article séparé. Semblable au travail d'OpenAI, Google a également produit des modèles tels que l'analyse comparative GPT-3 et InstructGPT, et inclut également un grand modèle de langage de la structure Encoder-Decoder de la série T5, et ce n'est pas simplement Follow.

D'autre part, en mars et avril, un grand nombre de travailleurs open source ont également fleuri et ont fait beaucoup de travail d'exploration dans le sens des applications de ChatGPT, y compris l'exploration et l'open source des données de formation, des modèles et des méthodes de formation. Dans le sens de l'efficacité de la formation, ChatGLM+Lora, LLama+Lora, etc. sont également apparus pour réduire davantage les coûts de formation.

Le contenu de cette partie sera également présenté et mis à jour ultérieurement dans un résumé, et nous attendons avec impatience la naissance d'autres excellents travaux au cours de cette période. Pour les inexactitudes dans le contenu de l'article, les corrections et les échanges sont également les bienvenus~.

Contenu de référence :

L'article fait référence à de nombreux articles, blogs et à l'introduction de certains articles connexes dans "Apprendre l'IA avec Li Mu". Les liens de référence pour certains contenus et illustrations sont les suivants.

1、https://crfm.stanford.edu/2023/03/13/alpaca.html

2、https://chatglm.cn/blog

3、https://crfm.stanford.edu/2023/03/13/alpaca.html

4、https://space.bilibili.com/1567748478/channel/collectiondetail?sid=32744

5、Une enquête sur les grands modèles de langage


Entrer dans le groupe NLP —> rejoindre le groupe d'échange NLP (remarque nips/emnlp/nlpcc entre dans le groupe de contribution correspondant)

Continuez à publier les dernières informations telles que l'interprétation des articles quotidiens de haute qualité sur le traitement du langage naturel, les informations pertinentes de première main, les positions sur les algorithmes d'IA, etc.

Rejoignez la planète, vous obtiendrez :

1.  Mettez à jour 3 à 5 lectures de vitesse de papier les plus récentes et de la plus haute qualité chaque jour . En quelques secondes , vous pouvez saisir le contenu général de l'article, y compris un résumé en une phrase de l'article, le contenu général, la direction de la recherche et le téléchargement du pdf.

2.  Les derniers supports d'apprentissage d'introduction et avancés . Y compris l'apprentissage automatique, l'apprentissage en profondeur, la PNL et d'autres domaines.

3.  La subdivision spécifique des directions NLP comprend, mais sans s'y limiter : l'analyse des sentiments, l'extraction des relations, le graphe de connaissances, l'analyse syntaxique, l'analyse sémantique, la traduction automatique, le dialogue homme-machine, la génération de texte, la reconnaissance d'entités nommées, la résolution de référence, le grand modèle de langage , apprentissage zéro échantillon, apprentissage sur petit échantillon, génération de code, multimodalité, distillation des connaissances, compression de modèles, AIGC, PyTorch, TensorFlow, etc.

4.  Informations quotidiennes sur le recrutement 1-3 pour les postes d'IA tels que la PNL, la recherche, la promotion et la promotion et le CV . Des entretiens fictifs peuvent être organisés.

dd0a0065ff894c2eb004d441fcbb8977.png

Je suppose que tu aimes

Origine blog.csdn.net/qq_27590277/article/details/130097308
conseillé
Classement