1. Introduction
- 过去一些优秀的模型例如seq2seq架构已经能够实现80%以上的匹配精确度在SQL查询上,但是这些工作实际上是在做语义匹配而非语义解析。现有的语义解析数据集存在两个问题,一个是数据集规模太小,无法训练一个更加现代化的模型,同时单一数据库同时用于训练和测试当中,那任务难度肯定简单很多;二是逻辑形式的SQL标签规模很小,并且每个program中都多多少少存在一些在数据集规模变大时查询有误的问题。
- 有人测试了尝试分开训练集和测试集上的数据库以后,发现模型无法推广到没看到过的数据库中,也就是泛化能力较差,另外数据集类似WikiSQL,SQL查询难度过于简单,无法很好的测试模型在复杂问题上的表现,因此亟需一个包含大量复杂程序和多表数据库的SP数据集。
- 创建此类的SP数据集有以下难度:在线平台上很难找到那么多的数据库同时有很多表;另外标注的人也必须要理解复杂数据库的模式从而创建出一系列的查询问题并且包含了所有SQL的查询类型。并且还需要对问题和SQL进行审查和质量检查,这些都需要非常充足的数据库知识。
- Spider的好处在于可以在SQL查询上实现训练集和测试集在database上的区分,克服了之前数据集的两个缺点。并且定义了一个新的任务模式,模型不仅需要推广到新的程式,也就是查询组合方式,同时还需要推广到新的数据库。测试发现目前最先进的模型仅实现了12.4%的精确匹配精度。表明提升空间还很大。
2. Related Work and Existing Datasets
- 具有不同查询的语义解析数据集已经有很多了,但是都是针对于特定的domain,并且