一种样本查找方法及装置与流程

文档序号:14923573发布日期:2018-07-13 08:05阅读:180来源:国知局

本申请涉及数据处理技术领域,特别涉及一种样本查找方法及装置。



背景技术:

数据处理相关工作中,数据查找往往占据着比较重要的位置。

常用地,可以采用树形结构进行数据查找,但是目前树形结构中节点间存在较多冲突,导致数据查找过程中需要进行更多次数的比较,查找效率低。



技术实现要素:

为解决上述技术问题,本申请实施例提供一种样本查找方法及装置,以达到提高查找效率的目的,技术方案如下:

一种样本查找方法,包括:

将待查样本输入预先训练的神经网络模型,得到所述神经网络模型输出的映射值,所述神经网络模型为利用训练样本及任意两个输出结果之间的差值不小于1的训练目标训练得到;

在一级映射表中查找与所述映射值对应的值,作为一级映射结果;

在二级映射表中查找与所述一级映射结果对应的值,作为二级映射结果;

若所述二级映射结果为-1,则确定样本集合中不存在所述待查样本;

若所述二级映射结果为有效哈希值,则确定所述样本集合中存在所述待查样本。

优选的,所述确定所述样本集合中存在所述待查样本之前,还包括:

在三级映射表中查找与所述有效哈希值对应的样本,作为三级映射结果;

比较所述三级映射结果与所述待查样本是否相同;

若所述三级映射结果与所述待查样本相同,则确定所述样本集合中存在所述待查样本。

优选的,所述神经网络模型的训练过程,包括:

将各个训练样本及各个所述训练样本各自对应的权重输入神经网络模型,得到所述神经网络模型输出的各个所述训练样本与各自对应权重的乘积,作为各个所述训练样本的映射值;

对各个所述训练样本的映射值进行排序,排序后的得到有序输出值组;

计算排序后的各个所述训练样本的映射值中任意两个相邻映射值的差值;

若所述任意两个相邻映射值的差值小于1,则对所述任意两个相邻映射值的差值小于1的映射值对应的训练样本的权重进行调整,并返回执行将各个训练样本及各个所述训练样本各自对应的权重输入神经网络模型的步骤,直至排序后的各个所述训练样本的映射值中任意两个相邻映射值的差值均不小于1。

优选的,所述对所述任意两个相邻映射值的差值小于1的映射值对应的训练样本的权重进行调整,包括:

对所述任意两个相邻映射值的差值小于1,且所述任意两个相邻映射值的差值最小的映射值对应的训练样本的权重进行调整。

优选的,所述一级映射表的确定过程,包括:

对所述神经网络模型输出的各个所述训练样本的映射值进行取整运算,得到各个所述训练样本的第一整数映射值;

对各个所述训练样本的第一整数映射值进行排序;

从排序后的各个所述训练样本的第一整数映射值中确定最小整数映射值和最大整数映射值;

将各个所述训练样本的第一整数映射值减去所述最小整数映射值,得到各个所述训练样本的第二整数映射值;

将各个所述训练样本的第二整数映射值及各个所述训练样本组成映射表,作为所述一级映射表。

优选的,所述二级映射表的确定过程,包括:

将所述一级映射表中的各个所述第二整数映射值依次映射为1至n中的数值,作为k个二级映射元素中与所述一级映射表存在映射关系的二级映射元素的有效哈希值,所述n为大于1的整数;

将k个所述二级映射元素中与所述一级映射表不存在映射关系的二级映射元素的值映射为-1,得到所述二级映射表,所述k为大于所述n的整数。

优选的,所述三级映射表的确定过程,包括:

将所述二级映射表中的有效哈希值依次映射为对应的样本,得到所述三级映射表。

优选的,所述将待查样本输入预先训练的神经网络模型,包括:

将所述待查样本的超长位串属性值输入预先训练的神经网络模型;

所述待查样本的超长位串属性值的确定过程,包括:

将所述待查样本的各个属性值转换为位串属性值;

从各个所述位串属性值中确定出最大的位串属性值;

将所述最大的位串属性值对应的位串属性长度作为所述待查样本的定长位串属性长度;

按照所述定长位串属性长度,将各个所述位串属性值转换为定长位串属性值;

将各个所述定长位串属性值进行连接,得到所述超长位串属性值。

一种样本查找装置,包括:

第一确定模块,用于将待查样本输入预先训练的神经网络模型,得到所述神经网络模型输出的映射值,所述神经网络模型为利用训练样本及任意两个输出结果之间的差值不小于1的训练目标训练得到;

