【技术实现步骤摘要】
一种编码方法和装置
本申请涉及数据处理
,特别是涉及一种编码方法和装置。
技术介绍
大规模并行处理(MPP,MassivelyParallelProcessing)数据库是使用多个结构化查询语言(SQL,StructuredQueryLanguage)数据库节点搭建的数据仓库系统。在执行查询时,查询可以分散到多个SQL数据库节点上执行,再将查询结果汇总后返回给用户。在MPP数据库用于存储向量数据,MPP数据库中可以使用ApproximateNearestNeighborSearch(近似最近邻检索)进行查询目标向量。ANN检索是通过预先构建的索引快速检索高维空间中的最近的N个相邻向量,从而生成查询结果。索引一般是通过通过学习高维向量的空间分布特性,用更少的字节对向量编码而成,常见的向量编码包括积量化编码、标量化编码、LSH(LocalitySensitiveHashing,局部敏感哈希)编码等。上述的向量编码技术需要先针对编码数据训练出向量编码函数,再完成向量编码压缩。在MPP数据库中执行向量数据检索的场景下,未编码的数据会不断实时写入,以往的异步编码方式无法及时处理实时写入的向量数据。
技术实现思路
鉴于上述问题,提出了本申请实施例以便提供一种编码方法和装置以克服现有技术中异步编码方式无法及时处理实时写入的向量数据的问题。为了解决上述问题,本申请公开了一种编码方法,包括:获取向量数据;确定目标编码码本,所述目标编码码本由预设的编码函数生成;< ...
【技术保护点】
1.一种编码方法,包括:/n获取向量数据;/n确定目标编码码本,所述目标编码码本由预设的编码函数生成;/n采用所述目标编码码本对所述向量数据进行编码,生成编码数据;/n采用所述向量数据和所述编码函数训练所述预设的编码函数,生成已训练的编码函数;/n依据所述已训练的编码函数更新所述目标编码码本。/n
【技术特征摘要】
1.一种编码方法,包括:
获取向量数据;
确定目标编码码本,所述目标编码码本由预设的编码函数生成;
采用所述目标编码码本对所述向量数据进行编码,生成编码数据;
采用所述向量数据和所述编码函数训练所述预设的编码函数,生成已训练的编码函数;
依据所述已训练的编码函数更新所述目标编码码本。
2.根据权利要求1所述的方法,所述编码函数具有版本号;所述依据所述已训练的编码函数更新所述目标编码码本的步骤,包括:
确定已训练的编码函数;所述已训练的编码函数具有新的版本号;
采用所述已训练的编码函数,更新所述目标编码码本;更新的目标编码码本与所述新的版本号对应。
3.根据权利要求2所述的方法,所述依据所述已训练的编码函数更新所述目标编码码本的步骤,还包括:
确定训练前的编码函数为历史编码函数;
确定与所述历史编码函数对应的编码码本为历史编码码本。
4.根据权利要求2或3所述的方法,所述方法还包括:
获取待检索向量信息;
采用各个版本号对应的编码码本对所述待检索向量信息进行编码,生成待检索编码信息;
在所述编码数据中,确定与所述待检索编码信息匹配的目标编码信息;
基于所述目标编码信息,生成检索结果。
5.根据权利要求2或3所述的方法,在所述采用所述向量数据和所述编码函数训练所述预设的编码函数,生成已训练的编码函数的步骤之后,所述方法还包括:
确定所述编码函数的已训练次数;
判断所述已训练次数是否等于目标训练次数;
若否,则返回所述获取向量数据;
若是,则执行所述依据所述已训练的编码函数更新所述目标编码码本;
其中,所述目标训练次数为xy+1;x为预设的常数,y为当前训练的编码函数的版本号。
6.根据权利要求2或3所述的方法,所述方法还包括:
基于相同版本号的所述编码数据,生成编码数据块。
7.根据权利要求1或2或3所述的方法,所述向量数据包括一个或多个向量信息;在所述获取向量数据之后,所述方法还包括:
确定所述向量数据中当前向量信息个数;
在所述当前向量信息个数与预设个数阈值相等时,执行所述确定目标编码码本。
8.根据权利要求1或2或3所述的方法,所述方法还包括:
在无法确定所述目标编码码本时,存储所述向量数据;
采用所述向量数据训练初始编码函数;
采用所述初始编码函数,生成目标编码码本。
9.一种编码装置,包括
获取模块,用于获取向量数据;
确定模块,用于确定目标编码码本,所述目标编码码本由预设的编码函数生成;
生成模块,用于采用所述目标编码码本对所述向量数据进行编码,生成编码数据;
训练模块,用于采用所...
【专利技术属性】
技术研发人员:楼仁杰,陆元飞,李飞飞,占超群,魏闯先,
申请(专利权)人:阿里巴巴集团控股有限公司,
类型:发明
国别省市:开曼群岛;KY
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。