Simple Science

Hochmoderne Wissenschaft einfach erklärt

# Computerwissenschaften# Rechnen und Sprache# Künstliche Intelligenz

Optimierung grosser Sprachmodelle mit SlimPajama

Eine Studie zur Verbesserung der Trainingseffizienz für Sprachmodelle mit dem SlimPajama-Datensatz.

― 8 min Lesedauer


Der Einfluss vonDer Einfluss vonSlimPajama aufSprachmodelleSprachmodellen.vielfältigen Daten beim Training vonEine Studie zeigt Vorteile von
Inhaltsverzeichnis

Das Hauptziel dieser Studie ist zu untersuchen, wie verschiedene Datenquellen das Training von grossen Sprachmodellen mit SlimPajama beeinflussen. Wir haben ein neues Dataset namens SlimPajama, das aus sorgfältig ausgewählten und bereinigten Quellen besteht, und weniger Wiederholungen aufweist im Vergleich zu einem grösseren Dataset namens RedPajama. Unsere Arbeit, die SlimPajama-DC heisst, untersucht die Schlüsselfunktionen und effektiven Möglichkeiten, SlimPajama im Training grosser Sprachmodelle zu nutzen.

Wichtige Beobachtungen

Während unserer Forschung haben wir zwei wichtige Beobachtungen gemacht:

  1. Globale vs. Lokale Deduplizierung: Wir haben uns angeschaut, wie das Entfernen von Duplikaten aus allen Datenquellen (globale Deduplizierung) im Vergleich zum Entfernen von Duplikaten innerhalb jeder einzelnen Quelle (lokale Deduplizierung) ist und wie sich das auf die Modellleistung auswirkt.

  2. Qualität der Datensätze: Wir haben untersucht, wie die Mischung aus hochwertigen und gut duplizierten Datensätzen den gesamten Trainingsprozess beeinflusst. Wir haben sechs verschiedene Konfigurationen des SlimPajama-Datensatzes erstellt und Modelle mit diesen Konfigurationen trainiert. Durch unsere Tests haben wir herausgefunden, dass unser bestes Setup deutlich besser abschneidet als das RedPajama-Dataset.

Bedeutung der Trainingsdaten

Grosse Sprachmodelle sind stark auf ihre Trainingsdaten angewiesen. Es geht nicht nur darum, viel Text zu haben; es geht darum, eine Vielfalt von Texten aus verschiedenen Quellen zu haben. Dies stellt sicher, dass Modelle die Sprache gut lernen und ein breites Spektrum an Themen und Perspektiven verstehen. Verschiedene Bereiche wie Github, Wikipedia, Bücher und Webtexte sind entscheidend für die Gesamtleistung dieser Modelle.

In unserer Studie haben wir uns auf zwei Hauptbereiche konzentriert: die Auswirkungen der Entfernung von Duplikaten über verschiedene Datensätze hinweg und die Effizienz verschiedener Kombinationen gut organisierter Datensätze. Mit SlimPajama wollten wir die Modelle dazu ermutigen, aus allen Quellen ohne Überlappungen zu lernen und gleichzeitig herauszufinden, wie man verschiedene Informationsquellen ausbalancieren und verwalten kann.

Deduplizierungsprozess

Was ist Deduplizierung?

Deduplication entfernt wiederholte Datenpunkte, um dem Modell zu helfen, sich auf einzigartige Informationen zu konzentrieren. Das ist wichtig für die Effizienz des Trainings. Wenn ein Modell ständig dieselben Informationen sieht, kann es länger dauern, zu lernen und es könnte nicht gut bei verschiedenen Aufgaben abschneiden. Durch einen hochgradig deduplizierten Datensatz optimieren wir das Training und verbessern die Modellleistung.

Globale vs. Lokale Deduplizierung

  • Globale Deduplizierung: Diese Methode entfernt doppelte Daten aus allen Datensätzen. Sie fängt Überlappungen aus verschiedenen Quellen auf und stellt sicher, dass das Modell aus einer breiten Palette einzigartiger Daten lernt.

  • Lokale Deduplizierung: Diese Methode entfernt nur Duplikate innerhalb jedes Datensatzes. Wenn zwei Datensätze ähnliche Informationen enthalten, könnte diese Überlappung nach der Verarbeitung weiterhin vorhanden sein.

