CN109829549A - 基于演化树的哈希学习方法及其无监督的在线哈希学习方法 - Google Patents
基于演化树的哈希学习方法及其无监督的在线哈希学习方法 Download PDFInfo
- Publication number
- CN109829549A CN109829549A CN201910088472.XA CN201910088472A CN109829549A CN 109829549 A CN109829549 A CN 109829549A CN 201910088472 A CN201910088472 A CN 201910088472A CN 109829549 A CN109829549 A CN 109829549A
- Authority
- CN
- China
- Prior art keywords
- tree
- node
- develops
- data
- hash
- 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.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/243—Classification techniques relating to the number of classes
- G06F18/24323—Tree-organised classifiers
Landscapes
- Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Theoretical Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Biology (AREA)
- Evolutionary Computation (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
- Image Analysis (AREA)
Abstract
本发明涉及一种基于演化树的哈希学习方法,通过数据集中的数据点对演化树进行训练,得到训练完成的演化树,对训练完成的演化树中除根节点外的所有节点进行初始化的海明码编码,使用贪心的路径编码策略对整棵演化树的保相似性损失函数进行优化,将保相似性损失函数最小值所对应的海明码编码作为演化树的每个叶子节点的哈希编码;计算某一数据点在演化树中的最佳匹配点,找到从根节点***出该数据点的最佳匹配点所对应的叶子节点的***路径,将该数据点的最佳匹配点***路径中对应的叶子节点的哈希编码进行有序组合,将其作为该数据点的哈希编码。还公开了一种无监督的在线哈希学习方法。该哈希方法能降低编码复杂度,具有较好的查询性能。
Description
技术领域
本发明涉及数据处理领域,特别涉及一种基于演化树的哈希学习方法及其无监督的在线哈希学习方法。
背景技术
随着互联网以及各类电子设备的快速发展,各类数据,例如文本、图像和视频正在飞速增长。在很多应用场景下,人们都需要从这样的大规模数据中检索相关内容。然而,在大规模数据中,查找给定查询点的精确最近邻所花费的计算时间是无法让人接受的。为了解决这个问题,最近有大量的研究已经致力于相似最近邻(Approximate NearestNeighbor,ANN)搜索,在大规模数据中,ANN检索的效果可以代替于精确最近邻检索,而且速度非常快。基于哈希学习的ANN检索是众多ANN检索技术中较为知名的一种,它结合机器学习机制将数据点映射到海明空间,用海明距离代替原始数据的欧式距离,在保证准确率的同时,大幅度的减少检索时间和存储代价。在近些年来,涌现出了许多优秀的哈希学习算法,根据学习模型是否利用样本的标签信息,可以分为无监督模型和监督模型。考虑到获取标签信息需要巨大的人工成本,因此无监督哈希学习算法得到了更广泛的应用。
一般来讲,目前主流的哈希算法分为两类:数据独立哈希和数据依赖哈希。在数据独立哈希中,哈希函数族的生成独立于数据集,其典型代表为局部敏感哈希(LocalitySensitive Hashing,LSH),它利用一组随机的哈希函数来建立哈希表,使得相似的数据点能够以较大的概率被映射到相似的哈希桶中,但其缺点是索引的建立过程是数据独立的,在实际大规模数据集的检索中,效果较差。数据依赖哈希又称为哈希学习,通过机器学习机制将数据映射为保相似性的二进制编码,是机器学习技术在数据检索领域一个典型的应用,哈希学习最重要的目的是实现哈希编码的保相似性,具体来说,在原始空间中距离较小的两个数据点在被映射到海明空间之后,仍然能保持较小的海明距离,对于距离远的数据点,在被映射之后,海明距离仍然保持较大。近些年来,许多哈希学习算法相继被提出,根据学习模型是否利用样本的标签信息,可以分为无监督哈希算法和带监督哈希算法。无监督哈希算法的著名代表有主成分哈希(Principal Component Analysis Hashing,PCAH)、迭代量化(Iterative Quantization,ITQ)、K均值哈希(K-Means Hash,KMH)等,其中PCAH使用主成分分析将输入数据空间投影到低维空间中,再将低维数据映射为哈希编码,ITQ试图寻找一种对原始数据最优的旋转方式,将原始数据映射为二进制编码时,量化损失最小,KMH从聚类的角度设计哈希编码,基本思想是,将数据聚成K类,类内数据采用矢量量化策略,统一量化为聚类中心点的值,此外,根据保相似性原则对每个聚类中心点进行编码。在查询阶段,将数据点x,y之间的距离近似为对应聚类中心的哈希码的汉明距离。带监督哈希算法主要包括RBM、BRE、MFH、IMH、MLH,虽然监督哈希显示出比无监督哈希法更高的搜索准确性,但是,他们的训练都需要标签信息,在海量数据时代,数据规模大,更新速度快,获取数据标签的获取常常需要巨大的人工成本,因此无监督哈希在实际应用更具有意义。然而绝大多数的无监督哈希算法需要一次性加载所有的数据,会占用大量的内存,无法适用于流式数据,并且相关研究较少。
发明内容
本发明所要解决的第一个技术问题是针对现有技术的现状,提供一种能够使演化树稳定收敛且降低编码复杂度的基于演化树的哈希学习方法。
本发明所要解决的第二个技术问题是针对现有技术的现状,提供一种采用上述基于演化树的哈希学习方法的无监督的在线哈希学习方法,该方法具有较好的查询性能且能应用于流式数据。
本发明解决上述第一个技术问题所采用的技术方案为:一种基于演化树的哈希学习方法,用于通过数据集X中的数据点xi对演化树进行训练,得到训练完成的演化树,对训练完成的演化树进行保相似性编码,得到演化树中每个叶子节点的哈希编码,并计算任一数据点在演化树上的最佳匹配点,得到任一数据点的哈希编码,其特征在于:包括以下步骤:
步骤1、创建一个演化树,其中,初始化的演化树只有一个根节点,对该根节点赋予权值向量;
步骤2、对根节点进行训练:将数据集中的所有数据点随机组成数据流,将该根节点作为该数据流中的第一个数据点的最佳匹配点,并记录根节点成为最佳匹配点的次数,转入步骤4;
步骤3、使用数据流中的第一个数据点对***完成的演化树的叶子节点进行训练:分别计算演化树中每个节点与该数据点之间的欧式距离,找到与该数据点对应的欧式距离最小的节点,判断该节点是否为叶子节点,如是,则将演化树中当前训练节点作为该数据点的最佳匹配点,记录演化树中的所有叶子节点成为最佳匹配点的次数,并转入步骤4;如否,转入步骤6;
步骤4、对演化树中的根节点和所有叶子节点分别依次执行如下操作:判断演化树中当前训练节点成为最佳匹配点的次数是否小于第一预设值,其中演化树中当前训练节点为根节点或任一叶子节点,如是,则更新演化树中当前训练节点的权值向量,并转入步骤6;如否,则转入步骤5;其中,演化树中当前训练节点的权值向量更新公式为:
wi(t+1)=x(t)
其中,wi(t+1)为演化树中当前训练节点更新后的权值向量,wi(t)为演化树中当前训练节点更新前的权值向量,x(t)为与演化树中当前训练节点配对的最佳匹配点的权值向量;
步骤5、判断演化树中当前训练节点的当前深度是否小于演化树的最大深度,演化树的最大深度为预设值,如是,则对演化树中的当前训练节点进行***,将演化树中的当前训练节点***成n个叶子节点,并对每个叶子节点赋予不同的权值向量,该***的节点记为躯干节点,重新组成数据流,并将此时组成数据流的次数重新计数,转入步骤3;如否,则此时的演化树为训练完成的演化树,并转入步骤8;其中,n个叶子节点的权值向量的计算公式为:
w′(t)=(1-β)w(t)+βr(t)
其中,w′(t)为新叶子节点的权值向量,w(t)为新叶子节点对应的躯干节点的权值向量,r(t)为与w(t)相同维度的随机单位向量,β为预设的超参数,用于控制随机扰动程度;
步骤6、判断该数据流中的数据点是否全部训练完,如否,使用数据流中的下一个数据点对演化树进行训练,继续记录演化树中所有节点成为最佳匹配点的次数,并转入步骤4;如是,转入步骤7;
步骤7、判断组成数据流的次数是否小于第二预设值,如是,则重新组成数据流,重新对演化树进行训练,并对演化树中的训练节点成为最佳匹配点的次数进行累计,并转入步骤4;如否,则此时的演化树为训练完成的演化树,并转入步骤8;
步骤8、对训练完成的演化树中除根节点外的所有节点进行初始化的海明码编码,使用贪心的路径编码策略对整棵演化树的保相似性损失函数进行优化,将保相似性损失函数最小值所对应的海明码编码作为演化树的每个叶子节点的哈希编码;
其中,优化目标为:
其中,E为整棵演化树的保相似性损失值,Wk为整棵演化树的躯干节点k的权值向量,Wk={w1,w2,...,wn},w1,w2,...,wn分别为躯干节点k***出的n个叶子节点的权值向量;N={W1,W2,...,Wc}为整棵演化树中所有躯干节点的集合;F(Wk)为每个躯干节点对应的叶子节点编码的保相似性损失函数,其中,wi为躯干节点k中的第i个叶子节点的权值向量,wj为躯干节点k中的第j个叶子节点的权值向量;d(wi,wj)表示叶子节点wi与叶子节点wj之间的欧式距离,λ为预设超参数,b(wi)表示叶子节点wi的海明码,b(wj)表示叶子节点wj的海明码,dh(b(wi),b(wj))表示b(wi)与b(wj)之间的海明距离;
步骤9、计算某一数据点在演化树中的最佳匹配点,找到从根节点***出该数据点的最佳匹配点所对应的叶子节点的***路径,并根据步骤8中得到的演化树中每个叶子节点的哈希编码,将该数据点的最佳匹配点***路径对应的叶子节点的哈希编码按照深度从小到大的方式进行有序组合,将其作为该数据点的哈希编码,该数据点的哈希编码表达式为:y=u1u2...udep-1,其中,u1为该数据点在演化树深度为2的对应节点上的哈希编码;u2为该数据点在演化树深度为3的对应节点上的哈希编码,dep为演化树的最大深度;udep-1为该数据点在演化树最大深度的对应节点上的哈希编码。
本发明解决上述第二个技术问题所采用的技术方案为:一种无监督的在线哈希学习方法,其特征在于:创建多棵演化树,并按照顺序组成森林,采用上述基于演化树的哈希学习方法对森林进行训练,将数据集中的数据点随机组成数据流,使用数据流中的第一个数据点按照先后顺序分别对该森林中的每一棵演化树进行训练:对森林中的每一棵演化树,从强度为1的泊松分布中随机采样一个数字,记为K,使用数据流中的数据点分别对每棵演化树训练K次;依次使用数据流中的数据点对该森林进行训练,训练完成后,对森林中每棵演化树的叶子节点分别进行保相似性编码,得到森林中每棵演化树的哈希编码,计算数据点xi在森林中每棵演化树上的最佳匹配点,并将数据点xi对应在每棵演化树上最佳匹配点的哈希编码按照顺序组成该数据点xi的哈希编码,其中,数据点xi的哈希编码表达式为:表示森林中第k棵演化树对数据点xi的编码,T表示森林中演化树的总数。
与现有技术相比,本发明的优点在于:通过对演化树进行哈希学***衡和稳定收敛,且通过贪心的路径编码策略对保相似性损失函数进行优化,实现子节点之间的局部保相似性;还通过在演化树的哈希学习方法的基础上,提出了森林的哈希学习方法,使用的编码长度更长,查询性能更好,且能应用于流式数据。
附图说明
图1为本发明实施例中演化树的训练流程图;
图2为本实施例中的具体原始数据空间分布;
图3为本实施例中的演化树初始阶段图;
图4为图3中演化树第一次***之后的第二阶段图;
图5为图3中演化树第二次***之后的第三阶段图;
图6为图5中演化树的结构图;
图7为图3中演化树训练完成之后的叶子节点分布图。
具体实施方式
以下结合附图实施例对本发明作进一步详细描述。
如图1所示,一种基于演化树的哈希学习方法,用于通过数据集X中的数据点xi对演化树进行训练,得到训练完成的演化树,对训练完成的演化树进行保相似性编码,得到演化树中每个叶子节点的哈希编码,并计算任一数据点在演化树上的最佳匹配点,得到任一数据点的哈希编码,包括以下步骤:
步骤1、创建一个演化树,其中,初始化的演化树只有一个根节点,对该根节点赋予权值向量;
步骤2、对根节点进行训练:将数据集中的所有数据点随机组成数据流,将该根节点作为该数据流中的第一个数据点的最佳匹配点,并记录根节点成为最佳匹配点的次数,转入步骤4;
步骤3、使用数据流中的第一个数据点对***完成的演化树的叶子节点进行训练:分别计算演化树中每个节点与该数据点之间的欧式距离,找到与该数据点对应的欧式距离最小的节点,判断该节点是否为叶子节点,如是,则将演化树中当前训练节点作为该数据点的最佳匹配点,记录演化树中的所有叶子节点成为最佳匹配点的次数,并转入步骤4;如否,转入步骤6;
步骤4、对演化树中的根节点和所有叶子节点分别依次执行如下操作:判断演化树中当前训练节点成为最佳匹配点的次数是否小于第一预设值,其中演化树中当前训练节点为根节点或任一叶子节点,如是,则更新演化树中当前训练节点的权值向量,并转入步骤6;如否,则转入步骤5;其中,演化树中当前训练节点的权值向量更新公式为:
wi(t+1)=x(t)
其中,wi(t+1)为演化树中当前训练节点更新后的权值向量,wi(t)为演化树中当前训练节点更新前的权值向量,x(t)为与演化树中当前训练节点配对的最佳匹配点的权值向量;本实施例中,第一预设值为60;
步骤5、判断演化树中当前训练节点的当前深度是否小于演化树的最大深度,演化树的最大深度为预设值,如是,则对演化树中的当前训练节点进行***,将演化树中的当前训练节点***成n个叶子节点,并对每个叶子节点赋予不同的权值向量,该***的节点记为躯干节点,重新组成数据流,并将此时组成数据流的次数重新计数,转入步骤3;如否,则此时的演化树为训练完成的演化树,并转入步骤8;其中,n个叶子节点的权值向量的计算公式为:
w′(t)=(1-β)w(t)+βr(t)
其中,w′(t)为新叶子节点的权值向量,w(t)为新叶子节点对应的躯干节点的权值向量,r(t)为与w(t)相同维度的随机单位向量,β为预设的超参数,用于控制随机扰动程度;本实施例中,β=0.05;
本实施例中,通过引入了权重继承机制,即当躯干节点***出新叶子节点时,新叶子节点会继承父节点的大部分权重,并且加入小部分的随机扰动,能保证演化树稳定收敛。
步骤6、判断该数据流中的数据点是否全部训练完,如否,使用数据流中的下一个数据点对演化树进行训练,继续记录演化树中所有节点成为最佳匹配点的次数,并转入步骤4;如是,转入步骤7;
步骤7、判断组成数据流的次数是否小于第二预设值,如是,则重新组成数据流,重新对演化树进行训练,并对演化树中的训练节点成为最佳匹配点的次数进行累计,并转入步骤4;如否,则此时的演化树为训练完成的演化树,并转入步骤8;本实施例中,第二预设值为10;
如图2~图7所示,采用图2中所示的数据集对演化树进行训练的过程,图2中的训练数据由890个二维坐标点构成,在二维空间中组成5个类簇。图3、4、5分别表示演化树训练过程中的前三个阶段,其中带箭头的虚线表示当前阶段叶子节点的生长方向。在初始阶段,如图3所示,在二维空间中只有一个根节点R,随着训练进行,如图4所示,在第二阶段,根节点R***出三个叶子节点A、B、C,如图5所示,在第三阶段,叶子节点A、B、C***出各自的子节点,{A1、A2、A3}、{B1、B2、B3}、{C1、C2、C3},图6为第三阶段的演化树结构;根据以上叶子节点的位置可以发现,此时,演化树已经简略地学习到了数据的拓扑结构,如图7所示,为演化树完成训练后所有叶子节点的空间位置,可以发现此时演化树已经学习到了训练数据的拓扑结构。
步骤8、对训练完成的演化树中除根节点外的所有节点进行初始化的海明码编码,使用贪心的路径编码策略对整棵演化树的保相似性损失函数进行优化,将保相似性损失函数最小值所对应的海明码编码作为演化树的每个叶子节点的哈希编码;
其中,优化目标为:
其中,E为整棵演化树的保相似性损失值,Wk为整棵演化树的躯干节点k的权值向量,Wk={w1,w2,...,wn},w1,w2,...,wn分别为躯干节点k***出的n个叶子节点的权值向量;N={W1,W2,...,Wc}为整棵演化树中所有躯干节点的集合;F(Wk)为每个躯干节点对应的叶子节点编码的保相似性损失函数,其中,wi为躯干节点k中的第i个叶子节点的权值向量,wj为躯干节点k中的第j个叶子节点的权值向量;d(wi,wj)表示叶子节点wi与叶子节点wj之间的欧式距离,λ为预设超参数,b(wi)表示叶子节点wi的海明码,b(wj)表示叶子节点wj的海明码,dh(b(wi),b(wj))表示b(wi)与b(wj)之间的海明距离;本实施例中,λ=0.6时效果最佳;
优化每一个F(Wk)都是独立的,且操作一致,可以设计一个所有躯干节点共用的局部海明码本Mlocal,为了严格保证每个子节点之间的局部保相似性,Mlocal需要符合以下2个要求:1、海明码的个数等于躯干节点的子节点数量n,并且海明码互不相同;2、海明码之间的海明距离范围是[1,n-1],且任何一个海明码与其它各个海明码的距离都不相同。
本实施例中,n=3,Mlocal={00,11,01}。由于叶子节点的数量并不会明显影响演化树学习原始数据拓扑结构的效果,因此,为了降低编码部分的算法复杂度,叶子节点的数量一般设为在3或者4,此时Mlocal全排列I的数量仅仅是6或者24。通过遍历I求解最优的局部编码,编码部分的算法的时间复杂度为O(6n)或者O(24n),能降低编码复杂度。
步骤9、计算某一数据点在演化树中的最佳匹配点,找到从根节点***出该数据点的最佳匹配点所对应的叶子节点的***路径,并根据步骤8中得到的演化树中每个叶子节点的哈希编码,将该数据点的最佳匹配点***路径中对应的叶子节点的哈希编码进行有序组合,将其作为该数据点的哈希编码,该数据点的哈希编码表达式为:y=u1u2...udep-1,其中,u1为该数据点在演化树深度为2的对应节点上的哈希编码;u2为该数据点在演化树深度为3的对应节点上的哈希编码,dep为演化树的最大深度;udep-1为该数据点在演化树最大深度的对应节点上的哈希编码。
由于演化树并不是平衡树,如果某一数据点xi对应的最佳匹配点的最大深度小于演化树的最大深度,为了保证编码长度的统一,则利用该最佳匹配点的最大深度的编码补全缺失的编码,此时,该数据点的哈希编码表达式为:y=u1u2...umax-1...udep-1,其中,u1为该数据点在演化树深度为2的对应节点上的编码;u2为该数据点在演化树深度为3的对应节点上的编码,max为最佳匹配点的最大深度,umax-2=umax-3...=udep-1=umax-1,dep为演化树的最大深度;udep-1为该数据点在演化树的最大深度的对应节点上的编码。
在上述的演化树哈希中,采用贪心的路径编码策略将训练得到的叶子节点转化为保相似性的二进制编码,演化树的哈希编码的复杂度小,通过计算任一数据点在演化树中的最佳匹配点,并根据最佳匹配点在演化树中对应的编码作为该数据点的哈希编码,因此通过计算哈希编码之间的海明距离,得到数据点之间的相似性,减小了计算复杂度。
但该演化树哈希方法的适用范围仅限于短编码,但短编码的查询性能相较于长编码往往较差,难以胜任实际任务,想要通过演化树的哈希方法获得更高查询性能的长编码却是非常困难的事,从时空开销的角度分析,演化树哈希的编码长度与树的深度成正比,单纯的通过增加演化树的深度来扩大编码是不现实的。随着演化树深度的增加,整棵演化树的节点数量呈指数式增长,在有限内存资源和有效的时间范围内几乎不可能完成演化树的训练以及路径编码,此外叶子节点的数量已经远远超过了数据点的数量,这样的量化方式也没有任何意义。为了解决长编码的问题以及为了编码的简洁与高效性,采用并行式集成学习方法中的Bagging扩展编码,同时考虑到传统的Bagging需要得到全部的样本数据,并不适用于流式数据采样,因此在Online-Bagging的基础上提出了一种无监督的在线哈希学习方法。
一种无监督的在线哈希学习方法,创建多棵演化树,并按照顺序组成森林,采用上述基于演化树的哈希学习方法对森林进行训练,将数据集中的数据点随机组成数据流,使用数据流中的第一个数据点按照先后顺序分别对该森林中的每一棵演化树进行训练:对森林中的每一棵演化树,从强度为1的泊松分布中随机采样一个数字,记为K,使用数据流中的数据点分别对每棵演化树训练K次;依次使用数据流中的数据点对该森林进行训练,训练完成后,对森林中每棵演化树的叶子节点分别进行保相似性编码,得到森林中每棵演化树的哈希编码,计算数据点xi在森林中每棵演化树上的最佳匹配点,并将数据点xi对应在每棵演化树上最佳匹配点的哈希编码按照顺序组成该数据点xi的哈希编码,其中,数据点xi的哈希编码表达式为: 表示森林中第k棵演化树对数据点xi的编码,T表示森林中演化树的总数。
由于演化树的训练方式为在线训练,不同随机子样本集合,通过Online-Bagging在本质上引入了另外一种随机性,即演化树生长方向的随机性,当演化树扩展为演化森林之后,可以在随机从原始空间中的多个位置出发,捕捉数据的空间分布,演化树越多,则能够捕捉数据的空间拓扑结构越全面,从而缓解路径的编码的缺陷。
因此,无监督的在线哈希学***台。
Claims (2)
1.一种基于演化树的哈希学习方法,用于通过数据集X中的数据点xi对演化树进行训练,得到训练完成的演化树,对训练完成的演化树进行保相似性编码,得到演化树中每个叶子节点的哈希编码,并计算任一数据点在演化树上的最佳匹配点,得到该数据点的哈希编码,其特征在于:包括以下步骤:
步骤1、创建一个演化树,其中,初始化的演化树只有一个根节点,对该根节点赋予权值向量;
步骤2、对根节点进行训练:将数据集中的所有数据点随机组成数据流,将该根节点作为该数据流中的第一个数据点的最佳匹配点,并记录根节点成为最佳匹配点的次数,转入步骤4;
步骤3、使用数据流中的第一个数据点对***完成的演化树的叶子节点进行训练:分别计算演化树中每个节点与该数据点之间的欧式距离,找到与该数据点对应的欧式距离最小的节点,判断该节点是否为叶子节点,如是,则将演化树中当前训练节点作为该数据点的最佳匹配点,记录演化树中的所有叶子节点成为最佳匹配点的次数,并转入步骤4;如否,转入步骤6;
步骤4、对演化树中的根节点和所有叶子节点分别依次执行如下操作:判断演化树中当前训练节点成为最佳匹配点的次数是否小于第一预设值,其中演化树中当前训练节点为根节点或任一叶子节点,如是,则更新演化树中当前训练节点的权值向量,并转入步骤6;如否,则转入步骤5;其中,演化树中当前训练节点的权值向量更新公式为:
wi(t+1)=x(t)
其中,wi(t+1)为演化树中当前训练节点更新后的权值向量,wi(t)为演化树中当前训练节点更新前的权值向量,x(t)为与演化树中当前训练节点配对的最佳匹配点的权值向量;
步骤5、判断演化树中当前训练节点的当前深度是否小于演化树的最大深度,演化树的最大深度为预设值,如是,则对演化树中的当前训练节点进行***,将演化树中的当前训练节点***成n个叶子节点,并对每个叶子节点赋予不同的权值向量,该***的节点记为躯干节点,重新组成数据流,并将此时组成数据流的次数重新计数,转入步骤3;如否,则此时的演化树为训练完成的演化树,并转入步骤8;其中,n个叶子节点的权值向量的计算公式为:
w′(t)=(1-β)w(t)+βr(t)
其中,w′(t)为新叶子节点的权值向量,w(t)为新叶子节点对应的躯干节点的权值向量,r(t)为与w(t)相同维度的随机单位向量,β为预设的超参数,用于控制随机扰动程度;
步骤6、判断该数据流中的数据点是否全部训练完,如否,使用数据流中的下一个数据点对演化树进行训练,继续记录演化树中所有节点成为最佳匹配点的次数,并转入步骤4;如是,转入步骤7;
步骤7、判断组成数据流的次数是否小于第二预设值,如是,则重新组成数据流,重新对演化树进行训练,并对演化树中的训练节点成为最佳匹配点的次数进行累计,并转入步骤4;如否,则此时的演化树为训练完成的演化树,并转入步骤8;
步骤8、对训练完成的演化树中除根节点外的所有节点进行初始化的海明码编码,使用贪心的路径编码策略对整棵演化树的保相似性损失函数进行优化,将保相似性损失函数最小值所对应的海明码编码作为演化树的每个叶子节点的哈希编码;
其中,优化目标为:
其中,E为整棵演化树的保相似性损失值,Wk为整棵演化树的躯干节点k的权值向量,其中,Wk={w1,w2,...,wn},w1,w2,...,wn分别为躯干节点k***出的n个叶子节点的权值向量;N={W1,W2,...,Wc}为整棵演化树中所有躯干节点的集合;F(Wk)为每个躯干节点对应的叶子节点编码的保相似性损失函数,其中,wi为躯干节点k中的第i个叶子节点的权值向量,wj为躯干节点k中的第j个叶子节点的权值向量;d(wi,wj)表示叶子节点wi与叶子节点wj之间的欧式距离,λ为预设超参数,b(wi)表示叶子节点wi的海明码,b(wj)表示叶子节点wj的海明码,dh(b(wi),b(wj))表示b(wi)与b(wj)之间的海明距离;
步骤9、计算某一数据点在演化树中的最佳匹配点,找到从根节点***出该数据点的最佳匹配点所对应的叶子节点的***路径,并根据步骤8中得到的演化树中每个叶子节点的哈希编码,将该数据点的最佳匹配点***路径中对应的叶子节点的哈希编码进行有序组合,将其作为该数据点的哈希编码,该数据点的哈希编码表达式为:y=u1u2...udep-1,其中,u1为该数据点在演化树深度为2的对应节点上的哈希编码;u2为该数据点在演化树深度为3的对应节点上的哈希编码,dep为演化树的最大深度;udep-1为该数据点在演化树最大深度的对应节点上的哈希编码。
2.一种无监督的在线哈希学习方法,其特征在于:创建多棵演化树,并按照顺序组成森林,采用权利要求1所述的方法对森林进行训练,将数据集中的数据点随机组成数据流,使用数据流中的第一个数据点按照先后顺序分别对该森林中的每一棵演化树进行训练:对森林中的每一棵演化树,从强度为1的泊松分布中随机采样一个数字,记为K,使用数据流中的数据点分别对每棵演化树训练K次;依次使用数据流中的数据点对该森林进行训练,训练完成后,对森林中每棵演化树的叶子节点分别进行保相似性编码,得到森林中每棵演化树的哈希编码,计算数据点xi在森林中每棵演化树上的最佳匹配点,并将数据点xi对应在每棵演化树上最佳匹配点的哈希编码按照顺序组成该数据点xi的哈希编码,其中,数据点xi的哈希编码表达式为: 表示森林中第k棵演化树对数据点xi的编码,T表示森林中演化树的总数。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910088472.XA CN109829549A (zh) | 2019-01-30 | 2019-01-30 | 基于演化树的哈希学习方法及其无监督的在线哈希学习方法 |
CN202010070802.5A CN111079949A (zh) | 2019-01-30 | 2020-01-21 | 一种哈希学习方法、无监督的在线哈希学习方法及其应用 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910088472.XA CN109829549A (zh) | 2019-01-30 | 2019-01-30 | 基于演化树的哈希学习方法及其无监督的在线哈希学习方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109829549A true CN109829549A (zh) | 2019-05-31 |
Family
ID=66863000
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910088472.XA Pending CN109829549A (zh) | 2019-01-30 | 2019-01-30 | 基于演化树的哈希学习方法及其无监督的在线哈希学习方法 |
CN202010070802.5A Pending CN111079949A (zh) | 2019-01-30 | 2020-01-21 | 一种哈希学习方法、无监督的在线哈希学习方法及其应用 |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010070802.5A Pending CN111079949A (zh) | 2019-01-30 | 2020-01-21 | 一种哈希学习方法、无监督的在线哈希学习方法及其应用 |
Country Status (1)
Country | Link |
---|---|
CN (2) | CN109829549A (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110209867A (zh) * | 2019-06-05 | 2019-09-06 | 腾讯科技(深圳)有限公司 | 图像检索模型的训练方法、装置、设备及存储介质 |
CN110674335A (zh) * | 2019-09-16 | 2020-01-10 | 重庆邮电大学 | 一种基于多生成多对抗的哈希码与图像双向转换方法 |
CN110909027A (zh) * | 2019-10-17 | 2020-03-24 | 宁波大学 | 一种哈希检索方法 |
CN111079949A (zh) * | 2019-01-30 | 2020-04-28 | 宁波大学 | 一种哈希学习方法、无监督的在线哈希学习方法及其应用 |
CN111078911A (zh) * | 2019-12-13 | 2020-04-28 | 宁波大学 | 一种基于自编码器的无监督哈希方法 |
CN111625258A (zh) * | 2020-05-22 | 2020-09-04 | 深圳前海微众银行股份有限公司 | 默克尔树更新方法、装置、设备及可读存储介质 |
CN112699942A (zh) * | 2020-12-30 | 2021-04-23 | 东软睿驰汽车技术(沈阳)有限公司 | 一种运营车辆识别方法、装置、设备及存储介质 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108830333A (zh) * | 2018-06-22 | 2018-11-16 | 河南广播电视大学 | 一种基于三倍比特量化及非对称距离的最近邻搜索方法 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106777038B (zh) * | 2016-12-09 | 2019-06-14 | 厦门大学 | 一种基于序列保留哈希的超低复杂度图像检索方法 |
CN108182256A (zh) * | 2017-12-31 | 2018-06-19 | 厦门大学 | 一种基于离散局部线性嵌入哈希的高效图像检索方法 |
CN109166615B (zh) * | 2018-07-11 | 2021-09-10 | 重庆邮电大学 | 一种随机森林哈希的医学ct图像存储与检索方法 |
CN109829549A (zh) * | 2019-01-30 | 2019-05-31 | 宁波大学 | 基于演化树的哈希学习方法及其无监督的在线哈希学习方法 |
-
2019
- 2019-01-30 CN CN201910088472.XA patent/CN109829549A/zh active Pending
-
2020
- 2020-01-21 CN CN202010070802.5A patent/CN111079949A/zh active Pending
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108830333A (zh) * | 2018-06-22 | 2018-11-16 | 河南广播电视大学 | 一种基于三倍比特量化及非对称距离的最近邻搜索方法 |
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111079949A (zh) * | 2019-01-30 | 2020-04-28 | 宁波大学 | 一种哈希学习方法、无监督的在线哈希学习方法及其应用 |
CN110209867A (zh) * | 2019-06-05 | 2019-09-06 | 腾讯科技(深圳)有限公司 | 图像检索模型的训练方法、装置、设备及存储介质 |
CN110209867B (zh) * | 2019-06-05 | 2023-05-16 | 腾讯科技(深圳)有限公司 | 图像检索模型的训练方法、装置、设备及存储介质 |
CN110674335A (zh) * | 2019-09-16 | 2020-01-10 | 重庆邮电大学 | 一种基于多生成多对抗的哈希码与图像双向转换方法 |
CN110674335B (zh) * | 2019-09-16 | 2022-08-23 | 重庆邮电大学 | 一种基于多生成多对抗的哈希码与图像双向转换方法 |
CN110909027A (zh) * | 2019-10-17 | 2020-03-24 | 宁波大学 | 一种哈希检索方法 |
CN110909027B (zh) * | 2019-10-17 | 2022-04-01 | 宁波大学 | 一种哈希检索方法 |
CN111078911B (zh) * | 2019-12-13 | 2022-03-22 | 宁波大学 | 一种基于自编码器的无监督哈希方法 |
CN111078911A (zh) * | 2019-12-13 | 2020-04-28 | 宁波大学 | 一种基于自编码器的无监督哈希方法 |
WO2021233182A1 (zh) * | 2020-05-22 | 2021-11-25 | 深圳前海微众银行股份有限公司 | 默克尔树更新方法、装置、设备及可读存储介质 |
CN111625258B (zh) * | 2020-05-22 | 2021-08-27 | 深圳前海微众银行股份有限公司 | 默克尔树更新方法、装置、设备及可读存储介质 |
CN111625258A (zh) * | 2020-05-22 | 2020-09-04 | 深圳前海微众银行股份有限公司 | 默克尔树更新方法、装置、设备及可读存储介质 |
CN112699942A (zh) * | 2020-12-30 | 2021-04-23 | 东软睿驰汽车技术(沈阳)有限公司 | 一种运营车辆识别方法、装置、设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN111079949A (zh) | 2020-04-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109829549A (zh) | 基于演化树的哈希学习方法及其无监督的在线哈希学习方法 | |
CN106503106B (zh) | 一种基于深度学习的图像哈希索引构建方法 | |
WO2022083009A1 (zh) | 一种基于异源数据差补融合的定制产品性能预测方法 | |
CN115688913B (zh) | 一种云边端协同个性化联邦学习方法、***、设备及介质 | |
CN113868366B (zh) | 一种面向流数据的在线跨模态检索方法与*** | |
CN103116625A (zh) | 一种基于Hadoop的海量RDF数据分布式查询处理方法 | |
CN103116766A (zh) | 一种基于增量神经网络和子图编码的图像分类方法 | |
CN107220180A (zh) | 一种基于神经网络语言模型的代码分类方法 | |
CN109840322A (zh) | 一种基于强化学习的完形填空型阅读理解分析模型及方法 | |
CN109543838A (zh) | 一种基于变分自编码器的图像增量学习方法 | |
CN109818971B (zh) | 一种基于高阶关联挖掘的网络数据异常检测方法与*** | |
CN112819192A (zh) | 一种基于蜂群算法优化的rf_gru网络短期电力负荷预测方法 | |
CN104915388B (zh) | 一种基于谱聚类和众包技术的图书标签推荐方法 | |
Wang et al. | A new approach of obtaining reservoir operation rules: Artificial immune recognition system | |
CN108876595A (zh) | 一种基于数据挖掘的p2p个人信用评估方法及装置 | |
CN114332550A (zh) | 一种模型训练方法、***及存储介质和终端设备 | |
CN113341696A (zh) | 一种运载火箭姿态控制参数智能整定方法 | |
CN107886132A (zh) | 一种求解音乐流量预测的时间序列分解方法及*** | |
CN116720519A (zh) | 一种苗医药命名实体识别方法 | |
CN115905903A (zh) | 基于图注意力自动编码器的多视图聚类方法及*** | |
Yan et al. | An adaptive hydrologic cycle optimization algorithm for numerical optimization and data clustering | |
Sarkar et al. | Accuracy-based learning classification system | |
Koli et al. | Parallel decision tree with map reduce model for big data analytics | |
CN112817959A (zh) | 基于多度量指标权重的古生物形态***发育树构建方法 | |
CN110704575A (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 | ||
WD01 | Invention patent application deemed withdrawn after publication | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20190531 |