CN115392477A - 基于深度学习的Skyline查询基数估计方法及装置 - Google Patents

基于深度学习的Skyline查询基数估计方法及装置 Download PDF

Info

Publication number
CN115392477A
CN115392477A CN202210884022.3A CN202210884022A CN115392477A CN 115392477 A CN115392477 A CN 115392477A CN 202210884022 A CN202210884022 A CN 202210884022A CN 115392477 A CN115392477 A CN 115392477A
Authority
CN
China
Prior art keywords
query
model
training
skyline
estimation
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
Application number
CN202210884022.3A
Other languages
English (en)
Inventor
苗晓晔
彭佳真
吴洋洋
尹建伟
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Zhejiang University ZJU
Original Assignee
Zhejiang University ZJU
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Zhejiang University ZJU filed Critical Zhejiang University ZJU
Priority to CN202210884022.3A priority Critical patent/CN115392477A/zh
Publication of CN115392477A publication Critical patent/CN115392477A/zh
Priority to PCT/CN2023/080962 priority patent/WO2024021624A1/zh
Priority to US18/382,044 priority patent/US20240045871A1/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2455Query execution
    • G06F16/24553Query execution of query operations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2453Query optimisation
    • G06F16/24534Query rewriting; Transformation
    • G06F16/24542Plan optimisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2457Query processing with adaptation to user needs

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • Databases & Information Systems (AREA)
  • Operations Research (AREA)
  • Software Systems (AREA)
  • Artificial Intelligence (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Evolutionary Computation (AREA)
  • Medical Informatics (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明公开了一种基于深度学习的Skyline查询基数估计方法及装置,该方法包括:解析数据库历史查询日志信息,获取给定目标数据集上的Skyline查询及其对应的基数构建训练集;根据目标数据集和训练集的分布信息,分别构建并训练其数据分布学习模型;将训练好的数据分布学习模型的模型参数作为基数估计模型的初始化参数,根据训练集训练基数估计模型;根据训练好的基数估计模型,输入查询点,得到最终的基数估计值。本发明为Skyline查询变体的基数估计提供解决方案,并确保了Skyline查询变体的基数估计中存在的单调性质,提出了一种高效准确的基数估计方法,拥有准确率高、效率高、鲁棒性强、扩展性强等优点。在现代数据库管理系统以及查询优化等领域有广阔的应用场景。

Description

基于深度学习的Skyline查询基数估计方法及装置
技术领域
本申请涉及信息检索技术领域,尤其涉及一种基于深度学习的Skyline查询基数估计方法及装置。
背景技术
Skyline查询是一个典型的多目标优化问题,能够根据查询者偏好,返回最优的一组数据,是数据库经典的查询之一。Skyline查询在多目标决策问题中有着广泛的应用,如客户信息服务、推荐系统、决策支持和决策系统等,具有极高的现实意义与研究价值。近年来多种Skyline查询变体被相继提出,如动态Skyline查询,反Skyline查询,k-DominantSkyline查询,k-Skyband查询,ε-Skyline查询等,极大地丰富了传统Skyline查询的内涵,并拓展了Skyline查询的应用场景。
当这些Skyline操作集成到数据库管理系统时,就涉及Skyline查询基数估计问题,此问题非常重要,因为查询优化器是数据库管理系统不可或缺的组件,而准确高效的基数估计对于查询优化非常关键。查询优化需要估计中间结果的规模(即基数估计),以便提出最佳的执行计划。当执行计划基于错误的基数估计时,会比最佳计划慢若干个数量级。而当基数估计本身的操作不够高效时,查询优化就失去了它的意义。
目前针对Skyline查询基数估计问题,已有一些基于统计的方法,如基于采样的,基于核密度估计的,基于直方图的方法等。但这些工作还存在局限性:(1)这些Skyline查询基数估计方法给出的仍是次优解;(2)这些传统的方法对于每个查询对象都需要执行整个估计过程,当查询量大时,是非常耗时的;(3)这些方法对于Skyline查询变体不是都能很好地支持,特别是反Skyline查询,目前缺乏一种解决这些Skyline查询变体的基数估计问题通用方案。
发明内容
本申请实施例的目的是提供一种基于深度学习的Skyline查询基数估计方法及装置,以解决传统基数估计方法难以对Skyline查询基数进行快速准确估计的问题。
根据本申请实施例的第一方面,提供一种基于深度学习的Skyline查询基数估计方法,包括:
解析数据库的历史查询日志信息,从中筛选得到目标数据集上的Skyline查询及其对应的基数;
根据Skyline查询及其对应的基数构建训练集;
根据所述目标数据集和所述训练集的分布信息,分别构建并训练各自的数据分布学习模型;
构建基数估计模型,将训练好的数据分布学习模型的模型参数作为基数估计模型的初始化参数,通过所述训练集训练所述基数估计模型;
根据训练好的基数估计模型,输入查询点得到最终的基数估计值。
进一步地,所述Skyline查询为动态Skyline查询、反Skyline查询、动态k-Dominant Skyline查询、动态k-Skyband查询或动态ε-Skyline查询。
进一步地,解析数据库的历史查询日志信息,从中筛选得到目标数据集上的Skyline查询及其对应的基数,包括:
从历史查询日志信息的查询语句中解析并筛选出目标数据集上的Skyline查询及其对应的基数,其中Skyline查询包括查询点及其查询参数;
从Skyline查询的查询结果解析查询结果集的规模,即查询基数。
进一步地,所述数据分布学习模型的构建训练过程,包括:
构建深度自注意力变换网络;
对所述目标数据集或训练集进行采样、编码后,随机遮掩一定比例的值,得到遮掩后的数据;
将所述遮掩后的数据输入到深度自注意力变换网络中进行训练,得到数据分布学习模型,其中模型训练的任务为预测这些遮掩值,模型优化目标是最大化遮掩值的条件似然概率。
进一步地,所述基数估计模型的构建训练过程,包括:
1)构建基于查询点的基数估计子模型MQ,所述基数估计子模型MQ由Transformer、池化层和线性连接层组成的第一深层神经网络,初始参数为训练好的目标数据集上数据分布学习模型的参数;
2)构建基于查询参数的基数估计子模型MP,所述基数估计子模型MP由Transformer,池化层,线性连接层组成的第二深层神经网络,初始参数为训练好的训练集上数据分布学习模型的参数;
3)将所述查询点编码后输入到第一深层神经网络进行训练,得到基数估计子模型MQ,将所述查询点和查询参数拼接、编码后输入到第二深层神经网络进行训练,得到基于查询参数的基数估计子模型MP,其中基于查询参数的基数估计子模型MP在训练过程中始终保持模型参数为正,模型优化目标为最小化所述两个基数估计子模型的输出加权平均后与真实基数值的误差。
进一步地,根据训练好的基数估计模型,输入查询点得到最终的基数估计值,包括:
从查询语句解析出查询点和查询参数,编码后输入到训练好的基数估计模型,对模型输出进一步通过反归一化得到最终的基数估计值。
根据本发明实施例的第二方面,提供一种基于深度学习的Skyline查询基数估计装置,包括:
解析筛选模块,用于解析数据库的历史查询日志信息,从中筛选得到目标数据集上的Skyline查询及其对应的基数;
第一构建模块,用于根据Skyline查询及其对应的基数构建训练集;
第一构建训练模块,用于根据所述目标数据集和所述训练集的分布信息,分别构建并训练各自的数据分布学习模型;
第二构建训练模块,用于构建基数估计模型,将训练好的数据分布学习模型的模型参数作为基数估计模型的初始化参数,通过所述训练集训练所述基数估计模型;
查询估计模块,用于根据训练好的基数估计模型,输入查询点得到最终的基数估计值。
根据本发明实施例的第二方面,提供一种电子设备,包括:
一个或多个处理器;
存储器,用于存储一个或多个程序;
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如第一方面所述的方法。
根据本发明实施例的第四方面,提供一种计算机可读存储介质,其上存储有计算机指令,其特征在于,该指令被处理器执行时实现如第一方面所述方法的步骤。
本申请的实施例提供的技术方案可以包括以下有益效果:
由上述实施例可知,本申请采用基于深度学习的方式进行Skyline查询的基数估计,所以克服了传统方法中基于经验导致的估计准确率低以及估计慢的问题,进而达到效率、准确率、鲁棒性、扩展性上都得到全方面提升的效果;通过数据分布学习模型学习目标数据集和训练集的数据分布的方法,所以克服了数据分布的Skyline查询结果的影响,进而增强了模型的准确率,使得方法可以支持各种各样的数据分布。
本申请设计的模型适用于几乎所有的Skyline查询变体,为这些Skyline查询变体的基数估计问题提供了解决方案。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本申请。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理。
图1是本发明实施例的一种基于深度学习的Skyline查询基数估计方法流程图。
图2是本发明实施例的数据分布学习模型框图。
图3是本发明实施例的基数估计模型框图。
图4是本发明实施例的一种基于深度学习的Skyline查询基数估计装置的框图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
在本申请使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请。在本申请和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本申请可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本申请范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
实施例一
图1是本发明实施例的一种基于深度学习的Skyline查询基数估计方法流程图,图2是本发明实施例的数据分布学习模型框图,图3是本发明实施例的基数估计模型框图,该方法包括如下步骤:
步骤S100:解析数据库的历史查询日志信息,从中筛选得到目标数据集上的Skyline查询及其对应的基数,具体包括以下步骤:
步骤S101:从历史查询日志信息的查询语句中解析并筛选出目标数据集上的Skyline查询及其对应的基数,其中Skyline查询包括查询点及其查询参数;
具体地,确定目标数据集D和一种要操作的Skyline查询,如本说明中以动态k-DominantSkyline查询为例。其中目标数据集D的维度是d;解析数据库历史查询日志信息,从查询语句中提取出执行动态k-DominantSkyline查询操作的目标数据集D,动态k-DominantSkyline查询的查询点Q及其查询参数P。
步骤S102:从Skyline查询的查询结果解析查询结果集的规模,即查询基数;
具体地,从动态k-DominantSkyline查询的查询结果解析出查询结果集的规模,即查询基数C。
步骤S200:根据Skyline查询及其对应的基数构建训练集,具体包括以下步骤:
步骤S201:将步骤S102提取出的动态k-DominantSkyline查询中的查询点Q,查询参数P,查询基数C,形成若干个<Q,P,C>三元组。如果没有对应的查询参数,如动态Skyline查询,反Skyline查询,则将P记为0。
步骤S202:如果从数据库历史查询日志中提取的<Q,P,C>三元组不够多,则需要生成额外的三元组。即在目标数据集D的范围内均匀生成若干个查询点Q,再按均匀分布随机分配查询参数P,根据生成的Q和P执行动态k-DominantSkyline查询,得到结果,获取其结果集规模C,则生成一批新的三元组。所有生成的三元组作为训练集。
步骤S300:根据所述目标数据集和训练集的分布信息,分别构建并训练各自的数据分布学习模型。
步骤S301:模型输入步骤的处理过程描述如下:
步骤S30101:将目标数据集按照一定比例进行简单随机采样,这里建议的采样率是6%,可以平衡效率和准确率。假设采样后的数据有s条。本申请使用采样的技术,所以克服了数据集规模太大使得模型训练效率过低的问题,进而使得所述方法支持更加大规模的数据集。
步骤S30102:假设数据库D的d个维度包含了c个离散型变量和u个连续型变量。则需要先将u个连续型变量利用等距离离散化方法转换为离散型变量。如数据库中的第i个变量Xi是连续型变量。则将Xi划分成β个等宽的桶。假设Xi的范围是
Figure BDA0003765275290000071
则间隔宽度定义为:
Figure BDA0003765275290000072
则xi离散化后的结果
Figure BDA0003765275290000073
可以通过离散化函数
Figure BDA0003765275290000074
得到。即
Figure BDA0003765275290000075
其中floor(·)是向下取整函数。将所有的连续型数据通过上述方式转化为离散型数据后,将所有的离散型数据利用独热编码的方式进行编码。假设第i个维度的数据的离散化后的不同值的个数为ni,则每个维度的编码的长度是ni,每条数据编码后的总长度为
Figure BDA0003765275290000076
记为n。即原始的矩阵大小为s×d,编码后的矩阵大小为
Figure BDA0003765275290000077
即s×n,将此编码后的矩阵记为x。本申请采用等距离离散化方法,将连续型数据转化成离散型数据,所以克服了模型输入无法支持连续型数据的技术问题,进而达到了所述方法可以支持更多的数据类型的效果。
步骤S30103:生成一个规模为s×d的掩码矩阵M,矩阵的取值为0或1。其中Mij=1表示第i条数据的第j个维度被遮掩,需要被预测;否则不需要遮掩和预测。这里推荐遮掩率为15%。再将规模为s×d的掩码矩阵M转换为规模为s×n的掩码矩阵M′,其中若Mij=1,则
Figure BDA0003765275290000081
其余为0。根据掩码矩阵M′对x中需要遮掩的编码用0进行遮掩,记为x′,其中被遮掩的值将作为标签指导模型的训练。
步骤S302:构建并训练数据分布学习模型,模型结构如图2所示。具体过程描述如下:
步骤S30201:按照如图2所示的模型结构,搭建模型,即l个Transformer模块后加一个层归一化模块和一层线性层。
步骤S30202:将步骤S30103得到的矩阵x′输入到模型中,模型输出为规模s×n的矩阵,为预测目标数据集的采样中每个值取值的概率,记为p。则损失函数Losspre使用带掩码的交叉熵损失函数,则第i个样本的损失函数为:
Figure BDA0003765275290000082
则所有样本的损失函数为:
Figure BDA0003765275290000083
步骤S30203:数据分布学习模型通过最小化其损失函数Losspre进行批量训练,直到模型训练达到最大模型迭代次数时停止训练,得到最优模型参数的MD
步骤S303:按照步骤S301和步骤S302再构建并训练一个训练集上的数据分布学习模型MQ-P,把步骤中的模型的输入目标数据集改为训练集的<Q,P>,且在训练集上不需要采样,即可得到最优模型参数的MQ-P
步骤S400:构建并训练基数估计模型,具体包括以下步骤:
步骤S401:构建基于查询点的基数估计子模型MQ。具体包括以下步骤:
步骤S40101:按照步骤S30102的方式对训练集的Q进行独热编码,作为模型的输入。假设训练集Q的规模为nq×d,而编码后的训练集的规模为
Figure BDA0003765275290000084
即nq×n。
步骤S40102:按照图3的模型结构构建基于查询点的基数估计子模型MQ,即一个Transformer模块加上一层平均池化层,加上一层线性层。将Transformer模块的参数初始化为目标数据集上的数据分布学习模型基数MD的Transformer模块的参数。
步骤S40103:基于查询点的基数估计子模型MQ的输出为
Figure BDA0003765275290000091
规模为nq×1。
步骤S402:构建基于查询参数的基数估计子模型MP。具体包括以下步骤:
步骤S40201:按照步骤S30102的方式对训练集的<Q,P>进行独热编码,作为模型的输入。假设训练集<Q,P>的规模为nq×(d+1),查询参数P的不同个数为np,则编码后的规模为
Figure BDA0003765275290000092
即nq×(n+np)。
步骤S40202:按照图3的模型结构构建基于查询参数的基数估计子模型MP,即一个Transformer模块加上一层平均池化层,加上一层线性层。将Transformer模块的参数初始化为训练集上的数据分布学习模型基数MQ-P的Transformer模块的参数。
步骤S40203:基于查询参数的基数估计子模型MP的输出为
Figure BDA0003765275290000093
规模为nq×1。
步骤S40204:注意在步骤S405进行模型训练时,对基于查询参数的基数估计子模型MP的参数进行clamping操作,如图3所示,即保持其参数为正数,以确保
Figure BDA0003765275290000094
随查询参数P的增加而增加。本申请保证基于查询参数的基数估计子模型MP的模型参数均为正数,所以保证了查询基数随查询参数变化而变化的单调性质,进而提升了所述方法的准确率和可解释性。
步骤S403:将两个基数估计子模型的输出通过加权平均得到最终的基数估计值,即将步骤S40103和步骤S40203得到的模型输出
Figure BDA0003765275290000095
Figure BDA0003765275290000096
通过加权平均得到,规模为nq×1。即
Figure BDA0003765275290000097
式子(3)中的α推荐值为0.8。当查询操作是动态k-DominantSkyline查询或动态k-Skyband查询时,基数C随着查询参数P的增加而增加,此时式子(3)中的符号为“+”;当查询操作是动态ε-Skyline查询时,基数C随着查询参数P的增加而减少,此时式子(3)中的符号为“-”。
步骤S404:将基数估计模型得到的结果
Figure BDA0003765275290000103
与训练集中的基数真实值C归一化后作为均方误差损失函数的输入,指导模型参数的优化。即,将基数真实值C通过MaxMinScaler(·)函数归一化到[0,1],记为y,则损失函数Loss为:
Figure BDA0003765275290000101
其中MaxMinScaler(·)函数是将一个向量X归一化到Xstd,其范围为[0,1],具体公式为:
Figure BDA0003765275290000102
其中Xmin和Xmax分别是向量X的最小值和最大值。本申请采用预测基数真实值归一化后的值,而不是直接预测基数的真实值是因为基数变化范围大,特别是Skyline查询变体的基数,所以将基数归一化后,统一数量级可以使模型收敛更快,更加准确。
步骤S405:基数估计模型通过最小化其损失Loss进行批量训练,直到模型训练达到最大模型迭代次数或验证集上的损失在连续3次迭代不再下降时停止训练,得到最优模型参数。
步骤S500:通过训练好的基数估计模型,输入查询点得到最终的基数估计值,具体包括以下步骤:
步骤S501:解析输入的动态k-Dominant Skyline查询语句,提取查询点Q和查询参数P。
步骤S502:按照步骤S30102的方式分别对测试集中的Q和<Q,P>进行独热编码,作为两个查询估计子模型的输入。
步骤S503:将步骤S502的结果输入到步骤S405中训练好的查询估计模型,得到
Figure BDA0003765275290000111
步骤S504:将步骤S503得到的
Figure BDA0003765275290000112
通过InverseTrans(·)函数进行反归一化得到最终估计的基数C′。其中InverseTrans(·)函数是将一个向量X通过MaxMinScaler(·)函数归一化到Xstd后,再反归一化到X的操作。具体公式为:
X=InverseTrans(Xstd)=Xstd×(Xmax-Xmin)+Xmin (6)
其中式子(6)的Xmin和Xmax与式子(5)中的Xmin和Xmax含义和数值一样。
步骤S505:步骤S504得到的基数估计值C′即为该查询的基数估计值。
本发明还提供一种基于深度学习的Skyline查询基数估计装置的实施例,由于本发明提供的Skyline查询基数估计装置与Skyline查询基数估计方法的实施例相对应,该Skyline查询基数估计装置可以通过执行上述方法具体实施方式中的流程步骤来实现本发明的目的,因此上述基于深度学习的Skyline查询基数估计方法的实施例中的解释说明,也适用于本发明提供的基于深度学习的Skyline查询基数估计装置的实施例,在本发明以下的实施例中将不再赘述。
如图4所示,本发明实施例还提供一种基于深度学习的Skyline查询基数估计装置,包括:
解析筛选模块101,用于解析数据库的历史查询日志信息,从中筛选得到目标数据集上的Skyline查询及其对应的基数;
第一构建模块102,用于根据Skyline查询及其对应的基数构建训练集;
第一构建训练模块103,用于根据所述目标数据集和所述训练集的分布信息,分别构建并训练各自的数据分布学习模型;
第二构建训练模块104,用于构建基数估计模型,将训练好的数据分布学习模型的模型参数作为基数估计模型的初始化参数,通过所述训练集训练所述基数估计模型;
查询估计模块105,用于根据训练好的基数估计模型,输入查询点得到最终的基数估计值。
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本申请方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
相应的,本申请还提供一种电子设备,包括:一个或多个处理器;存储器,用于存储一个或多个程序;当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如上述的基于深度学习的Skyline查询基数估计方法。
相应的,本申请还提供一种计算机可读存储介质,其上存储有计算机指令,该指令被处理器执行时实现如上述的基于深度学习的Skyline查询基数估计方法。
本领域技术人员在考虑说明书及实践这里公开的内容后,将容易想到本申请的其它实施方案。本申请旨在涵盖本申请的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本申请的一般性原理并包括本申请未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本申请的真正范围和精神由权利要求指出。
应当理解的是,本申请并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本申请的范围仅由所附的权利要求来限制。