Unsere Beobachtungen zeigten, dass die globale Deduplizierung tendenziell bessere Trainingsergebnisse begünstigt, besonders wenn Daten aus mehreren Quellen verwendet werden.

Die Rolle von Datenkombinationen

Ein Modell, das auf vielfältigen und gut deduplizierten Daten trainiert wird, tendiert dazu, besser auf verschiedenen Aufgaben zu verallgemeinern. Wenn die Datenquellen unterschiedliche Kulturen und Perspektiven widerspiegeln, kann das Modell ausgewogener und weniger voreingenommen werden. Wenn die Quellen jedoch zu ähnlich sind, könnte das Modell gängige Vorurteile verstärken.

Die Kombination von technischen Daten mit allgemeinen Nachrichten oder anderen Textformen kann dem Modell ein breites Verständnis vermitteln und detailliertes Wissen auf verschiedene Aufgaben anwenden. Qualität ist wichtiger als Quantität, deshalb wollten wir die Bedeutung durchdachter Kombinationen in SlimPajama hervorheben.

Spezialisierung vs. Verallgemeinerung

Wenn wir viele spezialisierte Datensätze kombinieren, stehen wir vor der Herausforderung, ein Modell zu schaffen, das vielleicht nicht so gut in spezifischen Aufgaben ist wie ein Modell, das auf einem spezialisierten Datensatz trainiert wurde. Wir haben dieses Gleichgewicht zwischen Spezialisierung und Verallgemeinerung mit verschiedenen Konfigurationen unserer Datensätze untersucht.

Datensatzdetails

SlimPajama enthält insgesamt 627 Milliarden Tokens, die aus mehreren Quellen gesammelt wurden. Dieser Datensatz ist in Trainings-, Validierungs- und Testsets unterteilt. Jede getestete Konfiguration umfasst nach der Verarbeitung etwa 330 Milliarden Tokens.

Wir haben verschiedene Sampling-Strategien für unsere Datensätze verwendet. Einige Quellen, wie CommonCrawl, wurden nur einmal trainiert, während andere, wie Wikipedia und Github, mehrmals trainiert wurden, um Gründlichkeit sicherzustellen.

Verhältnisse der Datenquellen

Um die Trainingsdaten auszubalancieren, haben wir die Anteile verschiedener Quellen in unseren Datensatzkonfigurationen festgelegt. Dies variierte durch unterschiedliche Gewichtungen der verschiedenen Quellentypen basierend auf ihrer Wichtigkeit und Einzigartigkeit.

Analyse der Datensatzähnlichkeit

Um zu sehen, wie verschiedene Datensätze im Vergleich abschneiden, haben wir die Ähnlichkeit zwischen den Token-Verteilungen berechnet. Wir haben verschiedene Token-Typen betrachtet, einschliesslich Buchstaben, Zahlen und ungewöhnlichen Symbolen, um zu verstehen, wie unterschiedlich oder ähnlich sie waren.

Aus unserer Analyse haben wir herausgefunden, dass viele Datensätze zwar Ähnlichkeiten teilten, es aber auch klare Unterschiede in bestimmten Bereichen gab, wie bei nicht-alphanumerischen Tokens.

Verarbeitung des Datensatzes

SlimPajama entstand, indem wir niedrigwertigen Text und Duplikate aus dem ursprünglichen RedPajama-Datensatz herausfilterten. Wir haben sehr kurze Dokumente entfernt, die keine nützlichen Informationen enthielten, um sicherzustellen, dass unser gesamter Datensatz robust und relevant ist.

Filterung von niedrigwertigen Dokumenten

Wir haben einen Filter angewendet, um Dokumente kürzer als 200 Zeichen zu eliminieren. Dieser Schritt half uns, kurze Fragmente zu vermeiden, die nicht sinnvoll zum Training beitragen würden.

Prozess der globalen Deduplizierung

Jeder im SlimPajama enthaltene Datensatz hatte Duplikate, wobei die höchsten Raten in Quellen wie CommonCrawl und Github zu finden waren. Wir führten eine globale Deduplizierung durch, um eine effiziente Kombination von Daten sicherzustellen, was zu besserem Training ohne unnötige Überlappungen führt.

