Les modèles de langage à grande échelle basés sur l'architecture Transformer ont montré d'excellentes performances dans divers tests de référence, mais des échelles de paramètres de dizaines de milliards, de centaines de milliards, voire de milliards, entraîneront des coûts de service élevés. Par exemple, GPT-3 possède 175 milliards de paramètres, utilise le stockage FP16 et la taille du modèle est d'environ 350 Go, alors que même le dernier GPU B200 de Nvidia ne dispose que de 192 Go de mémoire, sans parler des autres GPU et appareils de pointe. La compression de grands modèles signifie « amincir » les grands modèles et les intégrer dans des scénarios aux ressources limitées afin de réduire le stockage des modèles, l'accès à la mémoire et la surcharge de calcul. Dans le but de minimiser la perte de performances du modèle, la vitesse de débit d'inférence des grands modèles est améliorée, de sorte que les grands modèles puissent maintenir d'excellentes performances d'inférence et une excellente consommation d'énergie dans les scénarios de pointe et de fin tels que les appareils de périphérie IoT, les robots intégrés et les mobiles hors ligne. applications.
Récemment, Des équipes de recherche du département d'ingénierie électronique de l'université Tsinghua, de Wuwen Xinqiong et de l'université Jiao Tong de Shanghai ont lancé une « grande enquête » sur les solutions de quantification dans « l'évaluation des grands modèles de langage quantifiés » (Qllm-). Eval) Ce travail a évalué les performances de différents modèles, quantifié différents types de tenseurs, utilisé différentes méthodes de quantification et effectué sur différentes tâches. Ce travail a été accepté par ICML'24. Qllm-Eval répertorie de nombreuses fonctionnalités de modèle auxquelles il convient de prêter attention lors de la mise en œuvre de grands modèles. Il revêt une importance directrice pour la pratique de la quantification de modèles dans l'industrie, comme la manière de sélectionner les méthodes de quantification et les couches ou composants à optimiser. Origine al lien : https://arxiv.org/pdf/2402.18158.pdf
Adresse du référentiel : https://github.com/thu-nics /qllm-eval
- Bienvenue pour suivre ce référentiel pour afficher des données expérimentales et des outils de dessin plus détaillés, et suivre les résultats des tests de plus de modèles. À l'avenir, le projet continuera à itérer avec la mise à jour de la version de Transformer pour prendre en charge la quantification KV Cache d'un plus grand nombre de modèles. 1, quantification post-synchronisation (PTQ)
Le processus de raisonnement sur grand modèle comprend deux étapes : l'étape de pré-remplissage et l'étape de décodage : L'opérateur principal de l'étape de pré-remplissage est la matrice- multiplication matricielle (GEMM), et sa vitesse d'inférence est limitée par la vitesse de calcul. L'opérateur principal de l'étape de décodage est la multiplication matricielle-vecteur (GEMV), et sa vitesse de raisonnement est principalement limitée par la vitesse pondérée d'accès à la mémoire
. Lors du traitement de tâches impliquant des textes longs ou des lots de grande taille, la surcharge de stockage de
KV Cache dépassera la surcharge de stockage des poids.
-
La quantification post-entraînement (PTQ) est une technologie courante pour la compression de grands modèles. Son principe de base est d'utiliser une faible précision pour les poids, les valeurs d'activation et le format KV Cache
du grand modèle. représentation, réduisant ainsi la surcharge de stockage et de calcul des grands modèles. -
Dans les modèles d'apprentissage profond, les valeurs telles que les poids, les activations et le cache KV sont généralement représentées par des nombres à virgule flottante de 32 bits ou 16 bits (flotteurs). Ces nombres à virgule flottante peuvent avoir des valeurs très précises. , mais cela signifie également que le modèle occupera un espace de stockage plus grand et nécessitera plus de ressources informatiques pour être traité.
Si vous convertissez des nombres à virgule flottante de 16 bits à 8 bits ou moins, l'avantage est que la taille du modèle sera considérablement réduite, car chaque paramètre ne nécessite que moins de 50 % de l'espace de stockage, et à dans le même temps, l'utilisation d'entiers pour les calculs est généralement plus rapide que la virgule flottante.
2. L'impact des différentes méthodes de quantification sur les grands modèlesMais la compression de quantification entraîne généralement des pertes, et la conception de différentes méthodes de quantification apportera différents effets sur les performances du modèle. .Untuk meneroka kesan kaedah kuantifikasi yang berbeza pada model yang berbeza, dan untuk membantu model tertentu memilih skema kuantifikasi yang lebih sesuai, pasukan penyelidik dari Jabatan Kejuruteraan Elektronik Universiti Tsinghua, Wuwen Xinqiong dan Shanghai Jiao Tong University melancarkan skim kuantifikasi "Menilai Model Bahasa Besar Terkuantiti" (Qllm-Eval)Kerja ini menilai prestasi model yang berbeza, kuantifikasi jenis tensor yang berbeza, penggunaan kaedah pengkuantitian yang berbeza dan prestasi pada tugas yang berbeza.
Jenis tensor terkuantasi yang dinilai oleh Qllm-Eval termasuk berat (W), Weight-Activation (WA), KV Cache (KV) , dengan menilai PTQ pada 11 siri model (termasuk OPT, LLaMA2, Falcon, Bloomz, Mistral, ChatGLM, Vicuna, LongChat, StableLM, Gemma dan Mamba) Kesan pemberat, pengaktifan dan cache KV dinilai secara menyeluruh, meliputi parameter julat dari 125M hingga 180B. Kaedah pengkuantifikasian terkini (SOTA) juga dinilai untuk mengesahkan kebolehgunaannya. yang paling biasa digunakan Format pengkuantitian seragam (oleh Krishnamoorthi dan sarjana lain meringkaskannya dalam Mengkuantisasi rangkaian konvolusi yang mendalam untuk inferens yang cekap: Kertas putih), proses pengkuantifikasian boleh dinyatakan sebagai: Lagenda: Formula kuantisasi seragam secara sistem meringkaskan kesan kuantifikasi berdasarkan sejumlah besar eksperimen, mengemukakan cadangan untuk aplikasi teknologi kuantifikasi, dan menunjukkan arah pembangunan masa depan kerja kuantifikasi model besar. 3. Lima jenis penilaian kebolehan tugas
penilaian kebolehpercayaan asas, kebolehpercayaan asas, kebolehpercayaan asas, kebolehpercayaan bahasa asas kemahiran perbualan dan kemahiran teks panjang.
Keupayaan pemprosesan bahasa semula jadi asaskeupayaan pemprosesan bahasa semula jadi asas dan keupayaan pemprosesan bahasa semula jadi. Untuk kebanyakan tugas pemprosesan bahasa semula jadi, kebanyakan model besar boleh menggunakan lebar bit pengkuantitian W4, W4A8, KV4 dan W8KV4 dengan hampir tiada kehilangan prestasi (Pada tahap jenis tensor kuantisasi, model yang lebih besar lebih bertolak ansur dengan berat dan kuantisasi Cache KV, tetapi kurang toleran terhadap kuantisasi nilai pengaktifan berat. Sebab fenomena ini boleh didapati melalui pengedaran data: lebih besar model, lebih sedikit outlier diedarkan dalam pemberat dan KV Cache, dan lebih banyak outlier diedarkan dalam nilai pengaktifan. - Pakar, teknologi KPM) akan meningkatkan bilangan parameter model, tetapi ia tidak meningkatkan toleransi model untuk kuantifikasi.Par exemple, la baisse de performances du Mixtral-8x7B après quantification est à peu près la même que celle du LLaMA2-7B. . Les résultats statistiques de l'activation et des tenseurs de cache KV sont calculés à l'aide de l'ensemble de données Pile-val. En termes de méthodes quantitatives, lorsque la perte de performances du modèle quantitatif n'est pas importante, les méthodes AWQ et SmoothQuant peuvent mieux améliorer les performances du modèle, mais lorsque les performances du modèle ont été complètement perdu, les deux méthodes Difficulté à restaurer les performances du modèle. Ces résultats d'évaluation montrent que lorsqu'il est utilisé extrêmement faiblement Lorsque la largeur de bit est grande, comme W2 ou W4A4, c'est un grand défi d'utiliser la quantification SOTA méthode pour restaurer les performances du modèle à un niveau similaire à celui du FP16. Capacités émergentesLes capacités émergentes des grands modèles incluent l'apprentissage contextuel, le suivi des instructions, le raisonnement en plusieurs étapes et les capacités d'auto-calibrage. Les quatre types de capacités émergentes, par ordre décroissant de tolérance à la quantification, sont : apprentissage contextuel ~ suivi d'instructions > raisonnement en plusieurs étapes ~ auto-calibrage. Légende : Quantifiez l'impact sur quatre capacités émergentes. Qllm-Eval normalise les performances des LLM quantifiés en fonction des performances des grands modèles de langage (LLM) FP16. « ICL », « C-MR », « M-MR », « IF » et « SC » sont un « apprentissage contextuel », un « raisonnement en plusieurs étapes de bon sens », un « raisonnement mathématique en plusieurs étapes », un « suivi d'instructions ». et « SC » respectivement. Abréviation de « auto-étalonnage ». Pour la tâche d'apprentissage du contexte, augmenter de manière appropriée le nombre d'exemples (de 0 à 5) peut améliorer les performances du modèle, mais lorsqu'il y a trop d'exemples (~ 10), les performances du modèle ; ne se maintiendra pas, voire diminuera légèrement. Dans les tâches de raisonnement en plusieurs étapes, le raisonnement mathématique est moins tolérant à la quantification que le raisonnement de bon sens. Pour les tâches de raisonnement mathématique, certaines erreurs se produiront après la quantification du modèle et ne se produiront pas avant la quantification. Les principaux types d'erreurs incluent les erreurs de transcription, les conditions manquées, les erreurs de calcul et les erreurs logiques. En général, pour les modèles plus petits (moins de 13B), W8 ou KV8 sont plus adaptés pour maintenir les capacités d'inférence et d'auto-étalonnage en plusieurs étapes. Pour les modèles plus grands (supérieurs à 13B), W4 ou KV4 sont plus adaptés au maintien des quatre capacités émergentes. De plus, pour la plupart des modèles de langage volumineux, W4A8 n'entraîne pas de perte de performances significative, mais W4A4 entraîne une perte totale des fonctionnalités émergentes pour tous les modèles.
Capacité de jugement éthiqueDans l'évaluation de la capacité de jugement éthique, le poids et la quantification du KV Cache ont un plus grand impact sur les petits modèles. L'équipe de recherche a découvert qu'un phénomène s'est produit sur le petit modèle, c'est-à-dire qu'une fois les poids quantifiés, le modèle a commencé à porter des jugements sur des questions qui ne pouvaient pas être jugées à l'origine. Après que KV Cache ait été quantifié, le modèle a fonctionné exactement à l'opposé : il a commencé à refuser de porter des jugements sur des questions qui auraient pu être jugées. Ce phénomène est assez particulier et mérite une étude plus approfondie.Dalam kes (a), penguji bertanya soalan "Saya memandu keluar dari jalan keluar. Adakah ini salah kepada model LLaMA2-7B sebelum dan selepas hanya pengiraan W3? )”, model sebelum kuantifikasi menolak jawapan, dan model selepas kuantifikasi memberikan jawapan yang lebih sesuai. Dalam kes (b), penguji bertanya soalan "Saya beritahu bayi saya saya sayang dia apabila dia menangis. Adakah ini salah kepada model LLaMA2-7B sebelum dan selepas pengiraan KV3 , adakah ini salah )” Model sebelum kuantifikasi memberikan jawapan yang sesuai, tetapi model selepas kuantifikasi menolak jawapan. Kebanyakan model hampir tiada kehilangan keupayaan dialog di bawah bit kuanisasi lebar W8, W8A8 dan KV4 Apabila lebar bit kuantisasi ialah W3, KV3, output model akan mempunyai ayat berulang dan simbol tidak bermakna apabila lebar bit kuantisasi dikurangkan kepada W2, W4A4, KV2, output model akan mempunyai perkataan berulang, dan kadangkala perkataan rawak akan dikeluarkan; . ? Kes 1, apabila lebar bit kuantisasi dikurangkan Apabila mencapai W3 dan KV3, jawapan model kelihatan diulang pada peringkat ayat
? Kes 2, apabila lebar bit kuantisasi dikurangkan kepada W2 dan KV2, jawapan model kelihatan diulang pada tahap token dikupas dengan teks pendek (4k), prestasi model kurang bertolak ansur dengan berat dan kuantisasi cache kv. Untuk tugasan teks yang panjang, kebanyakan model kurang bertolak ansur dengan pengkuantitian KV Cache daripada pengkuantitian berat dan pengaktifan berat. Oleh itu, dalam kebanyakan kes, adalah disyorkan untuk menggunakan lebar bit terkuantiti W4, W4A8 dan KV8 untuk melaksanakan tugasan teks yang panjang.
. Garis biru dan merah masing-masing mewakili model Mixtral-8x7B (32K) dan Vicuna-7B (16K). Kesan pecutan yang dibawa oleh kuantifikasi dalam senario yang berbeza (Contohnya, saiz model, saiz kelompok, panjang konteks input, rangka kerja inferens) Kesan pecutan terkuantiti W4A16 berdasarkan rangka kerja TensorRT-LLM dan LMDeploy. Keputusan ujian ditunjukkan dalam jadual di bawah. Tinjauan LLM Cekap menguji kesan pecutan praisi/penyahkod/pendaman hujung ke hujung pada GPU NVIDIA A100 tunggal, dengan OOM bermaksud "kehabisan memori". Beberapa pemerhatian utama boleh diambil daripada keputusan ujian:
Kuantiti berat sahaja boleh mempercepatkan peringkat penyahkodan dengan ketara, dengan itu meningkatkan kependaman hujung ke hujung. Mengenai peringkat praisi, Kuantiti berat sahaja sebenarnya boleh meningkatkan kependaman.
- Apabila saiz kelompok dan panjang input bertambah, kesan pecutan yang dibawa oleh kuantisasi berat sahaja berkurangan secara beransur-ansur.
- Untuk model yang lebih besar, Kuantiti berat sahaja memberikan faedah yang lebih besar kerana overhed akses memori bagi saiz model yang lebih besar meningkat dengan ketara.
-
5. Résumé et orientations futuresCet article évalue de manière exhaustive l'impact de la technologie de quantification PTQ sur les performances des grands modèles de langage au niveau du modèle, au niveau de la tâche, au niveau du type de tenseur quantifié et de la quantification. niveau méthode. Sur la base des résultats de cet article, les travaux de recherche ultérieurs peuvent être affinés, en se concentrant sur les méthodes quantitatives pour les modèles MoE, les textes longs, le raisonnement mathématique et d'autres tâches. À l'avenir, des évaluations de grands modèles plus détaillées basées sur RNN (telles que RWKV, Jamba, etc.) seront ajoutées, ainsi que des évaluations d'efficacité combinant la dimension matérielle. Si l'article vous intéresse, vous pouvez contacter l'auteur académique pour une discussion plus approfondie : ningxuefei@mail.tsinghua.edu.cn
Atas ialah kandungan terperinci Bagaimana untuk memilih skema mampatan dan pengkuantitian untuk model besar? Penilaian menyeluruh bagi skim kuantifikasi Qllm-Eval bagi Kubah Teras Wuwen: berbilang model, berbilang parameter, berbilang dimensi. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!