第二确定模块,用于在一级映射表中查找与所述映射值对应的值,作为一级映射结果;

第三确定模块,用于在二级映射表中查找与所述一级映射结果对应的值,作为二级映射结果;

若所述二级映射结果为-1,则执行第四确定模块,若所述二级映射结果为有效哈希值,则执行第五确定模块;

所述第四确定模块,用于确定样本集合中不存在所述待查样本;

所述第五确定模块,用于确定所述样本集合中存在所述待查样本。

优选的,所述装置还包括:

第六确定模块,用于在三级映射表中查找与所述有效哈希值对应的样本,作为三级映射结果;

比较模块,用于比较所述三级映射结果与所述待查样本是否相同,若所述三级映射结果与所述待查样本相同,则执行第七确定模块;

所述第七确定模块,用于确定所述样本集合中存在所述待查样本。

优选的,所述装置还包括:

神经网络模型训练模块,用于执行以下步骤:

将各个训练样本及各个所述训练样本各自对应的权重输入神经网络模型,得到所述神经网络模型输出的各个所述训练样本与各自对应权重的乘积,作为各个所述训练样本的映射值;

对各个所述训练样本的映射值进行排序,排序后的得到有序输出值组;

计算排序后的各个所述训练样本的映射值中任意两个相邻映射值的差值;

若所述任意两个相邻映射值的差值小于1,则对所述任意两个相邻映射值的差值小于1的映射值对应的训练样本的权重进行调整,并返回执行将各个训练样本及各个所述训练样本各自对应的权重输入神经网络模型的步骤,直至排序后的各个所述训练样本的映射值中任意两个相邻映射值的差值均不小于1。

优选的,所述神经网络模型训练模块对所述任意两个相邻映射值的差值小于1的映射值对应的训练样本的权重进行调整的过程,具体包括:

对所述任意两个相邻映射值的差值小于1,且所述任意两个相邻映射值的差值最小的映射值对应的训练样本的权重进行调整。

优选的,所述装置还包括:一级映射表确定模块,用于执行以下步骤:

对所述神经网络模型输出的各个所述训练样本的映射值进行取整运算,得到各个所述训练样本的第一整数映射值;

对各个所述训练样本的第一整数映射值进行排序;

从排序后的各个所述训练样本的第一整数映射值中确定最小整数映射值和最大整数映射值;

将各个所述训练样本的第一整数映射值减去所述最小整数映射值,得到各个所述训练样本的第二整数映射值;

将各个所述训练样本的第二整数映射值及各个所述训练样本组成映射表,作为所述一级映射表。

优选的,所述装置还包括:

二级映射表确定模块,用于执行以下步骤:

将所述一级映射表中的各个所述第二整数映射值依次映射为1至n中的数值,作为k个二级映射元素中与所述一级映射表存在映射关系的二级映射元素的有效哈希值,所述n为大于1的整数;

将k个所述二级映射元素中与所述一级映射表不存在映射关系的二级映射元素的值映射为-1,得到所述二级映射表,所述k为大于所述n的整数。

优选的,所述装置还包括:

三级映射表确定模块,用于将所述二级映射表中的有效哈希值依次映射为对应的样本,得到所述三级映射表。

优选的,所述第一确定模块将待查样本输入预先训练的神经网络模型的过程,具体包括:

将所述待查样本的超长位串属性值输入预先训练的神经网络模型;

所述装置还包括:第八确定模块,用于执行以下步骤:

将所述待查样本的各个属性值转换为位串属性值;

从各个所述位串属性值中确定出最大的位串属性值;

将所述最大的位串属性值对应的位串属性长度作为所述待查样本的定长位串属性长度;

按照所述定长位串属性长度,将各个所述位串属性值转换为定长位串属性值;

将各个所述定长位串属性值进行连接,得到所述超长位串属性值。

与现有技术相比,本申请的有益效果为:

在本申请中,所述神经网络模型为利用训练样本及任意两个输出结果之间的差值不小于1的训练目标训练得到,可以保证神经网络模型输出的各个映射值各不相同即各个映射值之间不存在冲突,进而保证神经网络模型输出的待查样本的映射值唯一,在神经网络模型输出的待查样本的映射值唯一的基础上,可以减少映射值的比较次数及一级映射结果的比较次数,进而减少待查样本的整体比较次数,提高查找效率。

附图说明

为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。

图1是本申请提供的样本查找方法的一种流程图;

