CN116010669A - 向量库重训练的触发方法、装置、检索服务器及存储介质 - Google Patents
向量库重训练的触发方法、装置、检索服务器及存储介质 Download PDFInfo
- Publication number
- CN116010669A CN116010669A CN202310082207.7A CN202310082207A CN116010669A CN 116010669 A CN116010669 A CN 116010669A CN 202310082207 A CN202310082207 A CN 202310082207A CN 116010669 A CN116010669 A CN 116010669A
- Authority
- CN
- China
- Prior art keywords
- vector
- library
- coding
- retrieval
- vectors
- 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
- 239000013598 vector Substances 0.000 title claims abstract description 379
- 238000000034 method Methods 0.000 title claims abstract description 67
- 238000013139 quantization Methods 0.000 claims abstract description 35
- 238000012163 sequencing technique Methods 0.000 claims abstract description 15
- 238000003780 insertion Methods 0.000 claims description 23
- 230000037431 insertion Effects 0.000 claims description 23
- 238000012549 training Methods 0.000 claims description 20
- 230000011218 segmentation Effects 0.000 claims description 12
- 238000004364 calculation method Methods 0.000 claims description 11
- 230000001174 ascending effect Effects 0.000 claims description 7
- 239000011159 matrix material Substances 0.000 claims description 7
- 238000012216 screening Methods 0.000 claims description 3
- 230000009286 beneficial effect Effects 0.000 abstract description 3
- 238000012423 maintenance Methods 0.000 abstract description 2
- 230000007246 mechanism Effects 0.000 abstract description 2
- 230000008569 process Effects 0.000 description 22
- 238000010586 diagram Methods 0.000 description 4
- 238000012545 processing Methods 0.000 description 4
- 230000004048 modification Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004044 response Effects 0.000 description 3
- 230000001960 triggered effect Effects 0.000 description 3
- 230000008859 change Effects 0.000 description 2
- 230000006835 compression Effects 0.000 description 2
- 238000007906 compression Methods 0.000 description 2
- 230000008707 rearrangement Effects 0.000 description 2
- 230000006978 adaptation Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 238000013528 artificial neural network Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 230000002035 prolonged effect Effects 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 239000000126 substance Substances 0.000 description 1
Images
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请公开向量库重训练的触发方法、装置、检索服务器及存储介质,涉及数据库领域,检索服务器接收到向量查询请求时,对查询向量进行切分和量化编码,基于第二编码向量与向量编码库返回向量匹配表;计算向量匹配表返回的目标向量与查询向量的空间距离并排序,根据排序前后目标向量的顺序更新检索误差率;当检索误差率超过误差阈值时,基于乘积量化方法对向量编码库和向量库进行重训练。该方案根据对召回的目标向量进行两次排序,根据顺序差异确定检索误差率,通过误差率大小决定触发向量库检索更新的时机,在保证优化内存和提高检索效率的同时,补偿部分有损检索的精度,且自动触发更新机制更有利于数据维护。
Description
技术领域
本申请实施例涉及数据库领域,特别涉及一种向量库重训练的触发方法、装置、检索服务器及存储介质。
背景技术
向量库专门用于存储、索引和查询嵌入向量,这些向量是通过机器学习模型传递非结构化数据而生成的。市面上大规模的向量库检索,考虑到QPS(query per second)的实际需求,为了提高检索效率,多数会采用并结合一些有损的检索方式,比如倒排索引(IVF),分层可导航小世界(HNSW),乘积量化(PQ),局部敏感哈希(LSH)等,因此精度必然会有一定程度的牺牲。
大规模的向量库检索由于向量本身数量的庞大,对硬件(内存)有着很高的要求,在内存限制的情况下往往需要对向量做很大程度的压缩,比如乘积量化来实现内存可加载。而这样的压缩方式,是需要前期训练的,并且随着数据库规模的不断增大,精度损失也有可能逐步增大。
因为对大规模的向量库做一次重新训练会需要比较多的资源和时间,因此重新训练向量库内的数据是一个比较谨慎的事件。而这个合适的时间点与每个数据库内的实际数据分布有着比较大的关联,不能通过数据库的整体规模来简单地判断,目前的重新训练方法主要依靠人工判断和检索,更新的准确度不高,且人力成本投入也比较大。
发明内容
本申请实施例提供向量库重训练的触发方法、装置、检索服务器及存储介质,解决向量库扩容后检索精度下降以及无法自动触发更新的问题。
一方面,本申请提供了向量库重训练的触发方法,所述方法用于检索服务器,所述方法包括:
S1,当检索服务器接收到向量***请求时,根据当前模型参数对***向量进行切分和量化编码,将获得的第一编码向量加入到向量编码库,并将所述***向量保存至向量库中;所述向量库保存有海量原始向量,原始向量基于对原始数据进行特征提取获得;
S2,当所述检索服务器接收到向量查询请求时,对查询向量进行切分和量化编码,基于获得的第二编码向量与所述向量编码库进行查表和计算,生成向量匹配表;
S3,计算所述向量匹配表召回的目标向量与所述查询向量的空间距离并排序,根据排序前后所述目标向量的顺序更新检索误差率;
S4,当所述检索误差率超过误差阈值时,所述检索服务器基于乘积量化方法对所述向量编码库和所述向量库进行重训练。
另一方面,本申请提供了向量库重训练的触发装置,所述装置用于检索服务器,所述装置包括:
编码模块,用于当检索服务器接收到向量***请求时,根据当前模型参数对***向量进行切分和量化编码,将获得的第一编码向量加入到向量编码库,并将所述***向量保存至向量库中;所述向量库保存有海量原始向量,原始向量基于对原始数据进行特征提取获得;
生成模块,用于当所述检索服务器接收到向量查询请求时,对查询向量进行切分和量化编码,基于获得的第二编码向量与所述向量编码库进行查表和计算,生成向量匹配表;
更新模块,用于计算所述向量匹配表召回的目标向量与所述查询向量的空间距离并排序,根据排序前后所述目标向量的顺序更新检索误差率;
训练模块,用于当所述检索误差率超过误差阈值时,所述检索服务器基于乘积量化方法对所述向量编码库和所述向量库进行重训练。
又一方面,本申请提供一种检索服务器,所述检索服务器包括处理器和存储器,所述存储器中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现上述方面所述的向量库重训练的触发方法。
又一方面,本申请提供一种计算机可读存储介质,所述计算机可读存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由处理器加载并执行以实现上述方面所述的向量库重训练的触发方法。
本申请实施例提供的技术方案带来的有益效果至少包括:对于新***向量根据模型参数自动进行模型切分和量化编码,原始向量直接存入海量数据库中,而将量化编码后的第一编码向量加入到内存中的向量编码库中单独保存;在需要查询向量时,则由检索服务器对查询向量切分和量化编码,基于编码后的第二编码向量对编码库进行查表计算,召回向量匹配表。
进一步地再按照向量匹配表召回目标向量,根据与查询向量计算的空间距离进行排序,最终根据目标向量两次排序情况确定检索误差率,以检索误差率作为触发向量库检索更新的时机,在保证优化内存和提高检索效率的同时,补偿部分有损检索的精度,且自动触发更新机制更有利于数据维护。
附图说明
图1是本申请实施例提供的向量库重训练的触发方法的流程图;
图2是本申请实施例提供的输入***向量过程的流程示意图;
图3是本申请实施例提供的倒排索引重训练的流程示意图;
图4是本申请实施例提供的输入查询向量过程的流程示意图;
图5是本申请实施例提供的乘积量化方法的查询示意图;
图6是本申请实施例提供的触发重训练的流程示意图;
图7是本申请实施例提供的向量库重训练的触发装置的结构框图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
在本文中提及的“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。
图1是本申请实施例提供的向量库重训练的触发方法的流程图,包括如下步骤:
S1,当检索服务器接收到向量***请求时,根据当前模型参数对***向量进行切分和量化编码,将获得的第一编码向量加入到向量编码库,并将***向量保存至向量库中。
向量库和数据库共同位于数据中心,数据中心和检索服务器彼此独立,对于大规模和超大规模数据库来说,检索数据索引通常采用向量匹配法进行计算召回,对原始数据进行特征提取后获得原始向量。当检索服务器确定原始向量后,即可从数据库中召回原始数据。原始数据至少包括图像数据、音视频数据、文本数据和特定格式的文件数据等。
当需要向数据中心存储新数据,也就是检索服务器接收到向量***请求时,会提取该请求中包含的待***向量库的***向量。具体包括如此下步骤:
S11,根据当前模型参数和***向量的向量维度,将其切分成对应数量个子向量;
数据库中的向量分为多种类型,在进行切分时可以根据当前模型参数,也就是***设定值和向量维度来确定切分的份额数,对于向量编码库来说,切分的数量越多,则检索匹配精度越高,相应的检索时间(响应时间)也就变长。参考图3所示,检索服务器的CPU先接收到***向量(***请求),紧接着通过访问***内存来执行检索服务。假设***向量为128维度,服务器将其切分为4个32维的子向量。
S12,将每个子向量分别进行聚类形成聚类中心;
聚类的目的是为了后续将向量压缩存入内存中,聚类中心就是对切分后的每个子向量聚合成目标数量个类目,如将切分后的个子向量聚类成256类目,就是将新加入的子向量存入0~255个单元中的其中一个,这一步骤为子向量的量化过程,这样的目的是为了将聚类中心用一个字节保存,例如图3中的每个聚类中心(0~255)都可以用一个8位字节编码保存。聚类中心的类目数以及编码的字节数都属于模型参数,在后期进行训练时都可能需要调整。
S13,将聚类中心进行量化编码,形成第一编码向量,并将第一编码向量加入到向量编码库中;
量化编码过程可以参考图3过程,实际上的图3是训练过程对向量进行重调整保存的过程,M*128为所有的原始向量,当M为1时,即表示***一个新向量及量化编码的过程,量化编码就是将向量进行数字化,形成的第一编码向量以数据形式存储在内存中,所有***形成的第一编码向量组成向量编码库,后加入的继续存入向量编码库。如图3所示的索引index,即为量化编码后存储在内存中的数据格式,这些编码向量以字节形式保存在向量编码库中,用于后期的检索。
S14,将***向量保存至向量库中,并根据第一编码向量和***向量关联生成向量ID,保存至向量索引表中。
存储在内存中的编码向量是切分后的有损压缩形式,因此占用内存较小,实际的***向量需要在编码完成后,经由CPU送入向量库(原始数据对应存入数据库中)。此外,为了快速检索服务,内存中还设置了索引表。索引表基于第一编码向量和***向量关联得到,也就是将压缩后的向量进行编号,生成唯一的向量ID,然后将ID号和第一编码向量(存入向量库中的原始向量都有对应的向量ID)关联,后续在检索的时候根据ID号来从数据中心索引和召回原始向量及原始数据,这样可以降低CPU访问数据频繁访问数据路检索匹配过程,加速响应。该过程是流程示意图参考图2。
S2,当检索服务器接收到向量查询请求时,对查询向量进行切分和量化编码,基于获得的第二编码向量与向量编码库进行查表和计算,生成向量匹配表。
以图片数据库为例,查询请求就是输入图片,然后检索服务器根据该图片从数据中心检索匹配出最接近的若干图片返回。该过程为了减少与数据中心的交互,具体步骤和前述***向量的处理过程类似,包括如下步骤:
S21,根据当前模型参数和查询向量的向量维度,将其切分成对应数量个子向量,并将子向量进行量化编码生成第二编码向量;
参考图4,CPU在接收到请求后,与内存进行交互(步骤①②),之后由内存执行相关操作。包括根据模型参数和查询向量的维度进行切分,紧接着对切分后的子向量进行量化编码,生成第二编码向量。
S22,计算第二编码向量与聚类中心的空间距离,获得距离矩阵;
在前期经过计算获得的聚类中心是进行初筛的依据,也就是将第二编码向量和聚类中心之间计算空间距离。计算过程一个子向量对一个聚类中心,分别生成对应的距离矩阵D0,D1,D2,D3,每个距离矩阵中都包含子向量与256个单元的空间距离。需要说明的是,距离矩阵的维度和数量与聚类中心及切分的子向量相关,具体根据实际情况为准,本申请对此不作限定。如图5所示,Query为128维向量,经过切分后分成4个32维的子向量,这4个32维向量分别与之前的256聚类中心做L2距离计算,得到的就是4*256的距离矩阵。当然这个方法是将库中的向量都近似到各个聚类中心,是有一定程度的误差的,这也是数据库检索服务模型精度的由来。
S23,基于切分子向量的份数,对距离矩阵与向量编码库进行查表,将查询距离之和进行拟合计算得到与向量编码库中各个第一编码向量的空间距离;
如图5所示,查表过程是为了根据距离选出最近的类中心,最近的类中心距离之和拟合得到与向量编码库中各个第一编码向量的空间距离,此步骤的目的是为了找到与各个编码向量的距离,找出距离最近的若干个即为需要匹配和召回的向量。
S24,根据空间距离大小进行升序排序,并根据向量索引表中的向量ID生成向量匹配表;向量匹配表中排序的是距离大小满足检索精度,或目标数量个目标向量的向量ID。
向量匹配表中存储的是向量ID,且是根据空间离大小升序排序的。向量匹配表中向量的数量根据实际情况决定,当模型是一对一检索反馈时,则匹配表中仅召回空间距离最小的,也即最接近的。或者是相似检索服务时,则匹配表中按照升序排序召回一定数量的目标向量的向量ID,数量可以根据***设定,根据检索精度决定,该过程对应图4中的③。
S3,计算向量匹配表召回的目标向量与查询向量的空间距离并排序,根据排序前后目标向量的顺序更新检索误差率。
确定向量ID后,CPU开始与数据中心交互,根据向量ID从向量库中召回对应的目标向量,也即是图4中的④和⑤。该过程的目的是根据目标向量再次对检索误差率进行更新,具体包括如下步骤:
S31,基于向量匹配表从向量库中召回对应的目标向量,将向量ID按照空间距离大小进行升序排序;
S32,将查询向量分别与目标向量依次进行距离计算,并根据空间距离大小重新对向量ID进行升序排序;
S33,将向量匹配表与排序后的向量ID进行差异性比较,根据顺序差异确定本次查询的单次检索误差率,并记录到误差列表中;
比如重排前为I1,I3,I2,I4,I5;重排后I1,I2,I3,I4,I5,那么记本次单次检索误差率为40%,将其存入误差列表中。
S34,截取误差列表中最近若干次的单次检索误差率,将算数平均值更新为向量库的检索误差率。
误差列表中存入有所有检索服务请求的单次检索误差率,截取最近的若干次单次检索误差率,将算数平均值更新为向量库的检索误差率,截取的数量根据***设定。此步骤对应图4中的⑥。
计算更新检索误差率后,还需要按照最终的排序情况召回最终需要返回的数据。所以S3之后还包括:
根据向量库检索精度筛选排序后的前n位向量ID,并根据向量索引表从数据库中召回对应原始数据。
以图片检索服务为例,当用户将图片输入到***中后,检索服务器对其进行切分处理,最终根据***要求召回前n个向量ID,并根据向量索引表将对应的目标图片召回,显示界面或列表同样根据匹配度降序排列显示。
S4,当检索误差率超过误差阈值时,检索服务器基于乘积量化方法对向量编码库和向量库进行重训练。
更新后的检索误差率是触发向量库更新的条件,当误差率超过误差阈值时,说明随着数据库内容的增加,按照原先的模型参数处理***向量的方式无法保证检索的精确度,重训练的方式就是对向量库中已保存的原始向量进行重新量化编码,以保证海量数据情况下的模型精度。参考图6所示,该过程包括如下步骤:
S41,当检索误差率超过误差阈值时,根据向量索引表确定向量库的规模等级;
数据中心的数据量可以根据内存中保存的向量索引表来确定规模等级,如百万级、千万级、亿级等,且不同规模等级对应不同的训练参数,训练参数至少包括切分的份数、编码及量化精度、聚类中心的数量nlist和编码位数。此步骤对应图6中的①,由CPU检测和触发执行。
S42,检索服务器根据确定的规模等级调整目标训练参数,采用乘积量化方法对向量库中的所有向量进行重训练,更新向量编码库;
重训练的方法和神经网络的迭代训练不同,此次重训练需要召回向量库中所有的原始向量,按照确定的目标训练参数进行数据处理(例如从千万级到亿级)。例如,将切分份数增大,将倒排索引的nlist增大(例:128->256),编码和量化的精度等。此外,当前后两次数据库练级没有数量级变化时,也即是数据量的变化量不大时,则沿用前一次的训练参数进行重训练,根据倒排索引方法更新向量编码库。此外,当检索服务器的CPU等硬件具备足够的性能时,还可以提高乘积量化时的编码位数(例:8->12)来训练和更新。此步骤对应图6中步骤②和③,是召回原始向量的过程,④是检索服务器确定数据库规模的步骤。
S43,检索更新完成后清空误差列表,重新根据向量查询请求计算和记录检索误差率。
更新完成后还需要清空误率列表,以适应训练完成后的重记录,继续根据向量查询请求计算和记录检索误差率,直到再次达到设定误差阈值进行新一次的训练更新,对应图6中⑤过程CPU清空误差列表的过程。
综上所述,本方案在向量检索任务中,保证优化内存使用和提高检索效率的同时,补偿一部分有损检索的精度。在规模不断扩充的向量库中,自动化地检测该向量库的训练参数是否符合当数据库,从而自动触发执行,避免人工接入手动处理,提高数据库的检索精度和响应速度。
图7是本申请实施例提供的向量库重训练的触发装置的结构框图,本申请提供了向量库重训练的触发装置,所述装置用于检索服务器,所述装置包括:
编码模块701,用于当检索服务器接收到向量***请求时,根据当前模型参数对***向量进行切分和量化编码,将获得的第一编码向量加入到向量编码库,并将所述***向量保存至向量库中;所述向量库保存有海量原始向量,原始向量基于对原始数据进行特征提取获得;
生成模块702,用于当所述检索服务器接收到向量查询请求时,对查询向量进行切分和量化编码,基于获得的第二编码向量与所述向量编码库进行查表和计算,生成向量匹配表;
更新模块703,用于计算所述向量匹配表召回的目标向量与所述查询向量的空间距离并排序,根据排序前后所述目标向量的顺序更新检索误差率;
训练模块704,用于当所述检索误差率超过误差阈值时,所述检索服务器基于乘积量化方法对所述向量编码库和所述向量库进行重训练。
本申请实施例中还提供一种检索服务器,所述检索服务器包括处理器和存储器,所述存储器中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现上述方面所述的向量库重训练的触发方法。
本申请实施例中还提供一种计算机可读存储介质,所述计算机可读存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由处理器加载并执行以实现上述方面所述的向量库重训练的触发方法。
以上对本发明的较佳实施例进行了描述;需要理解的是,本发明并不局限于上述特定实施方式,其中未尽详细描述的设备和结构应该理解为用本领域中的普通方式予以实施;任何熟悉本领域的技术人员,在不脱离本发明技术方案作出许多可能的变动和修饰,或修改为等同变化的等效实施例,这并不影响本发明的实质内容;因此,凡是未脱离本发明技术方案的内容,依据本发明的技术实质对以上实施例所做的任何简单修改、等同变化及修饰,均仍属于本发明技术方案保护的范围内。
Claims (10)
1.一种向量库重训练的触发方法,其特征在于,所述方法用于检索服务器,所述方法包括:
S1,当检索服务器接收到向量***请求时,根据当前模型参数对***向量进行切分和量化编码,将获得的第一编码向量加入到向量编码库,并将所述***向量保存至向量库中;所述向量库保存有海量原始向量,原始向量基于对原始数据进行特征提取获得;
S2,当所述检索服务器接收到向量查询请求时,对查询向量进行切分和量化编码,基于获得的第二编码向量与所述向量编码库进行查表和计算,生成向量匹配表;
S3,计算所述向量匹配表召回的目标向量与所述查询向量的空间距离并排序,根据排序前后所述目标向量的顺序更新检索误差率;
S4,当所述检索误差率超过误差阈值时,所述检索服务器基于乘积量化方法对所述向量编码库和所述向量库进行重训练。
2.根据权利要求1所述的向量库重训练的触发方法,其特征在于,所述向量库位于数据中心,并独立于所述检索服务器,且所述数据中心保存有所述原始向量对应的数据库;所述向量编码库、所述检索误差率、以及模型参数保存在所述检索服务器的内存中。
3.根据权利要求2所述的向量库重训练的触发方法,其特征在于,所述向量***请求中包含待***向量库的所述***向量;S1包括:
根据当前模型参数和所述***向量的向量维度,将其切分成对应数量个子向量;
将每个子向量分别进行聚类形成聚类中心;聚类中心的编码位数根据模型参数决定;
将所述聚类中心进行量化编码,形成第一编码向量,并将所述第一编码向量加入到向量编码库中;其中,编码向量以字节形式保存在所述向量编码库中;
将所述***向量保存至所述向量库中,并根据所述第一编码向量和所述***向量关联生成向量ID,保存至向量索引表中;所述向量索引表用于从所述数据中心索引和召回原始向量及原始数据。
4.根据权利要求3所述的向量库重训练的触发方法,其特征在于,所述向量查询请求中包含所述查询向量;S2包括:
根据当前模型参数和所述查询向量的向量维度,将其切分成对应数量个子向量,并将子向量进行量化编码生成所述第二编码向量;
计算所述第二编码向量与所述聚类中心的空间距离,获得距离矩阵;
基于切分子向量的份数,对所述距离矩阵与所述向量编码库进行查表,将查询距离之和进行拟合计算得到与所述向量编码库中各个第一编码向量的空间距离;
根据空间距离大小进行升序排序,并根据所述向量索引表中的向量ID生成所述向量匹配表;所述向量匹配表中排序的是距离大小满足检索精度,或目标数量个所述目标向量的向量ID。
5.根据权利要求4所述的向量库重训练的触发方法,其特征在于,S3包括:
基于所述向量匹配表从所述向量库中召回对应的所述目标向量,将向量ID按照空间距离大小进行升序排序;
将所述查询向量分别与所述目标向量依次进行距离计算,并根据空间距离大小重新对向量ID进行升序排序;
将所述向量匹配表与排序后的向量ID进行差异性比较,根据顺序差异确定本次查询的单次检索误差率,并记录到误差列表中;
截取所述误差列表中最近若干次的单次检索误差率,将算数平均值更新为所述向量库的所述检索误差率。
6.根据权利要求1所述的向量库重训练的触发方法,其特征在于,S4包括:当所述检索误差率超过误差阈值时,根据所述向量索引表确定所述向量库的规模等级;不同规模等级对应不同的训练参数,所述训练参数至少包括切分的份数、编码及量化精度、聚类中心的数量和编码位数;
所述检索服务器根据确定的规模等级调整目标训练参数,采用乘积量化方法对所述向量库中的所有向量进行重训练,更新所述向量编码库;
检索更新完成后清空误差列表,重新根据向量查询请求计算和记录检索误差率。
7.根据权利要求5所述的向量库重训练的触发方法,其特征在于,所述数据库中存储有原始向量对应的原始数据,至少包括图片数据、音视频数据和文件数据;S3之后还包括:
根据向量库检索精度筛选排序后的前n位向量ID,并根据所述向量索引表从所述数据库中召回对应原始数据。
8.一种向量库重训练的触发装置,所述装置用于检索服务器,其特征在于,所述装置包括:
编码模块,用于当检索服务器接收到向量***请求时,根据当前模型参数对***向量进行切分和量化编码,将获得的第一编码向量加入到向量编码库,并将所述***向量保存至向量库中;所述向量库保存有海量原始向量,原始向量基于对原始数据进行特征提取获得;
生成模块,用于当所述检索服务器接收到向量查询请求时,对查询向量进行切分和量化编码,基于获得的第二编码向量与所述向量编码库进行查表和计算,生成向量匹配表;
更新模块,用于计算所述向量匹配表召回的目标向量与所述查询向量的空间距离并排序,根据排序前后所述目标向量的顺序更新检索误差率;
训练模块,用于当所述检索误差率超过误差阈值时,所述检索服务器基于乘积量化方法对所述向量编码库和所述向量库进行重训练。
9.一种检索服务器,其特征在于,所述检索服务器包括处理器和存储器,所述存储器中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现如权利要求1至7任一项所述的向量库重训练的触发方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由处理器加载并执行以实现如权利要求1至7任一项所述的向量库重训练的触发方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310082207.7A CN116010669B (zh) | 2023-01-18 | 2023-01-18 | 向量库重训练的触发方法、装置、检索服务器及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310082207.7A CN116010669B (zh) | 2023-01-18 | 2023-01-18 | 向量库重训练的触发方法、装置、检索服务器及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116010669A true CN116010669A (zh) | 2023-04-25 |
CN116010669B CN116010669B (zh) | 2023-12-08 |
Family
ID=86031918
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310082207.7A Active CN116010669B (zh) | 2023-01-18 | 2023-01-18 | 向量库重训练的触发方法、装置、检索服务器及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116010669B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116595065A (zh) * | 2023-05-09 | 2023-08-15 | 上海任意门科技有限公司 | 内容重复识别方法、装置、***和存储介质 |
CN117951346A (zh) * | 2024-03-26 | 2024-04-30 | 深存科技(无锡)有限公司 | 面向向量数据库的混合加速架构 |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP3115908A1 (en) * | 2015-07-08 | 2017-01-11 | Thomson Licensing | Method and apparatus for multimedia content indexing and retrieval based on product quantization |
CN111143597A (zh) * | 2019-12-13 | 2020-05-12 | 浙江大华技术股份有限公司 | 图像检索方法、终端及存储装置 |
WO2020119069A1 (zh) * | 2018-12-13 | 2020-06-18 | 平安科技(深圳)有限公司 | 基于自编码神经网络的文本生成方法、装置、终端及介质 |
WO2021081913A1 (zh) * | 2019-10-31 | 2021-05-06 | 北京欧珀通信有限公司 | 向量查询方法、装置、电子设备及存储介质 |
CN113449132A (zh) * | 2021-08-26 | 2021-09-28 | 阿里云计算有限公司 | 一种向量检索方法及装置 |
CN114329029A (zh) * | 2021-10-28 | 2022-04-12 | 腾讯科技(深圳)有限公司 | 对象检索方法、装置、设备及计算机存储介质 |
CN114492788A (zh) * | 2021-12-31 | 2022-05-13 | 深存科技(无锡)有限公司 | 训练深度学习模型的方法和装置、电子设备及存储介质 |
CN114780781A (zh) * | 2022-06-17 | 2022-07-22 | 中船重工(武汉)凌久高科有限公司 | 一种基于模糊聚类和非对称距离计算的乘积量化方法 |
CN114860868A (zh) * | 2022-03-08 | 2022-08-05 | 中国海洋大学 | 一种语义相似度向量再稀疏编码索引与检索方法 |
CN114911958A (zh) * | 2022-06-09 | 2022-08-16 | 电子科技大学 | 一种基于语义偏好的快速图像检索方法 |
-
2023
- 2023-01-18 CN CN202310082207.7A patent/CN116010669B/zh active Active
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP3115908A1 (en) * | 2015-07-08 | 2017-01-11 | Thomson Licensing | Method and apparatus for multimedia content indexing and retrieval based on product quantization |
WO2020119069A1 (zh) * | 2018-12-13 | 2020-06-18 | 平安科技(深圳)有限公司 | 基于自编码神经网络的文本生成方法、装置、终端及介质 |
WO2021081913A1 (zh) * | 2019-10-31 | 2021-05-06 | 北京欧珀通信有限公司 | 向量查询方法、装置、电子设备及存储介质 |
CN111143597A (zh) * | 2019-12-13 | 2020-05-12 | 浙江大华技术股份有限公司 | 图像检索方法、终端及存储装置 |
CN113449132A (zh) * | 2021-08-26 | 2021-09-28 | 阿里云计算有限公司 | 一种向量检索方法及装置 |
CN114329029A (zh) * | 2021-10-28 | 2022-04-12 | 腾讯科技(深圳)有限公司 | 对象检索方法、装置、设备及计算机存储介质 |
CN114492788A (zh) * | 2021-12-31 | 2022-05-13 | 深存科技(无锡)有限公司 | 训练深度学习模型的方法和装置、电子设备及存储介质 |
CN114860868A (zh) * | 2022-03-08 | 2022-08-05 | 中国海洋大学 | 一种语义相似度向量再稀疏编码索引与检索方法 |
CN114911958A (zh) * | 2022-06-09 | 2022-08-16 | 电子科技大学 | 一种基于语义偏好的快速图像检索方法 |
CN114780781A (zh) * | 2022-06-17 | 2022-07-22 | 中船重工(武汉)凌久高科有限公司 | 一种基于模糊聚类和非对称距离计算的乘积量化方法 |
Non-Patent Citations (1)
Title |
---|
袁鑫攀, 汪灿飞: "CS-Chord:基于聚类分离的分布式高维向量索引", 计算机科学 * |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116595065A (zh) * | 2023-05-09 | 2023-08-15 | 上海任意门科技有限公司 | 内容重复识别方法、装置、***和存储介质 |
CN116595065B (zh) * | 2023-05-09 | 2024-04-02 | 上海任意门科技有限公司 | 内容重复识别方法、装置、***和存储介质 |
CN117951346A (zh) * | 2024-03-26 | 2024-04-30 | 深存科技(无锡)有限公司 | 面向向量数据库的混合加速架构 |
CN117951346B (zh) * | 2024-03-26 | 2024-05-28 | 深存科技(无锡)有限公司 | 面向向量数据库的混合加速架构 |
Also Published As
Publication number | Publication date |
---|---|
CN116010669B (zh) | 2023-12-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN116010669B (zh) | 向量库重训练的触发方法、装置、检索服务器及存储介质 | |
US11651286B2 (en) | Method and system for distributed machine learning | |
CN111247518B (zh) | 用于数据库分片的方法和*** | |
CN106776856B (zh) | 一种融合颜色特征与词汇树的车辆图像检索方法 | |
Yu et al. | Two-level data compression using machine learning in time series database | |
US11392596B2 (en) | Efficient inner product operations | |
WO2021129445A1 (zh) | 数据压缩方法及计算设备 | |
CN112994701B (zh) | 数据压缩方法、装置、电子设备及计算机可读介质 | |
US20220139085A1 (en) | Method and apparatus for video frame processing | |
CN108228709B (zh) | 数据存储方法和***、电子设备、程序和介质 | |
EP3115908A1 (en) | Method and apparatus for multimedia content indexing and retrieval based on product quantization | |
WO2020134819A1 (zh) | 一种搜索人脸的方法及相关装置 | |
CN108229358B (zh) | 索引建立方法和装置、电子设备、计算机存储介质 | |
CN111581421B (zh) | 图像检索方法、图像检索装置及图像检索*** | |
CN112749296A (zh) | 一种视频推荐方法、装置、服务器及存储介质 | |
CN106886783B (zh) | 一种基于区域特征的图像检索方法及*** | |
JP5637939B2 (ja) | 少ないコードブックの情報量によって高次元の特徴ベクトルを検索する検索装置及びプログラム | |
CN114780781B (zh) | 一种基于模糊聚类和非对称距离计算的乘积量化方法 | |
CN108764258B (zh) | 一种用于群体图像***的最优图像集选取方法 | |
CN116383437A (zh) | 一种基于卷积神经网络的跨模态素材推荐方法 | |
CN108256058B (zh) | 一种基于微型计算平台的实时响应大媒体近邻检索方法 | |
CN110633379A (zh) | 一种基于gpu并行运算的以图搜图***及方法 | |
CN115129949A (zh) | 向量范围检索的方法、装置、设备、介质及程序产品 | |
KR100824829B1 (ko) | 알지비 컬러 이미지 특징정보 추출에 메디언 필터링을이용한 이미지 검색 방법 | |
CN111143582A (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 | ||
GR01 | Patent grant |