Relational Task Generation Language: A Declarative Specification Framework for Relational Deep Learning

TL;DR

RTGL是一种声明式语言,简化关系深度学习任务生成,解决SQL手工定义的时间泄漏问题。

cs.PL 🔴 高级 2026-09-01 38 次浏览
Oleksii Kolesnichenko Jakub Peleška Gustav Šír
关系深度学习 声明式语言 时间安全 预测任务生成 开源框架

核心发现

方法论

RTGL通过声明式语法定义预测任务,避免手工SQL的时间泄漏问题。其核心包括基于ANTLR4的语法解析、语义验证模块以及SQL转换引擎,确保生成的任务表时间安全且语义正确。

关键结果

  • 实验表明RTGL生成的任务表与RelBench基准一致,同时发现基准SQL存在时间逻辑错误,例如driver-dnf任务中未来数据泄漏问题。
  • RTGL成功扩展至复杂企业数据库,如ReDeLEx框架中的Seznam数据集,生成多种预测任务。
  • 通过RTGL创建的新任务展示其灵活性,例如预测客户未来30天的服务使用情况。

研究意义

RTGL显著简化了关系深度学习任务定义流程,解决了手工SQL定义的时间泄漏问题,为学术界和工业界提供了一个开源、透明的工具,推动了关系数据的深度学习研究。

技术贡献

RTGL提供了一个声明式框架,支持时间窗口的严格定义,避免数据泄漏。其独立于现有商业平台,兼容开源生态系统如RelBench和ReDeLEx。

新颖性

RTGL是首个开源的关系深度学习任务生成语言,采用声明式语法,显著降低了任务定义的复杂性,填补了现有工具(如PQL)的开源空白。

局限性

  • RTGL目前无法直接处理多跳连接任务,需要定义中间视图。
  • 复杂时间窗口的定义可能对初学者不够友好。

未来方向

未来可扩展RTGL以支持多跳连接任务,并优化语言语法以提高用户友好性,同时探索其与更多关系深度学习框架的集成。

AI 总览摘要

关系深度学习(RDL)是一种处理多表关系数据的机器学习方法,但手工定义预测任务的过程复杂且易发生时间泄漏问题。为解决这一痛点,作者提出了关系任务生成语言(RTGL),一种开源声明式语言,简化了任务定义流程。

RTGL通过声明式语法定义预测目标、时间窗口和实体表,避免手工SQL的复杂性和错误。实验验证了RTGL生成的任务表与RelBench基准一致,同时发现基准SQL存在时间逻辑错误。此外,RTGL成功扩展至复杂企业数据库,展示了其灵活性。

RTGL的开源特性和时间安全设计为关系深度学习研究提供了重要工具,但仍需进一步优化以支持更复杂的任务定义和提高用户体验。未来工作将探索其扩展性和与更多框架的集成。

深度分析

研究背景

关系数据库广泛用于存储结构化数据,但传统机器学习方法需要将数据平展为单表格式,导致信息丢失。关系深度学习(RDL)通过将关系数据库表示为异构图,直接应用图神经网络处理原始数据结构。

核心问题

手工定义RDL预测任务需要复杂的时间安全SQL查询,容易发生未来数据泄漏问题。这不仅影响模型训练的准确性,还增加了工程复杂性。

核心创新

RTGL是一种声明式语言,允许用户通过简单语法定义预测任务,自动生成时间安全的SQL查询。它独立于商业平台,兼容开源生态系统,并支持多种任务类型。

方法详解

  • �� 使用ANTLR4解析RTGL语法,生成抽象语法树(AST)。
  • �� 语义验证模块检查表和列的存在性、类型匹配及时间窗口逻辑。
  • �� SQL转换引擎基于AST生成时间安全SQL查询或任务表,确保时间窗口的严格定义。

实验设计

实验使用RelBench基准验证RTGL生成任务表的正确性,并扩展至ReDeLEx框架的复杂企业数据库。对比基准SQL发现时间逻辑错误,展示RTGL的时间安全性。

结果分析

RTGL生成的任务表与RelBench基准一致,同时发现基准SQL存在未来数据泄漏问题。扩展实验展示了RTGL在复杂数据库中的灵活性,成功生成多种预测任务。

应用场景

RTGL可用于关系深度学习任务定义,如客户行为预测、推荐系统和时间序列分析,适用于学术研究和工业应用。

局限与展望

RTGL目前无法直接处理多跳连接任务,复杂时间窗口定义对初学者不够友好。未来需优化语言语法和扩展功能。

通俗解读 非专业人士也能看懂

想象你在一个图书馆,图书馆有多个书架,每个书架上有不同类别的书。关系数据库就像这个图书馆,每个书架是一个表,书之间的关系是外键。RTGL就像一个图书管理员,你告诉它你需要什么书,它会帮你找到并整理好,确保你只看到过去的信息,不会提前看到未来的书。

简单解释 像给14岁少年讲一样

想象你在玩一个游戏,你需要预测接下来30天哪些玩家会完成任务。RTGL就像一个超级助手,你只需告诉它规则,比如“只看过去的数据”,它就会帮你生成一个安全的任务表,让你可以训练AI模型来预测结果!是不是很酷?

术语表

关系深度学习 (Relational Deep Learning)

一种直接处理关系数据库的机器学习方法,将数据表示为异构图。

用于处理多表数据,避免信息丢失。

时间泄漏 (Temporal Leakage)

训练数据中包含未来信息,导致模型预测不准确。

RTGL通过严格定义时间窗口避免此问题。

声明式语言 (Declarative Language)

一种专注于描述目标而非实现过程的编程语言。

RTGL通过声明式语法定义预测任务。

ANTLR4

一种强大的语法解析工具,用于生成抽象语法树。

RTGL使用ANTLR4解析语法。

RelBench

一个关系深度学习基准测试框架。

用于验证RTGL生成任务表的正确性。

开放问题 这项研究留下的未解疑问

  • 1 如何支持多跳连接任务?
  • 2 如何优化语言语法以提高用户友好性?

应用场景

近期应用

客户行为预测

通过RTGL生成时间安全任务表,预测客户未来行为。

推荐系统

利用RTGL定义预测任务,推荐用户可能感兴趣的产品或服务。

远期愿景

复杂关系数据库分析

扩展RTGL以支持多跳连接任务,推动复杂关系数据的深度学习研究。

原文摘要

Relational Deep Learning (RDL) has become a powerful paradigm for learning from multi-tabular data. However, manually defining RDL prediction tasks is a laborious process that frequently results in data leakage. To address this issue, we introduce Relational Task Generation Language (RTGL) - an open-source declarative language that streamlines RDL task formulation by abstracting away low-level SQL details. We showcase RTGL by reconstructing existing RDL benchmark tasks and uncovering their inconsistencies stemming from manually crafted SQL definitions of RDL prediction targets, thereby underscoring the value of a dedicated declarative language. In addition, we demonstrate the practical utility of RTGL by designing various new tasks with diverse forms and target types. Our experiments confirm the robustness and usability of RTGL, as well as its seamless integration with the existing RDL frameworks, making it widely accessible to the community.

cs.PL cs.DB cs.LG