Kann BERT die Aufgabe zur Vorhersage des nächsten Wortes ausführen?

11

Ist es möglich, BERT für die Aufgabe der Vorhersage des nächsten Wortes zu verwenden, da es bidirektional ist (einen bidirektionalen Transformator verwendet)? Wenn ja, was muss optimiert werden?

不是 phd 的 phd
quelle
Haben Sie die Originalveröffentlichung gesehen ? Es scheint sich um die Vorhersage auf Satzebene zu handeln, wie in Abschnitt 3.3.2 erläutert.
Mapto
Betrachten Sie eine verwandte Diskussion über GitHub .
Mapto

Antworten:

12

BERT kann nicht für die Vorhersage des nächsten Wortes verwendet werden, zumindest nicht nach dem aktuellen Stand der Forschung zur Modellierung maskierter Sprachen.

BERT ist in einer maskierten Sprachmodellierungsaufgabe geschult und daher können Sie "das nächste Wort nicht vorhersagen". Sie können ein Wort nur maskieren und BERT bitten, es für den Rest des Satzes vorherzusagen (sowohl links als auch rechts vom maskierten Wort).

Auf diese Weise können Sie mit BERT keinen Text abtasten, als wäre es ein normales autoregressives Sprachmodell. BERT kann jedoch als Markov-Random-Field-Language-Modell angesehen und als solches für die Texterzeugung verwendet werden. Siehe Artikel BERT hat einen Mund und es muss sprechen: BERT als Markov Random Field Language Model für Details. Die Autoren veröffentlichten Quellcode und ein Google Colab-Notizbuch .

Update: Die Autoren der MRF Artikel ihre Analyse entdeckt wurde , fehlerhaft und BERT ist kein MRF finden diese

ncasas
quelle
Die Ergebnisse sehen nicht sehr ausgereift aus :(
Itachi
1
Warum können Sie die Maske nicht einfach so steuern, dass sie das letzte Wort in der Sequenz ist? Verwenden Sie dann BERT, um basierend auf dem maskierten Token (nächstes Wort) eine Vorhersage zu treffen. Ich verdaue diese Ergebnisse immer noch, daher kann ich keine Anleitung zur Implementierung geben. Dennoch scheint ein plausibler Ansatz.
Schlitten
Dies wurde von einem Typen in den verschiedenen Twitter-Diskussionen über BERT versucht, nachdem es veröffentlicht wurde, und er bestätigte, dass BERT mit dem von @Sledge beschriebenen Ansatz fehlgeschlagen ist. Wenn Sie einen Satz schneiden und BERT bitten, das nächste Wort vorherzusagen, wird es nicht möglich sein um den rechten Teil des Satzes zu verwenden, den er benötigt, um die Vorhersage durchzuführen.
ncasas
Ich verstehe, @ncasas danke für die Erklärung.
Schlitten