CN114911821A - 一种结构化查询语句的生成方法、装置、设备及存储介质 - Google Patents
一种结构化查询语句的生成方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN114911821A CN114911821A CN202210416460.7A CN202210416460A CN114911821A CN 114911821 A CN114911821 A CN 114911821A CN 202210416460 A CN202210416460 A CN 202210416460A CN 114911821 A CN114911821 A CN 114911821A
- Authority
- CN
- China
- Prior art keywords
- segment
- target
- sample
- query statement
- condition
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 50
- 238000004458 analytical method Methods 0.000 claims abstract description 105
- 239000012634 fragment Substances 0.000 claims description 205
- 239000013598 vector Substances 0.000 claims description 76
- 230000006870 function Effects 0.000 claims description 31
- 238000006243 chemical reaction Methods 0.000 claims description 28
- 238000012549 training Methods 0.000 claims description 20
- 230000002776 aggregation Effects 0.000 claims description 14
- 238000004220 aggregation Methods 0.000 claims description 14
- 238000004590 computer program Methods 0.000 claims description 8
- 238000002372 labelling Methods 0.000 claims description 2
- 230000000694 effects Effects 0.000 abstract description 6
- 238000006073 displacement reaction Methods 0.000 description 8
- 230000008569 process Effects 0.000 description 8
- 238000012545 processing Methods 0.000 description 7
- 238000010586 diagram Methods 0.000 description 6
- 230000003287 optical effect Effects 0.000 description 6
- 238000012512 characterization method Methods 0.000 description 4
- 230000009471 action Effects 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 230000000644 propagated effect Effects 0.000 description 2
- 125000006850 spacer group Chemical group 0.000 description 2
- 230000002123 temporal effect Effects 0.000 description 2
- 230000004075 alteration Effects 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000002457 bidirectional effect Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
- 238000000844 transformation Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2452—Query translation
- G06F16/24522—Translation of natural language queries to structured queries
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2453—Query optimisation
- G06F16/24534—Query rewriting; Transformation
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Artificial Intelligence (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请提供了一种结构化查询语句的生成方法、装置、设备及存储介质;所述生成方法包括获取目标自然查询语句和目标表头;将所述目标自然查询语句和所述目标表头作为预建立的第一解析模型的输入,生成目标条件连接片段和目标选择列解析片段;将所述目标自然查询语句作为预建立的第二解析模型的输入,生成目标条件列片段、目标条件运算符片段和目标条件值片段;依据所述目标条件连接片段、所述目标选择列解析片段、所述目标条件列片段、所述目标条件运算符片段和所述目标条件值片段,生成目标结构化查询语句。本申请将Text2SQL任务拆分成两阶段来实现,减少了单个模型的任务数,可以降低多任务对模型损失偏移的影响,获得更准确的识别效果。
Description
技术领域
本申请涉及计算机技术领域,特别是一种结构化查询语句的生成方法、装置、设备及存储介质。
背景技术
在拥有海量数据的互联网时代,数据的查询和展示是一项很常见的任务,但是对于非技术人员而言,结构化查询语句(Structured Query Language,SQL)的编写存在一定的使用门槛,即使是技术人员也难以及时书写正确的结构化查询语句以满足实时性的需求。在这种场景下,自动将用户的自然查询语句转化成结构化查询语句的技术就显得尤为重要。
Text2SQL(Text To SQL,将自然查询语句转换成结构化查询语句)任务是自然语言解析的一项重要任务,目前主要有基于单表的实现方式和基于多表的实现方式。在实际的智能商业项目中,单表的查询需求高于多表的查询需求。参照图1,在单表的模型实现上,X-SQL类型的实现方案是比较优势的方案,其主要实现方案是将结构化查询语句分为选择片段、条件片段和连接片段等几个主要片段,在条件片段中包含条件修饰的列、操作符和值三个成分,在X-SQL模型中,将各个片段的识别放在一个BERT(Bidirectional EncoderRepresentation from Transformers,基于转换器的双向编码表征)模型中,作为一个多任务学习的模型。
然而在实际的模型实现过程中,上述方法存在如下缺点:1、多任务学习时,损失会偏向某个或某几个任务,使得其它任务的损失很难学习到,而且多任务学习需要训练很长时间来优化所有的损失;2、条件值的识别效果不理想,因为该任务中,条件值的识别范围较广,而且类型也较多,包括日期型、数字型、字符串型等,同时将其结合到多任务训练中,其识别效果更会受到影响。
发明内容
鉴于现有X-SQL模型的识别准确率较低的问题,提出了本申请以便提供克服所述问题或者至少部分地解决所述问题的一种结构化查询语句的生成方法、装置、设备及存储介质,包括:
一种结构化查询语句的生成方法,用于将自然查询语句转换成结构化查询语句;其中,所述结构化查询语句包括选择列片段、聚合类型片段、条件列片段、条件运算符片段、条件值片段和条件连接片段;所述生成方法包括:
获取目标自然查询语句及其对应的目标数据表;其中,所述目标数据表包括若干目标表头;
将所述目标自然查询语句和所述目标表头作为预建立的第一解析模型的输入,通过所述第一解析模型对所述目标自然查询语句和所述目标表头进行片段识别,生成目标条件连接片段和目标选择列解析片段;其中,所述目标条件连接片段为所述目标自然查询语句中与所述条件连接片段对应的片段,所述目标选择列解析片段为所述目标自然查询语句中与所述选择列片段和所述聚合类型片段对应的片段;
将所述目标自然查询语句作为预建立的第二解析模型的输入,通过所述第二解析模型对所述目标自然查询语句和所述目标表头进行片段识别,生成目标条件列片段、目标条件运算符片段和目标条件值片段;其中,所述目标条件列片段为所述目标自然查询语句中与所述条件列片段对应的片段,所述目标条件运算符片段为所述目标自然查询语句中与所述条件运算符片段对应的片段,所述目标条件值片段为所述目标自然查询语句中与所述条件值片段对应的片段;
依据所述目标条件连接片段、所述目标选择列解析片段、所述目标条件列片段、所述目标条件运算符片段和所述目标条件值片段,生成目标结构化查询语句。
优选的,还包括:
获取样本自然查询语句、与所述样本自然查询语句对应的样本数据表、第一初始模型和第二初始模型;其中,所述样本数据表包括若干样本表头;
将所述样本自然查询语句和所述样本表头作为所述第一初始模型的输入,通过所述第一初始模型对所述样本自然查询语句和所述样本表头进行片段识别,生成样本条件连接片段和样本选择列解析片段;其中,所述样本条件连接片段为所述样本自然查询语句中与所述条件连接片段对应的片段,所述样本选择列解析片段为所述样本自然查询语句中与所述选择列片段和所述聚合类型片段对应的片段;
依据所述样本条件连接片段、所述样本选择列解析片段和预先构建的第一损失函数对所述第一初始模型进行训练,获得训练完成的所述第一解析模型;
将所述样本自然查询语句和所述样本表头作为所述第二初始模型的输入,通过所述第二解析模型对所述样本自然查询语句和所述样本表头进行片段识别,生成样本条件列片段、样本条件运算符片段和样本条件值片段;其中,所述样本条件列片段为所述样本自然查询语句中与所述条件列片段对应的片段,所述样本条件运算符片段为所述样本自然查询语句中与所述条件运算符片段对应的片段,所述样本条件值片段为所述样本自然查询语句中与所述条件值片段对应的片段;
依据所述样本条件列片段、所述样本条件运算符片段、所述样本条件值片段和预先构建的第二损失函数对所述第二初始模型进行训练,获得训练完成的所述第二解析模型。
优选的,所述第一初始模型包括第一标签生成模块、第一序列生成模块和第一片段生成模块;所述将所述样本自然查询语句和所述样本表头作为所述第一初始模型的输入,通过所述第一初始模型对所述样本自然查询语句和所述样本表头进行片段识别,生成样本条件连接片段和样本选择列解析片段的步骤,包括:
将所述样本自然查询语句和所述样本表头作为所述第一标签生成模块的输入,通过所述第一标签生成模块对所述样本自然查询语句和所述样本表头进行标注,生成若干第一标签;其中,每个所述第一标签均包括第一功能标签和第一位置标签;所述第一功能标签包括条件连接标签和选择列解析标签;
将若干所述第一标签作为所述第一序列生成模块的输入,通过所述第一序列生成模块对若干所述第一标签依据所述第一功能标签和所述第一位置标签进行组合,生成第一标签序列;
将所述第一标签序列作为所述第一片段生成模块的输入,通过所述第一片段生成模块对所述第一标签序列中与所述条件连接标签和所述选择列解析标签对应的所述第一标签进行转换,生成所述样本条件连接片段和所述样本选择列解析片段。
优选的,所述第一标签生成模块包括第一初步编码层、第一深度编码层和第一解码层;所述将所述样本自然查询语句和所述样本表头作为所述第一标签生成模块的输入,通过所述第一标签生成模块对所述样本自然查询语句和所述样本表头进行标注,生成若干第一标签的步骤,包括:
将所述样本自然查询语句和所述样本表头作为所述第一初步编码层的输入,通过所述第一初步编码层对所述样本自然查询语句和所述样本表头进行初步编码,生成若干第一初始向量;
将若干所述第一初始向量作为所述第一深度编码层的输入,通过所述第一深度编码层对若干所述第一初始向量进行深度编码,生成若干第一增强向量;
将若干所述第一增强向量作为所述第一解码层的输入,通过所述第一解码层对若干所述第一增强向量进行解码,生成若干所述第一标签。
优选的,所述第二初始模型包括第二标签生成模块、第二序列生成模块和第二片段生成模块;所述将所述样本自然查询语句和所述样本表头作为所述第二初始模型的输入,通过所述第二解析模型对所述样本自然查询语句和所述样本表头进行片段识别,生成样本条件列片段、样本条件运算符片段和样本条件值片段的步骤,包括:
将所述样本自然查询语句和所述样本表头作为所述第二标签生成模块的输入,通过所述第二标签生成模块对所述样本自然查询语句和所述样本表头进行标注,生成若干第二标签;其中,每个所述第二标签均包括第二功能标签和第二位置标签;所述第二功能标签包括条件列标签、条件运算符标签和条件值标签;
将若干所述第二标签作为所述第二序列生成模块的输入,通过所述第二序列生成模块对若干所述第二标签依据所述第二功能标签和所述第二位置标签进行组合,生成第二标签序列;
将所述第二标签序列作为所述第二片段生成模块的输入,通过所述第二片段生成模块对所述第二标签序列中与所述条件列标签、所述条件运算符标签和所述条件值标签对应的所述第二标签进行转换,生成所述样本条件列片段、所述样本条件运算符片段和所述样本条件值片段。
优选的,所述第二标签生成模块包括格式转换层、第二初步编码层、第二深度编码层和第二解码层;所述将所述样本自然查询语句和所述样本表头作为所述第二标签生成模块的输入,通过所述第二标签生成模块对所述样本自然查询语句和所述样本表头进行标注,生成若干第二标签的步骤,包括:
将所述样本自然查询语句作为所述格式转换层的输入,通过所述格式转换层对所述样本自然查询语句中数字和/或时间类型的语句进行格式转换,生成转换查询语句;
将所述转换查询语句和所述样本表头作为所述第二初步编码层的输入,通过所述第二初步编码层对所述样本自然查询语句和所述样本表头进行初步编码,生成若干所述第二初始向量;
将若干所述第二初始向量作为所述第二深度编码层的输入,通过所述第二深度编码层对若干所述第二初始向量进行深度编码,生成若干第二增强向量;
将若干所述第二增强向量作为所述第二解码层的输入,通过所述第二解码层对若干所述第二增强向量进行解码,生成若干所述第二标签。
优选的,所述第二嵌入层包括格式转换层和第二初步编码层;所述将所述样本自然查询语句和所述样本表头作为所述第二嵌入层的输入,生成若干第二初始向量的步骤,包括:
将所述样本自然查询语句作为所述格式转换层的输入,生成转换查询语句;
将所述转换查询语句和所述样本表头作为所述第二初步编码层的输入,生成若干所述第二初始向量。
优选的,所述依据所述目标条件连接片段、所述目标选择列解析片段、所述目标条件列片段、所述目标条件运算符片段和所述目标条件值片段,生成目标结构化查询语句的步骤,包括:
当所述目标条件列片段非空时,对所述目标条件连接片段、所述目标选择列解析片段、所述目标条件列片段、所述目标条件运算符片段和所述目标条件值片段进行链接,生成所述目标结构化查询语句;
当所述目标条件列片段为空且所述目标条件运算符片段或所述目标条件值片段为空时,获取自定义条件列片段;
对所述自定义条件列片段和所述目标选择列解析片段进行链接,生成所述目标结构化查询语句;
当所述目标条件列片段为空且所述目标条件运算符片段或所述目标条件值片段非空时,依据所述目标自然查询语句,生成条件列相似片段;
依据所述条件列相似片段,确定每个所述目标表头中的片段与所述件列相似片段的匹配度;
将所述匹配度最高的所述目标表头中的片段设置为所述目标条件列片段;
对所述目标条件连接片段、所述目标选择列解析片段、所述目标条件列片段、所述目标条件运算符片段和所述目标条件值片段进行链接,生成所述目标结构化查询语句。
一种结构化查询语句的生成装置,用于将自然查询语句转换成结构化查询语句;其中,所述结构化查询语句包括选择列片段、聚合类型片段、条件列片段、条件运算符片段、条件值片段和条件连接片段;所述生成装置包括:
目标获取模块,用于获取目标自然查询语句及其对应的目标数据表;其中,所述目标数据表包括若干目标表头;
第一目标生成模块,用于将所述目标自然查询语句和所述目标表头作为预建立的第一解析模型的输入,通过所述第一解析模型对所述目标自然查询语句和所述目标表头进行片段识别,生成目标条件连接片段和目标选择列解析片段;其中,所述目标条件连接片段为所述目标自然查询语句中与所述条件连接片段对应的片段,所述目标选择列解析片段为所述目标自然查询语句中与所述选择列片段和所述聚合类型片段对应的片段;
第二目标生成模块,用于将所述目标自然查询语句作为预建立的第二解析模型的输入,通过所述第二解析模型对所述目标自然查询语句和所述目标表头进行片段识别,生成目标条件列片段、目标条件运算符片段和目标条件值片段;其中,所述目标条件列片段为所述目标自然查询语句中与所述条件列片段对应的片段,所述目标条件运算符片段为所述目标自然查询语句中与所述条件运算符片段对应的片段,所述目标条件值片段为所述目标自然查询语句中与所述条件值片段对应的片段;
片段链接模块,用于依据所述目标条件连接片段、所述目标选择列解析片段、所述目标条件列片段、所述目标条件运算符片段和所述目标条件值片段,生成目标结构化查询语句。
一种计算机设备,包括处理器、存储器及存储在所述存储器上并能够在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如上所述的一种结构化查询语句的生成方法的步骤。
一种计算机可读存储介质,所述计算机可读存储介质上存储计算机程序,所述计算机程序被处理器执行时实现如上所述的一种结构化查询语句的生成方法的步骤。
本申请具有以下优点:
在本申请的实施例中,通过获取目标自然查询语句及其对应的目标数据表;其中,所述目标数据表包括若干目标表头;将所述目标自然查询语句和所述目标表头作为预建立的第一解析模型的输入,生成目标条件连接片段和目标选择列解析片段;将所述目标自然查询语句作为预建立的第二解析模型的输入,生成目标条件列片段、目标条件运算符片段和目标条件值片段;依据所述目标条件连接片段、所述目标选择列解析片段、所述目标条件列片段、所述目标条件运算符片段和所述目标条件值片段,生成目标结构化查询语句,将Text2SQL任务拆分成两个阶段来实现,减少了单个模型的任务数,可以有效降低多任务对模型损失偏移的影响,获得更加准确的识别效果。
附图说明
为了更清楚地说明本申请的技术方案,下面将对本申请的描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请背景技术提供的X-SQL模型的结构示意图;
图2是本申请一实施例提供的一种结构化查询语句的生成方法的步骤流程图;
图3是本申请另一实施例提供的一种结构化查询语句的生成方法的步骤流程图;
图4是本申请一实施例提供的第一初始模型的结构示意图;
图5是本申请一实施例提供的第二初始模型的结构示意图;
图6是本申请一实施例提供的一种结构化查询语句的生成装置的结构框图;
图7是本申请另一实施例提供的一种结构化查询语句的生成装置的结构框图;
图8是本申请一实施例提供的一种计算机设备的结构示意图。
说明书附图中的附图标记如下:
12、计算机设备;14、外部设备;16、处理单元;18、总线;20、网络适配器;22、I/O接口;24、显示器;28、内存;30、随机存取存储器;32、高速缓存存储器;34、存储系统;40、程序/实用工具;42、程序模块。
具体实施方式
为使本申请的所述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本申请作进一步详细的说明。显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
在数据表查询过程中,常常使用结构化查询语句进行查询。结构化查询语句是一种编程语言,在数据表查询过程中,可以接收用户输入的自然语言,将自然语言转化为计算机可识读的结构化查询语句,从而基于结构化查询语句进行查询。
结构化查询语句的结构通常如下:
select“选择列表达式”from“数据表”where“条件列表达式”。
由此可知,结构化查询语句的结构中包括选择列表达式和条件列表达式;其中,选择列表达式包括选择列片段(sel_col)和聚合类型片段(agg_op);条件列表达式可以包括一个或多个条件(conds),当包括一个条件(cond)时,其包括条件列片段(cond_col)、条件运算符片段(cond_op)和条件值片段(cond_val),当包括多个条件(conds)时,其包括条件列片段(cond_col)、条件运算符片段(cond_op)、条件值片段(cond_val)和条件连接片段(cond_conn_op)。
具体的,选择列片段(sel_col)为所述数据表中的任意表头名称;聚合类型片段(agg_op)包括六个类别,分别是选中、求均值、最大值、最小值、总数和求和:{0:"",1:"avg",2:"max",3:"min",4:"count",5:"sum"};条件列片段(cond_col)为所述数据表中的任意表头名称;条件运算符片段(cond_op)包括四个类别,分别是大于、小于、等于和不等于:{0:">",1:"<",2:"==",3:"!="};条件值片段(cond_val)为任意数值;条件连接片段(cond_conn_op)包括三个类别,分类是没有连接符,和连接和或连接:{0:"no_conn",1:"and",2:"or"}。
实际应用中,可以将针对选择列片段(sel_col)和聚合类型片段(agg_op)的识别任务合并,即在聚合类型片段(agg_op)中增加一个类别,不选中:{6:"no_op"},形成选择列解析片段(sel_agg),从而将对选择列表达式的识别作为一个包含七个类别的分类任务。
参照图2,示出了本申请一实施例提供的一种结构化查询语句的生成方法,包括如下步骤:
S110、获取目标自然查询语句及其对应的目标数据表;其中,所述目标数据表包括若干目标表头;
S120、将所述目标自然查询语句和所述目标表头作为预建立的第一解析模型的输入,通过所述第一解析模型对所述目标自然查询语句和所述目标表头进行片段识别,生成目标条件连接片段和目标选择列解析片段;其中,所述目标条件连接片段为所述目标自然查询语句中与所述条件连接片段对应的片段,所述目标选择列解析片段为所述目标自然查询语句中与所述选择列片段和所述聚合类型片段对应的片段;
S130、将所述目标自然查询语句作为预建立的第二解析模型的输入,通过所述第二解析模型对所述目标自然查询语句和所述目标表头进行片段识别,生成目标条件列片段、目标条件运算符片段和目标条件值片段;其中,所述目标条件列片段为所述目标自然查询语句中与所述条件列片段对应的片段,所述目标条件运算符片段为所述目标自然查询语句中与所述条件运算符片段对应的片段,所述目标条件值片段为所述目标自然查询语句中与所述条件值片段对应的片段;
S140、依据所述目标条件连接片段、所述目标选择列解析片段、所述目标条件列片段、所述目标条件运算符片段和所述目标条件值片段,生成目标结构化查询语句。
在本申请的实施例中,通过获取目标自然查询语句及其对应的目标数据表;其中,所述目标数据表包括若干目标表头;将所述目标自然查询语句和所述目标表头作为预建立的第一解析模型的输入,生成目标条件连接片段和目标选择列解析片段;将所述目标自然查询语句作为预建立的第二解析模型的输入,生成目标条件列片段、目标条件运算符片段和目标条件值片段;依据所述目标条件连接片段、所述目标选择列解析片段、所述目标条件列片段、所述目标条件运算符片段和所述目标条件值片段,生成目标结构化查询语句,将Text2SQL任务拆分成两个阶段来实现,减少了单个模型的任务数,可以有效降低多任务对模型损失偏移的影响,获得更加准确的识别效果。
下面,将对本示例性实施例中一种结构化查询语句的生成方法作进一步地说明。
如所述步骤S110所述,获取目标自然查询语句及其对应的目标数据表。
所述目标自然查询语句为针对所述目标数据表的自然查询语句。
作为一种示例,所述目标数据表如下表所示:
表1
所述目标自然查询语句可以是“价格低于50万元的汽车有哪些”;所述目标表头包括所述目标数据表中的全部表头,例如“名称价格排量库存量”。
需要说明的是,用户可以输入文字形式或者语音形式的自然查询语句,如果用户输入的是文字形式的自然查询语句,则将所述文字形式的自然查询语句作为所述目标自然查询语句,如果用户输入的是语音形式的自然查询语句,则将所述语音形式的自然查询语句转换为文字形式的自然查询语句,并将所述文字形式的自然查询语句作为所述目标自然查询语句。
如所述步骤S120所述,将所述目标自然查询语句和所述目标表头作为预建立的第一解析模型的输入,通过所述第一解析模型对所述目标自然查询语句和所述目标表头进行片段识别,生成目标条件连接片段和目标选择列解析片段。
所述第一解析模型为对第一初始模型训练得到的,其训练过程只针对条件连接片段(cond_conn_op)和选择列解析片段(sel_agg)的识别任务,以便于减少其他无关任务造成的损失偏移,从而增强模型对于条件连接片段(cond_conn_op)和选择列解析片段(sel_agg)的识别能力。通过将所述目标自然查询语句和所述目标表头作输入所述第一解析模型,可以获得仅包含所述目标条件连接片段和所述目标选择列解析片段的识别结果。
如所述步骤S130所述,将所述目标自然查询语句作为预建立的第二解析模型的输入,通过所述第二解析模型对所述目标自然查询语句和所述目标表头进行片段识别,生成目标条件列片段、目标条件运算符片段和目标条件值片段。
所述第二解析模型为对第二初始模型训练得到的,其训练过程只针对条件列片段(cond_col)、条件运算符片段(cond_op)和条件值片段(cond_val)的识别任务,以便于减少其他无关任务造成的损失偏移,从而增强模型对于条件列片段(cond_col)、条件运算符片段(cond_op)和条件值片段(cond_val)的识别能力。通过将所述目标自然查询语句和所述目标表头作输入所述第二解析模型,可以获得仅包含所述目标条件列片段、所述目标条件运算符片段和所述目标条件值片段的识别结果。
如所述步骤S140所述,依据所述目标条件连接片段、所述目标选择列解析片段、所述目标条件列片段、所述目标条件运算符片段和所述目标条件值片段,生成目标结构化查询语句。
依据预设的结构化查询语句链接规则对所述目标条件连接片段、所述目标选择列解析片段、所述目标条件列片段、所述目标条件运算符片段和所述目标条件值片段进行链接,生成所述目标结构化查询语句。例如当所述目标条件连接片段为没有连接符,所述目标选择列解析片段为选中“名称”,所述目标条件列片段为“价格”,所述目标条件运算符片段为“<”,所述目标条件值片段为“500000”时,链接形成的所述目标结构化查询语句为“select“名称”from“目标数据表”where(“价格”<500000)”。
参照图3,在本申请一实施例中,还包括如下步骤:
S010、获取样本自然查询语句、与所述样本自然查询语句对应的样本数据表、第一初始模型和第二初始模型;其中,所述样本数据表包括若干样本表头;
S020、将所述样本自然查询语句和所述样本表头作为所述第一初始模型的输入,通过所述第一初始模型对所述样本自然查询语句和所述样本表头进行片段识别,生成样本条件连接片段和样本选择列解析片段;其中,所述样本条件连接片段为所述样本自然查询语句中与所述条件连接片段对应的片段,所述样本选择列解析片段为所述样本自然查询语句中与所述选择列片段和所述聚合类型片段对应的片段;
S030、依据所述样本条件连接片段、所述样本选择列解析片段和预先构建的第一损失函数对所述第一初始模型进行训练,获得训练完成的所述第一解析模型;
S040、将所述样本自然查询语句和所述样本表头作为所述第二初始模型的输入,通过所述第二解析模型对所述样本自然查询语句和所述样本表头进行片段识别,生成样本条件列片段、样本条件运算符片段和样本条件值片段;其中,所述样本条件列片段为所述样本自然查询语句中与所述条件列片段对应的片段,所述样本条件运算符片段为所述样本自然查询语句中与所述条件运算符片段对应的片段,所述样本条件值片段为所述样本自然查询语句中与所述条件值片段对应的片段;
S050、依据所述样本条件列片段、所述样本条件运算符片段、所述样本条件值片段和预先构建的第二损失函数对所述第二初始模型进行训练,获得训练完成的所述第二解析模型。
如步骤S010所述,获取样本自然查询语句、与所述样本自然查询语句对应的样本数据表、第一初始模型和第二初始模型。
所述样本自然查询语句为针对样本数据表的自然查询语句;所述样本表头包括所述样本数据表中的全部表头;参照图4,所述第一初始模型仅涉及选择列片段(sel_col)和聚合类型片段(agg_op)的识别任务,其输入与X-SQL模型的输入一致,为自然查询语句和表头拼接而成的字符序列(即“cls q1q2...qk sep cls c11 c12...c1n sep cls c21c22...c2n sep...cls ct1...ctn sep”;其中,“cls”表示初始标记;“sep”表示间隔符;“q1q2...qk”为自然查询语句的输入序列,qk对应自然查询语句中的第k个输入字符;“c11c12...c1n”、“c21 c22...c2n”...“ct1...ctn”为表头的输入序列,ctn对应第t个表头的第n个输入字符),但是输出仅包括条件连接片段(cond_conn_op)和选择列解析片段(sel_agg);参照图5,所述第二初始模型仅涉及条件列片段(cond_col)、条件运算符片段(cond_op)和条件值片段(cond_val)的识别任务,其输入与X-SQL模型的输入一致,为自然查询语句和表头拼接而成的字符序列(即“cls q1 q2...qk sep cls c11 c12...c1n sep clsc21 c22...c2n sep...cls ct1...ctn sep”;其中,“cls”表示初始标记;“sep”表示间隔符;“q1 q2...qk”为自然查询语句的输入序列,qk对应自然查询语句中的第k个输入字符;“c11 c12...c1n”、“c21 c22...c2n”...“ct1...ctn”为表头的输入序列,ctn对应第t个表头的第n个输入字符),但是输出仅包括条件列片段(cond_col)、条件运算符片段(cond_op)和条件值片段(cond_val)。
如步骤S020所述,将所述样本自然查询语句和所述样本表头作为所述第一初始模型的输入,通过所述第一初始模型对所述样本自然查询语句和所述样本表头进行片段识别,生成样本条件连接片段和样本选择列解析片段。
将所述样本自然查询语句和所述样本表头输入所述第一初始模型,所述第一初始模型用于依据所述样本自然查询语句和所述样本表头生成若干第一标签,其中,每个所述第一标签均包括第一功能标签和第一位置标签;所述第一功能标签包括条件连接标签和选择列解析标签;依据所述第一功能标签和所述第一位置标签对若干所述第一标签进行组合,生成第一标签序列;并将所述第一标签序列中的多个所述第一标签转换为所述样本条件连接片段和所述样本选择列解析片段。
如步骤S030所述,依据所述样本条件连接片段、所述样本选择列解析片段和预先构建的第一损失函数对所述第一初始模型进行训练,获得训练完成的所述第一解析模型。
依据所述第一损失函数分别计算所述样本条件连接片段的条件连接损失值和所述样本选择列解析片段的选择列解析损失值,其中,所述第一损失函数可以依据与所述样本自然查询语句对应的样本结构化查询语句预先构建得到;将所述条件连接损失值和所述选择列解析损失值融合得到第一总体损失值;并依据所述第一总体损失值对所述第一初始模型进行训练,直至所述第一总体损失值小于第一预设值时停止训练,获得训练完成的所述第一解析模型。
如步骤S040所述,将所述样本自然查询语句和所述样本表头作为所述第二初始模型的输入,通过所述第二解析模型对所述样本自然查询语句和所述样本表头进行片段识别,生成样本条件列片段、样本条件运算符片段和样本条件值片段。
将所述样本自然查询语句和所述样本表头输入所述第二初始模型,所述第二初始模型用于依据所述样本自然查询语句和所述样本表头生成若干第二标签,其中,每个所述第二标签均包括第二功能标签和第二位置标签;所述第二功能标签包括条件列标签、条件运算符标签和条件值标签;依据所述第二功能标签和所述第二位置标签对若干所述第二标签进行组合,生成第二标签序列;并将所述第二标签序列中的多个所述第二标签转换为所述样本条件列片段、所述样本条件运算符片段和所述样本条件值片段。
如步骤S050所述,依据所述样本条件列片段、所述样本条件运算符片段、所述样本条件值片段和预先构建的第二损失函数对所述第二初始模型进行训练,获得训练完成的所述第二解析模型。
依据所述第二损失函数分别计算所述样本条件列片段的条件列损失值、所述样本条件运算符片段的条件运算符损失值和所述样本条件值片段的条件值损失值,其中,所述第二损失函数可以依据与所述样本自然查询语句对应的样本结构化查询语句预先构建得到;将所述条件列损失值、所述条件运算符损失值和所述条件值损失值融合得到第二总体损失值;并依据所述第二总体损失值对所述第二初始模型进行训练,直至所述第二总体损失值小于第二预设值时停止训练,获得训练完成的所述第二解析模型。
在本申请一实施例中,所述第一初始模型包括第一标签生成模块、第一序列生成模块和第一片段生成模块;所述将所述样本自然查询语句和所述样本表头作为所述第一初始模型的输入,通过所述第一初始模型对所述样本自然查询语句和所述样本表头进行片段识别,生成样本条件连接片段和样本选择列解析片段的步骤,包括:
将所述样本自然查询语句和所述样本表头作为所述第一标签生成模块的输入,通过所述第一标签生成模块对所述样本自然查询语句和所述样本表头进行标注,生成若干第一标签;其中,每个所述第一标签均包括第一功能标签和第一位置标签;所述第一功能标签包括条件连接标签和选择列解析标签。具体的,所述第一标签生成模块用于对所述样本自然查询语句和所述样本表头进行初步编码,得到所述样本自然查询语句和所述样本表头中各个字符的第一初始向量;对若干所述第一初始向量进行深度编码,得到若干第一增强向量;并对若干所述第一增强向量进行解码,得到若干所述第一标签。
将若干所述第一标签作为所述第一序列生成模块的输入,通过所述第一序列生成模块对若干所述第一标签依据所述第一功能标签和所述第一位置标签进行组合,生成第一标签序列。具体的,所述第一序列生成模块用于查找具有相同所述第一功能标签的所述第一标签;并根据所述第一位置标签将所述具有相同所述第一功能标签的所述第一标签组成所述第一标签序列。
将所述第一标签序列作为所述第一片段生成模块的输入,通过所述第一片段生成模块对所述第一标签序列中与所述条件连接标签和所述选择列解析标签对应的所述第一标签进行转换,生成所述样本条件连接片段和所述样本选择列解析片段。具体的,所述第一片段生成模块用于将所述第一标签序列中与所述条件连接标签对应的多个所述第一标签转换为所述条件连接片段,并且将所述第一标签序列中与所述选择列解析标签对应的多个所述第一标签转换为所述选择列解析片段。
在本申请一实施例中,所述第一标签生成模块包括第一初步编码层、第一深度编码层和第一解码层;所述将所述样本自然查询语句和所述样本表头作为所述第一标签生成模块的输入,通过所述第一标签生成模块对所述样本自然查询语句和所述样本表头进行标注,生成若干第一标签的步骤,包括:
将所述样本自然查询语句和所述样本表头作为所述第一初步编码层的输入,通过所述第一初步编码层对所述样本自然查询语句和所述样本表头进行初步编码,生成若干第一初始向量。具体的,所述第一初步编码层可以包括BERT模型,其用于对所述样本自然查询语句和所述样本表头进行初步编码,生成若干所述第一初始向量。
将若干所述第一初始向量作为所述第一深度编码层的输入,通过所述第一深度编码层对若干所述第一初始向量进行深度编码,生成若干第一增强向量。具体的,所述第一深度编码层可以包括注意力层,其用于对若干所述第一初始向量进行注意力编码,得到注意力编码后的若干第一表征向量;并将若干所述第一表征向量逐个添加至对应的所述第一初始向量中,得到若干所述第一增强向量。
将若干所述第一增强向量作为所述第一解码层的输入,通过所述第一解码层对若干所述第一增强向量进行解码,生成若干所述第一标签。具体的,所述第一解码层可以包括CRF(Conditional Random Field,条件随机场)层,其用于对若干所述第一增强向量进行解码,生成若干所述第一标签,其中,每个所述第一标签均包括第一功能标签和第一位置标签;所述第一功能标签包括条件连接标签和选择列解析标签。
在本申请一实施例中,所述第二初始模型包括第二标签生成模块、第二序列生成模块和第二片段生成模块;所述将所述样本自然查询语句和所述样本表头作为所述第二初始模型的输入,通过所述第二解析模型对所述样本自然查询语句和所述样本表头进行片段识别,生成样本条件列片段、样本条件运算符片段和样本条件值片段的步骤,包括:
将所述样本自然查询语句和所述样本表头作为所述第二标签生成模块的输入,通过所述第二标签生成模块对所述样本自然查询语句和所述样本表头进行标注,生成若干第二标签;其中,每个所述第二标签均包括第二功能标签和第二位置标签;所述第二功能标签包括条件列标签、条件运算符标签和条件值标签。具体的,所述第二标签生成模块用于对所述样本自然查询语句和所述样本表头进行初步编码,得到所述样本自然查询语句和所述样本表头中各个字符的第二初始向量;对若干所述第二初始向量进行深度编码,得到若干第二增强向量;并对若干所述第二增强向量进行解码,得到若干所述第二标签。
将若干所述第二标签作为所述第二序列生成模块的输入,通过所述第二序列生成模块对若干所述第二标签依据所述第二功能标签和所述第二位置标签进行组合,生成第二标签序列。具体的,所述第二序列生成模块用于查找具有相同所述第二功能标签的所述第二标签;并根据所述第二位置标签将所述具有相同所述第二功能标签的所述第二标签组成所述第二标签序列。
将所述第二标签序列作为所述第二片段生成模块的输入,通过所述第二片段生成模块对所述第二标签序列中与所述条件列标签、所述条件运算符标签和所述条件值标签对应的所述第二标签进行转换,生成所述样本条件列片段、所述样本条件运算符片段和所述样本条件值片段。具体的,所述第二片段生成模块用于将所述第二标签序列中与所述条件列标签对应的多个所述第二标签转换为所述条件列片段,将所述第二标签序列中与所述条件运算符标签对应的多个所述第二标签转换为所述条件运算符片段,并且将所述第二标签序列中与所述条件值标签对应的多个所述第二标签转换为所述条件值片段。
在本申请一实施例中,所述第二标签生成模块包括第二嵌入层、第二深度编码层和第二解码层;所述将所述样本自然查询语句和所述样本表头作为所述第二标签生成模块的输入,生成若干第二标签的步骤,包括:
将所述样本自然查询语句和所述样本表头作为所述第二嵌入层的输入,通过所述第二嵌入层对所述样本自然查询语句和所述样本表头进行格式转换和初步编码,生成若干第二初始向量。具体的,所述第二嵌入层可以包括BERT模型,其用于对所述样本自然查询语句和所述样本表头进行初步编码,生成若干所述第二初始向量。
将若干所述第二初始向量作为所述第二深度编码层的输入,通过所述第二深度编码层对若干所述第二初始向量进行深度编码,生成若干第二增强向量。具体的,所述第二深度编码层可以包括注意力层,其用于对若干所述第二初始向量进行注意力编码,得到注意力编码后的若干第二表征向量;并将若干所述第二表征向量逐个添加至对应的所述第二初始向量中,得到若干所述第二增强向量。
将若干所述第二增强向量作为所述第二解码层的输入,通过所述第二解码层对若干所述第二增强向量进行解码,生成若干所述第二标签。具体的,所述第二解码层可以包括CRF层,其用于对若干所述第二增强向量进行解码,生成若干所述第二标签,其中,每个所述第二标签均包括第二功能标签和第二位置标签;所述第二功能标签包括条件列标签、条件运算符标签和条件值标签。
在本申请一实施例中,所述第二嵌入层包括格式转换层和第二初步编码层;所述将所述样本自然查询语句和所述样本表头作为所述第二嵌入层的输入,生成若干第二初始向量的步骤,包括:
将所述样本自然查询语句作为所述格式转换层的输入,通过所述格式转换层对所述样本自然查询语句中数字和/或时间类型的语句进行格式转换,生成转换查询语句。具体的,所述格式转换层包括用于对数字和/或时间类型的语句进行格式转换的正则表达式,其用于对所述样本自然查询语句中与数字和/或时间相关的字符进行格式转换,生成所述转换查询语句,例如将“20万”转换为“200000”,将“去年”转换为“2021年”。通过所述格式转换层可以增强模型对于数字和/或时间类型的条件值片段(cond_val)的识别效果,从而提升模型的准确率。
将所述转换查询语句和所述样本表头作为所述第二初步编码层的输入,通过所述第二初步编码层对所述样本自然查询语句和所述样本表头进行初步编码,生成若干所述第二初始向量。具体的,所述第二初步编码层可以包括BERT模型,其用于对所述转换查询语句和所述样本表头进行初步编码,生成若干所述第二初始向量。
在本申请一实施例中,所述依据所述目标条件连接片段、所述目标选择列解析片段、所述目标条件列片段、所述目标条件运算符片段和所述目标条件值片段,生成目标结构化查询语句的步骤,包括:
当所述目标条件列片段非空时,对所述目标条件连接片段、所述目标选择列解析片段、所述目标条件列片段、所述目标条件运算符片段和所述目标条件值片段进行链接,生成所述目标结构化查询语句。
具体的,当所述目标条件列片段非空时,依据第一预设规则对所述目标条件连接片段、所述目标选择列解析片段、所述目标条件列片段、所述目标条件运算符片段和所述目标条件值片段进行链接,生成所述目标结构化查询语句。
作为一种示例,假设所述目标自然查询语句为“价格低于50万元的汽车有哪些”,实际识别得到的所述目标条件连接片段为没有连接符,所述目标选择列解析片段为选中“名称”,所述目标条件列片段为“价格”,所述目标条件运算符片段为“<”,所述目标条件值片段为“500000”,则链接形成的所述目标结构化查询语句为“select“名称”from“目标数据表”where(“价格”<500000)”。
当所述目标条件列片段为空且所述目标条件运算符片段或所述目标条件值片段为空时,获取自定义条件列片段;对所述自定义条件列片段和所述目标选择列解析片段进行链接,生成所述目标结构化查询语句。
具体的,当所述目标条件列片段为空且所述目标条件运算符片段或所述目标条件值片段为空时,获取用户输入的所述自定义条件列片段;并依据第二预设规则对所述自定义条件列片段和所述目标选择列解析片段进行链接,生成所述目标结构化查询语句。
作为一种示例,假设所述目标自然查询语句为“各个汽车的排量是多少”,实际识别得到的所述目标选择列解析片段为选中“排量”,所述目标条件列片段为空,所述目标条件运算符片段为空,所述目标条件值片段为空,此时按照第一预设规则链接形成的所述目标结构化查询语句仅展示排量信息,用户无法得知各个排量对应的汽车名称等信息,因此,为更贴近实际应用场景,增加所述自定义条件列片段作为展示信息,假设获取到的所述自定义条件列片段为“名称”,则按照第二预设规则链接形成的所述目标结构化查询语句为“select“名称”and“排量”from“目标数据表””。
当所述目标条件列片段为空且所述目标条件运算符片段或所述目标条件值片段非空时,依据所述目标自然查询语句,生成条件列相似片段;依据所述条件列相似片段,确定每个所述目标表头中的片段与所述件列相似片段的匹配度;将所述匹配度最高的所述目标表头中的片段设置为所述目标条件列片段;对所述目标条件连接片段、所述目标选择列解析片段、所述目标条件列片段、所述目标条件运算符片段和所述目标条件值片段进行链接,生成所述目标结构化查询语句。
具体的,当所述目标条件列片段为空且所述目标条件运算符片段或所述目标条件值片段非空时,提取所述目标自然查询语句中的所述条件列相似片段;计算每个所述目标表头中的片段与所述件列相似片段的匹配度;将所述匹配度最高的所述目标表头中的片段设置为所述目标条件列片段;并依据第一预设规则对所述目标条件连接片段、所述目标选择列解析片段、所述目标条件列片段、所述目标条件运算符片段和所述目标条件值片段进行链接,生成所述目标结构化查询语句。
作为一种示例,假设所述目标自然查询语句为“总价低于50万元的汽车有哪些”,所述目标表头为“名称价格排量库存量”,实际识别得到的所述目标条件连接片段为没有连接符,所述目标选择列解析片段为选中“名称”,所述目标条件列片段为空,所述目标条件运算符片段为“<”,所述目标条件值片段为“500000”,则提取所述目标自然查询语句中“总价”作为所述条件列相似片段,分别计算所述目标表头中的“名称”、“价格”、“排量”和“库存量”与“总价”的匹配度,并将所述匹配度最高的“价格”设置为所述目标条件列片段,最终链接形成的所述目标结构化查询语句为“select“名称”from“目标数据表”where(“价格”<500000)”。
对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
参照图6,示出了本申请一实施例提供的一种结构化查询语句的生成装置,包括:
目标获取模块410,用于获取目标自然查询语句及其对应的目标数据表;其中,所述目标数据表包括若干目标表头;
第一目标生成模块420,用于将所述目标自然查询语句和所述目标表头作为预建立的第一解析模型的输入,通过所述第一解析模型对所述目标自然查询语句和所述目标表头进行片段识别,生成目标条件连接片段和目标选择列解析片段;其中,所述目标条件连接片段为所述目标自然查询语句中与所述条件连接片段对应的片段,所述目标选择列解析片段为所述目标自然查询语句中与所述选择列片段和所述聚合类型片段对应的片段;
第二目标生成模块430,用于将所述目标自然查询语句作为预建立的第二解析模型的输入,通过所述第二解析模型对所述目标自然查询语句和所述目标表头进行片段识别,生成目标条件列片段、目标条件运算符片段和目标条件值片段;其中,所述目标条件列片段为所述目标自然查询语句中与所述条件列片段对应的片段,所述目标条件运算符片段为所述目标自然查询语句中与所述条件运算符片段对应的片段,所述目标条件值片段为所述目标自然查询语句中与所述条件值片段对应的片段;
片段链接模块440,用于依据所述目标条件连接片段、所述目标选择列解析片段、所述目标条件列片段、所述目标条件运算符片段和所述目标条件值片段,生成目标结构化查询语句。
参照图7,在本申请一实施例中,还包括:
样本获取模块310,用于获取样本自然查询语句、与所述样本自然查询语句对应的样本数据表、第一初始模型和第二初始模型;其中,所述样本数据表包括若干样本表头;
第一样本生成模块320,用于将所述样本自然查询语句和所述样本表头作为所述第一初始模型的输入,通过所述第一初始模型对所述样本自然查询语句和所述样本表头进行片段识别,生成样本条件连接片段和样本选择列解析片段;其中,所述样本条件连接片段为所述样本自然查询语句中与所述条件连接片段对应的片段,所述样本选择列解析片段为所述样本自然查询语句中与所述选择列片段和所述聚合类型片段对应的片段;
第一训练模块330,用于依据所述样本条件连接片段、所述样本选择列解析片段和预先构建的第一损失函数对所述第一初始模型进行训练,获得训练完成的所述第一解析模型;
第二样本生成模块340,用于将所述样本自然查询语句和所述样本表头作为所述第二初始模型的输入,通过所述第二解析模型对所述样本自然查询语句和所述样本表头进行片段识别,生成样本条件列片段、样本条件运算符片段和样本条件值片段;其中,所述样本条件列片段为所述样本自然查询语句中与所述条件列片段对应的片段,所述样本条件运算符片段为所述样本自然查询语句中与所述条件运算符片段对应的片段,所述样本条件值片段为所述样本自然查询语句中与所述条件值片段对应的片段;
第二训练模块350,用于依据所述样本条件列片段、所述样本条件运算符片段、所述样本条件值片段和预先构建的第二损失函数对所述第二初始模型进行训练,获得训练完成的所述第二解析模型。
在本申请一实施例中,所述第一初始模型包括第一标签生成模块、第一序列生成模块和第一片段生成模块;第一样本生成模块320,包括:
第一标签输入子模块,用于将所述样本自然查询语句和所述样本表头作为所述第一标签生成模块的输入,通过所述第一标签生成模块对所述样本自然查询语句和所述样本表头进行标注,生成若干第一标签;其中,每个所述第一标签均包括第一功能标签和第一位置标签;所述第一功能标签包括条件连接标签和选择列解析标签;
第一序列输入子模块,用于将若干所述第一标签作为所述第一序列生成模块的输入,通过所述第一序列生成模块对若干所述第一标签依据所述第一功能标签和所述第一位置标签进行组合,生成第一标签序列;
第一片段输入子模块,用于将所述第一标签序列作为所述第一片段生成模块的输入,通过所述第一片段生成模块对所述第一标签序列中与所述条件连接标签和所述选择列解析标签对应的所述第一标签进行转换,生成所述样本条件连接片段和所述样本选择列解析片段。
在本申请一实施例中,所述第一标签生成模块包括第一初步编码层、第一深度编码层和第一解码层;第一标签输入子模块,包括:
第一初步编码输入子模块,用于将所述样本自然查询语句和所述样本表头作为所述第一初步编码层的输入,通过所述第一初步编码层对所述样本自然查询语句和所述样本表头进行初步编码,生成若干第一初始向量;
第一深度编码输入子模块,用于将若干所述第一初始向量作为所述第一深度编码层的输入,通过所述第一深度编码层对若干所述第一初始向量进行深度编码,生成若干第一增强向量;
第一解码输入子模块,用于将若干所述第一增强向量作为所述第一解码层的输入,通过所述第一解码层对若干所述第一增强向量进行解码,生成若干所述第一标签。
在本申请一实施例中,第二样本生成模块340,包括:
第二标签输入子模块,用于将所述样本自然查询语句和所述样本表头作为所述第二标签生成模块的输入,通过所述第二标签生成模块对所述样本自然查询语句和所述样本表头进行标注,生成若干第二标签;其中,每个所述第二标签均包括第二功能标签和第二位置标签;所述第二功能标签包括条件列标签、条件运算符标签和条件值标签;
第二序列输入子模块,用于将若干所述第二标签作为所述第二序列生成模块的输入,通过所述第二序列生成模块对若干所述第二标签依据所述第二功能标签和所述第二位置标签进行组合,生成第二标签序列;
第二片段输入子模块,用于将所述第二标签序列作为所述第二片段生成模块的输入,通过所述第二片段生成模块对所述第二标签序列中与所述条件列标签、所述条件运算符标签和所述条件值标签对应的所述第二标签进行转换,生成所述样本条件列片段、所述样本条件运算符片段和所述样本条件值片段。
在本申请一实施例中,第二标签输入子模块,包括:
第二嵌入输入子模块,用于将所述样本自然查询语句和所述样本表头作为所述第二嵌入层的输入,通过所述第二嵌入层对所述样本自然查询语句和所述样本表头进行格式转换和初步编码,生成若干第二初始向量;
第二深度编码输入子模块,用于将若干所述第二初始向量作为所述第二深度编码层的输入,通过所述第二深度编码层对若干所述第二初始向量进行深度编码,生成若干第二增强向量;
第二解码输入子模块,用于将若干所述第二增强向量作为所述第二解码层的输入,通过所述第二解码层对若干所述第二增强向量进行解码,生成若干所述第二标签。
在本申请一实施例中,所述第二嵌入层包括格式转换层和第二初步编码层;第二嵌入输入子模块,包括:
格式转换输入子模块,用于将所述样本自然查询语句作为所述格式转换层的输入,通过所述格式转换层对所述样本自然查询语句中数字和/或时间类型的语句进行格式转换,生成转换查询语句;
第二初步编码输入子模块,用于将所述转换查询语句和所述样本表头作为所述第二初步编码层的输入,通过所述第二初步编码层对所述样本自然查询语句和所述样本表头进行初步编码,生成若干所述第二初始向量。
在本申请一实施例中,所述片段链接模块440,包括:
第一链接子模块,用于当所述目标条件列片段非空时,对所述目标条件连接片段、所述目标选择列解析片段、所述目标条件列片段、所述目标条件运算符片段和所述目标条件值片段进行链接,生成所述目标结构化查询语句;
第二链接子模块,用于当所述目标条件列片段为空且所述目标条件运算符片段或所述目标条件值片段为空时,获取自定义条件列片段;对所述自定义条件列片段和所述目标选择列解析片段进行链接,生成所述目标结构化查询语句;
第三链接子模块,用于当所述目标条件列片段为空且所述目标条件运算符片段或所述目标条件值片段非空时,依据所述目标自然查询语句,生成条件列相似片段;依据所述条件列相似片段,确定每个所述目标表头中的片段与所述件列相似片段的匹配度;将所述匹配度最高的所述目标表头中的片段设置为所述目标条件列片段;对所述目标条件连接片段、所述目标选择列解析片段、所述目标条件列片段、所述目标条件运算符片段和所述目标条件值片段进行链接,生成所述目标结构化查询语句。
参照图8,示出了本申请的一种结构化查询语句的生成方法的计算机设备,具体可以包括如下:
上述计算机设备12以通用计算设备的形式表现,计算机设备12的组件可以包括但不限于:一个或者多个处理器或者处理单元16,内存28,连接不同系统组件(包括内存28和处理单元16)的总线18。
总线18表示几类总线18结构中的一种或多种,包括存储器总线18或者存储器控制器,外围总线18,图形加速端口,处理器或者使用多种总线18结构中的任意总线18结构的局域总线18。举例来说,这些体系结构包括但不限于工业标准体系结构(ISA)总线18,微通道体系结构(MAC)总线18,增强型ISA总线18、音视频电子标准协会(VESA)局域总线18以及外围组件互连(PCI)总线18。
计算机设备12典型地包括多种计算机系统可读介质。这些介质可以是任何能够被计算机设备12访问的可用介质,包括易失性和非易失性介质,可移动的和不可移动的介质。
内存28可以包括易失性存储器形式的计算机系统可读介质,例如随机存取存储器30和/或高速缓存存储器32。计算机设备12可以进一步包括其他移动/不可移动的、易失性/非易失性计算机体统存储介质。仅作为举例,存储系统34可以用于读写不可移动的、非易失性磁介质(通常称为“硬盘驱动器”)。尽管图8中未示出,可以提供用于对可移动非易失性磁盘(如“软盘”)读写的磁盘驱动器,以及对可移动非易失性光盘(例如CD-ROM,DVD-ROM或者其他光介质)读写的光盘驱动器。在这些情况下,每个驱动器可以通过一个或者多个数据介质界面与总线18相连。存储器可以包括至少一个程序产品,该程序产品具有一组(例如至少一个)程序模块42,这些程序模块42被配置以执行本申请各实施例的功能。
具有一组(至少一个)程序模块42的程序/实用工具40,可以存储在例如存储器中,这样的程序模块42包括——但不限于——操作系统、一个或者多个应用程序、其他程序模块42以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。程序模块42通常执行本申请所描述的实施例中的功能和/或方法。
计算机设备12也可以与一个或多个外部设备14(例如键盘、指向设备、显示器24、摄像头等)通信,还可与一个或者多个使得操作人员能与该计算机设备12交互的设备通信,和/或与使得该计算机设备12能与一个或多个其他计算设备进行通信的任何设备(例如网卡,调制解调器等等)通信。这种通信可以通过I/O接口22进行。并且,计算机设备12还可以通过网络适配器20与一个或者多个网络(例如局域网(LAN)),广域网(WAN)和/或公共网络(例如因特网)通信。如图8所示,网络适配器20通过总线18与计算机设备12的其他模块通信。应当明白,尽管图8中未示出,可以结合计算机设备12使用其他硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元16、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储系统34等。
处理单元16通过运行存储在内存28中的程序,从而执行各种功能应用以及数据处理,例如实现本申请实施例所提供的一种结构化查询语句的生成方法。
也即,上述处理单元16执行上述程序时实现:获取目标自然查询语句及其对应的目标数据表;其中,所述目标数据表包括若干目标表头;将所述目标自然查询语句和所述目标表头作为预建立的第一解析模型的输入,通过所述第一解析模型对所述目标自然查询语句和所述目标表头进行片段识别,生成目标条件连接片段和目标选择列解析片段;将所述目标自然查询语句作为预建立的第二解析模型的输入,通过所述第二解析模型对所述目标自然查询语句和所述目标表头进行片段识别,生成目标条件列片段、目标条件运算符片段和目标条件值片段;依据所述目标条件连接片段、所述目标选择列解析片段、所述目标条件列片段、所述目标条件运算符片段和所述目标条件值片段,生成目标结构化查询语句。
在本申请一实施例中,还提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如本申请所有实施例提供的一种结构化查询语句的生成方法。
也即,给程序被处理器执行时实现:获取目标自然查询语句及其对应的目标数据表;其中,所述目标数据表包括若干目标表头;将所述目标自然查询语句和所述目标表头作为预建立的第一解析模型的输入,通过所述第一解析模型对所述目标自然查询语句和所述目标表头进行片段识别,生成目标条件连接片段和目标选择列解析片段;将所述目标自然查询语句作为预建立的第二解析模型的输入,通过所述第二解析模型对所述目标自然查询语句和所述目标表头进行片段识别,生成目标条件列片段、目标条件运算符片段和目标条件值片段;依据所述目标条件连接片段、所述目标选择列解析片段、所述目标条件列片段、所述目标条件运算符片段和所述目标条件值片段,生成目标结构化查询语句。
可以依据一个或多个计算机可读的介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件或者上述的任意合适的组合。在本文件中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以依据多种形式,包括——但不限于——电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
可以以一种或多种程序设计语句或其组合来编写用于执行本申请操作的计算机程序代码,上述程序设计语句包括面向对象的程序设计语句——诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语句——诸如“C”语句或类似的程序设计语句。程序代码可以完全地在操作人员计算机上执行、部分地在操作人员计算机上执行、作为一个独立的软件包执行、部分在操作人员计算机上部分在远程计算机上执行或者完全在远程计算机或者服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)——连接到操作人员计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。本说明书中的各个实施例均依据递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
尽管已描述了本申请实施例的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本申请实施例范围的所有变更和修改。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者终端设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者终端设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者终端设备中还存在另外的相同要素。
以上对本申请所提供的一种结构化查询语句的生成方法、装置、设备及存储介质,进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。
Claims (10)
1.一种结构化查询语句的生成方法,用于将自然查询语句转换成结构化查询语句;其中,所述结构化查询语句包括选择列片段、聚合类型片段、条件列片段、条件运算符片段、条件值片段和条件连接片段;其特征在于,所述生成方法包括:
获取目标自然查询语句及其对应的目标数据表;其中,所述目标数据表包括若干目标表头;
将所述目标自然查询语句和所述目标表头作为预建立的第一解析模型的输入,通过所述第一解析模型对所述目标自然查询语句和所述目标表头进行片段识别,生成目标条件连接片段和目标选择列解析片段;其中,所述目标条件连接片段为所述目标自然查询语句中与所述条件连接片段对应的片段,所述目标选择列解析片段为所述目标自然查询语句中与所述选择列片段和所述聚合类型片段对应的片段;
将所述目标自然查询语句作为预建立的第二解析模型的输入,通过所述第二解析模型对所述目标自然查询语句和所述目标表头进行片段识别,生成目标条件列片段、目标条件运算符片段和目标条件值片段;其中,所述目标条件列片段为所述目标自然查询语句中与所述条件列片段对应的片段,所述目标条件运算符片段为所述目标自然查询语句中与所述条件运算符片段对应的片段,所述目标条件值片段为所述目标自然查询语句中与所述条件值片段对应的片段;
依据所述目标条件连接片段、所述目标选择列解析片段、所述目标条件列片段、所述目标条件运算符片段和所述目标条件值片段,生成目标结构化查询语句。
2.根据权利要求1所述的生成方法,其特征在于,还包括:
获取样本自然查询语句、与所述样本自然查询语句对应的样本数据表、第一初始模型和第二初始模型;其中,所述样本数据表包括若干样本表头;
将所述样本自然查询语句和所述样本表头作为所述第一初始模型的输入,通过所述第一初始模型对所述样本自然查询语句和所述样本表头进行片段识别,生成样本条件连接片段和样本选择列解析片段;其中,所述样本条件连接片段为所述样本自然查询语句中与所述条件连接片段对应的片段,所述样本选择列解析片段为所述样本自然查询语句中与所述选择列片段和所述聚合类型片段对应的片段;
依据所述样本条件连接片段、所述样本选择列解析片段和预先构建的第一损失函数对所述第一初始模型进行训练,获得训练完成的所述第一解析模型;
将所述样本自然查询语句和所述样本表头作为所述第二初始模型的输入,通过所述第二解析模型对所述样本自然查询语句和所述样本表头进行片段识别,生成样本条件列片段、样本条件运算符片段和样本条件值片段;其中,所述样本条件列片段为所述样本自然查询语句中与所述条件列片段对应的片段,所述样本条件运算符片段为所述样本自然查询语句中与所述条件运算符片段对应的片段,所述样本条件值片段为所述样本自然查询语句中与所述条件值片段对应的片段;
依据所述样本条件列片段、所述样本条件运算符片段、所述样本条件值片段和预先构建的第二损失函数对所述第二初始模型进行训练,获得训练完成的所述第二解析模型。
3.根据权利要求2所述的生成方法,其特征在于,所述第一初始模型包括第一标签生成模块、第一序列生成模块和第一片段生成模块;所述将所述样本自然查询语句和所述样本表头作为所述第一初始模型的输入,通过所述第一初始模型对所述样本自然查询语句和所述样本表头进行片段识别,生成样本条件连接片段和样本选择列解析片段的步骤,包括:
将所述样本自然查询语句和所述样本表头作为所述第一标签生成模块的输入,通过所述第一标签生成模块对所述样本自然查询语句和所述样本表头进行标注,生成若干第一标签;其中,每个所述第一标签均包括第一功能标签和第一位置标签;所述第一功能标签包括条件连接标签和选择列解析标签;
将若干所述第一标签作为所述第一序列生成模块的输入,通过所述第一序列生成模块对若干所述第一标签依据所述第一功能标签和所述第一位置标签进行组合,生成第一标签序列;
将所述第一标签序列作为所述第一片段生成模块的输入,通过所述第一片段生成模块对所述第一标签序列中与所述条件连接标签和所述选择列解析标签对应的所述第一标签进行转换,生成所述样本条件连接片段和所述样本选择列解析片段。
4.根据权利要求3所述的生成方法,其特征在于,所述第一标签生成模块包括第一初步编码层、第一深度编码层和第一解码层;所述将所述样本自然查询语句和所述样本表头作为所述第一标签生成模块的输入,通过所述第一标签生成模块对所述样本自然查询语句和所述样本表头进行标注,生成若干第一标签的步骤,包括:
将所述样本自然查询语句和所述样本表头作为所述第一初步编码层的输入,通过所述第一初步编码层对所述样本自然查询语句和所述样本表头进行初步编码,生成若干第一初始向量;
将若干所述第一初始向量作为所述第一深度编码层的输入,通过所述第一深度编码层对若干所述第一初始向量进行深度编码,生成若干第一增强向量;
将若干所述第一增强向量作为所述第一解码层的输入,通过所述第一解码层对若干所述第一增强向量进行解码,生成若干所述第一标签。
5.根据权利要求2所述的生成方法,其特征在于,所述第二初始模型包括第二标签生成模块、第二序列生成模块和第二片段生成模块;所述将所述样本自然查询语句和所述样本表头作为所述第二初始模型的输入,通过所述第二解析模型对所述样本自然查询语句和所述样本表头进行片段识别,生成样本条件列片段、样本条件运算符片段和样本条件值片段的步骤,包括:
将所述样本自然查询语句和所述样本表头作为所述第二标签生成模块的输入,通过所述第二标签生成模块对所述样本自然查询语句和所述样本表头进行标注,生成若干第二标签;其中,每个所述第二标签均包括第二功能标签和第二位置标签;所述第二功能标签包括条件列标签、条件运算符标签和条件值标签;
将若干所述第二标签作为所述第二序列生成模块的输入,通过所述第二序列生成模块对若干所述第二标签依据所述第二功能标签和所述第二位置标签进行组合,生成第二标签序列;
将所述第二标签序列作为所述第二片段生成模块的输入,通过所述第二片段生成模块对所述第二标签序列中与所述条件列标签、所述条件运算符标签和所述条件值标签对应的所述第二标签进行转换,生成所述样本条件列片段、所述样本条件运算符片段和所述样本条件值片段。
6.根据权利要求5所述的生成方法,其特征在于,所述第二标签生成模块包括格式转换层、第二初步编码层、第二深度编码层和第二解码层;所述将所述样本自然查询语句和所述样本表头作为所述第二标签生成模块的输入,通过所述第二标签生成模块对所述样本自然查询语句和所述样本表头进行标注,生成若干第二标签的步骤,包括:
将所述样本自然查询语句作为所述格式转换层的输入,通过所述格式转换层对所述样本自然查询语句中数字和/或时间类型的语句进行格式转换,生成转换查询语句;
将所述转换查询语句和所述样本表头作为所述第二初步编码层的输入,通过所述第二初步编码层对所述样本自然查询语句和所述样本表头进行初步编码,生成若干所述第二初始向量;
将若干所述第二初始向量作为所述第二深度编码层的输入,通过所述第二深度编码层对若干所述第二初始向量进行深度编码,生成若干第二增强向量;
将若干所述第二增强向量作为所述第二解码层的输入,通过所述第二解码层对若干所述第二增强向量进行解码,生成若干所述第二标签。
7.根据权利要求1所述的生成方法,其特征在于,所述依据所述目标条件连接片段、所述目标选择列解析片段、所述目标条件列片段、所述目标条件运算符片段和所述目标条件值片段,生成目标结构化查询语句的步骤,包括:
当所述目标条件列片段非空时,对所述目标条件连接片段、所述目标选择列解析片段、所述目标条件列片段、所述目标条件运算符片段和所述目标条件值片段进行链接,生成所述目标结构化查询语句;
当所述目标条件列片段为空且所述目标条件运算符片段或所述目标条件值片段为空时,获取自定义条件列片段;
对所述自定义条件列片段和所述目标选择列解析片段进行链接,生成所述目标结构化查询语句;
当所述目标条件列片段为空且所述目标条件运算符片段或所述目标条件值片段非空时,依据所述目标自然查询语句,生成条件列相似片段;
依据所述条件列相似片段,确定每个所述目标表头中的片段与所述件列相似片段的匹配度;
将所述匹配度最高的所述目标表头中的片段设置为所述目标条件列片段;
对所述目标条件连接片段、所述目标选择列解析片段、所述目标条件列片段、所述目标条件运算符片段和所述目标条件值片段进行链接,生成所述目标结构化查询语句。
8.一种结构化查询语句的生成装置,用于将自然查询语句转换成结构化查询语句;其中,所述结构化查询语句包括选择列片段、聚合类型片段、条件列片段、条件运算符片段、条件值片段和条件连接片段;其特征在于,所述生成装置包括:
目标获取模块,用于获取目标自然查询语句及其对应的目标数据表;其中,所述目标数据表包括若干目标表头;
第一目标生成模块,用于将所述目标自然查询语句和所述目标表头作为预建立的第一解析模型的输入,通过所述第一解析模型对所述目标自然查询语句和所述目标表头进行片段识别,生成目标条件连接片段和目标选择列解析片段;其中,所述目标条件连接片段为所述目标自然查询语句中与所述条件连接片段对应的片段,所述目标选择列解析片段为所述目标自然查询语句中与所述选择列片段和所述聚合类型片段对应的片段;
第二目标生成模块,用于将所述目标自然查询语句作为预建立的第二解析模型的输入,通过所述第二解析模型对所述目标自然查询语句和所述目标表头进行片段识别,生成目标条件列片段、目标条件运算符片段和目标条件值片段;其中,所述目标条件列片段为所述目标自然查询语句中与所述条件列片段对应的片段,所述目标条件运算符片段为所述目标自然查询语句中与所述条件运算符片段对应的片段,所述目标条件值片段为所述目标自然查询语句中与所述条件值片段对应的片段;
片段链接模块,用于依据所述目标条件连接片段、所述目标选择列解析片段、所述目标条件列片段、所述目标条件运算符片段和所述目标条件值片段,生成目标结构化查询语句。
9.一种计算机设备,其特征在于,包括处理器、存储器及存储在所述存储器上并能够在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如权利要求1至7中任一项所述的方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储计算机程序,所述计算机程序被处理器执行时实现如权利要求1至7中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210416460.7A CN114911821B (zh) | 2022-04-20 | 2022-04-20 | 一种结构化查询语句的生成方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210416460.7A CN114911821B (zh) | 2022-04-20 | 2022-04-20 | 一种结构化查询语句的生成方法、装置、设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114911821A true CN114911821A (zh) | 2022-08-16 |
CN114911821B CN114911821B (zh) | 2024-05-24 |
Family
ID=82763847
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210416460.7A Active CN114911821B (zh) | 2022-04-20 | 2022-04-20 | 一种结构化查询语句的生成方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114911821B (zh) |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4994966A (en) * | 1988-03-31 | 1991-02-19 | Emerson & Stern Associates, Inc. | System and method for natural language parsing by initiating processing prior to entry of complete sentences |
US20160275148A1 (en) * | 2015-03-20 | 2016-09-22 | Huawei Technologies Co., Ltd. | Database query method and device |
CN107256267A (zh) * | 2017-06-19 | 2017-10-17 | 北京百度网讯科技有限公司 | 查询方法和装置 |
CN109889471A (zh) * | 2017-12-06 | 2019-06-14 | 阿里巴巴集团控股有限公司 | 结构化查询语句sql注入检测方法和系统 |
CN112214604A (zh) * | 2020-11-04 | 2021-01-12 | 腾讯科技(深圳)有限公司 | 文本分类模型的训练方法、文本分类方法、装置及设备 |
CN113254716A (zh) * | 2021-05-26 | 2021-08-13 | 北京亮亮视野科技有限公司 | 视频片段检索方法、装置、电子设备和可读存储介质 |
CN114281957A (zh) * | 2021-09-30 | 2022-04-05 | 腾讯科技(深圳)有限公司 | 自然语言数据查询方法、装置、电子设备及存储介质 |
-
2022
- 2022-04-20 CN CN202210416460.7A patent/CN114911821B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4994966A (en) * | 1988-03-31 | 1991-02-19 | Emerson & Stern Associates, Inc. | System and method for natural language parsing by initiating processing prior to entry of complete sentences |
US20160275148A1 (en) * | 2015-03-20 | 2016-09-22 | Huawei Technologies Co., Ltd. | Database query method and device |
CN107256267A (zh) * | 2017-06-19 | 2017-10-17 | 北京百度网讯科技有限公司 | 查询方法和装置 |
CN109889471A (zh) * | 2017-12-06 | 2019-06-14 | 阿里巴巴集团控股有限公司 | 结构化查询语句sql注入检测方法和系统 |
CN112214604A (zh) * | 2020-11-04 | 2021-01-12 | 腾讯科技(深圳)有限公司 | 文本分类模型的训练方法、文本分类方法、装置及设备 |
CN113254716A (zh) * | 2021-05-26 | 2021-08-13 | 北京亮亮视野科技有限公司 | 视频片段检索方法、装置、电子设备和可读存储介质 |
CN114281957A (zh) * | 2021-09-30 | 2022-04-05 | 腾讯科技(深圳)有限公司 | 自然语言数据查询方法、装置、电子设备及存储介质 |
Non-Patent Citations (1)
Title |
---|
甄真;陈虎;张林亚;: "列数据库的SQL查询语句编译与优化", 计算机工程, no. 06, 15 June 2013 (2013-06-15) * |
Also Published As
Publication number | Publication date |
---|---|
CN114911821B (zh) | 2024-05-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111985239B (zh) | 实体识别方法、装置、电子设备及存储介质 | |
CN112329465A (zh) | 一种命名实体识别方法、装置及计算机可读存储介质 | |
US11308937B2 (en) | Method and apparatus for identifying key phrase in audio, device and medium | |
CN110580308B (zh) | 信息审核方法及装置、电子设备、存储介质 | |
CN107680588B (zh) | 智能语音导航方法、装置及存储介质 | |
CN112328761B (zh) | 一种意图标签设置方法、装置、计算机设备及存储介质 | |
CN111241209B (zh) | 用于生成信息的方法和装置 | |
CN113064964A (zh) | 文本分类方法、模型训练方法、装置、设备以及存储介质 | |
CN113158656B (zh) | 讽刺内容识别方法、装置、电子设备以及存储介质 | |
CN112035645A (zh) | 数据查询方法以及系统 | |
CN111259262A (zh) | 一种信息检索方法、装置、设备及介质 | |
CN112084752A (zh) | 基于自然语言的语句标注方法、装置、设备及存储介质 | |
CN115392235A (zh) | 字符匹配方法、装置、电子设备及可读存储介质 | |
CN115544560A (zh) | 一种敏感信息的脱敏方法、装置、计算机设备及存储介质 | |
CN111738791B (zh) | 一种文本处理方法、装置、设备和存储介质 | |
CN111459977A (zh) | 自然语言查询的转换 | |
CN112949320A (zh) | 基于条件随机场的序列标注方法、装置、设备及介质 | |
CN113095082A (zh) | 一种基于多任务模型进行文本处理的方法、装置、计算机装置及计算机可读取存储介质 | |
CN117216393A (zh) | 信息推荐方法、信息推荐模型的训练方法及装置、设备 | |
CN114911821B (zh) | 一种结构化查询语句的生成方法、装置、设备及存储介质 | |
CN113139558A (zh) | 确定物品的多级分类标签的方法和装置 | |
CN115527520A (zh) | 异常检测方法、装置、电子设备和计算机可读存储介质 | |
CN111985235B (zh) | 文本处理方法、装置、计算机可读存储介质和电子设备 | |
CN114417834A (zh) | 文本的处理方法、装置、电子设备及可读存储介质 | |
CN112926314A (zh) | 文档的重复性识别方法、装置、电子设备以及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant |