CN111309982A - 机器学习数据索引结构的自适应结构调整方法及系统 - Google Patents
机器学习数据索引结构的自适应结构调整方法及系统 Download PDFInfo
- Publication number
- CN111309982A CN111309982A CN202010148015.8A CN202010148015A CN111309982A CN 111309982 A CN111309982 A CN 111309982A CN 202010148015 A CN202010148015 A CN 202010148015A CN 111309982 A CN111309982 A CN 111309982A
- Authority
- CN
- China
- Prior art keywords
- node
- data
- nodes
- cache
- machine learning
- 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/90—Details of database functions independent of the retrieved data types
- G06F16/901—Indexing; Data structures therefor; Storage structures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/903—Querying
- G06F16/90335—Query processing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/907—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/957—Browsing optimisation, e.g. caching or content distillation
- G06F16/9574—Browsing optimisation, e.g. caching or content distillation of access to content, e.g. by caching
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/214—Generating training patterns; Bootstrap methods, e.g. bagging or boosting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Computation (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Computational Linguistics (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Evolutionary Biology (AREA)
- Life Sciences & Earth Sciences (AREA)
- Library & Information Science (AREA)
- Medical Informatics (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Memory System Of A Hierarchy Structure (AREA)
Abstract
本发明提供了一种机器学习数据索引结构的自适应结构调整方法及系统,包括:选取节点步骤:按照预设的节点编号顺序逐个选取机器学习数据索引结构中的节点;分析节点步骤:分析选取得的节点,根据节点中缓存数据量和误差范围大小执行对应的结构调整操作:若节点中缓存数据量或节点内机器学习模型的预测误差过大,则执行节点分裂步骤;若节点与其相邻节点中的缓存数据量及误差范围都过小,则两节点执行节点合并步骤;否则,则结束流程。本发明提供细粒度的机器学习索引结构调整方法,相比对全部数据重新训练,能减少重新训练模型的个数,避免结构调整时对不相关模型和缓存的性能影响。
Description
技术领域
本发明涉及数据存储系统数据索引领域,具体地,涉及机器学习数据索引结构的自适应结构调整方法及系统。
背景技术
在如今的大数据时代,数据规模愈发庞大,数据库被越来越多地运用,并且也在这个过程中不断遇到新的挑战,主要包括对低延时,高吞吐索引的更高要求等。索引是从数据库原始数据派生出来的附加结构,包括许多关键词,每个关键词指向一项数据,索引可以快速地查询某个关键词对应的数据,在数据库中可以利用索引加速数据查询。
机器学习研究如何通过算法与统计学模型使计算机系统基于对模式的观察与推断可以不需要人为提供指示而可以有效地进行某项具体任务。按照学习形式的不同,机器学习可以分为监督学习、无监督学习、半监督学习、增强学习等等。其具体算法又包括线性回归、支持向量机、决策树、深度神经网络等等。近年来,机器学习因其强大的学习、推理、规划等能力,被广泛应用于包括数据库在内的各个领域。
机器学习为数据库提供了新的发展机遇,甚至替代数据库中的部分组件。机器学习和索引的结合应运而生。2018年,谷歌提出机器学习索引结构,将索引视为从键到数据位置的函数映射,使用包括神经网络在内的多种机器学习模型拟合这一函数关系,构建了高效的索引结构。
现有的机器学习索引结构是一种分层结构,每层包含若干个节点,节点中包括数据和一个对应的模型。结构中的每一个节点保存一部分数据,并根据保存的数据训练节点的对应的模型。每一个节点的机器学习模型选择下一层要使用的节点的模型,而最后一层节点的模型对关键词对应的数据位置进行预测,得到一个误差范围。之后便可以在误差范围内进行二分搜索,从而得到最终的数据。
然而,该索引结构的设计与实现较为初步,假设工作场景是只读的且访问是均匀分布的,而在真实场景下,伴随着写操作的执行,索引数据是频繁变化的,从而带来数据分布的动态变化。同时,真实场景下工作负载是具有访问模式的,从而带来数据访问偏向性。这些广泛存在于真实场景里的动态场景为机器学习索引结构的应用带来了许多挑战,其中最主要的就是随着数据分布的动态变化,机器学习索引无法自适应地调整结构。
机器学习索引结构非常依赖机器学习模型预测的精确性,若模型预测误差范围过大,则机器学习索引结构将在二分搜索上花费大量时间,导致难以发挥其高性能的优势。因此,机器学习模型预测的精确性是机器学习索引结构的性能的关键因素。机器学习索引结构对于数据分布非常敏感,随着数据分布的动态变化,机器学习模型也必须重新训练,适应新的数据分布。
然而,在机器学习索引无法自适应地调整结构的情况下,训练数据索引结构中全部的机器学习模型会耗费大量时间,并且阻塞索引操作引起性能大幅下降,这对于支持读写操作的机器学习索引结构而言是极大的缺陷;同时,变化后的的数据分布可能难以重新训练得到预测精确的机器学习模型,这也会导致机器学习索引性能由于数据分布的动态变化而大幅下降。
目前,还没有一种机器学习索引结构的工作,能够根据数据分布进行索引结构的动态调整。因此,先前的工作对于机器学习索引结构的研究并不全面,还有一定的空白。
发明内容
针对现有技术中的缺陷,本发明的目的是提供一种机器学习数据索引结构的自适应结构调整方法。
根据本发明提供的一种机器学习数据索引结构的自适应结构调整方法,包括:
选取节点步骤:按照预设的节点编号顺序逐个选取机器学习数据索引结构中的节点;
分析节点步骤:分析选取得的节点,根据节点中缓存数据量和误差范围大小执行对应的结构调整操作:若节点中缓存数据量或节点内机器学习模型的预测误差过大,则执行节点分裂步骤;若节点与其相邻节点中的缓存数据量及误差范围都过小,则两节点执行节点合并步骤;否则,则结束流程。
节点分裂步骤:将原节点数据范围分为两部分,分配两个新节点管理,两个新节点根据各自分配的数据范围将原节点数组和缓存中的数据拷贝入各自的数组中,执行重新训练步骤。
节点合并步骤:将两个原节点数据范围合并,分配一个新节点管理。新节点将两个原节点数组和缓存中的数据拷贝入自己的数组中,执行重新训练步骤。
重新训练步骤:根据新节点中的数据重新训练机器学习模型。训练完成后执行节点生效步骤。
节点生效步骤:将根节点中保存的原节点指针和原节点的数据范围对应修改为新节点指针和新节点的数据范围。新节点生效,结束流程。
优选地,所述缓存数据量和误差范围均有指定的上限阈值与下限阈值,若节点的缓存数据量或误差范围大于该上限阈值则视为缓存数据量或误差范围过大,缓存数据量和误差范围都小于该下限阈值则视为缓存数据量和误差范围都过小。
优选地,所述的节点分裂步骤和节点合并步骤从开始直到节点调整完成时,需要并发控制保证该区间内操作的原子性。
优选地,所述的节点保存特定范围的有序数据以及从该范围内数据训练得到的机器学习模型,根节点保存指向其他节点的指针以及其他节点的数据范围。
优选地,所述数据主要存储于数组中;新插入数据暂时存储于缓存中,之后写入数组。
根据本发明提供的一种机器学习数据索引结构的自适应结构调整系统,包括:
选取节点模块:按照预设的节点编号顺序逐个选取机器学习数据索引结构中的节点;
分析节点模块:分析选取得的节点,根据节点中缓存数据量和误差范围大小执行对应的结构调整操作:若节点中缓存数据量或节点内机器学习模型的预测误差过大,则调用节点分裂模块;若节点与其相邻节点中的缓存数据量及误差范围都过小,则两节点调用节点合并模块;否则,则结束流程。
节点分裂模块:将原节点数据范围分为两部分,分配两个新节点管理,两个新节点根据各自分配的数据范围将原节点数组和缓存中的数据拷贝入各自的数组中,执行重新训练模块。
节点合并模块:将两个原节点数据范围合并,分配一个新节点管理。新节点将两个原节点数组和缓存中的数据拷贝入自己的数组中,调用重新训练模块。
重新训练模块:根据新节点中的数据重新训练机器学习模型。训练完成后调用节点生效模块。
节点生效模块:将根节点中保存的原节点指针和原节点的数据范围对应修改为新节点指针和新节点的数据范围。新节点生效,结束流程。
优选地,所述缓存数据量和误差范围均有指定的上限阈值与下限阈值,若节点的缓存数据量或误差范围大于该上限阈值则视为缓存数据量或误差范围过大,缓存数据量和误差范围都小于该下限阈值则视为缓存数据量和误差范围都过小。
优选地,所述的节点分裂模块和节点合并模块从开始直到节点调整完成时,需要并发控制保证该区间内操作的原子性。
优选地,所述的节点保存特定范围的有序数据以及从该范围内数据训练得到的机器学习模型,根节点保存指向其他节点的指针以及其他节点的数据范围。
优选地,所述数据主要存储于数组中;新插入数据暂时存储于缓存中,之后写入数组。
与现有技术相比,本发明具有如下的有益效果:
1.在现有的机器学习索引的基础上,本系统能动态地进行节点结构调整,使机器学习模型能适应动态变化的数据分布和访问模式,充分利用机器学习模型的高索引性能。
2.在现有的机器学习索引的基础上,本系统将缓存数据量作为结构调整指标,使节点负载更均衡,减少因缓存数据量过大导致的缓存访问较慢。
3.在现有的机器学习索引的基础上,本系统将误差范围作为结构调整指标,控制机器学习模型的误差范围,使机器学习模型预测有足够的精确性。
4.在现有的机器学习索引的基础上,本系统同时考虑误差范围与缓存数据量,保证较高索引性能的同时,节省存储资源,降低定位节点的开销。
5.在现有的机器学习索引的基础上,本系统提供细粒度的机器学习索引结构调整方法,相比对全部数据重新训练,能减少重新训练模型的个数,避免结构调整时对不相关模型和缓存的性能影响。
附图说明
通过阅读参照以下附图对非限制性实施例所作的详细描述,本发明的其它特征、目的和优点将会变得更明显:
图1为本发明的结构调整流程示意图。
具体实施方式
下面结合具体实施例对本发明进行详细说明。以下实施例将有助于本领域的技术人员进一步理解本发明,但不以任何形式限制本发明。应当指出的是,对本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变化和改进。这些都属于本发明的保护范围。
根据本发明提供的一种机器学习数据索引结构的自适应结构调整方法,包括:
选取节点步骤:按照预设的节点编号顺序逐个选取机器学习数据索引结构中的节点;
分析节点步骤:分析选取得的节点,根据节点中缓存数据量和误差范围大小执行对应的结构调整操作:若节点中缓存数据量或节点内机器学习模型的预测误差过大,则执行节点分裂步骤;若节点与其相邻节点中的缓存数据量及误差范围都过小,则两节点执行节点合并步骤;否则,则结束流程。
节点分裂步骤:将原节点数据范围分为两部分,分配两个新节点管理,两个新节点根据各自分配的数据范围将原节点数组和缓存中的数据拷贝入各自的数组中,执行重新训练步骤。
节点合并步骤:将两个原节点数据范围合并,分配一个新节点管理。新节点将两个原节点数组和缓存中的数据拷贝入自己的数组中,执行重新训练步骤。
重新训练步骤:根据新节点中的数据重新训练机器学习模型。训练完成后执行节点生效步骤。
节点生效步骤:将根节点中保存的原节点指针和原节点的数据范围对应修改为新节点指针和新节点的数据范围。新节点生效,结束流程。
具体地,所述缓存数据量和误差范围均有指定的上限阈值与下限阈值,若节点的缓存数据量或误差范围大于该上限阈值则视为缓存数据量或误差范围过大,缓存数据量和误差范围都小于该下限阈值则视为缓存数据量和误差范围都过小。
具体地,所述的节点分裂步骤和节点合并步骤从开始直到节点调整完成时,需要并发控制保证该区间内操作的原子性。
具体地,所述的节点保存特定范围的有序数据以及从该范围内数据训练得到的机器学习模型,根节点保存指向其他节点的指针以及其他节点的数据范围。
具体地,所述数据主要存储于数组中;新插入数据暂时存储于缓存中,之后写入数组。
本发明提供的机器学习数据索引结构的自适应结构调整系统,可以通过本发明给的机器学习数据索引结构的自适应结构调整方法的步骤流程实现。本领域技术人员可以将所述机器学习数据索引结构的自适应结构调整方法,理解为所述机器学习数据索引结构的自适应结构调整系统的一个优选例。
根据本发明提供的一种机器学习数据索引结构的自适应结构调整系统,包括:
选取节点模块:按照预设的节点编号顺序逐个选取机器学习数据索引结构中的节点;
分析节点模块:分析选取得的节点,根据节点中缓存数据量和误差范围大小执行对应的结构调整操作:若节点中缓存数据量或节点内机器学习模型的预测误差过大,则调用节点分裂模块;若节点与其相邻节点中的缓存数据量及误差范围都过小,则两节点调用节点合并模块;否则,则结束流程。
节点分裂模块:将原节点数据范围分为两部分,分配两个新节点管理,两个新节点根据各自分配的数据范围将原节点数组和缓存中的数据拷贝入各自的数组中,执行重新训练模块。
节点合并模块:将两个原节点数据范围合并,分配一个新节点管理。新节点将两个原节点数组和缓存中的数据拷贝入自己的数组中,调用重新训练模块。
重新训练模块:根据新节点中的数据重新训练机器学习模型。训练完成后调用节点生效模块。
节点生效模块:将根节点中保存的原节点指针和原节点的数据范围对应修改为新节点指针和新节点的数据范围。新节点生效,结束流程。
具体地,所述缓存数据量和误差范围均有指定的上限阈值与下限阈值,若节点的缓存数据量或误差范围大于该上限阈值则视为缓存数据量或误差范围过大,缓存数据量和误差范围都小于该下限阈值则视为缓存数据量和误差范围都过小。
具体地,所述的节点分裂模块和节点合并模块从开始直到节点调整完成时,需要并发控制保证该区间内操作的原子性。
具体地,所述的节点保存特定范围的有序数据以及从该范围内数据训练得到的机器学习模型,根节点保存指向其他节点的指针以及其他节点的数据范围。
具体地,所述数据主要存储于数组中;新插入数据暂时存储于缓存中,之后写入数组。
下面通过优选例,对本发明进行更为具体地说明。
优选例1:
一种机器学习数据索引结构的自适应结构调整方法,包括:
选取节点步骤:按序选取机器学习数据索引结构中的节点。
分析节点步骤:分析选取得的节点。根据节点中缓存数据量和误差范围大小执行对应的结构调整操作。若节点中缓存数据量或误差范围过大,则执行节点分裂步骤;若节点与相邻节点中缓存数据量和误差范围都过小,则两节点执行节点合并步骤;否则结束流程。
节点分裂步骤:将原节点数据范围分为两部分,分配两个新节点管理。两个新节点根据各自数据范围将原节点数组和缓存中的数据拷贝入各自的数组中,执行重新训练步骤。
节点合并步骤:将两个原节点数据范围合并,分配一个新节点管理。新节点将两个原节点数组和缓存中的数据拷贝入自己的数组中,执行重新训练步骤。
重新训练步骤:根据新节点中的数据重新训练机器学习模型。训练完成后执行节点生效步骤。
节点生效步骤:将根节点中保存的原节点指针和原节点的数据范围对应修改为新节点指针和新节点的数据范围。新节点生效,结束流程。
所述缓存数据量和误差范围均有指定的上限阈值与下限阈值,若节点的缓存数据量或误差范围大于该上限阈值则视为缓存数据量或误差范围过大,缓存数据量和误差范围都小于该下限阈值则视为缓存数据量和误差范围都过小。
所述节点分裂步骤和节点合并步骤从开始直到节点调整完成时,需要并发控制保证该区间内操作的原子性。
所述节点保存特定范围的有序数据以及从该范围内数据训练得到的机器学习模型,根节点保存指向其他节点的指针以及其他节点的数据范围。
所述数据主要存储于数组中;新插入数据暂时存储于缓存中,之后写入数组。
优选例2:
根据本发明提供的一种机器学习数据索引结构的自适应结构调整方法,其特征在于,该结构调整方法会依次执行以下步骤:
1、选取节点步骤:按序选取机器学习数据索引结构中的节点。执行分析节点步骤(2)。
2、分析节点步骤:分析选取得的节点。根据节点中缓存数据量和误差范围大小执行对应的结构调整操作。若节点中缓存数据量或误差范围过大,则执行节点分裂步骤(3);若节点与相邻节点中缓存数据量和误差范围都过小,则两节点执行节点合并步骤(4);否则结束流程。
3、节点分裂步骤:将原节点数据范围分为两部分,分配两个新节点管理。两个新节点根据各自数据范围将原节点数组和缓存中的数据拷贝入各自的数组中,执行重新训练步骤(5)。
4、节点合并步骤:将两个原节点数据范围合并,分配一个新节点管理。新节点将两个原节点数组和缓存中的数据拷贝入自己的数组中,执行重新训练步骤(5)。
5、重新训练步骤:根据新节点中的数据重新训练机器学习模型。训练完成后执行节点生效步骤(6)。
6、节点生效步骤:将根节点中保存的原节点指针和原节点的数据范围对应修改为新节点指针和新节点的数据范围。新节点生效,结束流程。
具体地,所述的分析节点步骤(2)描述的缓存数据量和误差范围均有指定的上限阈值与下限阈值,若节点的缓存数据量或误差范围大于该上限阈值则视为缓存数据量或误差范围过大,缓存数据量和误差范围都小于该下限阈值则视为缓存数据量和误差范围都过小。
具体地,所述的分析节点步骤(2)描述的节点分裂步骤和节点合并步骤从开始直到节点调整完成时,需要并发控制保证该区间内操作的原子性。
具体地,所述的节点保存特定范围的有序数据以及从该范围内数据训练得到的机器学习模型,根节点保存指向其他节点的指针以及其他节点的数据范围。
具体地,所述数据主要存储于数组中;新插入数据暂时存储于缓存中,之后写入数组。
本发明提供了一种机器学习数据索引结构的自适应结构调整方法。在现有的机器学习索引的基础上,本发明能动态地进行节点结构调整,使机器学习模型能适应动态变化的数据分布和访问模式,充分利用机器学习模型的高索引性能。本发明将缓存数据量作为结构调整指标,使节点负载更均衡,减少因缓存数据量过大导致的缓存访问较慢。本发明将误差范围作为结构调整指标,控制机器学习模型的误差范围,使机器学习模型预测有足够的精确性。本发明同时考虑误差范围与缓存数据量,保证较高索引性能的同时,节省存储资源,降低定位节点的开销。本发明提供细粒度的机器学习索引结构调整方法,相比对全部数据重新训练,能减少重新训练模型的个数,避免结构调整时对不相关模型和缓存的性能影响。
本领域技术人员知道,除了使用基于锁的方式实现本发明提供的机器学习数据索引结构的自适应结构调整方法及其并发控制部分以外,完全可以通过将其并发控制实现替换为其他并发控制方法来实现本发明提供的机器学习数据索引结构的自适应结构调整方法。所以,本发明提供的机器学习数据索引结构的自适应结构调整方法可以被认为是一种机器学习索引结构的节点合并与分裂的设计,而对其内包括用于并发控制实现的锁或其他并发控制方法,结构调整时阻塞或不阻塞索引操作,节点自适应地合并与分裂的指标等,都可以视为本发明提供的设计下的具体实现方法和细节。
以上对本发明的具体实施例进行了描述。需要理解的是,本发明并不局限于上述特定实施方式,本领域技术人员可以在权利要求的范围内做出各种变化或修改,这并不影响本发明的实质内容。在不冲突的情况下,本申请的实施例和实施例中的特征可以任意相互组合。
Claims (10)
1.一种机器学习数据索引结构的自适应结构调整方法,其特征在于,包括:
选取节点步骤:按照预设的节点编号顺序逐个选取机器学习数据索引结构中的节点;
分析节点步骤:分析选取得的节点,根据节点中缓存数据量和误差范围大小执行对应的结构调整操作:若节点中缓存数据量或节点内机器学习模型的预测误差过大,则执行节点分裂步骤;若节点与其相邻节点中的缓存数据量及误差范围都过小,则两节点执行节点合并步骤;否则,则结束流程。
节点分裂步骤:将原节点数据范围分为两部分,分配两个新节点管理,两个新节点根据各自分配的数据范围将原节点数组和缓存中的数据拷贝入各自的数组中,执行重新训练步骤。
节点合并步骤:将两个原节点数据范围合并,分配一个新节点管理。新节点将两个原节点数组和缓存中的数据拷贝入自己的数组中,执行重新训练步骤。
重新训练步骤:根据新节点中的数据重新训练机器学习模型。训练完成后执行节点生效步骤。
节点生效步骤:将根节点中保存的原节点指针和原节点的数据范围对应修改为新节点指针和新节点的数据范围。新节点生效,结束流程。
2.根据权利要求1所述的机器学习数据索引结构的自适应结构调整方法,其特征在于,所述缓存数据量和误差范围均有指定的上限阈值与下限阈值,若节点的缓存数据量或误差范围大于该上限阈值则视为缓存数据量或误差范围过大,缓存数据量和误差范围都小于该下限阈值则视为缓存数据量和误差范围都过小。
3.根据权利要求1所述的机器学习数据索引结构的自适应结构调整方法,其特征在于,所述的节点分裂步骤和节点合并步骤从开始直到节点调整完成时,需要并发控制保证该区间内操作的原子性。
4.根据权利要求1所述的机器学习数据索引结构的自适应结构调整方法,其特征在于,所述的节点保存特定范围的有序数据以及从该范围内数据训练得到的机器学习模型,根节点保存指向其他节点的指针以及其他节点的数据范围。
5.根据权利要求1所述的机器学习数据索引结构的自适应结构调整方法,其特征在于,所述数据主要存储于数组中;新插入数据暂时存储于缓存中,之后写入数组。
6.一种机器学习数据索引结构的自适应结构调整系统,其特征在于,包括:
选取节点模块:按照预设的节点编号顺序逐个选取机器学习数据索引结构中的节点;
分析节点模块:分析选取得的节点,根据节点中缓存数据量和误差范围大小执行对应的结构调整操作:若节点中缓存数据量或节点内机器学习模型的预测误差过大,则调用节点分裂模块;若节点与其相邻节点中的缓存数据量及误差范围都过小,则两节点调用节点合并模块;否则,则结束流程。
节点分裂模块:将原节点数据范围分为两部分,分配两个新节点管理,两个新节点根据各自分配的数据范围将原节点数组和缓存中的数据拷贝入各自的数组中,执行重新训练模块。
节点合并模块:将两个原节点数据范围合并,分配一个新节点管理。新节点将两个原节点数组和缓存中的数据拷贝入自己的数组中,调用重新训练模块。
重新训练模块:根据新节点中的数据重新训练机器学习模型。训练完成后调用节点生效模块。
节点生效模块:将根节点中保存的原节点指针和原节点的数据范围对应修改为新节点指针和新节点的数据范围。新节点生效,结束流程。
7.根据权利要求6所述的机器学习数据索引结构的自适应结构调整系统,其特征在于,所述缓存数据量和误差范围均有指定的上限阈值与下限阈值,若节点的缓存数据量或误差范围大于该上限阈值则视为缓存数据量或误差范围过大,缓存数据量和误差范围都小于该下限阈值则视为缓存数据量和误差范围都过小。
8.根据权利要求6所述的机器学习数据索引结构的自适应结构调整系统,其特征在于,所述的节点分裂模块和节点合并模块从开始直到节点调整完成时,需要并发控制保证该区间内操作的原子性。
9.根据权利要求6所述的机器学习数据索引结构的自适应结构调整系统,其特征在于,所述的节点保存特定范围的有序数据以及从该范围内数据训练得到的机器学习模型,根节点保存指向其他节点的指针以及其他节点的数据范围。
10.根据权利要求6所述的机器学习数据索引结构的自适应结构调整系统,其特征在于,所述数据主要存储于数组中;新插入数据暂时存储于缓存中,之后写入数组。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010148015.8A CN111309982A (zh) | 2020-03-05 | 2020-03-05 | 机器学习数据索引结构的自适应结构调整方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010148015.8A CN111309982A (zh) | 2020-03-05 | 2020-03-05 | 机器学习数据索引结构的自适应结构调整方法及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111309982A true CN111309982A (zh) | 2020-06-19 |
Family
ID=71149582
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010148015.8A Pending CN111309982A (zh) | 2020-03-05 | 2020-03-05 | 机器学习数据索引结构的自适应结构调整方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111309982A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112434035A (zh) * | 2020-11-20 | 2021-03-02 | 上海交通大学 | 基于机器学习的并发哈希索引数据结构的索引方法及系统 |
CN113722319A (zh) * | 2021-08-05 | 2021-11-30 | 平凯星辰(北京)科技有限公司 | 基于学习索引的数据存储方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4677550A (en) * | 1983-09-30 | 1987-06-30 | Amalgamated Software Of North America, Inc. | Method of compacting and searching a data index |
US5276872A (en) * | 1991-06-25 | 1994-01-04 | Digital Equipment Corporation | Concurrency and recovery for index trees with nodal updates using multiple atomic actions by which the trees integrity is preserved during undesired system interruptions |
US20190287023A1 (en) * | 2018-03-16 | 2019-09-19 | Ryosuke Kasahara | Learning classification device and learning classification method |
US20190303753A1 (en) * | 2018-03-28 | 2019-10-03 | Ca, Inc. | Insertion tolerant learned index structure through associated caches |
-
2020
- 2020-03-05 CN CN202010148015.8A patent/CN111309982A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4677550A (en) * | 1983-09-30 | 1987-06-30 | Amalgamated Software Of North America, Inc. | Method of compacting and searching a data index |
US5276872A (en) * | 1991-06-25 | 1994-01-04 | Digital Equipment Corporation | Concurrency and recovery for index trees with nodal updates using multiple atomic actions by which the trees integrity is preserved during undesired system interruptions |
US20190287023A1 (en) * | 2018-03-16 | 2019-09-19 | Ryosuke Kasahara | Learning classification device and learning classification method |
US20190303753A1 (en) * | 2018-03-28 | 2019-10-03 | Ca, Inc. | Insertion tolerant learned index structure through associated caches |
Non-Patent Citations (1)
Title |
---|
CHUZHE TANG,YOUYUN WANG,GANSEN HU,ZHIYUAN DONG,ZHAOGUO WANG: "XIndex: A Scalable Learned Index for Multicore Data Storage", 《PPOPP 2020》 * |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112434035A (zh) * | 2020-11-20 | 2021-03-02 | 上海交通大学 | 基于机器学习的并发哈希索引数据结构的索引方法及系统 |
CN112434035B (zh) * | 2020-11-20 | 2022-09-23 | 上海交通大学 | 基于机器学习的并发哈希索引数据结构的索引方法及系统 |
CN113722319A (zh) * | 2021-08-05 | 2021-11-30 | 平凯星辰(北京)科技有限公司 | 基于学习索引的数据存储方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Li et al. | Qtune: A query-aware database tuning system with deep reinforcement learning | |
US10824959B1 (en) | Explainers for machine learning classifiers | |
CN110134714B (zh) | 适用于大数据迭代计算的分布式计算框架缓存索引方法 | |
CN111651455A (zh) | 基于机器学习的高效并发索引数据结构 | |
CN111241778B (zh) | 一种基于机器学习的fpga自动调参优化方法及系统 | |
Lee et al. | CarM: Hierarchical episodic memory for continual learning | |
Zhang et al. | CDBTune+: An efficient deep reinforcement learning-based automatic cloud database tuning system | |
CN111309982A (zh) | 机器学习数据索引结构的自适应结构调整方法及系统 | |
US20180300147A1 (en) | Database Operating Method and Apparatus | |
CN116401502B (zh) | 一种基于NUMA系统特性优化Winograd卷积的方法及装置 | |
Xu et al. | RTFE: a recursive temporal fact embedding framework for temporal knowledge graph completion | |
Mukherjee | Synthesis of non-replicated dynamic fragment allocation algorithm in distributed database systems | |
CN115904638A (zh) | 一种数据库事务智能管理方法及系统 | |
Li et al. | Machine learning for data management: A system view | |
CN113779154B (zh) | 一种分布式学习索引模型的构建方法及应用 | |
Zhang et al. | PAME: precision-aware multi-exit DNN serving for reducing latencies of batched inferences | |
CN117215785A (zh) | 一种行情回放系统微服务资源调度方法 | |
US8660974B2 (en) | Inference over semantic network with some links omitted from indexes | |
US11934927B2 (en) | Handling system-characteristics drift in machine learning applications | |
CN112434035B (zh) | 基于机器学习的并发哈希索引数据结构的索引方法及系统 | |
CN114707655B (zh) | 一种量子线路转换方法、系统、存储介质和电子设备 | |
Varsamou et al. | Classification using discriminative restricted boltzmann machines on spark | |
CN113836174B (zh) | 基于强化学习dqn算法的异步sql连接查询优化方法 | |
Gámez et al. | On the use of an incremental approach to learn fuzzy classification rules for big data problems | |
CN113407532A (zh) | Spark SQL多表连接优化方法、装置、计算机设备和存储介质 |
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: 20200619 |