图2是本申请提供的样本查找方法的另一种流程图;

图3是本申请提供的一级映射表的结构示意图;

图4是本申请提供的二级映射表的结构示意图;

图5是本申请提供的三级映射表的结构示意图;

图6是本申请提供的样本查找过程中完整映射关系的示意图;

图7是本申请提供的样本查找装置的一种逻辑结构示意图。

具体实施方式

下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。

本申请实施例公开了一种样本查找方法,通过将待查样本输入预先训练的神经网络模型,得到所述神经网络模型输出的映射值,所述神经网络模型为利用训练样本及任意两个输出结果之间的差值不小于1的训练目标训练得到,及在一级映射表中查找与所述映射值对应的值,作为一级映射结果,及在二级映射表中查找与所述一级映射结果对应的值,作为二级映射结果,及若所述二级映射结果为-1,则确定样本集合中不存在所述待查样本,及若所述二级映射结果为有效哈希值,则确定所述样本集合中存在所述待查样本,实现样本的查找。

接下来对本实施例公开的样本查找方法进行介绍,请参见图1,可以包括:

步骤s11、将待查样本输入预先训练的神经网络模型,得到所述神经网络模型输出的映射值。

所述神经网络模型为利用训练样本及任意两个输出结果之间的差值不小于1的训练目标训练得到。

步骤s12、在一级映射表中查找与所述映射值对应的值,作为一级映射结果。

一级映射表可以理解为:将样本集合中各个样本无冲突的映射到1至k中的相应数值中,得到的映射表。k为大于1的整数。

步骤s13、在二级映射表中查找与所述一级映射结果对应的值,作为二级映射结果。

二级映射表可以根据上述一级映射表进行确定。具体地,可以对一级映射表中的数值进行映射,得到二级映射表。

步骤s14、若所述二级映射结果为-1,则确定样本集合中不存在所述待查样本。

步骤s15、若所述二级映射结果为有效哈希值,则确定所述样本集合中存在所述待查样本。

需要说明的是,有效哈希值至少为非-1的数值,一般地,有效哈希值为不小于1的整数。

在本申请中,所述神经网络模型为利用训练样本及任意两个输出结果之间的差值不小于1的训练目标训练得到,可以保证神经网络模型输出的各个映射值各不相同即各个映射值之间不存在冲突,进而保证神经网络模型输出的待查样本的映射值唯一,在神经网络模型输出的待查样本的映射值唯一的基础上,可以减少映射值的比较次数及一级映射结果的比较次数,进而减少待查样本的整体比较次数,提高查找效率。

进一步地,本申请采用二级映射方式,进行样本的查找,可以提高查找的准确度。

在本申请的另一个实施例中,提供了另外一种样本查找方法,请参见图2,可以包括:

步骤s21、将待查样本输入预先训练的神经网络模型,得到所述神经网络模型输出的映射值。

所述神经网络模型为利用训练样本及任意两个输出结果之间的差值不小于1的训练目标训练得到。

步骤s22、在一级映射表中查找与所述映射值对应的值,作为一级映射结果。

步骤s23、在二级映射表中查找与所述一级映射结果对应的值,作为二级映射结果。

步骤s24、若所述二级映射结果为-1,则确定样本集合中不存在所述待查样本。

步骤s21-s24与前述实施例中的步骤s11-s14相同,步骤s21-s24的详细过程可以参见前述实施例中步骤s11-s14的介绍,在此不再赘述。

步骤s25、若所述二级映射结果为有效哈希值,则在三级映射表中查找与所述有效哈希值对应的样本,作为三级映射结果。

三级映射表可以根据上述二级映射表进行确定。具体地,三级映射表可以对二级映射表中的数值进行映射,得到三级映射表。

步骤s26、比较所述三级映射结果与所述待查样本是否相同。

若相同,则执行步骤s27,若不相同,则执行步骤s28。

步骤s27、确定所述样本集合中存在所述待查样本。

步骤s28、确定所述样本集合中不存在所述待查样本。

本实施例采用三级映射方式,进行样本的查找,可以进一步提高查找的准确度。

在本申请的另一个实施例中,对所述神经网络模型的训练过程进行介绍,具体可以包括:

a1、将各个训练样本及各个所述训练样本各自对应的权重输入神经网络模型,得到所述神经网络模型输出的各个所述训练样本与各自对应权重的乘积,作为各个所述训练样本的映射值。

可选的,为了加快模型训练速度,可以将各个训练样本各自的权重的初始值均设置为1。

