Our new X account is live! Follow @wizwand_team for updates
WorkDL logo mark

SQLNet: Generating Structured Queries From Natural Language Without Reinforcement Learning

About

Synthesizing SQL queries from natural language is a long-standing open problem and has been attracting considerable interest recently. Toward solving the problem, the de facto approach is to employ a sequence-to-sequence-style model. Such an approach will necessarily require the SQL queries to be serialized. Since the same SQL query may have multiple equivalent serializations, training a sequence-to-sequence-style model is sensitive to the choice from one of them. This phenomenon is documented as the "order-matters" problem. Existing state-of-the-art approaches rely on reinforcement learning to reward the decoder when it generates any of the equivalent serializations. However, we observe that the improvement from reinforcement learning is limited. In this paper, we propose a novel approach, i.e., SQLNet, to fundamentally solve this problem by avoiding the sequence-to-sequence structure when the order does not matter. In particular, we employ a sketch-based approach where the sketch contains a dependency graph so that one prediction can be done by taking into consideration only the previous predictions that it depends on. In addition, we propose a sequence-to-set model as well as the column attention mechanism to synthesize the query based on the sketch. By combining all these novel techniques, we show that SQLNet can outperform the prior art by 9% to 13% on the WikiSQL task.

Xiaojun Xu, Chang Liu, Dawn Song• 2017

Related benchmarks

TaskDatasetResultRank
Text-to-SQLSpider 1.0 (dev)
Exact Match Accuracy10.9
92
Text-to-SQLSpider 1.0 (test)
EM Acc (Overall)12.4
91
Semantic ParsingWikiSQL (test)
Execution Accuracy68
27
Natural Language to SQLWikiSQL (test)
Accuracy68
17
Semantic ParsingWikiSQL (dev)
Accuracy69.8
13
SQL Query GenerationWikiSQL (dev)
Accuracy69.8
13
Text-to-SQLWikiSQL 4 (dev)
Execution Accuracy69.8
11
Text-to-SQLWikiSQL 4 (test)
Execution Accuracy68
11
Text-to-SQL (Component Matching)Spider (test)
SELECT Component Error44.5
9
Text-to-SQLWikiSQL 1.0 (dev)
Execution Accuracy0.698
8
Showing 10 of 13 rows

Other info

Follow for update