Claims (10)

1.一种基于深度学习的Skyline查询基数估计方法,其特征在于,包括:
解析数据库的历史查询日志信息,从中筛选得到目标数据集上的Skyline查询及其对应的基数;
根据Skyline查询及其对应的基数构建训练集;
根据所述目标数据集和所述训练集的分布信息,分别构建并训练各自的数据分布学习模型;
构建基数估计模型,将训练好的数据分布学习模型的模型参数作为基数估计模型的初始化参数,通过所述训练集训练所述基数估计模型;
根据训练好的基数估计模型,输入查询点得到最终的基数估计值。
2.根据权利要求1所述的方法,其特征在于,所述Skyline查询为动态Skyline查询、反Skyline查询、动态k-Dominant Skyline查询、动态k-Skyband查询或动态ε-Skyline查询。
3.根据权利要求1所述的方法,其特征在于,解析数据库的历史查询日志信息,从中筛选得到目标数据集上的Skyline查询及其对应的基数,包括:
从历史查询日志信息的查询语句中解析并筛选出目标数据集上的Skyline查询及其对应的基数,其中Skyline查询包括查询点及其查询参数;
从Skyline查询的查询结果解析查询结果集的规模,即查询基数。
4.根据权利要求1所述的方法,其特征在于,所述数据分布学习模型的构建训练过程,包括:
构建深度自注意力变换网络;
对所述目标数据集或训练集进行采样、编码后,随机遮掩一定比例的值,得到遮掩后的数据;
将所述遮掩后的数据输入到深度自注意力变换网络中进行训练,得到数据分布学习模型,其中模型训练的任务为预测这些遮掩值,模型优化目标是最大化遮掩值的条件似然概率。
5.根据权利要求3所述的方法,其特征在于,所述基数估计模型的构建训练过程,包括:
1)构建基于查询点的基数估计子模型MQ,所述基数估计子模型MQ由Transformer、池化层和线性连接层组成的第一深层神经网络,初始参数为训练好的目标数据集上数据分布学习模型的参数;
2)构建基于查询参数的基数估计子模型MP,所述基数估计子模型MP由Transformer,池化层,线性连接层组成的第二深层神经网络,初始参数为训练好的训练集上数据分布学习模型的参数;
3)将所述查询点编码后输入到第一深层神经网络进行训练,得到基数估计子模型MQ,将所述查询点和查询参数拼接、编码后输入到第二深层神经网络进行训练,得到基于查询参数的基数估计子模型MP,其中基于查询参数的基数估计子模型MP在训练过程中始终保持模型参数为正,模型优化目标为最小化所述两个基数估计子模型的输出加权平均后与真实基数值的误差。
6.根据权利要求3所述的方法,其特征在于,根据训练好的基数估计模型,输入查询点得到最终的基数估计值,包括:
从查询语句解析出查询点和查询参数,编码后输入到训练好的基数估计模型,对模型输出进一步通过反归一化得到最终的基数估计值。
7.一种基于深度学习的Skyline查询基数估计装置,其特征在于,包括:
解析筛选模块,用于解析数据库的历史查询日志信息,从中筛选得到目标数据集上的Skyline查询及其对应的基数;
第一构建模块,用于根据Skyline查询及其对应的基数构建训练集;
第一构建训练模块,用于根据所述目标数据集和所述训练集的分布信息,分别构建并训练各自的数据分布学习模型;
第二构建训练模块,用于构建基数估计模型,将训练好的数据分布学习模型的模型参数作为基数估计模型的初始化参数,通过所述训练集训练所述基数估计模型;
查询估计模块,用于根据训练好的基数估计模型,输入查询点得到最终的基数估计值。
8.根据权利要求7所述的装置,其特征在于,所述数据分布学习模型的构建训练过程,包括:
构建深度自注意力变换网络;
对所述目标数据集或训练集进行采样、编码后,随机遮掩一定比例的值,得到遮掩后的数据;
将所述遮掩后的数据输入到深度自注意力变换网络中进行训练,得到数据分布学习模型,其中模型训练的任务为预测这些遮掩值,模型优化目标是最大化遮掩值的条件似然概率。
9.一种电子设备,其特征在于,包括:
一个或多个处理器;
存储器,用于存储一个或多个程序;
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-6任一项所述的方法。
10.一种计算机可读存储介质,其上存储有计算机指令,其特征在于,该指令被处理器执行时实现如权利要求1-6中任一项所述方法的步骤。
CN202210884022.3A 2022-07-26 2022-07-26 基于深度学习的Skyline查询基数估计方法及装置 Pending CN115392477A (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CN202210884022.3A CN115392477A (zh) 2022-07-26 2022-07-26 基于深度学习的Skyline查询基数估计方法及装置
PCT/CN2023/080962 WO2024021624A1 (zh) 2022-07-26 2023-03-13 基于深度学习的Skyline查询基数估计方法及装置
US18/382,044 US20240045871A1 (en) 2022-07-26 2023-10-19 Cardinality estimation method and device for skyline query based on deep learning

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210884022.3A CN115392477A (zh) 2022-07-26 2022-07-26 基于深度学习的Skyline查询基数估计方法及装置

Publications (1)

Publication Number Publication Date
CN115392477A true CN115392477A (zh) 2022-11-25

Family

ID=84117227

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210884022.3A Pending CN115392477A (zh) 2022-07-26 2022-07-26 基于深度学习的Skyline查询基数估计方法及装置

Country Status (3)

Country Link
US (1) US20240045871A1 (zh)
CN (1) CN115392477A (zh)
WO (1) WO2024021624A1 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117407242A (zh) * 2023-10-10 2024-01-16 浙江大学 基于大语言模型的低成本、零样本的在线日志解析方法
WO2024021624A1 (zh) * 2022-07-26 2024-02-01 浙江大学 基于深度学习的Skyline查询基数估计方法及装置

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114398395A (zh) * 2022-01-19 2022-04-26 吉林大学 一种基于注意力机制的基数成本估算方法
CN115392477A (zh) * 2022-07-26 2022-11-25 浙江大学 基于深度学习的Skyline查询基数估计方法及装置

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024021624A1 (zh) * 2022-07-26 2024-02-01 浙江大学 基于深度学习的Skyline查询基数估计方法及装置
CN117407242A (zh) * 2023-10-10 2024-01-16 浙江大学 基于大语言模型的低成本、零样本的在线日志解析方法
CN117407242B (zh) * 2023-10-10 2024-04-05 浙江大学 基于大语言模型的低成本、零样本的在线日志解析方法

Also Published As

Publication number Publication date
US20240045871A1 (en) 2024-02-08
WO2024021624A1 (zh) 2024-02-01

Similar Documents

Publication Publication Date Title
CN110379416B (zh) 一种神经网络语言模型训练方法、装置、设备及存储介质
Remesan et al. Hydrological data driven modelling
CN115392477A (zh) 基于深度学习的Skyline查询基数估计方法及装置
Jachner et al. Statistical methods for the qualitative assessment of dynamic models with time delay (R Package qualV)
CN108921188B (zh) 一种基于Spark大数据平台的并行CRF方法
Cholewa et al. Estimation of the number of states for gesture recognition with Hidden Markov Models based on the number of critical points in time sequence
CN110728313A (zh) 一种用于意图分类识别的分类模型训练方法及装置
Abate et al. Adaptive aggregation of Markov chains: Quantitative analysis of chemical reaction networks
CN108021544B (zh) 对实体词的语义关系进行分类的方法、装置和电子设备
CN109597881B (zh) 匹配度确定方法、装置、设备和介质
CN113220900B (zh) 实体消歧模型的建模方法和实体消歧预测方法
CN114781688A (zh) 业扩项目的异常数据的识别方法、装置、设备及存储介质
CN110751400B (zh) 一种风险评估方法及装置
CN112561179A (zh) 一种股票走势预测方法、装置、计算机设备及存储介质
CN116861373A (zh) 一种查询选择率估算方法、系统、终端设备及存储介质
CN111797979A (zh) 基于lstm模型的振动传递系统
CN113010687B (zh) 一种习题标签预测方法、装置、存储介质以及计算机设备
CN112598082B (zh) 基于非校验集预测图像识别模型泛化误差的方法及系统
CN115408859A (zh) 基于全局敏感性分析的参数分析方法、装置、介质及设备
JP2022176899A (ja) 機械学習モデルを訓練するためのデータ要約
CN114678083A (zh) 一种化学品遗传毒性预测模型的训练方法及预测方法
CN111859947B (zh) 一种文本处理装置、方法、电子设备及存储介质
CN110633363B (zh) 一种基于nlp和模糊多准则决策的文本实体推荐方法
Sato et al. A non-parametric Bayesian approach for predicting RNA secondary structures
BILLIO et al. The simulated likelihood ratio method

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