Kombinationen von Datensätzen für das Training

Wir haben sechs Konfigurationen für SlimPajama erstellt und getestet, um zu sehen, wie sich Änderungen in der Datenkombination auf die Ergebnisse auswirkten:

  1. Nur CommonCrawl
  2. CommonCrawl + Github
  3. CommonCrawl + Github + Bücher + Wikipedia
  4. CommonCrawl + Github (mit angepassten Sampling-Verhältnissen)
  5. CommonCrawl + Wikipedia (mit angepassten Sampling-Verhältnissen)
  6. Nur RefinedWeb CommonCrawl

Jede Konfiguration zielte darauf ab, zu prüfen, wie unterschiedliche Datenquellen und -verhältnisse die Modellleistung beeinflussten.

Modellarchitektur und Trainingseinrichtung

Cerebras-GPT-Architektur

Unsere Architektur ähnelt bestehender Modelle, verwendet aber einen konsistenten Aufmerksamkeitsmechanismus, der sich von Modellen unterscheidet, die dichte und spärliche Ansätze kombinieren. Jedes Modell wurde so gebaut, dass es eine maximale Sequenzlänge von 2.048 Tokens verarbeiten kann.

Trainingsdetails

Wir verwendeten einen Tokenizer basierend auf GPT-NeoX und trainierten Modelle über einen Zeitraum von etwa 2,5 Tagen. Der AdamW-Optimizer wurde eingesetzt, um die Modellleistung zu optimieren.

Bewertung der Modellleistung

Unsere Analyse umfasste die Prüfung, wie Modelle, die mit verschiedenen Konfigurationen trainiert wurden, auf verschiedenen Benchmarks abschnitten. Wir haben auf Schlussfolgerungen, gesundes Menschenverstand-Inferenz, Multitasking-Fähigkeiten und die Abhängigkeit des Modells von ungenauen Informationen getestet.

Die Ergebnisse zeigten, dass unsere Konfigurationen oft besser abschnitten als die Originalmodelle von RedPajama, wobei einige Konfigurationen in bestimmten Benchmarks Top-Werte erzielten.

Zufallsratenbewertung

Um die Modellleistung bei Tests wie MMLU besser zu verstehen, führten wir eine Metrik ein, um zu messen, wie oft Vorhersagen zufälligen Vermutungen ähnelten. Ein höherer Wert zeigt an, dass die Vorhersagen eines Modells zuverlässiger sind als der Zufall.

Analyse des Trainingsverlusts

Wir analysierten die Verlustkurven für den Trainingsprozess verschiedener Konfigurationen. Dabei traten einige Schlüsselerkenntnisse auf:

  1. Die Konfiguration mit der besten durchschnittlichen Genauigkeit hatte den höchsten durchschnittlichen Verlust, was zeigt, dass ein niedrigerer Verlust nicht unbedingt bessere Ergebnisse bedeutet.
  2. Eine Konfiguration, die hauptsächlich aus Codesdaten bestand, hatte den niedrigsten Trainingsverlust, was einen Zusammenhang zwischen Datentyp und Verlustleistung zeigt.

Training mit grossen Batch-Grössen am 7B-Modell

Für ein grösseres Modell mit 7 Milliarden Parametern haben wir unsere Datenkombinationen angepasst, um mehr Webtexte einzubeziehen, und auch zusätzliche Quellen hinzugefügt, um die Vielfalt zu erhöhen. Wir wollten ein Gleichgewicht zwischen hoher Leistung und effizientem Training herstellen.

Trainingskonfiguration für das 7B-Modell

Die Architektur wurde angepasst, um zum grösseren Modell zu passen und eine Sequenzlänge von 2.048 Tokens beizubehalten. Wir verwendeten einen anderen Tokenizer und folgten einem spezifischen Trainingsoptimizer-Muster, um diesem grösseren Massstab gerecht zu werden.

Schnelles Training mit grossen Batches

Das Training mit grösseren Batch-Grössen ermöglichte uns eine schnellere Konvergenz und verbesserte die Trainingseffizienz. Wir bemerkten jedoch auch, dass grössere Batches in einigen Fällen zu Überanpassung führen konnten. Daher haben wir eine neue Strategie entwickelt, die Gewichtung senkt, um diese Risiken zu mindern.