a2、对各个所述训练样本的映射值进行排序,排序后的得到有序输出值组。

a3、计算排序后的各个所述训练样本的映射值中任意两个相邻映射值的差值。

a4、若所述任意两个相邻映射值的差值小于1,则对所述任意两个相邻映射值的差值小于1的映射值对应的训练样本的权重进行调整,并返回执行步骤a1,直至排序后的各个所述训练样本的映射值中任意两个相邻映射值的差值均不小于1。

排序后的各个所述训练样本的映射值中任意两个相邻映射值的差值均不小于1,可以保证神经网络模型输出的各个映射值之间不存在冲突。

其中,对所述任意两个相邻映射值的差值小于1的映射值对应的训练样本的权重进行调整的过程,具体可以包括:

所述任意两个相邻映射值的差值小于1的映射值对应的训练样本的权重与预设学习率相加,相加得到的权重为对应的训练样本的最新权重。

一般地,预设学习率可以设置为0.01或0.001。但是在本申请中,为了保证每次调整后,权重的值仍为整数,可以将预设学习率设置为1。

优选的,对所述任意两个相邻映射值的差值小于1的映射值对应的训练样本的权重进行调整的过程,可以包括:

对所述任意两个相邻映射值的差值小于1,且所述任意两个相邻映射值的差值最小的映射值对应的训练样本的权重进行调整。

对所述任意两个相邻映射值的差值小于1,且所述任意两个相邻映射值的差值最小的映射值对应的训练样本的权重进行调整后,返回执行步骤a1,若得到的差值最小的映射值不小于1,则可以保证所有样本对应的映射值的差值均不小于1。

基于前述介绍的神经网络模型的训练过程,在本申请的另一个实施例中,对所述一级映射表的确定过程进行介绍,具体可以包括:

b1、对所述神经网络模型输出的各个所述训练样本的映射值进行取整运算,得到各个所述训练样本的第一整数映射值。

由于神经网络模型输出的各个所述训练样本的映射值之间不存在冲突即各不相同,因此各个所述训练样本的第一整数映射值各不相同。

b2、对各个所述训练样本的第一整数映射值进行排序。

b3、从排序后的各个所述训练样本的第一整数映射值中确定最小整数映射值和最大整数映射值。

b4、将各个所述训练样本的第一整数映射值减去所述最小整数映射值,得到各个所述训练样本的第二整数映射值。

第二整数映射值可以为1至k个数值中的某一个数值。k为大于1的整数。

基于各个训练样本的第一整数映射值各不相同,各个所述训练样本的第二整数映射值各不相同。

b5、将各个所述训练样本的第二整数映射值及各个所述训练样本组成映射表,作为所述一级映射表。

基于各个所述训练样本的第二整数映射值各不相同,一级映射表中不存在冲突的映射关系。

一级映射表的结构可以参见图3,如图3所示,训练样本s1对应3,训练样本s2对应11,训练样本s3对应9,训练样本s4对应5,训练样本s5对应14,训练样本与数值的映射关系完全不存在冲突。

基于前述介绍的一级映射表的确定过程,在本申请的另一个实施例中,对所述二级映射表的确定过程进行介绍,具体可以包括:

c1、将所述一级映射表中的各个所述第二整数映射值依次映射为1至n中的数值,作为k个二级映射元素中与所述一级映射表存在映射关系的二级映射元素的有效哈希值,所述n为大于1的整数。

c2、将k个所述二级映射元素中与所述一级映射表不存在映射关系的二级映射元素的值映射为-1,得到所述二级映射表,所述k为大于所述n的整数。

完成步骤c1和c2,即可得到二级映射表。二级映射表中包括k个数值。

二级映射表的结构请参见图4,如图4所示,在二级映射表中,将一级映射表中各个第二整数映射值依次映射为1至n中的数值,作为k个二级映射元素中与所述一级映射表存在映射关系的二级映射元素的有效哈希值,分别为3映射为1、5映射为2、9映射为3、11映射为4、14映射为5;将k个所述二级映射元素中与所述一级映射表不存在映射关系的二级映射元素的值映射为-1。

基于前述介绍的二级映射表的确定过程,在本申请的另一个实施例中,对所述三级映射表的确定过程进行介绍,具体可以包括:

将所述二级映射表中的有效哈希值依次映射为对应的样本,得到所述三级映射表。

三级映射表的结构请参见图5,如图5所示,1对应样本s1、2对应样本s4、3对应样本s3、4对应样本s2、5对应样本s5。

