Unzureichende Trainingsdaten sind wohl das größte Problem bei der Verarbeitung natürlicher Sprache, besser bekannt als NLP. Für diejenigen, die es nicht wissen, ist NLP ein unglaublich vielfältiges Gebiet, das verschiedene unterschiedliche Aufgaben enthält. In den meisten Fällen bestehen aufgabenspezifische Datensätze aus Hunderten oder Tausenden von Trainingsbeispielen (vom Menschen gekennzeichnet).
Vor diesem Hintergrund profitieren moderne Deep-Learning-Modelle für die Verarbeitung natürlicher Sprachen von erheblichen Datenmengen. Sie erfordern Millionen, wenn nicht Milliarden von Schulungsbeispielen mit Anmerkungen. Die Forscher haben hart gearbeitet und eine Lösung erfunden, um diese Datenlücke zu schließen. Sie entwickelten verschiedene Techniken zum Trainieren von GPL-Modellen (General Purpose Language) unter Verwendung von Tonnen und Tonnen von kommentiertem Text, auch Pre-Training genannt.
Programmierer können dann die vorab trainierten Modelle für NLP-Aufgaben mit kleinen Daten wie Stimmungsanalyse und Beantwortung von Fragen optimieren, was zu unglaublich genauen Genauigkeitsverbesserungen führt, die von Anfang an erheblich besser sind als Trainingsdatensätze.
Was ist BERT?
BERT, kurz für Bidirectional Encoder Representations from Transformers, hat in der maschinellen Lernlandschaft massive Wellen geschlagen. Eine Gruppe von Forschern, die mit Google AI arbeiten, hat kürzlich BERT veröffentlicht. BERT sorgt für Aufsehen aufgrund seiner unglaublich genauen Ergebnisse bei verschiedenen Programmieraufgaben in natürlicher Sprache wie MNLI (Inferenz in natürlicher Sprache), Squad V1.1 (Beantwortung von Fragen) und mehreren anderen.
Die Implementierung des Transformer-Trainings ist ein wesentlicher Grund, warum die Community für maschinelles Lernen BERT als wesentliche technische Innovation ansieht. Die Sprachmodellierung von BERT verspricht, das maschinelle Lernen auf ein neues Niveau zu heben. Es ist im Gegensatz zu den vorherigen Bemühungen, die sich auf Textsequenzen konzentrierten, beginnend mit dem Training von rechts nach links oder von links nach rechts.
Die Ergebnisse zeigen, dass bidirektional trainierte Sprachmodelle im Vergleich zu einrichtungsbasierten Sprachmodellen ein tiefgreifendes Verständnis des Flusses und des Sprachkontexts haben. Bert AI-Forscher diskutieren eine weitgehend neuartige Technik namens MLM (Masked LM). Die Methode gewährleistet ein bidirektionales Training in den Modellen, die zuvor nicht trainiert werden konnten.
Wie BERT funktioniert
BERT nutzt Transformer in großem Umfang. Es ist ein Aufmerksamkeitsmechanismus, der Kontexte zwischen den Wörtern eines Textes und sogar den Unterwörtern für diejenigen lernen kann, die es nicht wissen. In seiner reinsten Form besteht ein Transformator aus zwei unterschiedlichen Mechanismen: einem Codierer und einem Decodierer. Ersteres liest die Eingabe, während letzteres die Vorhersage der Aufgabe erstellt.
Überraschenderweise benötigt BERT nur den Codierungsmechanismus, da sein Hauptziel darin besteht, ein effizientes Sprachmodell zu erstellen. Ein ausführliches Papier der Google-Forscher zeigt, wie der Transformer funktioniert.
Im Gegensatz zu Richtungsmodellen, die die Texteingabe in einer Sequenz (von rechts nach links oder von links nach rechts) erfassen, unterscheiden sich Transformer-Encoder erheblich. Warum? Weil sie eine Sequenz auf einmal lesen können, daher der Begriff bidirektional. Einige würden jedoch argumentieren, dass ungerichtet eine genauere Anpassung wäre. Mit dieser Eigenschaft lernt das Modell den Kontext eines Wortes entsprechend seiner Umgebung.
Während es beim Training von Modellen viele Herausforderungen gibt, ist die Bestimmung eines Vorhersageziels wohl der größte Aufwand. Wie bereits erwähnt, sagen die meisten Modelle Wörter nacheinander voraus. Natürlich ist es schon eine ganze Weile nützlich, aber dieser Ansatz hat seine Grenzen. Warum? Weil es Lernkontexte einschränkt. BERT überwindet diese Herausforderung mit den folgenden Trainingsstrategien:
Maskierter LM aka MLM
Vor der Eingabe von Wortsequenzen in BERT ersetzt ein als [MASK] bekanntes Token fünfzehn Prozent der Anweisungen jeder Zeichenfolge. Das Modell versucht dann, den ursprünglichen Wert des maskierten Wortes gemäß dem Kontext vorherzusagen, der durch nicht maskierte Begriffe gegeben ist. Technisch gesehen erfordern die Vorhersagen des Ausgabeworts:
Implementieren einer Klassifizierungsschicht über dem Encoderausgang
Verwenden der Einbettungsmatrix zum Multiplizieren von Ausgabevektoren und zum Konvertieren dieser in die Vokabeldimension der Sprache
Berechnung der Wahrscheinlichkeit jedes Wortes im Wortschatz mithilfe von Softmax
Denken Sie daran, dass die Verlustfunktion von BERT nur die maskierten Wertvorhersagen berücksichtigt und die nicht maskierten Wortvorhersagen ignoriert. Folglich vereint sich das Modell langsamer als gewöhnliche Richtungsmodelle, ein Attribut, das aufgrund von Hyperkontextbewusstsein auftritt.
Sie müssen bei der Implementierung von BERT aufwändiger sein, da es nicht jedes maskierte Wort ersetzt.
Vorhersage des nächsten Satzes aka NSP
Das Modell im BERT-Trainingsverfahren erhält verschiedene Paare von Eingabesätzen. Es lernt vorherzusagen, ob der zweite Satz in der Zeichenfolge der folgende Satz ist. Fünfzig Prozent der Trainingseingaben sind ein Paar, bei dem der zweite Satz häufig der nachfolgende im ersten Dokument ist. Andererseits enthalten die restlichen fünfzig Prozent zufällige Wörter als zweite Sätze. Unter Annahmen lösen sich zufällige Sätze vom ersten.
Um dem Modell zu helfen, den Unterschied zwischen zwei Sätzen während des Trainings zu bestimmen, geschieht Folgendes, bevor Sie in das Modell einsteigen:
Ein CLS-Token wird am Anfang des ersten Satzes eingegeben, und das [SEP] -Token wird am Ende jedes Satzes eingegeben
Eine Satzsequenz, die das Hinzufügen von Satz A oder B zu jedem Token vorschlägt. Sie werden immense Ähnlichkeiten zwischen der Einbettung von Sätzen und der Einbettung von Vokabeln zwei sehen
Zu jedem Token wird eine Positionseinbettung hinzugefügt, um seine bestimmte Position anzuzeigen. Sie können die Idee und Einbeziehung der Positionseinbettung in dieses Transformatorpapier verstehen.
Wie man den zweiten Satz vorhersagt
Hier ist eine Liste von Schritten, die ausgeführt werden müssen, wenn Sie feststellen möchten, ob zwischen dem zweiten und dem ersten Satz ein Zusammenhang besteht:
Die gesamte Eingabesequenz unterliegt dem Transformer-Modell
Das CLS-Ausgabe-Token wird unter Verwendung einer gewöhnlichen Klassifizierungsschicht in einen zwei mal eins geformten Vektor umgewandelt
Verwenden von softmax zur Berechnung der IsNextSequence-Wahrscheinlichkeit
Es ist erwähnenswert, dass Next-Satz-Vorhersage, Masked LM und BERT-Modell im BERT-Modell zusammen trainieren. Es hilft, die durch die beiden Strategien erzeugte Gesamtverlustfunktion zu minimieren.
Verwenden von BERT
Sie können BERT für verschiedene Sprachaufgaben verwenden. Darüber hinaus benötigt das Kernmodell nur eine winzige Schicht
Das Durchführen von Stimmungsanalysen und anderen Klassifizierungsaufgaben ähnelt der Gruppierung von nächsten Sätzen. Fügen Sie eine Klassifizierungsebene über der Transformer-Ausgabe hinzu, um das CLS-Token zu erhalten
Sie können ein BERT verwenden, um ein Q- und A-Modell zu trainieren, indem Sie zwei weitere Vektoren implementieren, die den Anfang und das Ende der Antwort markieren
Sie können BERT auch zum Trainieren eines Modells zur Erkennung benannter Entitäten verwenden, indem Sie den Ausgabevektor jedes Tokens in eine Klassifizierungsebene einspeisen, um die Bezeichnung der Namensentitätserkennung vorherzusagen
Die BERT-Zeit nutzte diese Technik, um außergewöhnliche Ergebnisse bei verschiedenen komplizierten Aufgaben in natürlicher Sprache zu erzielen.