FuncEvalGMN: Evaluating Functional Correctness of SQL via Graph Matching Network

2024年07月09日
  • 简介
    本文提出了一种基于图形的新方法来评估 SQL 生成的功能正确性。传统的评估 SQL 代码生成的方法,如基于匹配和基于执行的方法(例如,精确集合匹配和执行准确性),存在两个主要限制。首先,前者未能有效评估功能正确性,因为不同的 SQL 查询可能具有相同的功能。其次,后者容易在评估中产生误报样本。我们提出的评估方法 \texttt{FuncEvalGMN} 不依赖于测试数据的充分准备,它可以精确测试代码的功能正确性。首先,我们使用称为 \textit{Relnode} 的关系运算符树(ROT)解析 SQL,该树从逻辑执行的角度包含丰富的语义信息。然后,我们引入了一种基于 GNN 的方法来预测生成的 SQL 的功能正确性。此方法结合了全局位置嵌入,以解决传统图匹配框架中拓扑信息丢失的限制。作为辅助贡献,我们提出了一种基于规则的匹配算法,称为 Relnode 部分匹配 (\texttt{RelPM}) 作为基准。最后,我们贡献了一个数据集 \texttt{Pair-Aug-Spider},其中包括一个训练集和两个测试集,每个测试集都由 SQL 代码对组成,以模拟各种 SQL 代码评估场景。训练集和一个测试数据集侧重于使用大型语言模型 (LLMs) 进行代码生成,而另一个测试数据集侧重于 SQL 等价重写。
  • 作者讲解
  • 图表
  • 解决问题
    本论文旨在提出一种基于图形的方法来评估SQL代码生成的功能正确性。传统的评估方法存在功能正确性评估不充分和易产生误报的问题。
  • 关键思路
    该论文提出了一种名为Relnode的关系运算符树(ROT)来解析SQL,并引入了一种基于图神经网络的方法来预测生成的SQL的功能正确性。该方法包括全局位置嵌入以解决传统图匹配框架中丢失拓扑信息的问题。
  • 其它亮点
    论文提出了一个基于规则匹配算法RelPM的基准,并提供了一个数据集Pair-Aug-Spider,包括一个训练集和两个测试集,分别模拟使用大型语言模型(LLMs)生成代码和SQL等价重写的情况。
  • 相关研究
    最近在这个领域中,还有一些相关的研究,如《SQLNet: Generating Structured Queries from Natural Language Without Reinforcement Learning》和《Neural Network-based Graph Embedding for Cross-Platform Binary Code Similarity Detection》等。
许愿开讲
PDF
原文
点赞 收藏
向作者提问
NEW
分享到Link

提问交流

提交问题,平台邀请作者,轻松获得权威解答~

向作者提问