EMNLP 2023精选:Text-to-SQL任务的前沿进展(上篇)——正会论文解读

本文主要是介绍EMNLP 2023精选:Text-to-SQL任务的前沿进展(上篇)——正会论文解读,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

导语

本文记录了今年的自然语言处理国际顶级会议EMNLP 2023中接收的所有与Text-to-SQL相关(通过搜索标题关键词查找得到,可能不全)的论文,共计12篇,包含5篇正会论文和7篇Findings论文,以下是对这些论文的略读,某几篇也有详细的笔记(见链接)。

序号类型标题
1MainBenchmarking and Improving Text-to-SQL Generation under Ambiguity
2MainEvaluating Cross-Domain Text-to-SQL Models and Benchmarks
3MainExploring Chain of Thought Style Prompting for Text-to-SQL
4MainInteractive Text-to-SQL Generation via Editable Step-by-Step Explanations
5MainNon-Programmers Can Label Programs Indirectly via Active Examples: A Case Study with Text-to-SQL
6FindingsBattle of the Large Language Models: Dolly vs LLaMA vs Vicuna vs Guanaco vs Bard vs ChatGPT - A Text-to-SQL Parsing Comparison
7FindingsEnhancing Few-shot Text-to-SQL Capabilities of Large Language Models: A Study on Prompt Design Strategies
8FindingsError Detection for Text-to-SQL Semantic Parsing
9FindingsReFSQL: A Retrieval-Augmentation Framework for Text-to-SQL Generation
10FindingsSelective Demonstrations for Cross-domain Text-to-SQL
11FindingsSemantic Decomposition of Question and SQL for Text-to-SQL Parsing
12FindingsSQLPrompt: In-Context Text-to-SQL with Minimal Labeled Data

由于篇数过多,分为两篇博客记录,本篇为第一篇,主要记录正会论文:

正会论文(Main Conference)

中稿的这5篇正会论文来看,主要还是围绕着Text-to-SQL的评测、实际系统交互和LLM在Text-to-SQL任务的应用为主。

Benchmarking and Improving Text-to-SQL Generation under Ambiguity

  • 链接:https://arxiv.org/pdf/2310.13659v1.pdf
  • 摘要:在文本到SQL转换的研究中,大多数基准测试都是针对每个文本查询对应一个正确的SQL的数据集。然而,现实生活中的数据库上的自然语言查询经常由于模式名称的重叠和多个令人困惑的关系路径,而涉及对预期SQL的显著歧义。为了弥合这一差距,我们开发了一个名为AmbiQT的新基准,其中包含超过3000个示例,每个文本都可以由于词汇和/或结构上的歧义而被解释为两个合理的SQL。 面对歧义时,理想的top-k解码器应该生成所有有效的解释,以便用户可能的消歧(Elgohary等,2021年;Zhong等,2022年)。我们评估了几个文本到SQL系统和解码算法,包括那些使用最先进的大型语言模型(LLMs)的系统,发现它们距离这一理想还很远。主要原因是流行的束搜索算法及其变体将SQL查询视为字符串,并在top-k中产生无益的令牌级别多样性。 我们提出了一种名为LogicalBeam的新解码算法,该算法使用基于计划的模板生成和受限填充的混合方法来导航SQL逻辑空间。逆向生成的计划使模板多样化,而仅在模式名称上分支的束搜索填充提供了值多样性。LogicalBeam在生成top-k排名输出中的所有候选SQL方面,比最先进的模型高出2.5倍的效果。它还提高了SPIDER和Kaggle DBQA上的前5名精确匹配和执行匹配准确率。

image.png

  • 要点:主要关注于自然语言到SQL转换时的歧义现象,作者先是自己设计了一个评测基准AmbiQT,然后针对性设计了一种LogicalBeam的新解码算法,改善原有的beam-search带来的token-level的beam差异。

