Seq2SQL: Generierung strukturierter Abfragen aus natürlicher Sprache mit Verstärkungslernen

Ein erheblicher Teil des weltweiten Wissens wird in relationalen Datenbanken gespeichert. Allerdings sind die Möglichkeiten der Benutzer, Fakten aus einer Datenbank abzurufen, aufgrund mangelnder Kenntnisse von Abfragesprachen wie SQL begrenzt. Wir schlagen Seq2SQL vor, ein tiefes neuronales Netzwerk zur Übersetzung natürlichsprachlicher Fragen in entsprechende SQL-Abfragen. Unser Modell nutzt die Struktur von SQL-Abfragen, um den Ausgaberaum der generierten Abfragen erheblich zu reduzieren. Darüber hinaus verwenden wir Belohnungen aus der in-Schleife-Abfrageausführung über die Datenbank, um eine Politik zum Generieren ungeordneter Teile der Abfrage zu lernen, die sich weniger gut für eine Optimierung durch Kreuzentropieverlust eignen. Zudem werden wir WikiSQL veröffentlichen, einen Datensatz mit 80654 manuell annotierten Beispielen von Fragen und SQL-Abfragen, die über 24241 Tabellen aus Wikipedia verteilt sind. Dieser Datensatz ist notwendig, um unser Modell zu trainieren und ist um ein Vielfaches größer als vergleichbare Datensätze. Durch Anwendung eines policy-basierten Reinforcement Learnings mit einer Abfrageausführungs-Umgebung auf WikiSQL übertreffen unser Modell Seq2SQL die aufmerksamkeitsbasierten Sequenz-zu-Sequenz-Modelle, wobei es die Ausführungsgenauigkeit von 35,9% auf 59,4% und die Genauigkeit der logischen Form von 23,4% auf 48,3% verbessert.