需要说明的是,基于前述神经网络模型、一级映射表、二级映射表和三级映射表的确定过程,并结合图3-5,本申请提供的样本查找方法中涉及的完整映射关系可以参见图6。

基于前述各个实施例的内容,对所述将待查样本输入预先训练的神经网络模型进行介绍,具体可以包括:

将所述待查样本的超长位串属性值输入预先训练的神经网络模型。

将所述待查样本的超长位串属性值输入预先训练的神经网络模型,可以加快映射的速度,提高映射的效率。

其中,所述待查样本的超长位串属性值的确定过程,可以包括

d1、将所述待查样本的各个属性值转换为位串属性值。

位串属性值可以理解为:离散数值。离散数值可以包括但不局限于二进制数。

现对将所述待查样本的各个属性值转换为位串属性值的过程进行介绍,具体可以包括:

待查样本的属性值为离散数值:

可以直接将待查样本的属性值转为二进制数。

若待查样本为字符串,则将每一个字符均看作是一个属性,则属性的取值为字符。可以直接使用各个字符的ascii码值为作为字符串的各个属性值,再将各个属性值转为二进制数。

若待查样本为字符,则将字符本身的ascii码值为作为字符的属性值,再将属性值转为二进制数。例如,字符’a’对应的ascii码值为92,则对应的位串属性值为[1,1,0,0,0,0,1]。

待查样本的属性值为为连续数值:

可以对属性进行分段,将连续数值转为离散数值。

例如,学生的分数可以看作连续的值。可以按80,60将其分段为优秀、及格、不及格三类,这三类再有数值表示为0,1,2,再将新的类别对应的数值转换为二进制的表示。分别为[0]、[1]、[1,0]。

d2、从各个所述位串属性值中确定出最大的位串属性值。

d3、将所述最大的位串属性值对应的位串属性长度作为所述待查样本的定长位串属性长度。

d4、按照所述定长位串属性长度,将各个所述位串属性值转换为定长位串属性值。

按照所述定长位串属性长度,将各个所述位串属性值转换为定长位串属性值可以理解为:将各个所述位串属性值的左侧补0,完成对齐动作,使补齐后的位串属性值的长度为定长位串属性长度。例如,字符‘a’转换出来的位串属性值是[1,1,0,0,0,0,1],位串属性长度为7。但对于ascii码,有些扩展字符的码值大于128,则对应位串长度为8,则按照位串属性长度为8,对字符’a’对应的位串属性值的左侧补0,补齐后的字符’a’对应的位串属性值为:[0,1,1,0,0,0,0,1]。

又如,如果学生的成绩分为三类,分别为0,1,2,位串属性值分别为

[0]、[1]、[1,0],由于2为最大值,对应位串属性长度即为最长,所以取其长度为定长位串属性长度,长度为2。所有样本的该属性位串均需对齐到该长度,对齐后,0,1,2对应的位串分别为[0,0]、[0,1]、[1,0]。

d5、将各个所述定长位串属性值进行连接,得到所述超长位串属性值。

与将所述待查样本的超长位串属性值输入预先训练的神经网络模型的实施方式相对应,为了加快神经网络模型的训练速度,前述实施例中a1、将各个训练样本及各个所述训练样本各自对应的权重输入神经网络模型可以包括:将各个训练样本的超长位串属性值及各个所述训练样本各自对应的权重的超长位串属性值输入神经网络模型。

各个训练样本的超长位串属性值及各个所述训练样本各自对应的权重的超长位串属性值的确定过程,可以参见待查样本的超长位串属性值的确定过程,在此不再赘述。

在本申请的另一个实施例中,对本申请提供的样本查找方法的时间分析进行介绍,具体可以包括:

在样本查找的过程,若需要进行三级映射,则:

第一级映射,可以看做基于神经网络和一级映射表实现。对于已经训练好的神经网络,该映射实际是一个函数:

y=wx

时间复杂度为o(1),即与集合本身的大小无关。

第二级映射是二级映射表的映射,从1~k到1~n的映射,实现基于定长数组,时间复杂度为o(1)。

第三级映射是根据三级映射表的映射,也是数组元素的字位,时间复杂度是o(1)。

最后一步,样本的比较,只需要比较一次。

接下来对本申请提供的样本查找装置进行介绍,下文描述的样本查找装置与上文描述的样本查找方法可相互对应参照。

请参见图7,其示出了本申请提供的样本查找装置的一种逻辑结构示意图,样本查找装置包括:第一确定模块11、第二确定模块12、第三确定模块13、第四确定模块14和第五确定模块15。

