Schnelle und genaue neuronale CRF-Konstituenz-Parsing

Die Schätzung von Wahrscheinlichkeitsverteilungen stellt eine zentrale Herausforderung im Bereich des Natural Language Processing (NLP) dar. Dennoch wurden in sowohl der Ära der tiefen Lernverfahren (Deep Learning, DL) als auch in der vor-DL-Ära vergleichsweise wenige Arbeiten vorgestellt, die strukturbaum-basierte CRFs (Conditional Random Fields) für die Constituency-Parsing-Aufgabe einsetzen – im Gegensatz zu den zahlreichen Anwendungen der linearen Ketten-CRFs in Sequenzmarkierungsaufgaben. Dies liegt hauptsächlich an der Komplexität und Ineffizienz des Inside-Outside-Algorithmus. In dieser Arbeit präsentieren wir einen schnellen und präzisen neuronalen CRF-Parser für Constituency-Parsing. Der zentrale Ansatz besteht darin, den Inside-Algorithmus durch direkte, große Tensoroperationen auf der GPU zu batchen, um die Verlustberechnung effizient durchzuführen, und gleichzeitig den Outside-Algorithmus für die Gradientenberechnung durch eine effiziente Rückpropagation zu umgehen. Zusätzlich schlagen wir eine einfache zweistufige Parsing-Strategie vor, die zunächst Klammern (brackets) erzeugt und anschließend diese mit Etiketten verseht, um die Effizienz weiter zu steigern. Zur Verbesserung der Parsing-Leistung leiten wir inspiriert durch jüngste Fortschritte im Dependency-Parsing eine neue Scoring-Architektur ein, die auf einer Grenzrepräsentation und biaffiner Aufmerksamkeit basiert, sowie eine vorteilhafte Dropout-Strategie. Experimente an den Datensätzen PTB, CTB5.1 und CTB7 zeigen, dass unser zweistufiger CRF-Parser sowohl in den Szenarien ohne als auch mit BERT neue State-of-the-Art-Ergebnisse erzielt und über 1.000 Sätze pro Sekunde verarbeiten kann. Der Quellcode wird unter https://github.com/yzhangcs/crfpar veröffentlicht.