CN112860726A - 结构化查询语句分类模型训练方法和装置 - Google Patents
结构化查询语句分类模型训练方法和装置 Download PDFInfo
- Publication number
- CN112860726A CN112860726A CN202110169620.8A CN202110169620A CN112860726A CN 112860726 A CN112860726 A CN 112860726A CN 202110169620 A CN202110169620 A CN 202110169620A CN 112860726 A CN112860726 A CN 112860726A
- Authority
- CN
- China
- Prior art keywords
- keywords
- query statement
- training
- keyword
- training sample
- 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.)
- Pending
Links
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/242—Query formulation
- G06F16/2433—Query languages
-
- 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/2458—Special types of queries, e.g. statistical queries, fuzzy queries or distributed 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/28—Databases characterised by their database models, e.g. relational or object models
- G06F16/284—Relational databases
- G06F16/285—Clustering or classification
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Computational Linguistics (AREA)
- Fuzzy Systems (AREA)
- Probability & Statistics with Applications (AREA)
- Software Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请提供一种结构化查询语句分类模型训练方法和装置,包括:对所有训练用样本查询语句中的关键字进行特征选择,确定第一预设数量的选定关键字;根据所述训练用样本查询语句中包含的所述选定关键字,按照设定的选定关键字排序,构建表征所述训练用样本查询语句特征的特征向量;采用各个所述训练用样本查询语句对应的特征向量和分类标签,对所述结构化查询语句分类模型进行训练。因为采用的选定关键字是对关键字再做特征处理后得到,排除了常用关键字在模型训练过程中引入的影响,使得模型被训练为更关注核心关键字特征,也就使得模型使用过程中的预测精度更高。
Description
技术领域
本公开涉及数据分析技术领域,尤其涉及一种结构化查询语句分类模型训练方法和装置。
背景技术
根据处理业务类型的不同,数据库中的数据处理系统包括联机事务处理(On-LineTransaction Processing,OLTP)和联机分析处理(On-Line Analytical Processing,OLAP)两种类型。
联机事务处理是一种以事务为核心的作业方式,一次的作业过程通常会涉及在数据库中执行插入、更新及删除的操作,但是操作的数据量比较小,可以即时地处理输入的数据、及时地响应,其主要应用于实时业务处理,例如银行交易的处理。联机事务处理强调数据库内存效率,强调内存各种指标的命令率,强调绑定变量,强调并发操作。
联机分析处理关注于数据分析,重点在于分析和报告,其并没有事务性约束,计算相对复杂,强调SQL执行时长,强调磁盘I/O,强调数据分区等。
为满足应用型要求,当前数据库更加强调处理混合负载,既提供联机事务处理,也提供联机分析处理。在接收到业务请求端发送来的结构化查询语句后,是采用联机事务处理还是联机分析处理方式处理结构化查询语句,直接影响系统资源的占用情况和系统的处理效率。
目前,在接收到业务请求端发送的结构化查询语句后,仍然是采用规则匹配的方式对结构化查询语句进行分类,以确定是联机事务处理还是联机分析处理业务类型。
发明内容
为了解决上述技术问题或者至少部分地解决上述技术问题,本公开提供了一种结构化查询语句分类模型训练方法和装置,以及一种结构化查询语句分类方法和装置。
一方面,本申请提供一种结构化查询语句分类模型训练方法,包括:
对所有训练用样本查询语句中的关键字进行特征选择,确定第一预设数量的选定关键字;
根据所述训练用样本查询语句中包含的所述选定关键字,按照设定的选定关键字排序,构建表征所述查询语句样本特征的特征向量;
采用各个所述训练用样本查询语句对应的特征向量和分类标签,训练所述结构化查询语句分类模型。
可选地,根据所述训练用样本查询语句中包含的所述选定关键字,按照设定的选定关键字排序,构建表征所述训练用样本查询语句特征的特征向量,包括:
根据所述训练用样本查询语句中包含的所述选定关键字,计算对应的特征值;
按照设定的选定关键字排序,根据所述训练用样本查询语句中包含的所述关键字对应的特征值,构建所述特征向量。
可选地,根据所述训练用样本查询语句中包含的所述关键字,计算对应的特征值;包括:
计算所述选定关键字在所述训练用样本中的词频-逆文档频率值,将所述词频-逆文档频率值作为所述特征值。
可选地,对所有训练用样本查询语句中的关键字进行特征选择,确定第一预设数量的选定关键字,包括:
计算各个所述关键字的度量值;
按照所述度量值的大小对各个所述关键字进行排序,以及根据所述排序选择第一预设数量的所述关键字作为所述选定关键字;
所述度量值为卡方值、信息增益、信息增益率或者基尼系数中的一种。
可选地,对所有训练用样本查询语句中的关键字进行特征选择,确定第一预设数量的选定关键字,还包括:
对所述训练用样本查询语句进行语法分析,确定所有关键字。
可选地,在对所有所述关键字进行特征选择,确定第一预设数量的选定关键字前,还包括:删除出现次数小于第二预设数量的关键字。
另一方面,本申请提供一种结构化查询语句分类方法,采用训练的所述结构化查询语句分类模型进行分类,包括:
根据待识别查询语句中包含的所述选定关键字,按照所述设定的选定关键字排序构建表征所述待识别查询语句特征的识别向量;
将所述识别向量输入所述结构化查询语句分类模型,得到分类结果。
可选地,按照所述设定的选定关键字排序构建表征待识别查询语句特征的识别向量,包括:
根据所述待识别查询语句和一选定的查询语句集,计算所述选定关键字对应的特征值;
按照设定的选定关键字排序,根据所述选定关键字对应的特征值构建表征所述待识别查询语句特征的识别向量。
再一方面,本申请提供一种结构化查询语句分类模型训练装置,包括:
关键字选定单元,用于对所有训练用样本查询语句中的关键字进行特征选择,确定第一预设数量的选定关键字;
第一向量构建单元,用于根据所述训练用样本查询语句中包含的所述选定关键字,按照设定的选定关键字排序,构建表征所述查询语句样本特征的特征向量;
训练单元,用于采用各个所述训练用样本查询语句对应的特征向量和分类标签,训练所述结构化查询语句分类模型。
可选地,所述第一向量构建单元包括:
特征值计算子单元,用于根据所述训练用样本查询语句中包含的所述选定关键字,计算对应的特征值;
特征向量构建子单元,用于按照所述设定的选定关键字排序,根据所述训练用样本查询语句中包含的所述关键字对应的特征值,构建所述特征向量。
可选地,所述特征值计算子单元计算对应的所述特征值,包括:
计算所述选定关键字在所述训练用样本中的词频-逆文档频率值,将所述词频-逆文档频率值作为所述特征值。
可选地,所述关键字选定单元包括:
度量值计算子单元,用于计算各个所述关键字的度量值;
关键字选定子单元,用于按照所述度量值的大小对各个所述关键字进行排序,以及根据所述排序选择第一预设数量的所述关键字作为所述选定关键字;
所述度量值为卡方值、信息增益、信息增益率或者基尼系数中的一种。
可选地,所述结构化查询语句分类模型训练装置还包括:
语法分析单元,用于对所述训练用样本查询语句进行语法分析,确定关键字。
再一方面,本申请提供一种结构化查询语句分类装置,采用训练的所述结构化查询语句分类模型进行分类,包括:
第二向量构建单元,用于根据待识别查询语句中包含的所述选定关键字,按照所述设定的选定关键字排序构建表征所述待识别查询语句特征的识别向量;
模型使用单元,用于将所述识别向量输入所述结构化查询语句分类模型,得到分类结果。
本申请提供的结构化查询语句分类模型训练方法,为了能够实现SQL查询语句的快速归类划分,以已经确定分类SQL查询语句为基础基于SQL查询语句中的关键字做特征选择处理,以得到能够代表各个训练用样本查询语句特征的选定关键字,再利用选定关键字构建特征向量对模型进行训练,得到结构化查询语句类型识别模型。因为SQL查询语句在构建过程中,其类型是由用户指定的SQL查询语句的结构形式确定(核心是由用户选定的某些关键字确定),通过对此类SQL语句中选定关键字构建的特征向量,也内含表征SQL查询语句类型的特征,采用特征向量对模型进行训练,使得训练后模型具有区分SQL查询语句类型的能力。因为采用的选定关键字是对关键字再做特征处理后得到,排除了常用关键字在模型训练过程中引入的影响,使得模型被训练为更关注核心关键字特征,也就使得模型使用过程中的预测精度更高。
采用本申请提供的训练后的结构化查询语句分类模型,能够快速地将待识别查询语句进行分类,而将待识别查询语句分发给对应的逻辑计划优化器进行优化。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。
为了更清楚地说明本公开实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的结构化查询语句分类模型训练方法流程图;
图2是本申请实施例提供的一种确定选定关键字的流程图;
图3是本申请一个实施例中构建各个训练查询语句特征向量的流程图;
图4是本申请实施例提供的结构化查询语句的分类方法流程图;
图5是本申请实施例提供的分类模型训练装置的结构示意图;
图6是本申请实施例提供的向量构建单元结构示意图;
图7是本申请实施例提供的电子设备的结构示意图;
其中:11-关键字选定单元,12-第一向量构建单元,13-训练单元,21-第二向量构建单元,22-模型使用单元,31-处理器,32-存储器,33-通信接口,34-总线系统。
具体实施方式
为了能够更清楚地理解本公开的上述目的、特征和优点,下面将对本公开的方案进行进一步描述。需要说明的是,在不冲突的情况下,本公开的实施例及实施例中的特征可以相互组合。
在下面的描述中阐述了很多具体细节以便于充分理解本公开,但本公开还可以采用其他不同于在此描述的方式来实施;显然,说明书中的实施例只是本公开的一部分实施例,而不是全部的实施例。
本申请提供一种结构化查询语句分类模型训练方法和装置,用于通过对训练特征的优化提取的基础上,再对设定结构的分类模型进行训练。
在对本申请实施例提供的分类模型训练方法做分析前,首先对几个技术做解释,以期避免误解本申请实施例的方案。
关键字是数据处理系统中按照语法规则设定的具有特殊涵义的单词,其又被称为保留字。例如,“select x from table y”中的“select”、“from”和“table”均可以被称为关键字。
选定关键字是从训练用样本查询语句中选定的、用于对结构化查询语句分类模型进行训练的特定关键字。
图1是本申请实施例提供的结构化查询语句分类模型训练方法流程图。如图1所示,本申请实施例提供的分类模型训练方法包括步骤S101-S103。
S101:对所有训练用样本查询语句中的关键字进行特征选择,确定第一预设数量的选定关键字。
对所有训练用样本查询语句中的关键字进行特征选择的过程,是按照一定的特征选择方法,确定出训练用样本查询语句中能够较为显著地表现出此查询语句特征的关键字的过程。
本申请实施例中,可以采用一定的数据处理方法对训练用样本查询语句中及其中的某一特定关键字进行运算处理,确定某一关键字的度量值,随后采用度量值作为特征选择的依据而确定出选定关键字。
本申请实施例中,第一设定数量是一预先设定的数量,其确定了将所有关键字作为选定关键字的数量。
在本申请实施例的一个应用中,在各个选定关键字的特征值为一个数值的情况下,第一设定数量Nset确定了用于描述各个SQL语句生成的特征向量的维度,以及结构化查询语句分类模型中的部分网络参数的维度。在各个选定关键字的特征值为多个数值组成的向量的情况下,第一设定数量Nset与各个选定关键字的特征值的向量之积,确定了描述各个SQL语句的特征向量的维度,以及结构化查询语句分类模型中的部分网络参数的维度。
实际应用中,第一设定数量Nset可根据经验和实际对模型训练中的调参过程、训练过程中参数的反馈进行调整,以使得得到的结构化查询语句分类模型性能提升到满足应用需求。
图2是本申请实施例提供的一种确定选定关键字的流程图。如图2所示,具体应用中,步骤S101可以包括步骤S1011和S1012。
S1011:计算各个关键字的度量值。
本申请实施例中,关键字的度量值可以采用卡方值、信息增益、信息增益率或基尼系数中的一种。
S1012:根据度量值的大小对各个关键字进行排序,以及根据排序选择第一预设数量关键字作为选定关键字。
具体应用中,如果度量值采用由大到小的顺序排序,则选择在前的第一预设数量的关键字作为选定关键字;如果度量值采用由小到大的顺序排序,则选择在后的第一数量的关键字作为选定关键字。
在一个应用中,如果度量值为卡方值,则相应的计算方法可以包括步骤A-D。
A:统计所有训练用样本查询语句中,包括某一关键字keywordx的第一正样本数量和第一负样本数量,以及不包含此关键字keywordx的第二正样本数量和第二负样本数量。本申请实施例中,所述第一正样本是指包含关键字keywordx且分类标签为OLTP或OLAP中的一种的SQL语句样本,第一负样本是指包含关键字keywordx且分类标签为OLAP或OLTP另一种的SQL样本;第二正样本是指不包含关键字keywordx且分类标签与第一正样本类型相同的一种SQL语句样本,第二负样本是指不包含关键字keywordx且分类标签与第一负样本类型相同的SQL语句样本。
例如:在一个实施例中,分类标签为联机事务处理(OLTP)的所有训练用样本查询语句为正样本,其数量为N1,分类标签为联机分析处理(OLAP)的所有训练用样本查询语句为负样本,其数量为N2。包括某一关键字keywordx的第一正样本数量为A,包括某一关键字keywordx的第一负样本数量为B,不包括某一关键字keywordx的第二正样本数量为C,不包括某一关键字keywordx的第二负样本数量为D;如下表所示。
如上表所示,样本集中,正样本数量N1满足N1=A+C;负样本数量N2满足N2=C+D。
B:根据第一正样本数量、第一负样本数量、第二正样本数量和第二负样本数量计算关键字keywordx的卡方值。
本申请实施例中,关键字keywordx关于类别正样本的卡方值计算公式如下:
实际应用中,也可以首先根据第一正样本数量A和正样本数量N1计算包含关键字keywordx的正样本出现频率a=A/N1,根据第二正样本数量C和正样本数量N1计算正样本不包含关键字keywordx的频率c=C/N1,根据第一负样本数量B和负样本数量N2计算负样本包含关键字keywordx的频率b=B/N2,根据第二负样本数量D和负样本数量N2计算负样本不包含关键字keywordx的频率d=D/N2,此时,关键字keywordx对正样本类别的卡方值计算公式为:
按照上述公式,可逐一计算每个关键字对正样本类别的卡方值。
C:按照关键字对正样本类别卡方值的大小,对关键字进行降序排列。
D:选择第一预设数量的排序靠前的关键字作为选定关键字。
在一个应用中,度量值为信息增益,则相应的计算方法可以包括步骤E-H。
E:统计所有训练用样本查询语句中,包括某一关键字keywordx的第一正样本数量和第一负样本数量,以及不包含关键字keywordx的第二正样本数量和第二负样本数量。
步骤E中第一正样本数量、第一负样本数量、第二正样本数量和第二负样本数量与前文A-D中的表述一致。其中第一正样本和第二正样本数量之和等于可用于训练模型的全部正样本的数量,为N1=A+C;第一负样本和第二负样本数量之和等于可用于模型训练的全部负样本数量,为N2=B+D;
F:根据全部正样本数量、全部负样本数量,以及对于关键字keywordx的第一正样本数量、第一负样本数量、第二正样本数量和第二负样本数量,计算关键字keywordx的信息增益。计算公式如下。
按照上述公式,可逐一计算每一个关键字对样本集合的信息增益。
G:按照信息增益的大小,对关键字进行降序排列。
H:选择第一预设数量个排序在前的关键字作为选定关键字。
在本申请实施例的一个应用中,度量值为信息增益率,相应的计算方法可以包括步骤I-L。
I:统计所有训练用样本查询语句中,包括某一关键字keywordx的第一正样本数量和第一负样本数量,以及不包含关键字keywordx的第二正样本数量和第二负样本数量。
步骤I中第一正样本数量、第一负样本数量、第二正样本数量和第二负样本数量与前文步骤A-D中的表述一致。其中第一正样本和第二正样本数量之和等于可用于训练模型的全部正样本的数量,为N1=A+C;第一负样本和第二负样本数量之和等于可用于模型训练的全部负样本数量,为N2=B+D;
J:根据全部正样本数量、全部负样本数量,以及对于关键字keywordx的第一正样本数量、第一负样本数量、第二正样本数量和第二负样本数量,计算关键字keywordx的信息增益率,信息增益率的计算公式如下。
前述公式中中,分子Gain(keywordx,样本集合)的计算方式与前文步骤F一致,分母计算公式如下。
K:按照信息增益率的大小,对关键字进行降序排列。
L:选择第一预设数量个排序在前的关键字作为选定关键字。
在一个应用中,度量值为基尼系数,则相应的计算方法可以包括步骤M-P。
M:统计所有训练用样本查询语句中,包括某一关键字keywordx的第一正样本数量和第一负样本数量,以及不包含关键字keywordx的第二正样本数量和第二负样本数量。
步骤M中第一正样本数量、第一负样本数量、第二正样本数量和第二负样本数量与前文步骤A-D中的表述一致。其中第一正样本和第二正样本数量之和等于可用于训练模型的全部正样本的数量,为N1=A+C;第一负样本和第二负样本数量之和等于可用于模型训练的全部负样本数量,为N2=B+D;
N:根据全部正样本数量、全部负样本数量,以及对于关键字keywordx的第一正样本数量、第一负样本数量、第二正样本数量和第二负样本数量,计算关键字keywordx的基尼系数。计算公式为如下。
O:按照基尼系数的大小,对关键字进行降序排列。
P:选择第一预设数量个排序在前的关键字作为选定关键字。
本申请实施例中,在获取到样本查询数据,而执行步骤S101之前,还需要对训练用样本查询语句进行语法分析,以确定其中的关键字,并在确定关键字的基础上再确定选定关键字。具体的,包括如下步骤:对训练用样本查询语句进行语法分析,确定其中的关键字。
本申请实施例中,可以采用antlr(Another Tool for Language Recognition)等语法解析方法对训练用样本查询语句进行语法分析,确定各个词语的属性,继而筛选出关键字。
实际应用中,在对各个训练用样本查询语句执行步骤S101的各个操作步骤前,还可以先对训练用样本查询语句进行预处理,包括分词操作、大小写统一和删除停用词,以及删除出现次数小于第二预设数量的关键字。本申请实施例中,第二预设数量是预先设定的一较小数量,其可以根据训练用样本查询语句的数量结合使用SQL查询语句的经验确定。
在确定选定关键字后,可以继续执行步骤S102和S103。
S102:根据训练用样本查询语句中包含的选定关键字,按照设定的选定关键字排序,构建训练用样本表征查询语句特征的特征向量。
步骤S102是针对各个训练用样本查询语句构建起对应的特征向量的过程。具体应用中,首先获取各个训练用样本查询语句,基于步骤S101中确定的选定关键字,筛选训练用样本查询语句包括的选定关键字,随后利用选定关键字对应的特征值,并按照特定的关键字排列顺序构建表征查询语句样本特征的特征向量。
设定的选定关键字排序是在确定选定关键字后,制定的选定关键字的排列顺序;实际应用中,可以根据选定关键字的出现次数排序,也可以按照字母顺序对选定关键字进行排序。
排序后的选定关键字形成一个向量,向量的每一个分量对应一个选定关键字。向量的每一个分量的值表示SQL语句向量化时对应关键字的“幅度”。
在本申请实施例的一个应用中,根据选定关键字,按照设定的选定关键字排序,构建表征查询语句样本特征的特征向量,是首先确定表征各个选定关键字的特征值,再按照选定关键字的排序构建相应的特征向量。
在本申请实施例一个应用中,可以采用word2vec等典型的词嵌入算法确定选定关键字的特征值,再利用特征值构建特征向量。
在本申请实施例的另一个应用中,还可以根据训练用样本查询语句中包含的选定关键字构建特性化的特征值,再按照设定的选定关键字排序,利用特性化的特征值构建特征向量。
图3是本申请一个实施例中构建各个训练查询语句特征向量的流程图。如图3所示,可以按照下述步骤S1021-S1023构建特征向量。
S1021:计算选定关键字在训练用样本查询语句中的出现频率,以及计算选定关键字在所有训练用样本查询语句出现的逆文档频率。
本申请实施例中,选定关键字在训练用样本查询语句中的出现频率(termfrequency,TF)可以采用选定关键字在训练用样本查询语句的数量和训练用样本查询语句中的关键字的数量相比计算得到;逆文档频率(inverse Document Frequency,IDF)采用所有训练用样本查询语句的数量与包括选定关键字的训练用样本查询语句的数量相比,再取对数得到。
S1022:根据出现频率和逆文档频率计算选定关键字对应的特征值。
本申请实施例具体应用中,可以采用出现频率和逆文档频率相乘计算得到TF-IDF值,并将TF-IDF值作为特征值。
S1023:按照设定的选定关键字排序,根据特征值构建表征查询语句样本特征的特征向量。
步骤S1023中,按照预设的关键字排序对特征值进行排序,是为了能够使得各个训练用样本查询语句对应的特征向量按照特定的关键字排序进行设置,使得各个特征向量表征出相同的排序特征。
本申请实施例中,采用TF-IDF方法设置各个选定关键字对应的特征值,考虑到了各个选定关键字在某一训练用样本查询语句中的频率特征,以及所有训练用样本查询语句包括选定关键字的特征,使得特征值融合了选定关键字在训练用样本查询语句中的显著性特征,也就使得特征向量融合了至少一个选定关键字的显著性特征。
S103:采用各个训练用样本查询语句对应的特征向量和分类标签,对结构化查询语句分类模型进行训练。
本申请实施例中,分类标签为联机事务处理或者联机分析处理标签,对应的,结构化查询语句分类模型是一个二分类模型,可采用神经网络或深度学习算法模型,当然,在其他实施例中,根据分类需求的不同,分离标签也可以是其他类型的标签。
步骤S103执行中,首先初始化分类模型中的参数,采用训练用样本查询语句对应的特征向量输入到分类模型中,经过处理并经过输出层后输出属于两种结果的估计概率;采用分类标签确定各个训练用样本查询语句特征向量实际对应的结果概率;利用估计概率和结果概率计算损失量,并利用损失量和反向传播算法对模型参数进行修正;随后继续执行前述操作过程,直至损失量达到设定要求,此时结构化查询语句分类模型也就设置完成。
本申请实施例提供的结构化查询语句分类模型训练方法,为了能够实现SQL查询语句的快速归类划分,以已经确定分类SQL查询语句为基础基于SQL查询语句中的关键字做特征选择处理,以得到能够代表各个训练用样本查询语句特征的选定关键字,再利用选定关键字构建特征向量对模型进行训练,得到结构化查询语句类型识别模型。因为SQL查询语句在构建过程中,其类型是由用户指定的SQL查询语句的结构形式确定(核心是由用户选定的某些关键字确定),通过对此类SQL语句中选定关键字构建的特征向量,也内含表征SQL查询语句类型的特征,采用特征向量对模型进行训练,使得训练后模型具有区分SQL查询语句类型的能力。因为采用的选定关键字是对关键字再做特征处理后得到,排除了常用关键字在模型训练过程中引入的影响,使得模型被训练为更关注核心关键字特征,也就使得模型使用过程中的预测精度更高。
因为采用的选定关键字是对关键字再做特征处理后得到,排除了常用关键字(也就是没有被作为选定关键字的关键字)在模型训练过程中引入的影响,使得模型被训练为更关注核心关键字特征,也使得模型使用过程中的预测精度更高。后续根据待识别查询语句识别确定其类别后,根据其类别选定对应的处理方式(联机事务处理还是联机分析处理)处理,可以使得处理方式与查询请求更匹配。
基于前文提供的结构化查询语句分类模型训练方法得到的分类模型,本申请实施例还提供一种结构化查询语句分类方法。图4是本申请实施例提供的结构化查询语句的分类方法流程图;如图4所示,分类方法包括步骤S201-S202。
S201:根据待识别查询语句中包含的选定关键字,按照设定的选定关键字排序构建表征待识别查询语句特征的识别向量。
步骤S201中,在获取到某一待识别查询语句后,可以按照模型构建方法中确定的选定关键字,对待识别查询语句中的关键字进行识别,以确定待识别查询语句中包括哪些选定关键字。
在确定待识别查询语句包含的选定关键字后,按照预设的关键字排序,将选定关键对应的特征值构建识别向量。
本申请实施例一个应用中,与前述的模型训练方法类似,可以根据待识别语句和一个选定的查询语句集,计算选定关键字对应的特征值。
实际应用中,选定的查询语句集可以是前文中用于模型训练的训练用样本查询语句构建的集合,也可以是其他查询语句集构建的集合。
应当注意的是,选定的查询语句集中的各种类型查询语句的比例应当和模型训练的训练用样本查询语句集合中对应类型查询语句的比例匹配;还应当注意的是,选定的查询语句集中查询语句的数量应当较大,保证待识别查询语句加入后并不会大幅改变包含某一选定关键字的语句在其中所占的比例。
实际应用中,可以根据选定关键字在待识别查询语句中的出现频率,以及选定关键字在选定查询语句集中出现的逆向文本频率,计算特征值。
S202:将识别向量输入到结构化查询语句分类模型,得到分类结果。
步骤S202中,将识别向量输入到结构化查询语句分类模型后,经过模型处理得到各个分类的结果概率,选择结果概率最高的分类作为分类结果。
采用本申请实施例提供的训练后的结构化查询语句分类模型,能够快速地将待识别查询语句进行分类,而将待识别查询语句分发给对应的逻辑计划优化器进行优化。
基于前文提供的结构化查询语句分类模型训练方法,本申请实施例提供一种结构化查询语句分类模型训练装置。图5是本申请实施例提供的分类模型训练装置的结构示意图。如图5所示,训练装置包括关键字选定单元11、第一向量构建单元12和训练单元13。
关键字选定单元11用于对所有训练用样本查询语句中的关键字进行特征选择,确定第一预设数量的选定关键字。
第一向量构建单元12用于根据训练用样本查询语句中包含的选定关键字,按照设定的选定关键字排序,构建表征查询语句样本特征的特征向量。
训练单元13用于采用各个训练用样本查询语句对应的特征向量和分类标签,训练所述结构化查询语句分类模型。
图6是本申请实施例提供的向量构建单元结构示意图。如图5所示,在本申请实施例的一个应用中,第一向量构建单元12包括特征值计算子单元和特征向量构建子单元。特征值计算子单元用于根据训练用样本查询语句中包含的选定关键字,计算对应的特征值;特征向量构建子单元用于按照设定的选定关键字排序,根据训练用样本查询语句中包含的关键字对应的特征值,构建特征向量。
在本申请实施例的一个应用中,特征值计算子单元计算对应的特征值,包括:计算所述选定关键字在所述训练用样本中的词频-逆文档频率值,将所述词频-逆文档频率值作为所述特征值。
在本申请实施例的一个应用中,关键字选定单元11包括度量值计算子单元和关键字选定子单元。度量值计算子单元用于计算各个关键字的度量值;关键字选定子单元用于按照度量值的大小对各个关键字进行排序,以及根据排序选择第一预设数量的关键字作为选定关键字;度量值为卡方值、信息增益、信息增益率或基尼系数中的一种。
本申请实施例中,训练装置还包括语法分析单元14,语法分析单元14用于对训练用样本查询语句进行语法分析,确定其中的关键字。
基于前文提及的结构化查询语句分类方法的发明构思,本申请实施例还提供一种结构化查询语句的分类装置。图6是本申请实施例提供的结构化查询语句分类装置的结构示意图,如图6所示,分类装置包括第二向量构建单元21和模型使用单元22。
第二向量构建单元21用于根据待识别查询语句中包含的选定关键字,按照设定的选定关键字排序构建表征待识别查询语句特征的识别向量;
模型使用单元22用于将识别向量输入结构化查询语句分类模型,得到分类结果。
基于前述的发明构思,本申请还提供一种电子设备。图7是本申请实施例提供的电子设备的结构示意图。如图7所示,第一服务器包括至少一个处理器31、至少一个存储器32和至少一个通信接口33。通信接口33,用于与外部设备之间的信息传输。
第一服务器中的各个组件通过总线系统34耦合在一起。可理解地,总线系统34用于实现这些组件之间的连接通信。总线系统34除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。但为了清楚说明起见,在图5中将各种总线都标为总线系统34。
可以理解,本实施例中的存储器32可以是易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。在一些实施方式中,存储器32存储了如下的元素,可执行单元或者数据结构,或者他们的子集,或者他们的扩展集:操作系统和应用程序。
其中,操作系统,包含各种系统程序,例如框架层、核心库层、驱动层等,用于实现各种基础任务以及处理基于硬件的任务。应用程序,包含各种应用程序,例如媒体播放器(MediaPlayer)、浏览器(Browser)等,用于实现各种应用任务。实现本公开实施例提供的结构化查询语句分类模型训练方法和/或结构化查询语句分类方法的程序可以包含在应用程序中。
在本公开实施例中,处理器31通过调用存储器32存储的程序或指令,具体的,可以是应用程序中存储的程序或指令,处理器31用于执行本公开实施例提供的结构化查询语句分类模型训练方法和/或结构化查询语句分类方法的各个步骤。
本公开实施例提供的结构化查询语句分类模型训练方法和/或结构化查询语句分类方法可以应用于处理器31中,或者由处理器31实现。处理器31可以是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器31中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器31可以是通用处理器、数字信号处理器(DigitalSignalProcessor,DSP)、专用集成电路(ApplicationSpecificIntegratedCircuit,ASIC)、现成可编程门阵列(FieldProgrammableGateArray,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
本公开实施例提供的结构化查询语句分类模型训练方法和/或结构化查询语句分类方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件单元组合执行完成。软件单元可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器32,处理器31读取存储器32中的信息,结合其硬件完成方法的步骤。
本公开实施例还提出一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储程序或指令,所述程序或指令使计算机执行结构化查询语句分类模型训练方法和/或结构化查询语句分类方法的步骤各实施例的步骤,为避免重复描述,在此不再赘述。
需要说明的是,在本文中,诸如“第一”和“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上所述仅是本申请的具体实施方式,使本领域技术人员能够理解或实现本申请。对这些实施例的多种修改对本领域的技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本申请的精神或范围的情况下,在其它实施例中实现。因此,本申请将不会被限制于本文所述的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
Claims (16)
1.一种结构化查询语句分类模型训练方法,其特征在于,包括:
对所有训练用样本查询语句中的关键字进行特征选择,确定第一预设数量的选定关键字;
根据所述训练用样本查询语句中包含的所述选定关键字,按照设定的选定关键字排序,构建表征所述训练用样本查询语句特征的特征向量;
采用各个所述训练用样本查询语句对应的特征向量和分类标签,训练所述结构化查询语句分类模型。
2.根据权利要求1所述结构化查询语句分类模型训练方法,其特征在于,根据所述训练用样本查询语句中包含的所述选定关键字,按照设定的选定关键字排序,构建表征所述训练用样本查询语句特征的特征向量,包括:
根据所述训练用样本查询语句中包含的所述选定关键字,计算对应的特征值;
按照设定的选定关键字排序,根据所述训练用样本查询语句中包含的所述关键字对应的特征值,构建所述特征向量。
3.根据权利要求2所述结构化查询语句分类模型训练方法,其特征在于,
根据所述训练用样本查询语句中包含的所述关键字,计算对应的特征值;包括:
计算所述选定关键字在所述训练用样本查询语句中的词频-逆文档频率值,将所述词频-逆文档频率值作为所述特征值。
4.根据权利要求1-3任一项所述结构化查询语句分类模型训练方法,其特征在于,对所有训练用样本查询语句中的关键字进行特征选择,确定第一预设数量的选定关键字,包括:
计算各个所述关键字的度量值;
按照所述度量值的大小对各个所述关键字进行排序,以及根据所述排序选择第一预设数量的所述关键字作为所述选定关键字;
所述度量值为卡方值、信息增益、信息增益率或者基尼系数中的一种。
5.根据权利要求4所述结构化查询语句分类模型训练方法,其特征在于,还包括:
对所述训练用样本查询语句进行语法分析,确定所有关键字。
6.根据权利要求5所述结构化查询语句分类模型训练方法,其特征在于,
在对所有所述关键字进行特征选择,确定第一预设数量的选定关键字前,还包括:删除出现次数小于第二预设数量的关键字。
7.一种结构化查询语句分类方法,其特征在于,采用如权利要求1-6任一项训练的所述结构化查询语句分类模型进行分类,包括:
根据待识别查询语句中包含的所述选定关键字,按照所述设定的选定关键字排序构建表征所述待识别查询语句特征的识别向量;
将所述识别向量输入所述结构化查询语句分类模型,得到分类结果。
8.根据权利要求7所述结构化查询语句分类方法,其特征在于,按照所述设定的选定关键字排序构建表征待识别查询语句特征的识别向量,包括:
根据所述待识别查询语句和一选定的查询语句集,计算所述选定关键字对应的度量值;
按照设定的选定关键字排序,根据所述选定关键字对应的度量值构建表征所述待识别查询语句特征的识别向量。
9.一种结构化查询语句分类模型训练装置,其特征在于,包括:
关键字选定单元,用于对所有训练用样本查询语句中的关键字进行特征选择,确定第一预设数量的选定关键字;
第一向量构建单元,用于根据所述训练用样本查询语句中包含的所述选定关键字,按照设定的选定关键字排序,构建表征所述训练用样本查询语句特征的特征向量;
训练单元,用于采用各个所述训练用样本查询语句对应的特征向量和分类标签,训练所述结构化查询语句分类模型。
10.根据权利要求9所述结构化查询语句分类模型训练装置,其特征在于,所述第一向量构建单元包括:
特征值计算子单元,用于根据所述训练用样本查询语句中包含的所述选定关键字,计算对应的特征值;
特征向量构建子单元,用于按照所述设定的选定关键字排序,根据所述样本查询语句中包含的所述关键字对应的特征值,构建所述特征向量。
11.根据权利要求10所述结构化查询语句分类模型训练装置,其特征在于,所述特征值计算子单元计算对应的所述特征值,包括:
计算所述选定关键字在所述训练用样本查询语句中的词频-逆文档频率值,将所述词频-逆文档频率值作为所述特征值。
12.根据权利要求9-11任一项所述结构化查询语句分类模型训练装置,其特征在于,所述关键字选定单元包括:
度量值计算子单元,用于计算各个所述关键字的度量值;
关键字选定子单元,用于按照所述度量值的大小对各个所述关键字进行排序,以及根据所述排序选择第一预设数量的所述关键字作为所述选定关键字;
所述度量值值为卡方值、信息增益、信息增益率或者基尼系数中的一种。
13.根据权利要求12所述结构化查询语句分类模型训练装置,其特征在于,还包括:
语法分析单元,用于对所述训练用样本查询语句进行语法分析,确定关键字。
14.一种结构化查询语句分类装置,其特征在于,采用如权利要求1-6任一项训练的所述结构化查询语句分类模型进行分类,包括:
第二向量构建单元,用于根据待识别查询语句中包含的所述选定关键字,按照所述设定的选定关键字排序构建表征所述待识别查询语句特征的识别向量;
模型使用单元,用于将所述识别向量输入所述结构化查询语句分类模型,得到分类结果。
15.一种电子设备,其特征在于,包括处理器和存储器;
所述处理器通过调用所述存储器存储的程序或指令,用于执行如权利要求1至8任一项所述方法的步骤。
16.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储程序或指令,所述程序或指令使计算机执行如权利要求1至8任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110169620.8A CN112860726A (zh) | 2021-02-07 | 2021-02-07 | 结构化查询语句分类模型训练方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110169620.8A CN112860726A (zh) | 2021-02-07 | 2021-02-07 | 结构化查询语句分类模型训练方法和装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112860726A true CN112860726A (zh) | 2021-05-28 |
Family
ID=75989092
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110169620.8A Pending CN112860726A (zh) | 2021-02-07 | 2021-02-07 | 结构化查询语句分类模型训练方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112860726A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113505224A (zh) * | 2021-07-08 | 2021-10-15 | 万翼科技有限公司 | 结构化信息提取及模型构建方法、设备及存储介质 |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103345518A (zh) * | 2013-07-11 | 2013-10-09 | 清华大学 | 基于数据块的自适应数据存储管理方法及系统 |
CN103823847A (zh) * | 2014-01-28 | 2014-05-28 | 亿赞普(北京)科技有限公司 | 一种关键词的扩充方法及装置 |
CN107590195A (zh) * | 2017-08-14 | 2018-01-16 | 百度在线网络技术(北京)有限公司 | 文本分类模型训练方法、文本分类方法及其装置 |
CN109062972A (zh) * | 2018-06-29 | 2018-12-21 | 平安科技(深圳)有限公司 | 网页分类方法、装置及计算机可读存储介质 |
JP2019003472A (ja) * | 2017-06-16 | 2019-01-10 | 株式会社プリマジェスト | 情報処理装置及び情報処理方法 |
CN109389138A (zh) * | 2017-08-09 | 2019-02-26 | 武汉安天信息技术有限责任公司 | 一种用户画像方法及装置 |
CN110443420A (zh) * | 2019-08-05 | 2019-11-12 | 山东农业大学 | 一种基于机器学习的作物产量预测方法 |
US10592504B2 (en) * | 2016-02-08 | 2020-03-17 | Capricorn Holdings Pte, Ltd. | System and method for querying questions and answers |
CN111026671A (zh) * | 2019-12-16 | 2020-04-17 | 腾讯科技(深圳)有限公司 | 测试用例集构建方法和基于测试用例集的测试方法 |
CN111818018A (zh) * | 2020-06-18 | 2020-10-23 | 北京邮电大学 | 一种基于机器学习模型的sql注入攻击检测方法 |
-
2021
- 2021-02-07 CN CN202110169620.8A patent/CN112860726A/zh active Pending
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103345518A (zh) * | 2013-07-11 | 2013-10-09 | 清华大学 | 基于数据块的自适应数据存储管理方法及系统 |
CN103823847A (zh) * | 2014-01-28 | 2014-05-28 | 亿赞普(北京)科技有限公司 | 一种关键词的扩充方法及装置 |
US10592504B2 (en) * | 2016-02-08 | 2020-03-17 | Capricorn Holdings Pte, Ltd. | System and method for querying questions and answers |
JP2019003472A (ja) * | 2017-06-16 | 2019-01-10 | 株式会社プリマジェスト | 情報処理装置及び情報処理方法 |
CN109389138A (zh) * | 2017-08-09 | 2019-02-26 | 武汉安天信息技术有限责任公司 | 一种用户画像方法及装置 |
CN107590195A (zh) * | 2017-08-14 | 2018-01-16 | 百度在线网络技术(北京)有限公司 | 文本分类模型训练方法、文本分类方法及其装置 |
CN109062972A (zh) * | 2018-06-29 | 2018-12-21 | 平安科技(深圳)有限公司 | 网页分类方法、装置及计算机可读存储介质 |
CN110443420A (zh) * | 2019-08-05 | 2019-11-12 | 山东农业大学 | 一种基于机器学习的作物产量预测方法 |
CN111026671A (zh) * | 2019-12-16 | 2020-04-17 | 腾讯科技(深圳)有限公司 | 测试用例集构建方法和基于测试用例集的测试方法 |
CN111818018A (zh) * | 2020-06-18 | 2020-10-23 | 北京邮电大学 | 一种基于机器学习模型的sql注入攻击检测方法 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113505224A (zh) * | 2021-07-08 | 2021-10-15 | 万翼科技有限公司 | 结构化信息提取及模型构建方法、设备及存储介质 |
CN113505224B (zh) * | 2021-07-08 | 2023-01-10 | 万翼科技有限公司 | 结构化信息提取及模型构建方法、设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108363790B (zh) | 用于对评论进行评估的方法、装置、设备和存储介质 | |
JP6643554B2 (ja) | エンティティ推薦方法及び装置 | |
KR20200098378A (ko) | 설명 정보 확정 방법, 장치, 전자 기기 및 컴퓨터 저장 매체 | |
CN110825957A (zh) | 基于深度学习的信息推荐方法、装置、设备及存储介质 | |
CN109325121B (zh) | 用于确定文本的关键词的方法和装置 | |
CN114329201B (zh) | 深度学习模型的训练方法、内容推荐方法和装置 | |
CN110737839A (zh) | 短文本的推荐方法、装置、介质及电子设备 | |
CN111723192B (zh) | 代码推荐方法和装置 | |
CN114996464B (zh) | 一种利用有序信息的文本分级方法及装置 | |
CN116797195A (zh) | 工单处理方法、装置、计算机设备和计算机可读存储介质 | |
CN115062151A (zh) | 一种文本特征提取方法、文本分类方法及可读存储介质 | |
CN118132732A (zh) | 增强式检索用户问答方法、装置、计算机设备及存储介质 | |
CN114281983B (zh) | 分层结构的文本分类方法、系统、电子设备和存储介质 | |
CN110427519A (zh) | 视频的处理方法及装置 | |
CN114722198A (zh) | 产品分类编码确定方法、系统及相关装置 | |
CN112307210B (zh) | 一种文档标签预测方法、系统、介质及电子器件 | |
CN112860726A (zh) | 结构化查询语句分类模型训练方法和装置 | |
CN113656575A (zh) | 训练数据的生成方法、装置、电子设备及可读介质 | |
CN113407584A (zh) | 标签抽取方法、装置、设备及存储介质 | |
CN110837559B (zh) | 语句样本集的生成方法、电子装置及存储介质 | |
WO2023246849A1 (zh) | 回馈数据图谱生成方法及冰箱 | |
CN111126073B (zh) | 语义检索方法和装置 | |
CN110413757B (zh) | 一种词语释义确定方法、装置及系统 | |
CN114742062B (zh) | 文本关键词提取处理方法及系统 | |
CN113343715B (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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20210528 |