第一确定模块11,用于将待查样本输入预先训练的神经网络模型,得到所述神经网络模型输出的映射值,所述神经网络模型为利用训练样本及任意两个输出结果之间的差值不小于1的训练目标训练得到。

第二确定模块12,用于在一级映射表中查找与所述映射值对应的值,作为一级映射结果。

第三确定模块13,用于在二级映射表中查找与所述一级映射结果对应的值,作为二级映射结果。

若所述二级映射结果为-1,则执行第四确定模块14,若所述二级映射结果为有效哈希值,则执行第五确定模块15。

所述第四确定模块14,用于确定样本集合中不存在所述待查样本。

所述第五确定模块15,用于确定所述样本集合中存在所述待查样本。

本实施例中,上述样本查找装置还可以包括:

第六确定模块,用于在三级映射表中查找与所述有效哈希值对应的样本,作为三级映射结果;

比较模块,用于比较所述三级映射结果与所述待查样本是否相同,若所述三级映射结果与所述待查样本相同,则执行第七确定模块;

所述第七确定模块,用于确定所述样本集合中存在所述待查样本。

本实施例中,上述样本查找装置还可以包括:

神经网络模型训练模块,用于执行以下步骤:

将各个训练样本及各个所述训练样本各自对应的权重输入神经网络模型,得到所述神经网络模型输出的各个所述训练样本与各自对应权重的乘积,作为各个所述训练样本的映射值;

对各个所述训练样本的映射值进行排序,排序后的得到有序输出值组;

计算排序后的各个所述训练样本的映射值中任意两个相邻映射值的差值;

若所述任意两个相邻映射值的差值小于1,则对所述任意两个相邻映射值的差值小于1的映射值对应的训练样本的权重进行调整,并返回执行将各个训练样本及各个所述训练样本各自对应的权重输入神经网络模型的步骤,直至排序后的各个所述训练样本的映射值中任意两个相邻映射值的差值均不小于1。

本实施例中,所述神经网络模型训练模块对所述任意两个相邻映射值的差值小于1的映射值对应的训练样本的权重进行调整的过程,具体可以包括:

对所述任意两个相邻映射值的差值小于1,且所述任意两个相邻映射值的差值最小的映射值对应的训练样本的权重进行调整。

本实施例中,上述样本查找装置还可以包括:

一级映射表确定模块,用于执行以下步骤:

对所述神经网络模型输出的各个所述训练样本的映射值进行取整运算,得到各个所述训练样本的第一整数映射值;

对各个所述训练样本的第一整数映射值进行排序;

从排序后的各个所述训练样本的第一整数映射值中确定最小整数映射值和最大整数映射值;

将各个所述训练样本的第一整数映射值减去所述最小整数映射值,得到各个所述训练样本的第二整数映射值;

将各个所述训练样本的第二整数映射值及各个所述训练样本组成映射表,作为所述一级映射表。

本实施例中,上述样本查找装置还可以包括:

二级映射表确定模块,用于执行以下步骤:

将所述一级映射表中的各个所述第二整数映射值依次映射为1至n中的数值,作为k个二级映射元素中与所述一级映射表存在映射关系的二级映射元素的有效哈希值,所述n为大于1的整数;

将k个所述二级映射元素中与所述一级映射表不存在映射关系的二级映射元素的值映射为-1,得到所述二级映射表,所述k为大于所述n的整数。

本实施例中,上述样本查找装置还可以包括:

三级映射表确定模块,用于将所述二级映射表中的有效哈希值依次映射为对应的样本,得到所述三级映射表。

本实施例中,所述第一确定模块11将待查样本输入预先训练的神经网络模型的过程,具体可以包括:

将所述待查样本的超长位串属性值输入预先训练的神经网络模型。

相应地,上述样本查找装置还包括:第八确定模块,用于执行以下步骤:

将所述待查样本的各个属性值转换为位串属性值;

从各个所述位串属性值中确定出最大的位串属性值;

将所述最大的位串属性值对应的位串属性长度作为所述待查样本的定长位串属性长度;

按照所述定长位串属性长度,将各个所述位串属性值转换为定长位串属性值;

将各个所述定长位串属性值进行连接,得到所述超长位串属性值。

需要说明的是,本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。对于装置类实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。

最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本申请时可以把各单元的功能在同一个或多个软件和/或硬件中实现。

以上对本申请所提供的一种样本查找方法及装置进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1