Progressives Training mit Gewichtungssenkung

Wir haben eine neue Methode namens Progressives Training mit Gewichtungssenkung (PTWD) eingeführt. Dieser Ansatz wandte während verschiedener Phasen des Trainings unterschiedliche Gewichtungssenkungen an, was zu einer verbesserten Konvergenz und besserem Management der Modellleistung führte.

Ergebnisse aus dem Vortraining und der Instruktionsanpassung

Nach unserem ersten Training führten wir eine Instruktionsanpassung durch, die in einigen Benchmarks zu verbesserten Ergebnissen, aber in anderen zu leicht niedrigeren Leistungen führte. Insgesamt stieg die durchschnittliche Genauigkeit nach dieser zusätzlichen Anpassung erheblich an.

Verwandte Arbeiten und Fazit

Unsere Arbeit hebt die Bedeutung der Verwendung vielfältiger und gut verwalteter Datensätze beim Training grosser Sprachmodelle hervor. Durch den Fokus auf die effektive Kombination von Datenquellen und gründliche Deduplizierung haben wir einen Weg zu effizienteren Trainingsprozessen aufgezeigt. Das kann zu einer besseren Leistung in verschiedenen Aufgaben führen und die zukünftige Forschung zu datenzentrierten Methoden für das Training von Sprachmodellen prägen.

Durch SlimPajama-DC wollen wir zu weiteren Erkundungen anregen, wie unterschiedliche Datenkombinationen die Trainingseffizienz grosser Sprachmodelle verbessern können.

Originalquelle

Titel: SlimPajama-DC: Understanding Data Combinations for LLM Training

Zusammenfassung: This paper aims to understand the impacts of various data combinations (e.g., web text, Wikipedia, GitHub, books) on the pretraining of large language models using SlimPajama. SlimPajama is a rigorously deduplicated, multi-source dataset, which has been refined and further deduplicated to 627B tokens from the extensive 1.2T token RedPajama dataset contributed by Together. We have termed our research as SlimPajama-DC, an empirical analysis designed to uncover fundamental characteristics and best practices associated with employing SlimPajama in the training of large language models. During our research with SlimPajama, two pivotal observations emerged: (1) Global deduplication vs. local deduplication. We analyze and discuss how global (across different sources of datasets) and local (within the single source of dataset) deduplications affect the performance of trained models. (2) Proportions of highly-deduplicated multi-source datasets in the combination. To study this, we construct six configurations on SlimPajama dataset and train individual ones using 1.3B Cerebras-GPT model with Alibi and SwiGLU. Our best configuration outperforms the 1.3B model trained on RedPajama using the same number of training tokens by a significant margin. All our 1.3B models are trained on Cerebras 16$\times$ CS-2 cluster with a total of 80 PFLOP/s in bf16 mixed precision. We further extend our discoveries (such as increasing data diversity is crucial after global deduplication) on a 7B model with large batch-size training. Our SlimPajama-DC models are available at: https://huggingface.co/MBZUAI-LLM/SlimPajama-DC and the separate SlimPajama-DC datasets are available at: https://huggingface.co/datasets/MBZUAI-LLM/SlimPajama-627B-DC.

Autoren: Zhiqiang Shen, Tianhua Tao, Liqun Ma, Willie Neiswanger, Zhengzhong Liu, Hongyi Wang, Bowen Tan, Joel Hestness, Natalia Vassilieva, Daria Soboleva, Eric Xing

Letzte Aktualisierung: 2024-05-09 00:00:00

Sprache: English

Quell-URL: https://arxiv.org/abs/2309.10818

Quell-PDF: https://arxiv.org/pdf/2309.10818

Lizenz: https://creativecommons.org/licenses/by/4.0/

Änderungen: Diese Zusammenfassung wurde mit Unterstützung von AI erstellt und kann Ungenauigkeiten enthalten. Genaue Informationen entnehmen Sie bitte den hier verlinkten Originaldokumenten.

Vielen Dank an arxiv für die Nutzung seiner Open-Access-Interoperabilität.

Mehr von den Autoren

Ähnliche Artikel