Text2SQL学习整理(五)将Text-to-SQL任务与基本语言模型结合

导语

上篇博客:Text2SQL学习整理(四)将预训练语言模型引入WikiSQL任务简要介绍了两个借助预训练语言模型BERT来解决WIkiSQL数据集挑战的方法:SQLOVA和X-SQL模型。其中,借助预训练语言模型的强大表示能力,SQLOVA已经超越了人类表现。而X-SQL则更进一步,使用MT-DNN取得了比SQLOVA更好的效果。

本篇博客将为大家介绍另一个使用预训练模型的方法:HybridSQL。

Hybrid Ranking Network for Text-to-SQL

HybridSQL认为,之前的工作揭示了WikiSQL上Text-to-SQL的几个主要挑战如下:

(1)如何融合来自NL问题和表模式的信息,由编码器处理;

(2)如何保证输出的SQL查询的可执行性和准确性,由解码器处理;

(3)如何利用预先训练的语言模型。

因而,这篇工作围绕这三点出发,分别进行了改进。

创新点

HybridSQL的贡献主要有三方面。

  1. 提出了一种简单有效的网络结构,将Text-to-SQL任务与基本语言模型完美地结合起来,从而最大程度地利用了基本语言模型的强大功能。

  2. 作为编码器的基本语言模型直接编码NL问题和列,而不需要任何额外的池操作,这被认为是Text-to-sql中捕获问题-列关系的最佳编码器。

  3. 所提出的混合排序机制和Execution-guided decoding(详见上一篇博客)处理列-列关系,有效提高准确率。

模型简介

HybridSQL将Text-to-SQL定义为一个多任务学习问题,可以通过适应预先训练的Transformer模型来解决。

X-SQL中,模型直接对全表进行了序列化处理,在后续预测子任务中,需要进行Attentive pooling。如下图所示,HydraNet的一个创新点在于它将表示层的输入变成了每个列的列文本和query文本组成的对,这样对于每个列都是bert标准的sentence pair输入。最大化利用了预训练模型的性能(BERT、RoBERTa等)。

在预测后续的6个子任务时,HybridSQL将其分为了两大类

  • 与具体列有关的任务,如W-COL,W-OP,W-VAL。
  • 与具体列无关的任务,如W-NUM和SEL-NUM。

在HybridSQL中,与具体列有关的任务被建模成sentence pair输入的分类任务和文本问答任务。由于HydraNet的每一个序列输入中只有一个column,无法获知全局的信息。所以,在这些任务中,HybridSQL通过设定阈值或对所有列的结果加权来得到预测结果。

HydraNet的推理过程如下:

  • 计算每个(ci, q) pair的所有子任务结果;
  • 综合所有对的结果得到W-NUM和SEL-NUM;
  • 对每个pair针对select进行排序,选出得分最高的SEL-NUM个列及其相关的agg作为条件;
  • 对每个pair针对where进行排序,选出得分最高的W-NUM个列及其相关的val、op作为条件;

结果

通过以上改进,HybridSQL取得了超过X-SQL的表现:

总结

本文介绍了X-SQL后的一个借助预训练语言模型的方法:HybridSQL。该方法尽可能的将Text-to-SQL任务和原始的预训练模型的形式保持一致,最大限度的利用预训练模型的表示能力。后面最新的SOTA模型SeaD其实也是从提升预训练模型角度出发,最大限度利用预训练模型的能力。

相关推荐
程序员Linc2 分钟前
计算机视觉 vs 机器视觉 | 机器学习 vs 深度学习:核心差异与行业启示
深度学习·机器学习·计算机视觉·机器视觉
不去幼儿园2 分钟前
【启发式算法】Dijkstra算法详细介绍(Python)
人工智能·python·算法·机器学习·启发式算法·图搜索算法
云卓SKYDROID12 分钟前
无人机投屏技术解码过程详解!
人工智能·5g·音视频·无人机·科普·高科技·云卓科技
zy_destiny18 分钟前
【YOLOv12改进trick】三重注意力TripletAttention引入YOLOv12中,实现遮挡目标检测涨点,含创新点Python代码,方便发论文
网络·人工智能·python·深度学习·yolo·计算机视觉·三重注意力
自由的晚风20 分钟前
深度学习在SSVEP信号分类中的应用分析
人工智能·深度学习·分类
大数据追光猿20 分钟前
【大模型技术】LlamaFactory 的原理解析与应用
人工智能·python·机器学习·docker·语言模型·github·transformer
玩电脑的辣条哥35 分钟前
大模型LoRA微调训练原理是什么?
人工智能·lora·微调
TW-NLP41 分钟前
开源最强中文纠错大模型,超越华为17个点!
自然语言处理
极客BIM工作室42 分钟前
DeepSeek V3 源码:从入门到放弃!
人工智能
神秘的土鸡1 小时前
如何在WPS中接入DeepSeek并使用OfficeAI助手(超细!成功版本)
人工智能·机器学习·自然语言处理·数据分析·llama·wps