一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

近似最邻近文本语义检索方法、装置、设备和存储介质与流程

2022-12-13 20:53:53 来源:中国专利 TAG:
1.本技术涉及文本数据处理的
技术领域
:,特别是涉及一种近似最邻近文本语义检索方法、装置、设备和存储介质。
背景技术
::2.大规模数据集上的近似最邻近检索(anns)任务日益成为数据库相关应用中的关键问题,而通过对高维数据进行编码,依据编码进行近似最邻近检索则成为了解决相关问题的一种有效方法。3.乘积量化(pq)方法为高维数据编码提供了一种有效的途径,能够快速准确地实现对高维数据的量化编码,利用哈希表结构,现有方法极大提升了基于pq编码的近似最邻近检索处理速度,实现了十亿规模数据集百毫秒级的近似最邻近检索操作。现有的基于乘积量化编码的检索策略设计中,通常将乘积量化编码作为检索加速的终点,认为乘积量化编码的短码值已经比原始数据更适合加速检索了,然而实际上,尽管量化编码的维度空间往往大幅低于原始数据的维度空间,但在编码空间内使用遍历方式进行近似最邻近检索的检索时间开销同样巨大,相关技术无法直接应用于实际生产场景(指纹匹配、人脸识别等)中,这就对基于编码的近似最邻近检索策略设计提出了要求。乘积量化方法中提出的ivfadc算法(非对称距离计算倒排索引机制),利用粗聚类和非对称距离计算策略对数据进行检索,非对称距离计算倒排索引机制在一定程度上解决了基于量化编码的近似最邻近检索问题,但由于未能最有效利用乘积量化编码的局部敏感特性,且检索过程涉及一定程度的洪泛操作,其检索效率依然有提升的空间。4.另外,对长文本数据进行语义层面的近似最邻近检索是信息处理领域的一个重要课题,通过对中文长文本进行分词、去停用词等预处理后,通过词袋模型、tf-idf(用于信息检索与数据挖掘的常用加权技术)等算法对文本进行向量化后,可通过计算向量欧氏距离、杰卡德距离、汉明距离等方式对文本的语义相似度进行计算。但在实际的向量距离计算过程中,基于向量距离在全部数据库内进行遍历式计算耗时极长,无法满足生产环境对文本相似度计算、近似最邻近检索任务的需求;同时由于文本向量化算法与图像标签向量化任务的差异,文本向量中不同标识位的权重往往有差别,部分出现较为频繁的词在区分文本相似度的层面无法贡献足够的差异度(如“高兴”一词对文本相似度的区分能力低于“欣喜若狂”),这种需要考虑权重的文本向量距离计算模式会进一步增加文本向量近似最邻近检索任务的整体耗时。5.多表乘积量化算法是对已有乘积量化编码的近似最邻近检索算法pqtable(通过哈希表快速搜索产品量化代码的算法)的一种优化,主要通过多表查询方式对向量乘积量化哈希检索算法进行速度优化,在具备同等检索准确度的情况下可提升检索速度1-2个数量级,能够高效解决数据向量的近似最邻近检索问题。多表乘积量化算法具备较好的可扩展性、参数可调优性质,但由于本身是应用于图像数据近似最邻近检索问题的算法,多表乘积量化算法没有针对向量标识位权重信息调整检索结果的能力,直接应用于文本检索的效果相对较差,有明显的优化空间。技术实现要素:6.基于此,有必要针对上述技术问题,提供一种能够在保证精确度前提下、大幅度提升在大规模文本数据库中进行基于语义的文本近似最邻近检索速度的近似最邻近文本语义检索方法、装置、计算机设备和存储介质。7.一方面,提供一种近似最邻近文本语义检索方法,所述方法包括:8.步骤a:获取待检索文本数据,采用词袋策略对所述待检索文本数据进行预处理生成文本向量;9.步骤b:计算所述文本向量在所述文本库中权重;10.步骤c:对所述文本向量进行乘积量化编码处理,生成乘积量化编码数据;11.步骤d:基于所述权重和所述乘积量化编码数据,利用多表乘积量化算法对所述文本向量进行处理,生成近似最邻近文本语义检索结果集。12.在其中一个实施例中,还包括:在采用词袋策略对所述文本数据进行预处理生成文本向量之前,所述方法还包括:从预设的文本库中提取文本数据;对所述文本数据进行分词处理,统计所有出现的词汇,并去除停用词,基于预设规则选取定量的词汇作为标记位。13.在其中一个实施例中,还包括:所述获取待检索文本数据,采用词袋策略对所述待检索文本数据进行预处理生成文本向量包括:获取待检索文本数据;对所述待检索文本数据进行分词处理,统计所有出现的词汇,并去除停用词;验证所述标记位中是否包含去除停用词后的待检索文本数据相关词汇;对包含在所述标记位内的词汇进行编码,生成对应的文本向量。14.在其中一个实施例中,还包括:所述计算所述文本向量在所述文本库中权重包括:统计不同词汇在所述文本库中的出现频率;基于不同词汇的出现频率,计算所述词汇的权重,所述权重的计算公式为:15.w=e^(-p)16.其中,p表示词频,w表示权重;17.定义所有标记位词汇组成的权重之和为所述标记位组成的段落i的权重,记为wi。18.在其中一个实施例中,还包括:所述对所述文本向量进行乘积量化编码处理,生成乘积量化编码数据包括:对所述文本向量进行分段处理;基于每个分段中的数据进行聚类并选取k个聚类核心;选取与所述聚类核心最邻近的向量分段,采用对应的聚类核心编号对所述向量分段进行量化编码,生成乘积量化编码数据。19.在其中一个实施例中,还包括:所述基于所述权重和所述乘积量化编码数据,利用多表乘积量化算法对所述文本向量进行处理,生成近似最邻近文本语义检索结果集包括:利用n个哈希桶将所述乘积量化编码数据进行分段存储在每个哈希桶内,利用哈希表查表机制与非对称距离编码算法对哈希编码表内的乘积量化编码数据进行非对称距离检索及排序,生成近似最邻近文本语义检索结果集;通过与或运算从所述近似最邻近文本语义检索结果集中筛选出符合检索返回数量要求的数据集,即为近似最近邻结果。20.在其中一个实施例中,还包括:所述非对称距离计算方法包括:比较所述文本向量与所述k个聚类核心的距离,选取最短的距离记为di;基于所述权重wi和所述距离di得到所述非对称距离,其计算公式为:21.r=di×wi22.其中,r表示非对称距离。23.另一方面,提供了一种近似最邻近文本语义检索装置,所述装置包括:24.预处理模块,用于提取文本库中文本数据,采用词袋策略对所述文本数据进行预处理生成文本向量;25.权重计算模块,用于计算所述文本向量在所述文本库中权重;26.乘积量化编码模块,用于对所述文本向量的相关数据进行乘积量化编码处理,生成乘积量化编码数据;27.近似最邻近检索模块,用于基于所述权重和所述乘积量化编码数据,利用多表乘积量化算法对所述文本向量进行处理,实现针对文本向量的快速近似最邻近检索。28.再一方面,提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现以下步骤:29.步骤a:获取待检索文本数据,采用词袋策略对所述待检索文本数据进行预处理生成文本向量;30.步骤b:计算所述文本向量在所述文本库中权重;31.步骤c:对所述文本向量进行乘积量化编码处理,生成乘积量化编码数据;32.步骤d:基于所述权重和所述乘积量化编码数据,利用多表乘积量化算法对所述文本向量进行处理,生成近似最邻近文本语义检索结果集。33.又一方面,提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:34.步骤a:获取待检索文本数据,采用词袋策略对所述待检索文本数据进行预处理生成文本向量;35.步骤b:计算所述文本向量在所述文本库中权重;36.步骤c:对所述文本向量进行乘积量化编码处理,生成乘积量化编码数据;37.步骤d:基于所述权重和所述乘积量化编码数据,利用多表乘积量化算法对所述文本向量进行处理,生成近似最邻近文本语义检索结果集。38.上述近似最邻近文本语义检索方法、装置、设备和存储介质,所述方法包括:获取待检索文本数据,采用词袋策略对所述待检索文本数据进行预处理生成文本向量;计算所述文本向量在文本库中权重;对所述文本向量进行乘积量化编码处理,生成乘积量化编码数据;基于所述权重和所述乘积量化编码数据,利用多表乘积量化算法对所述文本向量进行处理,生成近似最邻近文本语义检索结果集,本技术基于语义的文本最邻近检索问题,设计出一种快速近似最邻近检索方法,可以在保障最邻近检索精确度的前提下,大幅度提升在大规模文本数据库中进行基于语义的文本近似最邻近检索速度。附图说明39.图1为一个实施例中近似最邻近文本语义检索方法的应用环境图;40.图2为一个实施例中近似最邻近文本语义检索方法的流程示意图;41.图3为一个实施例中近似最邻近文本语义检索装置的结构框图;42.图4为一个实施例中计算机设备的内部结构图。具体实施方式43.为了使本技术的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本技术进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本技术,并不用于限定本技术。44.本技术提供的近似最邻近文本语义检索方法,可以应用于如图1所示的应用环境中。其中,终端102通过网络与设置于服务器104上的数据处理平台进行通信,其中,终端102可以但不限于是各种个人计算机、笔记本电脑、智能手机和平板电脑,服务器104可以用独立的服务器或者是多个服务器组成的服务器集群来实现。45.实施例146.在一个实施例中,如图2所示,提供了一种近似最邻近文本语义检索方法,以该方法应用于图1中的终端为例进行说明,包括以下步骤:47.s1:获取待检索文本数据,采用词袋策略对所述待检索文本数据进行预处理生成文本向量。48.需要说明的是,在采用词袋策略对所述文本数据进行预处理生成文本向量之前,所述方法还包括:49.从预设的文本库中提取文本数据,其中,文本库为服务器中存储的所有的相关数据;50.对所述文本数据进行分词处理,统计所有出现的词汇,并去除停用词(去除诸如“的”、“和”等对区分词义效果较差的词汇),基于预设规则选取定量的词汇作为标记位,其中,预设的规则可以是词汇出现的频率或其他的一些预设规则。51.进一步的,所述获取待检索文本数据,采用词袋策略对所述待检索文本数据进行预处理生成文本向量包括:52.获取待检索文本数据;53.对所述待检索文本数据进行分词处理,统计所有出现的词汇,并去除停用词,该步骤同上;54.验证所述标记位中是否包含去除停用词后的待检索文本数据相关词汇;55.对包含在所述标记位内的词汇进行编码,生成对应的文本向量;56.示例性的,词库里一共10k个词,常用词取了1024个,编码就是1024位的,如果一句话里面包含一些非常用词,就不编码,只编码取了常用词的这1024个里面的信息,停用词包括:词频过高的,比如“的、是、不”不编码(过于常见不影响相似度);词频过低的,比如“佶屈聱牙、逶迤”不编码(过于稀疏算不出相似度)。例如,若文本中包含“春、夏、秋、冬、衣、食、住、行”八个标记位,文本1“春夏衣春食住”的文本编码为“21001110”,文本2“春秋住行行”的文本编码为“10100012”,其中,文本编码即为文本向量。57.s2:计算所述文本向量在所述文本库中权重。58.需要说明的是,对于文本检索任务,存在两方面问题的制约:一是用于构建文本向量的词汇应当较多出现于不同文本中,所以应选取词频相对较高的词汇;二是对停用词等词频过高的词汇(如“的”、“或”等),其对区分文本语义的贡献相对较差,所以在文本语义相似度计算过程中,应一定程度上基于较低词频的词汇进行计算。该步骤通过统计不同词汇在所述文本库中的出现频率,用于识别不同词汇的重要程度,具体为:59.统计不同词汇在所述文本库中的出现频率;60.基于不同词汇的出现频率,计算所述词汇的权重,所述权重的计算公式为:61.w=e^(-p)62.其中,p表示词频,w表示权重;63.定义所有标记位词汇组成的权重之和为所述标记位组成的段落i的权重,记为wi。64.s3:对所述文本向量进行乘积量化编码处理,生成乘积量化编码数据。65.具体的,对所述文本向量进行分段处理;66.基于每个分段中的数据进行聚类并选取k个聚类核心;67.选取与所述聚类核心最邻近的向量分段,采用对应的聚类核心编号对所述向量分段进行量化编码,生成乘积量化编码数据。68.示例性的,在本实施例中,针对文本向量编码长度较长、编码离散的特点,使用32位分段方案,使用k-means聚类算法形成256个聚类核心,具体的,对系统中使用的1024位文本编码,按照32位一段,将其分成32个分组,文本向量1在8个分组中分别距离最近的聚类核心,记为其8位乘积量化编码数据c(每位的编码值范围为0-255)。69.s4:基于所述权重和所述乘积量化编码数据,利用多表乘积量化算法对所述文本向量进行处理,生成近似最邻近文本语义检索结果集。70.具体的,利用n个哈希桶将所述乘积量化编码数据进行分段存储,示例性的,在本实施例中,使用4个哈希桶分段存储乘积量化编码,则每个哈希桶内会包含数据的8个对应位置的0-255编码值。71.在每个哈希桶内,利用keygen计算模块,返回桶内对应编码位与被检索数据差异最小的一系列数据,keygen模块是利用哈希表查表机制与非对称距离编码算法对哈希编码表内的乘积量化编码数据进行非对称距离检索及排序,生成近似最邻近文本语义检索结果集,其中,所述非对称距离计算方法包括:72.比较所述文本向量与所述k个聚类核心的距离,选取最短的距离记为di;73.由于不同聚类中心所对应的文本词汇标记位具备不同权重,在计算这一距离的过程中,基于所述权重wi和所述距离di得到所述非对称距离,其计算公式为:74.r=di×wi75.其中,r表示非对称距离,即为加权后的文本编码与聚类中心距离,按照这一距离进行哈希表内的非对称距离检索和排序;76.将所有的检索结果合并,将合并结果按照距离进行排序。77.通过与或运算从所述近似最邻近文本语义检索结果集中筛选出符合检索返回数量要求的数据集,即为近似最近邻结果。78.其中,与或计算:首先将不同哈希桶反馈结果中都包含的数据集选出,再将各自独有的数据集按数量需求选出,在某个哈希桶反馈结果中出现,意味着该数据在哈希桶对应位上的编码与被检索数据相近;若多个桶内反馈数据都包含某个数据,则该数据与被检索数据的相关性相对来说更大,选取符合要求的数据集,即为近似最近邻结果。79.上述近似最邻近文本语义检索方法中,所述方法包括:获取待检索文本数据,采用词袋策略对所述待检索文本数据进行预处理生成文本向量;计算所述文本向量在所述文本库中权重;对所述文本向量进行乘积量化编码处理,生成乘积量化编码数据;基于所述权重和所述乘积量化编码数据,利用多表乘积量化算法对所述文本向量进行处理,生成近似最邻近文本语义检索结果集,本技术基于语义的文本最邻近检索问题,设计出一种快速近似最邻近检索方法,可以在保障最邻近检索精确度的前提下,大幅度提升在大规模文本数据库中进行基于语义的文本近似最邻近检索速度。80.应该理解的是,虽然图2的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图2中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。81.实施例282.在一个实施例中,如图3所示,提供了一种近似最邻近文本语义检索装置,包括:预处理模块、权重计算模块、乘积量化编码模块和近似最邻近检索模块,其中:83.预处理模块,用于提取文本库中文本数据,采用词袋策略对所述文本数据进行预处理生成文本向量;84.权重计算模块,用于计算所述文本向量在所述文本库中权重;85.乘积量化编码模块,用于对所述文本向量的相关数据进行乘积量化编码处理,生成乘积量化编码数据;86.近似最邻近检索模块,用于基于所述权重和所述乘积量化编码数据,利用多表乘积量化算法对所述文本向量进行处理,实现针对文本向量的快速近似最邻近检索。87.所述装置还包括:标记位生成模块,用于在采用词袋策略对所述文本数据进行预处理生成文本向量之前,从预设的文本库中提取文本数据,对所述文本数据进行分词处理,统计所有出现的词汇,并去除停用词,基于预设规则选取定量的词汇作为标记位。88.作为一种较优的实施方式,本发明实施例中,所述预处理模块具体用于:89.获取待检索文本数据;90.对所述待检索文本数据进行分词处理,统计所有出现的词汇,并去除停用词;91.验证所述标记位中是否包含去除停用词后的待检索文本数据相关词汇;92.对包含在所述标记位内的词汇进行编码,生成对应的文本向量。93.作为一种较优的实施方式,本发明实施例中,所述权重计算模块具体用于:94.统计不同词汇在所述文本库中的出现频率;95.基于不同词汇的出现频率,计算所述词汇的权重,所述权重的计算公式为:96.w=e^(-p)97.其中,p表示词频,w表示权重;98.定义所有标记位词汇组成的权重之和为所述标记位组成的段落i的权重,记为wi。99.作为一种较优的实施方式,本发明实施例中,所述乘积量化编码模块具体用于:100.对所述文本向量进行分段处理;101.基于每个分段中的数据进行聚类并选取k个聚类核心;102.选取与所述聚类核心最邻近的向量分段,采用对应的聚类核心编号对所述向量分段进行量化编码,生成乘积量化编码数据。103.作为一种较优的实施方式,本发明实施例中,所述近似最邻近检索模块具体用于:104.利用n个哈希桶将所述乘积量化编码数据进行分段存储;105.在每个哈希桶内,利用哈希表查表机制与非对称距离编码算法对哈希编码表内的乘积量化编码数据进行非对称距离检索及排序,生成近似最邻近文本语义检索结果集;106.通过与或运算从所述近似最邻近文本语义检索结果集中筛选出符合检索返回数量要求的数据集,即为近似最近邻结果。107.其中,所述非对称距离计算方法包括:108.比较所述文本向量与所述k个聚类核心的距离,选取最短的距离记为di;109.基于所述权重wi和所述距离di得到所述非对称距离,其计算公式为:110.r=di×wi111.其中,r表示非对称距离。112.关于近似最邻近文本语义检索装置的具体限定可以参见上文中对于近似最邻近文本语义检索方法的限定,在此不再赘述。上述近似最邻近文本语义检索装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。113.实施例3114.在一个实施例中,提供了一种计算机设备,该计算机设备可以是终端,其内部结构图可以如图4所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口、显示屏和输入装置。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种近似最邻近文本语义检索方法。该计算机设备的显示屏可以是液晶显示屏或者电子墨水显示屏,该计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。115.本领域技术人员可以理解,图4中示出的结构,仅仅是与本技术方案相关的部分结构的框图,并不构成对本技术方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。116.在一个实施例中,提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现以下步骤:117.s1:获取待检索文本数据,采用词袋策略对所述待检索文本数据进行预处理生成文本向量;118.s2:计算所述文本向量在所述文本库中权重;119.s3:对所述文本向量进行乘积量化编码处理,生成乘积量化编码数据;120.s4:基于所述权重和所述乘积量化编码数据,利用多表乘积量化算法对所述文本向量进行处理,生成近似最邻近文本语义检索结果集。121.在一个实施例中,处理器执行计算机程序时还实现以下步骤:122.在采用词袋策略对所述文本数据进行预处理生成文本向量之前,从预设的文本库中提取文本数据,对所述文本数据进行分词处理,统计所有出现的词汇,并去除停用词,基于预设规则选取定量的词汇作为标记位。123.在一个实施例中,处理器执行计算机程序时还实现以下步骤:124.获取待检索文本数据;125.对所述待检索文本数据进行分词处理,统计所有出现的词汇,并去除停用词;126.验证所述标记位中是否包含去除停用词后的待检索文本数据相关词汇;127.对包含在所述标记位内的词汇进行编码,生成对应的文本向量。128.在一个实施例中,处理器执行计算机程序时还实现以下步骤:129.统计不同词汇在所述文本库中的出现频率;130.基于不同词汇的出现频率,计算所述词汇的权重,所述权重的计算公式为:131.w=e^(-p)132.其中,p表示词频,w表示权重;133.定义所有标记位词汇组成的权重之和为所述标记位组成的段落i的权重,记为wi。134.在一个实施例中,处理器执行计算机程序时还实现以下步骤:135.对所述文本向量进行分段处理;136.基于每个分段中的数据进行聚类并选取k个聚类核心;137.选取与所述聚类核心最邻近的向量分段,采用对应的聚类核心编号对所述向量分段进行量化编码,生成乘积量化编码数据。138.在一个实施例中,处理器执行计算机程序时还实现以下步骤:139.利用n个哈希桶将所述乘积量化编码数据进行分段存储;140.在每个哈希桶内,利用哈希表查表机制与非对称距离编码算法对哈希编码表内的乘积量化编码数据进行非对称距离检索及排序,生成近似最邻近文本语义检索结果集;141.通过与或运算从所述近似最邻近文本语义检索结果集中筛选出符合检索返回数量要求的数据集,即为近似最近邻结果。142.其中,所述非对称距离计算方法包括:143.比较所述文本向量与所述k个聚类核心的距离,选取最短的距离记为di;144.基于所述权重wi和所述距离di得到所述非对称距离,其计算公式为:145.r=di×wi146.其中,r表示非对称距离。147.实施例4148.在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:149.s1:获取待检索文本数据,采用词袋策略对所述待检索文本数据进行预处理生成文本向量;150.s2:计算所述文本向量在所述文本库中权重;151.s3:对所述文本向量进行乘积量化编码处理,生成乘积量化编码数据;152.s4:基于所述权重和所述乘积量化编码数据,利用多表乘积量化算法对所述文本向量进行处理,生成近似最邻近文本语义检索结果集。153.在一个实施例中,计算机程序被处理器执行时还实现以下步骤:154.在采用词袋策略对所述文本数据进行预处理生成文本向量之前,从预设的文本库中提取文本数据,对所述文本数据进行分词处理,统计所有出现的词汇,并去除停用词,基于预设规则选取定量的词汇作为标记位。155.在一个实施例中,计算机程序被处理器执行时还实现以下步骤:156.获取待检索文本数据;157.对所述待检索文本数据进行分词处理,统计所有出现的词汇,并去除停用词;158.验证所述标记位中是否包含去除停用词后的待检索文本数据相关词汇;159.对包含在所述标记位内的词汇进行编码,生成对应的文本向量。160.在一个实施例中,计算机程序被处理器执行时还实现以下步骤:161.统计不同词汇在所述文本库中的出现频率;162.基于不同词汇的出现频率,计算所述词汇的权重,所述权重的计算公式为:163.w=e^(-p)164.其中,p表示词频,w表示权重;165.定义所有标记位词汇组成的权重之和为所述标记位组成的段落i的权重,记为wi。166.在一个实施例中,计算机程序被处理器执行时还实现以下步骤:167.对所述文本向量进行分段处理;168.基于每个分段中的数据进行聚类并选取k个聚类核心;169.选取与所述聚类核心最邻近的向量分段,采用对应的聚类核心编号对所述向量分段进行量化编码,生成乘积量化编码数据。170.在一个实施例中,计算机程序被处理器执行时还实现以下步骤:171.利用n个哈希桶将所述乘积量化编码数据进行分段存储;172.在每个哈希桶内,利用哈希表查表机制与非对称距离编码算法对哈希编码表内的乘积量化编码数据进行非对称距离检索及排序,生成近似最邻近文本语义检索结果集;173.通过与或运算从所述近似最邻近文本语义检索结果集中筛选出符合检索返回数量要求的数据集,即为近似最近邻结果。174.其中,所述非对称距离计算方法包括:175.比较所述文本向量与所述k个聚类核心的距离,选取最短的距离记为di;176.基于所述权重wi和所述距离di得到所述非对称距离,其计算公式为:177.r=di×wi178.其中,r表示非对称距离。179.本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本技术所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(rom)、可编程rom(prom)、电可编程rom(eprom)、电可擦除可编程rom(eeprom)或闪存。易失性存储器可包括随机存取存储器(ram)或者外部高速缓冲存储器。作为说明而非局限,ram以多种形式可得,诸如静态ram(sram)、动态ram(dram)、同步dram(sdram)、双数据率sdram(ddrsdram)、增强型sdram(esdram)、同步链路(synchlink)dram(sldram)、存储器总线(rambus)直接ram(rdram)、直接存储器总线动态ram(drdram)、以及存储器总线动态ram(rdram)等。180.以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。181.以上所述实施例仅表达了本技术的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本技术构思的前提下,还可以做出若干变形和改进,这些都属于本技术的保护范围。因此,本技术专利的保护范围应以所附权利要求为准。当前第1页12当前第1页12
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献