麻省理工学院的研究人员推出了用于数据库的生成式人工智能。

一种新工具使数据库用户能够在不需要了解背后发生的情况下执行复杂的统计分析表格数据。

GenSQL是一种用于数据库的生成式AI系统,可以帮助用户通过几个按键来进行预测、检测异常、猜测缺失值、修复错误或生成合成数据。

例如,如果该系统用于分析一位一直有高血压的患者的医疗数据,它可以捕捉到该患者的血压读数低于正常范围,但对于其他患者来说是正常的。

GenSQL自动集成了一个表格数据集和一个生成概率AI模型,该模型可以考虑不确定性,并根据新数据调整决策。

此外,GenSQL还可以用于生成和分析模拟数据库中的真实数据。这在无法共享敏感数据(如患者健康记录)或真实数据稀缺的情况下尤其有用。

这个新工具是建立在SQL之上的,SQL是一种用于数据库创建和操作的编程语言,于20世纪70年代末引入,被全球数百万开发人员使用。

“从历史上看,SQL向商业界展示了计算机的能力。他们不需要编写定制程序,只需要用高级语言向数据库提问。我们认为,当我们从仅仅查询数据转向对模型和数据提问时,我们将需要一种类似的语言,教会人们如何向具有数据概率模型的计算机提问。”麻省理工学院大脑与认知科学系概率计算项目的高级作者Vikash Mansinghka ’05, MEng ’09, PhD ’09说道。

研究人员将GenSQL与基于人工智能的流行数据分析方法进行比较,发现GenSQL不仅更快,而且产生更准确的结果。重要的是,GenSQL使用的概率模型是可解释的,用户可以阅读和编辑它们。

“仅仅通过使用一些简单的统计规则来查看数据并寻找一些有意义的模式可能会忽略重要的相互作用。您真正想要捕捉变量之间的相关性和依赖关系,这可能相当复杂。通过GenSQL,我们希望使大量用户能够查询他们的数据和模型,而无需了解所有细节。”主要作者Mathieu Huot补充道,他是麻省理工学院大脑与认知科学系的研究科学家,也是概率计算项目的成员。

该论文的合著者还包括麻省理工学院研究生Matin Ghavami和Alexander Lew,研究科学家Cameron Freer,Digital Garage的Ulrich Schaechtel和Zane Shelby,麻省理工学院电气工程与计算机科学系教授兼计算机科学与人工智能实验室(CSAIL)成员Martin Rinard,以及卡内基梅隆大学助理教授Feras Saad ’15, MEng ’16, PhD ’22。该研究最近在ACM编程语言设计与实现会议上进行了报告。

结合模型和数据库

SQL是一种用于存储和操作数据库中信息的编程语言。在SQL中,人们可以使用关键词提问有关数据的问题,例如对数据库记录进行求和、过滤或分组。

然而,查询模型可以提供更深入的洞察力,因为模型可以捕捉数据对个体的意义。例如,一位女性开发者想知道自己是否被低估的情况下,她更关心的是薪资数据对她个人的意义,而不是数据库记录的趋势。

研究人员注意到SQL没有提供一种有效的方法来整合概率AI模型,但与此同时,使用概率模型进行推理的方法也不支持复杂的数据库查询。

他们构建了GenSQL来填补这个空白,使某人能够使用简单而强大的形式化编程语言查询数据集和概率模型。

GenSQL用户上传他们的数据和概率模型,系统会自动集成它们。然后,她可以在数据上运行查询,这些查询还会从幕后运行的概率模型获得输入。这不仅可以实现更复杂的查询,还可以提供更准确的答案。

例如,GenSQL中的一个查询可能是“西雅图的开发者知道Rust编程语言的可能性有多大?”仅仅查看数据库中列之间的相关性可能会忽略微妙的依赖关系。整合概率模型可以捕捉到更复杂的相互作用。

此外,GenSQL使用的概率模型是可审计的,因此人们可以看到模型用于决策的数据。此外,这些模型还提供了每个答案的校准不确定性度量。

例如,通过这种校准不确定性,如果有人查询模型以预测对数据集中少数族裔群体的不同癌症治疗结果,GenSQL会告诉用户它是不确定的,以及它有多么不确定,而不是过于自信地支持错误的治疗方法。

更快速和更准确的结果

为了评估GenSQL,研究人员将其与使用神经网络的流行基准方法进行了比较。GenSQL比这些方法快1.7到6.8倍,大多数查询在几毫秒内执行,同时提供更准确的结果。

他们还在两个案例研究中应用了GenSQL:一个是系统识别错误标记的临床试验数据,另一个是生成准确的模拟数据,捕捉基因组学中的复杂关系。

接下来,研究人员希望更广泛地应用GenSQL来对人类群体进行大规模建模。通过GenSQL,他们可以生成模拟数据,从而推断出有关健康和薪资等事物的信息,同时控制分析中使用的信息。

他们还希望通过向系统添加新的优化和自动化功能,使GenSQL更易于使用和更强大。从长远来看,研究人员希望使用户能够在GenSQL中进行自然语言查询。他们的目标是最终开发出一种类似ChatGPT的AI专家,用户可以向其询问任何数据库相关的问题,并使用GenSQL查询来支持其回答。

这项研究部分由国防高级研究计划局(DARPA)、谷歌和Siegel家族基金会资助。