
摘要
世界上大量的知识存储在关系数据库中。然而,由于用户对查询语言(如SQL)缺乏了解,从数据库中检索事实的能力受到限制。我们提出了一种名为Seq2SQL的深度神经网络模型,用于将自然语言问题转换为相应的SQL查询。该模型利用了SQL查询的结构特点,显著减少了生成查询的输出空间。此外,我们通过在数据库上执行查询过程中获得的奖励来学习一种策略,以生成查询中的无序部分,这些部分不太适合通过交叉熵损失进行优化。我们还将发布WikiSQL数据集,该数据集包含从维基百科24241个表格中提取的80654个手工注释的问题和SQL查询示例。此数据集对于训练我们的模型至关重要,并且其规模比类似的数据集大一个数量级。通过将基于策略的强化学习方法应用于WikiSQL数据集中的查询执行环境,我们的模型Seq2SQL超越了注意力机制序列到序列模型,在执行准确率方面从35.9%提高到59.4%,在逻辑形式准确率方面从23.4%提高到48.3%。
代码仓库
CX000/sqlnet_inference_py36
pytorch
GitHub 中提及
wronnyhuang/SQLNet_inference
pytorch
GitHub 中提及
ist-daslab/rosa
pytorch
GitHub 中提及
openbotai/nl2sql
GitHub 中提及
Baidi96/text2sql
pytorch
GitHub 中提及
kasnerz/tabgenie
GitHub 中提及
abhishekchugh17/sql12
pytorch
GitHub 中提及
tiwarikajal/Seq2SQL-
pytorch
GitHub 中提及
xiaojunxu/SQLNet
pytorch
GitHub 中提及
salesforce/WikiSQL
官方
GitHub 中提及
llSourcell/SQL_Database_Optimization
pytorch
GitHub 中提及
racheljose21/chatbot
pytorch
GitHub 中提及
PriyankaDatar/NLP_SQL_Project
pytorch
GitHub 中提及
PriyankaDatar/NLP_Project_Modfications
pytorch
GitHub 中提及
kh-mo/QA_wikisql
GitHub 中提及
基准测试
| 基准 | 方法 | 指标 |
|---|---|---|
| code-generation-on-wikisql | Seq2SQL (Zhong et al., 2017) | Exact Match Accuracy: 48.3 Execution Accuracy: 59.4 |
| code-generation-on-wikisql | Seq2Seq (Zhong et al., 2017) | Exact Match Accuracy: 23.4 Execution Accuracy: 35.9 |