【text2sql】新模型架构RESDSQL取得了SOTA效果

这篇论文的标题是《RESDSQL: Decoupling Schema Linking and Skeleton Parsing for Text-to-SQL》,作者是来自中国人民大学信息学院,发表于2023年的AAAI。论文的主要贡献在于提出了RESDSQL框架,该框架通过解耦模式链接和骨架解析来提高Text-to-SQL任务的性能和鲁棒性。作者通过在Spider数据集上的实验验证了他们的方法,当时取得了SOTA效果。

模型概述

作者将Text-to-SQL任务视为一个翻译任务,可以使用编码器-解码器(transformer)模型来解决。为了应对现有的挑战,他们通过在输入序列中注入最相关的模式项,以及在输出序列中加入SQL骨架,从而提出了排名增强的编码器(Ranking-enhanced Encoder)和骨架感知的解码器(Skeleton-aware Decoder)。

排名增强编码器(Ranking-Enhanced Encoder)

目的 :减少编码器输入中的所有模式项,只考虑最相关的模式项。
方法 :设计了一个交叉编码器来同时对表格和列进行分类,并基于分类概率对它们进行排名。
输入 :将数据库的模式项序列化成默认顺序的模式序列,并与问题拼接形成输入序列。
编码模块(Encoding Module) :使用RoBERTa模型对输入序列进行编码,并通过池化模块将每个模式项的输出嵌入表示为一个整体。
列增强层(Column-Enhanced Layer) :为了解决某些问题只提及列名而不提及表名的问题,提出了列增强层来将列信息注入到相应的表嵌入中。
交叉编码器的损失函数(Loss Function of Cross-Encoder):使用焦点损失(focal loss)来解决训练数据中标签分布高度不平衡的问题。

骨架感知解码器(Skeleton-Aware Decoder)

目的 :将SQL生成分解为两个步骤:(1) 基于问题语义生成SQL骨架;(2) 从输入序列中选择所需的"数据"(即表、列和值)来填充骨架的插槽。
方法 :不直接生成目标SQL查询,而是鼓励解码器先生成SQL查询的骨架,然后继续生成SQL查询。
损失函数:使用序列生成的损失函数,基于Transformer解码器的自注意力机制,先生成骨架,然后生成SQL查询。

消融研究(Ablation Studies)

列增强层 :证明了列增强层在注入人类先验知识到交叉编码器中是有效的。
焦点损失 :证明了焦点损失在解决训练数据中标签不平衡问题上的有效性。
排名模式项 :证明了排名增强编码器在模式链接中的关键作用。
骨架解析:证明了骨架感知解码器在简化解码步骤中的作用。

实验补充

  • 数据集:在Spider及其三个变体(Spider-DK、Spider-Syn和Spider-Realistic)上进行实验。
  • 评估指标:使用精确匹配(EM)和执行准确度(EX)两个指标来评估性能。
  • 训练 :分两个阶段训练RESDSQL。第一阶段训练交叉编码器对模式项进行排名,第二阶段训练seq2seq模型。
相关推荐
workflower1 小时前
Prompt Engineering的重要性
大数据·人工智能·设计模式·prompt·软件工程·需求分析·ai编程
deephub3 小时前
LLM高效推理:KV缓存与分页注意力机制深度解析
人工智能·深度学习·语言模型
青衫弦语3 小时前
【论文精读】VLM-AD:通过视觉-语言模型监督实现端到端自动驾驶
人工智能·深度学习·语言模型·自然语言处理·自动驾驶
没枕头我咋睡觉3 小时前
【大语言模型_4】源码编译vllm框架cpu版
人工智能·语言模型·自然语言处理
极客密码3 小时前
大厂出品!三个新的 DeepSeek 平替网站
aigc·cursor·deepseek
WHATEVER_LEO3 小时前
【每日论文】Text-guided Sparse Voxel Pruning for Efficient 3D Visual Grounding
人工智能·深度学习·神经网络·算法·机器学习·自然语言处理
小宇爱4 小时前
38、深度学习-自学之路-自己搭建深度学习框架-3、自动梯度计算改进
人工智能·深度学习·自然语言处理
小白狮ww6 小时前
国产超强开源大语言模型 DeepSeek-R1-70B 一键部署教程
人工智能·深度学习·机器学习·语言模型·自然语言处理·开源·deepseek
PXM的算法星球7 小时前
java(spring boot)实现向deepseek/GPT等模型的api发送请求/多轮对话(附源码)
java·gpt·microsoft
Blankspace空白7 小时前
【小白学AI系列】NLP 核心知识点(八)多头自注意力机制
人工智能·自然语言处理