Evaluating Cross-Domain Text-to-SQL Models and Benchmarks

  • 链接:https://arxiv.org/pdf/2310.18538v1.pdf
  • 摘要:文本到SQL的基准测试在评估该领域的进展和不同模型的排名方面起着关键作用。然而,由于各种原因,比如自然语言查询的不明确、模型生成的查询和参考查询中固有的假设、以及在某些条件下SQL输出的非确定性特性,导致基准测试中模型生成的SQL查询与参考SQL查询的准确匹配失败。在本文中,我们对几个著名的跨领域文本到SQL基准测试进行了广泛的研究,并对这些基准测试中表现最佳的一些模型进行了重新评估,包括手动评估SQL查询和用等效表达式重写它们。我们的评估揭示,由于可以从提供的样本中得出多种解释,所以在这些基准测试中达到完美表现是不可行的。此外,我们发现这些模型的真实性能被低估了,而且在重新评估后它们的相对性能发生了变化。最值得注意的是,我们的评估揭示了一个令人惊讶的发现:在我们的人类评估中,一种基于最新GPT4模型的模型超越了Spider基准测试中的金标准参考查询。这一发现突显了谨慎解读基准测试评估的重要性,同时也认识到进行额外独立评估在推动该领域进步中的关键作用。

image.png

  • 要点:主要讨论了现有Text-to-SQL评测基准中存在的语言不明确、数据值不明确等导致的评估标准失真的现象,作者对部分存在上述问题的Question-SQL Pair进行重写后对现有的一些SOTA模型进行了再评估。

Exploring Chain of Thought Style Prompting for Text-to-SQL

  • 链接:https://arxiv.org/abs/2305.14215
  • 摘要:使用大型语言模型(LLMs)进行上下文学习由于在各种任务上的卓越的少样本表现,近来引起了越来越多的关注。然而,其在文本到SQL解析上的表现仍有很大的提升空间。在本文中,我们假设改善LLMs在文本到SQL解析上的一个关键方面是其多步推理能力。因此,我们系统地研究了如何通过思维链(CoT)风格的提示来增强LLMs的推理能力,包括原始的思维链提示(Wei等,2022b)和最少到最多提示(Zhou等,2023)。我们的实验表明,像Zhou等(2023)中的迭代提示可能对文本到SQL解析来说并不必要,而使用详细的推理步骤往往会有更多的错误传播问题。基于这些发现,我们提出了一种新的CoT风格的提示方法,用于文本到SQL解析。与不带推理步骤的标准提示方法相比,它在Spider开发集和Spider真实集上分别带来了5.2和6.5点的绝对提升;与最少到最多提示方法相比,分别带来了2.4和1.5点的绝对提升。
  • 要点:本文探索了应用LLM解决Text-to-SQL任务时的Prompt Engineering。作者设计了一种“问题分解”的Prompt格式并结合每个子问题中的表列名进行融合,实现了与RASAT+PICARD模型相当的表现。

image.png

  • 笔记:Text-to-SQL任务中的思维链(Chain-of-thought)探索

Interactive Text-to-SQL Generation via Editable Step-by-Step Explanations

  • 链接:https://arxiv.org/abs/2305.07372
  • 摘要:关系数据库在这个大数据时代扮演着重要角色。然而,对于非专家来说,由于他们不熟悉SQL等数据库语言,充分释放关系数据库的分析能力是具有挑战性的。虽然已经提出了许多技术来自动从自然语言生成SQL,但它们存在两个问题:(1)特别是对于复杂查询,它们仍然会犯许多错误,(2)它们没有为非专家用户提供一种灵活的方式来验证和修正错误的查询。为了解决这些问题,我们引入了一种新的交互机制,允许用户直接编辑不正确的SQL的逐步解释来修复SQL错误。在Spider基准测试上的实验表明,我们的方法在执行准确性方面至少比三种最先进的方法高出31.6%。另外,一项包括24名参与者的用户研究进一步表明,我们的方法帮助用户在更少的时间内以更高的信心解决了更多的SQL任务,展示了其拓宽数据库访问,特别是对于非专家的潜力。

image.png

  • 要点:提出了一个名为STEPS的交互式文本到SQL系统,允许用户通过直接编辑逐步解释来修正错误的SQL查询。Spider上实验显示,STEPS在提高任务完成速度、准确性和用户自信度方面相比现有方法有显著优势。

Non-Programmers Can Label Programs Indirectly via Active Examples: A Case Study with Text-to-SQL

  • 链接:https://arxiv.org/abs/2205.12422
  • 摘要:非程序员能否通过自然语言标注来间接地表示其含义的复杂程序?我们介绍了APEL框架,其中非程序员通过选择由种子语义解析器(例如Codex)生成的候选程序来进行标注。由于他们无法理解这些候选程序,我们要求他们通过检查程序的输入输出示例来间接选择。对于每个表达,APEL会主动搜索一个简单的输入,在此输入上候选程序倾向于产生不同的输出。然后,我们仅要求非程序员选择合适的输出,从而推断出哪个程序是正确的,并可以用来微调解析器。作为一个案例研究,我们招募了非程序员人类使用APEL重新标注SPIDER,一个文本到SQL数据集。我们的方法达到了与原始专家标注者相同的标注准确率(75%),并揭露了原始标注中的许多微妙错误。

