【技术实现步骤摘要】
【国外来华专利技术】基于神经网络的自然语言查询到数据库查询的转换
本公开总地涉及数据库查询的自动生成,并且更具体地,涉及用于将自然语言查询转换成数据库查询的基于神经网络的模型。
技术介绍
世界上大量可用的数据存储在关系数据库中,关系数据库为诸如医疗记录、金融市场、客户关系管理之类的应用程序提供了基础。但是,访问关系数据库中的信息需要了解数据库查询语言,例如结构化查询语言(SQL)。尽管诸如SQL之类的数据库查询语言在允许用户指定对来自关系数据库的数据的请求方面具有强大功能,但它们却很难学习。为了能够使用数据库查询语言有效地编写数据库查询,需要具备数据库方面的专业知识和强大的技术知识。一些系统支持自然语言来访问存储在系统中的数据。自然语言查询提供了易于表达,因为人们不需要培训如何使用自然语言。但是,这些系统不提供数据库查询语言(例如SQL)的表达能力。例如,自然语言查询可以以多种方式来解释,但相应地,执行自然语言查询来访问存储在关系数据库中的数据可能效率不高,并且可能无法检索所请求的确切信息。因此,使用自然语言查询或数据库查询来访问关系数据库中存储的数据的常规技术具有缺点,因为它们要么提供了易于表达,要么提供了表达的能力,但不能同时提供两者。附图说明所公开的实施例具有其他优势和特征,这些优势和特征从具体实施方式、附加的权利要求以及所附的图(附图)将更加显而易见。图1是示出了根据实施例的用于将自然语言查询转换为数据库查询的整个系统环境的高级框图。图2示出了根据实施例的用于将自然语言查询转换成数 ...
【技术保护点】
1.一种由包括一个或更多个计算机的计算机系统执行的方法,其中所述计算机系统执行以下步骤:/n基于使用数据库模式存储的数据,接收输入自然语言查询;/n从多个项生成令牌序列,所述多个项包括:/n所述输入自然语言查询的项,/n所述数据库模式的一组列,以及/n数据库查询语言的词汇表;/n生成一个或更多个输入表示,每个输入表示通过对所述令牌序列进行编码而获得;/n访问基于机器学习的多个模型,每个模型配置为预测与所述输入自然语言查询相对应的数据库查询的部分;/n对于所述多个模型中的每一个,基于一输入表示执行模型以生成所述数据库查询的一部分;/n组合所生成的数据库查询的各部分,以获得所述数据库查询;/n执行所述数据库查询,以获得结果集。/n
【技术特征摘要】
【国外来华专利技术】20170518 US 62/508,367;20180131 US 15/885,6131.一种由包括一个或更多个计算机的计算机系统执行的方法,其中所述计算机系统执行以下步骤:
基于使用数据库模式存储的数据,接收输入自然语言查询;
从多个项生成令牌序列,所述多个项包括:
所述输入自然语言查询的项,
所述数据库模式的一组列,以及
数据库查询语言的词汇表;
生成一个或更多个输入表示,每个输入表示通过对所述令牌序列进行编码而获得;
访问基于机器学习的多个模型,每个模型配置为预测与所述输入自然语言查询相对应的数据库查询的部分;
对于所述多个模型中的每一个,基于一输入表示执行模型以生成所述数据库查询的一部分;
组合所生成的数据库查询的各部分,以获得所述数据库查询;
执行所述数据库查询,以获得结果集。
2.根据权利要求1所述的方法,其中从客户端设备接收所述输入自然语言查询,并且所述方法还包括将所述结果集发送到所述客户端设备的步骤。
3.根据权利要求1所述的方法,其中所述多个模型包括用于确定所述数据库查询中的聚合算子的聚合分类器模型,其中所述聚合分类器模型包括多层感知器。
4.根据权利要求1所述的方法,其中所述多个模型包括用于确定所述数据库查询的结果列的结果列预测器模型,其中所述结果列预测器模型包括多层感知器。
5.根据权利要求1所述的方法,其中所述多个模型包括用于确定所述数据库查询的条件子句的条件子句预测器模型,其中所述条件子句预测器模型是基于强化学习的。
6.根据权利要求5所述的方法,还包括:
基于地面实况数据库查询接收结果集;
基于从生成的查询获得的结果与从所述地面实况查询获得的结果的比较来确定奖励值;以及
基于所述奖励值调整所述条件子句预测器模型的权重。
7.根据权利要求5所述的方法,还包括:
确定与所述序列中的每个令牌相对应的列编码;
针对输入序列的每个令牌,确定包含标量注意力分数的向量;
使用softmax函数对所述向量进行归一化;以及
确定所述输入表示,作为由相应归一化的分数加权的列编码之和。
8.根据权利要求1所述的方法,还包括:
使用梯度下降对所述多个模型进行训练,以基于所述多个模型中每一个的结果最小化表示损失的目标函数。
9.根据前述权利要求之一所述的方法,其中生成所述一个或更多个输入表示包括:通过以下步骤计算输入表示κagg:
针对令牌序列中的每个第t个令牌,计算标量注意力分数其中是与输入序列中的第t个词相对应的编码器的状态,
归一化分数向量以产生所述令牌序列中的令牌的分布,
获得所述输入表示κagg为
其中βagg=softmax(αagg)且αagg=Waggtanh(Vaggκagg+bagg)+cagg。
10.根据前述权利要求之一所述的方法,还包括:
使用具有指针网络的长短期记忆(LSTM),所述长短期记忆(LSTM)用一个或更多个列名称来公式化所述SQL查询的选择子句,包括:
给出列表示和问题表示的列表,选择与问题最匹配的列,其中通过使用LSTM对每个列名称进行编码来获得列表示的列表,其中特定列j的表示通过给出。
11.根据前述权利要求之一所述的方法,还包括:
使用强化学习通过对数据库执行生成的SQL查询来公式化SQL查询的where条件,以获得奖励R(q(y),qg),R(q(y),qg)被定义为:
其中q(y)表示所述模型生成的查询,...
【专利技术属性】
技术研发人员:V·钟,熊蔡明,R·佐赫尔,
申请(专利权)人:易享信息技术有限公司,
类型:发明
国别省市:美国;US
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。