[发明专利]一种高维向量不等长序列相似度快速计算系统有效
申请号: | 201910608151.8 | 申请日: | 2019-07-08 |
公开(公告)号: | CN110413647B | 公开(公告)日: | 2021-04-06 |
发明(设计)人: | 龙凌云;寇亚孟 | 申请(专利权)人: | 上海鸿翼软件技术股份有限公司 |
主分类号: | G06F16/2455 | 分类号: | G06F16/2455;G06F16/2458 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 200233 上海市*** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明涉及一种高维向量不等长序列相似度快速计算系统,包括数据库模块、高维向量序列数据集输入模块、查询向量序列输入模块、高维向量不等长序列相似度快速计算模块、计算结果输出模块。数据库模块用于存储数据,高维向量不等长序列相似度快速计算模块对原始数据进行处理生成摘要,基于全局索引和二分查找在保证计算精度的同时实现相似度的快速计算,通过计算结果输出模块生成报告。 | ||
搜索关键词: | 一种 向量 不等 序列 相似 快速 计算 系统 | ||
【主权项】:
1.一种高维向量不等长序列相似度快速计算系统,其特征在于,包括数据库模块(A)、高维向量序列数据集输入模块(B)、查询向量序列输入模块(C)、高维向量不等长序列相似度快速计算模块(D)、计算结果输出模块(E);所述高维向量不等长序列相似度快速计算模块(D),包括数据处理模块(1)、自定义控制模块(2)、摘要生成模块(3)、相似度快速计算模块(4);所述数据库模块(A)接收所述高维向量序列数据集输入模块(B)传输的大量高维向量序列数据集,并转换为统一的数据格式存储至所述数据库模块(A),每一个高维向量序列数据集与数据库中的表名一一对应,表名是唯一值;所述数据库模块(A)与高维向量不等长序列相似度快速计算模块(D)进行通信,所述高维向量不等长序列相似度快速计算模块(D)通过接口访问所述数据库模块(A)中的数据,并通过接口访问所述数据库模块(A)中的不同表中的数据并进行增、删、改、查操作;所述高维向量序列数据集输入模块(B)为用户提供了高维数据快速导入的接口,用户根据所述高维向量序列数据集输入模块(B)要求的文件格式,将任意长度任意维度的高维向量序列数据集导入到所述高维向量序列数据集输入模块(B);导入数据集的时候,用户根据自己的需求,选择新建表名导入,即在所述数据库模块(A)中创建一张新的表存储数据集,也可选择将数据集插入或部分插入所述数据库模块(A)中;所述查询向量序列输入模块(C)与所述高维向量不等长序列相似度快速计算模块(D)进行通信,用户通过所述查询向量序列输入模块(C)输入其需要查询的高维向量不等长序列,查询到的高维向量不等长序列会被传输至所述高维向量不等长序列相似度快速计算模块(D)进行相似度计算;所述高维向量不等长序列相似度快速计算模块(D),接收所述查询向量序列输入模块(C)输出的待查询数据,也可通过数据接口对所述数据库模块(A)进行数据的增、删、改、查操作,并将相似度快速计算的结果输出至所述计算结果输出模块(E);所述高维向量不等长序列相似度快速计算模块(D),包括数据处理模块(1)、自定义控制模块(2)、摘要生成模块(3)、相似度快速计算模块(4);所述数据处理模块(1),定义与所述数据库模块(A)进行通信的数据接口,通过数据接口实现对所述数据库模块(A)的所有表中的所有数据的增、删、改、查操作;在进行相似度计算时,所述数据处理模块(1)将数据传输至所述摘要生成模块(3);所述自定义控制模块(2)与所述摘要生成模块(3)进行通信,通过所述摘要生成模块(3)修改向量映射的整数长度,默认长度是64位,在相似度计算精确度要求高的场景下,对长度进行调整,长度为128位或256位,长度会输出到所述摘要生成模块(3);所述摘要生成模块(3)接收所述数据处理模块(1)输出的数据,对高维向量进行降维处理,具体过程为:对数据集中当前序列的所有向量分量E,找到每个向量在每个维度的中位数,由每个维度的中位数构成一个新的向量E(mean);对数据集中当前序列的所有向量分量E的每个维度进行二值化处理:当维度值小于向量E(mean)对应的维度值,则此维度值取0,否则取1;当所述自定义控制模块(2)设置的长整数位数为64位时,将二值化的向量E的维度平均分配到64位长整数的64个位上,令M、N为整数,当维度N大于64位时,需要将多个维度对应到一个位上时,处理方法为:当需要将M个维度映射到一个位上时,则当[M/2]个维度一下的值为1时,此位取0,否则取1;对于每个N维向量构成的不等长序列,将其映射为一个等长的长整数序列,每个长整数对应的权重W(k)与映射前的向量权重一样,维持不变;对长整数序列排序时,应同时调整权重排序,保证权重和长整数的映射关系不变;最后生成一个长整数序列和权重值数列,其中长整数序列已排序,对序列集的所有向量序列及待查询向量序列应预先计算一遍,生成对应的带权重长整数序列;所述相似度快速计算模块(4),接收所述所述摘要生成模块(3)输出的摘要数据计算待查询序列摘要与数据集序列摘要的相似度,具体过程为:对待查询序列摘要中的每个长整数数值m,在数据集序列摘要中执行二分查找,直到找到距离最近的长整数n;对整数m和n执行异或计算,通过硬件指令计算统计值为1的位数;计算相似度值,相似度值为对待查询序列的每个整数分量的异或结果,并进行位1计数值加权累加后,除以总权重值,再除以总有效位数,得到一个介于0(包括0)到1(包括1)间的数值,数值近似作为待查询序列与数据集序列的相似度值;所述计算结果输出模块(E)接收所述高维向量不等长序列相似度快速计算模块(D)输出的计算结果,用户通过所述计算结果输出模块(E)查看数据集序列及待查询序列的基本信息,相似度计算结果、相似度计算精度、与待查询序列相似度最近的前p个序列,其中p为自然数。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海鸿翼软件技术股份有限公司,未经上海鸿翼软件技术股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201910608151.8/,转载请声明来源钻瓜专利网。