image.png

  • 要点:本文提出了APEL框架,使非程序员能通过选择候选程序的示例输出来注释文本到SQL的语义。这一方法在文本到SQL数据集SPIDER上达到了与专家相当的注释准确性,并揭示了原始注释中的一些错误。

这篇关于EMNLP 2023精选:Text-to-SQL任务的前沿进展(上篇)——正会论文解读的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/682165

相关文章

MySQL数据库双机热备的配置方法详解

《MySQL数据库双机热备的配置方法详解》在企业级应用中,数据库的高可用性和数据的安全性是至关重要的,MySQL作为最流行的开源关系型数据库管理系统之一,提供了多种方式来实现高可用性,其中双机热备(M... 目录1. 环境准备1.1 安装mysql1.2 配置MySQL1.2.1 主服务器配置1.2.2 从

Linux jq命令的使用解读

《Linuxjq命令的使用解读》jq是一个强大的命令行工具,用于处理JSON数据,它可以用来查看、过滤、修改、格式化JSON数据,通过使用各种选项和过滤器,可以实现复杂的JSON处理任务... 目录一. 简介二. 选项2.1.2.2-c2.3-r2.4-R三. 字段提取3.1 普通字段3.2 数组字段四.

深入理解Mysql OnlineDDL的算法

《深入理解MysqlOnlineDDL的算法》本文主要介绍了讲解MysqlOnlineDDL的算法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小... 目录一、Online DDL 是什么?二、Online DDL 的三种主要算法2.1COPY(复制法)

mysql8.0.43使用InnoDB Cluster配置主从复制

《mysql8.0.43使用InnoDBCluster配置主从复制》本文主要介绍了mysql8.0.43使用InnoDBCluster配置主从复制,文中通过示例代码介绍的非常详细,对大家的学习或者... 目录1、配置Hosts解析(所有服务器都要执行)2、安装mysql shell(所有服务器都要执行)3、

k8s中实现mysql主备过程详解

《k8s中实现mysql主备过程详解》文章讲解了在K8s中使用StatefulSet部署MySQL主备架构,包含NFS安装、storageClass配置、MySQL部署及同步检查步骤,确保主备数据一致... 目录一、k8s中实现mysql主备1.1 环境信息1.2 部署nfs-provisioner1.2.

MySQL中VARCHAR和TEXT的区别小结

《MySQL中VARCHAR和TEXT的区别小结》MySQL中VARCHAR和TEXT用于存储字符串,VARCHAR可变长度存储在行内,适合短文本;TEXT存储在溢出页,适合大文本,下面就来具体的了解... 目录一、VARCHAR 和 TEXT 基本介绍1. VARCHAR2. TEXT二、VARCHAR

MySQL中C接口的实现

《MySQL中C接口的实现》本节内容介绍使用C/C++访问数据库,包括对数据库的增删查改操作,主要是学习一些接口的调用,具有一定的参考价值,感兴趣的可以了解一下... 目录准备mysql库使用mysql库编译文件官方API文档对象的创建和关闭链接数据库下达sql指令select语句前言:本节内容介绍使用C/

mybatis直接执行完整sql及踩坑解决

《mybatis直接执行完整sql及踩坑解决》MyBatis可通过select标签执行动态SQL,DQL用ListLinkedHashMap接收结果,DML用int处理,注意防御SQL注入,优先使用#... 目录myBATiFBNZQs直接执行完整sql及踩坑select语句采用count、insert、u

MySQL之搜索引擎使用解读

《MySQL之搜索引擎使用解读》MySQL存储引擎是数据存储和管理的核心组件,不同引擎(如InnoDB、MyISAM)采用不同机制,InnoDB支持事务与行锁,适合高并发场景;MyISAM不支持事务,... 目录mysql的存储引擎是什么MySQL存储引擎的功能MySQL的存储引擎的分类查看存储引擎1.命令

Spring的基础事务注解@Transactional作用解读

《Spring的基础事务注解@Transactional作用解读》文章介绍了Spring框架中的事务管理,核心注解@Transactional用于声明事务,支持传播机制、隔离级别等配置,结合@Tran... 目录一、事务管理基础1.1 Spring事务的核心注解1.2 注解属性详解1.3 实现原理二、事务事