研究人员创建了一个用户友好的工具,使用户能够以最小的努力对表格数据进行复杂的统计分析。通过将概率性人工智能模型与SQL相结合,他们开发出一种方法,可以比其他技术更快、更准确地提供结果。
一种新颖的工具简化了在表格数据上执行复杂统计分析的过程,而无需用户深入了解底层过程。
GenSQL,一个针对数据库的生成式人工智能系统,提供了预测、识别异常、估算缺失值、纠正错误或生成合成数据的能力,仅需少量键盘输入。
例如,当应用于一名有高血压病史的患者的医疗数据时,GenSQL可能会将该个体的血压读数标记为低,即使它通常在正常范围内。
GenSQL无缝地将一个表格数据集与一个生成的概率性人工智能模型合并,该模型能够根据新数据调整决策,同时考虑不确定性。
此外,GenSQL可用于生成和分析与实际数据库信息密切相似的合成数据,这在不能共享敏感数据的场景中尤其有价值,例如在患者健康记录中,或在真实数据有限的情况下。
这个创新工具建立在SQL的基础上,SQL是一种在1970年代末引入的编程语言,用于创建和管理数据库,全球开发人员普遍使用。
“历史上,SQL向商业世界展示了计算机的潜力。用户可以简单地用一种高级语言向数据库提出问题,而不是编写自定义程序。随着我们从数据查询转向对模型和数据的提问,我们需要一种语言,指导用户向装备有概率性数据的计算机提出有意义的问题,”GenSQL的首席作者、麻省理工学院脑与认知科学系的高级研究科学家兼概率计算项目负责人Vikash Mansinghka ’05, MEng ’09, PhD ’09说道。
与主流的人工智能驱动的数据分析方法相比,研究人员发现GenSQL不仅提供更快的结果,而且还提高了准确性。值得注意的是,GenSQL使用的概率模型是可解释的,允许用户理解和修改它们。
“仅基于简单的统计规则分析数据并识别有意义的模式可能会忽视关键的相互作用。在模型中捕捉相关性和变量依赖关系是至关重要的,这可能非常复杂。通过GenSQL,我们的目标是使广泛的用户群能够查询他们的数据和模型,而无需耗费大量细节,”首席作者Mathieu Huot,麻省理工学院脑与认知科学系的研究科学家和概率计算项目的成员补充道。
论文的贡献者包括麻省理工学院研究生Matin Ghavami和Alexander Lew;研究科学家Cameron Freer;来自Digital Garage的Ulrich Schaechtle和Zane Shelby;麻省理工学院电气工程与计算机科学系教授Martin Rinard,以及卡内基梅隆大学助理教授Feras Saad ’15, MEng ’16, PhD ’22。该研究最近在ACM编程语言设计与实现会议上发表。
融合模型与数据库
SQL,结构化查询语言的缩写,是一种用于在数据库中存储和管理数据的编程语言。在SQL中,用户可以使用特定的关键词提出与数据相关的查询,例如对数据库记录进行求和、过滤或分组。
然而,利用模型可以提供更深入的见解,因为模型可以解释数据对个体的意义。例如,一位女性开发者质疑她的薪水时,可能更关心薪水数据与她个人的关系,而不是总体数据库趋势。
研究人员观察到SQL缺乏有效的机制来包含概率性人工智能模型,而结合概率模型进行推理的方法并不支持复杂的数据库查询。
为了填补这一空白,他们开发了GenSQL,使用户能够使用一种简单而强大的正式编程语言同时对数据集和概率模型进行查询。
GenSQL用户上传他们的数据和概率模型,系统无缝地将二者集成。因此,用户可以对数据执行查询,同时也结合了底层概率模型的输入。这不仅使复杂查询成为可能,而且还产生更精确的响应。
例如,GenSQL查询可能会问:“一名位于西雅图的开发者精通编程语言Rust的可能性有多大?”单纯分析数据库列之间的相关性可能会忽略微妙的依赖关系,而整合概率模型可以捕捉复杂的相互作用。
此外,GenSQL的概率模型是可追踪的,允许用户理解驱动决策的数据。此外,这些模型还提供每个响应的校准不确定性指标。
例如,借助校准的不确定性,在查询模型时,如果评估某位来自数据集中代表性不足的少数群体患者的各种癌症治疗预期结果,GenSQL将透明地显示不确定性水平,而不是过度自信地提倡一种治疗。
提高速度和精度
在评估GenSQL时,研究人员将其系统与使用神经网络的普遍基线方法进行比较。结果发现,GenSQL的速度是这些方法的1.7到6.8倍,快速执行大多数查询,并在毫秒内提供更精确的结果。
团队还在两个案例研究中实施了GenSQL:一个涉及识别标记错误的临床试验数据,另一个生成捕捉复杂基因组关系的精确合成数据。
未来的努力包括扩大GenSQL的应用,以进行广泛的人口建模。借助GenSQL,研究人员可以生成合成数据,以推断健康和薪水等方面,同时调节用于分析的信息。
此外,研究人员还是希望通过向系统引入新的优化和自动化来提高GenSQL的可用性和功能。最终,他们希望能够使用户通过GenSQL以自然语言提出查询,设想开发一个类似于ChatGPT的人工智能专家,以回应任何数据库查询,并通过GenSQL的提问来支持。
该研究部分由美国国防高级研究计划局(DARPA)、谷歌和西戈尔家族基金会资助。