Definition Was ist RoBERTa?

RoBERTa ist die Bezeichnung eines von Facebook und der Washington University entwickelten optimierten BERT-Pretraining-Ansatzes (BERT = Bidirectional Encoder Representations from Transformers). BERT wurde ursprünglich von Google entworfen und hat zu einem deutlichen Leistungsschub der Sprachmodelle für Natural Language Processing (NLP) beigetragen. RoBERTa basiert vollständig auf BERT und modifiziert einige Trainingsmethoden und -parameter.

Anbieter zum Thema

(Bild: © aga7ta - stock.adobe.com)

RoBERTa steht für Robustly Optimized BERT Pre-training Approach. Es handelt sich um einen von Facebook und der Washington University entwickelten optimierten BERT-Pretraining-Ansatz (BERT steht für Bidirectional Encoder Representations from Transformers). BERT ist eine von Google 2018 vorgestellte Technik des selbstüberwachten maschinellen Lernens für Transformer-basierte NLP-Modelle (Natural-Language-Processing-Modelle). Der BERT-Algorithmus steht als Open Source zur Verfügung und hat zu einem deutlichen Leistungsschub der Sprachmodelle im Bereich des Natural Language Processings beigetragen.

Ziel von RoBERTa ist die Optimierung des Pretrainings mit einer Reduzierung des Zeitaufwands. RoBERTa basiert vollständig auf BERT und wurde vom Entwicklerteam in der Open-Source-Programmbibliothek PyTorch reimplementiert. Für das Pretraining wurden einige Methoden und Parameter von BERT verändert und angepasst. Beispielsweise entfernten die Entwickler Next Sentence Prediction (NSP) aus dem Pretraining und führten das dynamische Maskieren ein. Darüber hinaus verzehnfachten die Entwickler die Menge an Trainingsdaten und erhöhten die Anzahl an Trainingsiterationen. In verschiedenen NLP-Benchmarks wie GLUE (General Language Understanding Evaluation), SQuAD (Stanford Question Answering Dataset) oder RACE (ReAding Comprehension from Examinations) konnte RoBERTa exzellente Ergebnisse erzielen.

Grundlagen zu BERT

Wie aus dem Namen abzuleiten ist, basiert RoBERTa auf BERT. Für ein besseres Verständnis von RoBERTa im Folgenden einige grundlegende Informationen zu BERT. BERT ist das Akronym für Bidirectional Encoder Representations from Transformers, eine 2018 von Google vorgestellte Technik für das Training von auf der Transformer-Architektur basierenden NLP-Modellen. Die Technik ist als Open Source verfügbar und ermöglicht den Sprachmodellen ein tiefes Verständnis von Sprache.

Das Natural Language Processing erfuhr dank BERT einen deutlichen Leistungsschub. Mit BERT trainierte Modelle erfassen die Beziehungen zwischen Wörtern und deren kontextuelle Bedeutung besser. Inzwischen ist ein umfangreiches Ökosystem an NLP-Anwendungen und -Algorithmen rund um BERT entstanden. Dazu kann auch RoBERTa gezählt werden. Google stellt mehrere mit BERT vortrainierte Sprachmodelle zur Verfügung und hat Bidirectional Encoder Representations from Transformers in die Google-Suche implementiert. Darüber hinaus existieren zahlreiche weitere BERT-basierte Sprachmodelle. BERT arbeitet bidirektional auf Basis von Transformer-Sprachmodellen mit einer bestimmten Anzahl an Encoder- und Decoder-Schichten und verwendet sogenannte Selbstaufmerksamkeitsmechanismen. Die Modelle nutzen tiefe neuronale Netzwerke bestehend aus vielen Neuronenschichten und sind in der Lage, komplexe Zusammenhänge abzubilden. Eingabesequenzen werden dank der Bidirektionalität nicht mehr prinzipiell nur sequenziell verarbeitet. Sie werden sowohl vom Anfang als auch vom Ende her analysiert. Für das Pretraining wird ein möglichst großer, ungelabelter Textkorpus verwendet. Im anschließenden Finetuning lassen sich die vortrainierten Modelle für bestimmte NLP-Aufgaben optimieren.

Prinzipielle Funktionsweise von RoBERTa

Die Entwickler portierten die neuronale Netzwerk-Architektur von BERT aus dem Google-TensorFlow-Framework nach PyTorch. Zur Optimierung des Pretrainings wurden mehrere Veränderungen der Hyperparameter und Anpassungen des Trainings vorgenommen. Diese Veränderungen und Anpassungen sind im Wesentlichen folgende:

  • Entfernen von Next Sentence Prediction (NSP) aus dem Pretraining
  • Ersatz der statischen Maskierung durch eine dynamische Maskierung
  • Vergrößerung der Batch-Größe der Sequenzen
  • Erhöhung der Trainingsiterationen
  • Verwendung von deutlich mehr Trainingsdaten

Im Detail erhöhten die Entwickler die Batch-Größe von 256er-Sequenzen auf 8K-Sequenzen. Als Trainingsdaten kamen neben dem für BERT verwendeten 16 Gigabyte großen Textkorpus (bestehend aus dem englischen Wikipedia- und dem Books-Korpus) weitere Textdaten mit einer Gesamtgröße von 160 Gigabyte zum Einsatz. Zu diesen Daten gehören der Common-Crawl-News-Datensatz mit 63 Millionen Artikeln und 76 Gigabyte Größe, der Open-Web-Text-Korpus mit 38 Gigabyte Größe und Stories aus Common Crawl mit 31 Gigabyte Größe.

Ergebnisse der BERT-Optimierung mit RoBERTa

Die Optimierung des BERT-Pretrainings mit RoBERTa zeigt in verschiedenen NLP-Benchmarks deutliche Verbesserungen im Vergleich zum Original-BERT-Training. In NLP-Benchmarks wie GLUE (General Language Understanding Evaluation), SQuAD (Stanford Question Answering Dataset) oder RACE (ReAding Comprehension from Examinations) erzielte RoBERTa zum Teil bisher nicht erreichte Bestwerte. Beispielsweise schaffte RoBERTa mit der Punktzahl von 88,5 im GLUE-Benchmark eine Spitzenposition. Der vorherige Spitzenreiter XLNet-Large wurde von RoBERTa verdrängt. Auch im RACE-Benchmark überflügelte RoBERTa die Ergebnisse der Modelle XLNet und BERT(LARGE). Die Benchmarkergebnisse stellen unter Beweis, dass die Optimierung mit RoBERTa die Leistungsfähigkeit der Sprachmodelle für verschiedenen NLP-Aufgaben deutlich steigern kann.

(ID:48297168)