[发明专利]基于神经网络的自然语言查询到数据库查询的转换有效
申请号: | 201880033017.3 | 申请日: | 2018-05-17 |
公开(公告)号: | CN110945495B | 公开(公告)日: | 2022-04-29 |
发明(设计)人: | V·钟;熊蔡明;R·佐赫尔 | 申请(专利权)人: | 易享信息技术有限公司 |
主分类号: | G06F16/13 | 分类号: | G06F16/13;G06F16/2452;G06F16/2457;G06N3/04;G06N3/08 |
代理公司: | 北京市磐华律师事务所 11336 | 代理人: | 高伟 |
地址: | 美国加利*** | 国省代码: | 暂无信息 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 神经网络 自然语言 查询 数据库 转换 | ||
1.一种由包括一个或更多个计算机的计算机系统执行的方法,其中所述计算机系统执行以下步骤:
基于使用数据库模式存储的数据,接收输入自然语言查询;
从多个项生成令牌序列,所述多个项包括:
所述输入自然语言查询的项,
所述数据库模式的一组列,以及
数据库查询语言的词汇表;
生成一个或更多个输入表示,每个输入表示通过对所述令牌序列进行编码而获得;
访问多个基于机器学习的模型,每个基于机器学习的模型配置为预测与所述输入自然语言查询相对应的数据库查询的一部分,所述多个基于机器学习的模型包含:(1)用于预测所述数据库查询的选择子句的结果列预测器;(2)用于预测所述数据库查询的where子句的条件子句预测器;以及(3)用于预测所述数据库查询的聚合算子的聚合分类器,其中所述聚合分类器是使用交叉熵损失训练的神经网络,而所述条件子句预测器基于奖励度量使用强化学习;
对于所述多个基于机器学习的模型中的每一个,使用一输入表示执行所述基于机器学习的模型以生成所述数据库查询的一部分;
组合所生成的数据库查询的各部分,以获得所述数据库查询;以及
执行所述数据库查询,以获得结果集。
2.根据权利要求1所述的方法,其中从客户端设备接收所述输入自然语言查询,并且所述方法还包括将所述结果集发送到所述客户端设备的步骤。
3.根据权利要求1所述的方法,其中所述聚合分类器包括多层感知器。
4.根据权利要求1所述的方法,其中所述结果列预测器包括多层感知器。
5.根据权利要求1所述的方法,还包括:
基于地面实况数据库查询接收结果集;
基于从生成的查询获得的结果与从所述地面实况数据库查询获得的结果的比较来确定奖励值;以及
基于所述奖励值调整所述条件子句预测器模型的权重。
6.根据权利要求1所述的方法,还包括:
确定与所述序列中的每个令牌相对应的列编码;
针对输入序列的每个令牌,确定包含标量注意力分数的向量;
使用softmax函数对所述向量进行归一化;以及
确定所述输入表示,作为由相应归一化的分数加权的列编码之和。
7.根据权利要求1所述的方法,还包括:
使用梯度下降对所述多个基于机器学习的模型进行训练,以基于所述多个模型中每一个的结果最小化表示损失的目标函数。
8.根据权利要求1所述的方法,其中生成所述一个或更多个输入表示包括:通过以下步骤计算输入表示κagg:
针对令牌序列中的每个第t个令牌,计算标量注意力分数其中是与输入序列中的第t个词相对应的编码器的状态,
归一化分数向量以产生所述令牌序列中的令牌的分布,
获得所述输入表示κagg为
αagg=Waggtanh(Vaggκagg+bagg)+cagg,
其中Wagg、Vagg、bagg和cagg表示应用于所述输入表示κagg的多层感知器的权重,αagg表示聚合运算的分数,所述聚合运算包括COUNT,MIN,MAX或无聚合运算NULL。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于易享信息技术有限公司,未经易享信息技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201880033017.3/1.html,转载请声明来源钻瓜专利网。
- 上一篇:用于偏振旋转的液晶盒
- 下一篇:含有除草油分散剂的安全剂