CN108241745B - 样本集的处理方法及装置、样本的查询方法及装置 - Google Patents

样本集的处理方法及装置、样本的查询方法及装置 Download PDF

Info

Publication number
CN108241745B
CN108241745B CN201810014815.3A CN201810014815A CN108241745B CN 108241745 B CN108241745 B CN 108241745B CN 201810014815 A CN201810014815 A CN 201810014815A CN 108241745 B CN108241745 B CN 108241745B
Authority
CN
China
Prior art keywords
vector
sample
segment
index
distance
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.)
Active
Application number
CN201810014815.3A
Other languages
English (en)
Other versions
CN108241745A (zh
Inventor
杨文�
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Advanced New Technologies Co Ltd
Advantageous New Technologies Co Ltd
Original Assignee
Alibaba Group Holding Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Alibaba Group Holding Ltd filed Critical Alibaba Group Holding Ltd
Priority to CN201810014815.3A priority Critical patent/CN108241745B/zh
Publication of CN108241745A publication Critical patent/CN108241745A/zh
Priority to TW107143437A priority patent/TWI696081B/zh
Priority to EP18898858.8A priority patent/EP3709184B1/en
Priority to PCT/CN2018/123855 priority patent/WO2019134567A1/zh
Application granted granted Critical
Publication of CN108241745B publication Critical patent/CN108241745B/zh
Priority to US16/878,482 priority patent/US10896164B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/18File system types
    • G06F16/182Distributed file systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/22Indexing; Data structures therefor; Storage structures
    • G06F16/2228Indexing structures
    • G06F16/2237Vectors, bitmaps or matrices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/28Databases characterised by their database models, e.g. relational or object models
    • G06F16/284Relational databases
    • G06F16/285Clustering or classification
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/31Indexing; Data structures therefor; Storage structures
    • G06F16/316Indexing structures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/35Clustering; Classification
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/951Indexing; Web crawling techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/23Clustering techniques
    • G06F18/231Hierarchical techniques, i.e. dividing or merging pattern sets so as to obtain a dendrogram
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • G06F18/241Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Evolutionary Biology (AREA)
  • Evolutionary Computation (AREA)
  • Software Systems (AREA)
  • Computational Linguistics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本说明书实施例提供对样本集进行分类处理、索引处理的方法和装置,以及查询相似样本的方法和装置。在分类处理中,对样本集中的样本进行两级聚类,将聚类结果记录在第一向量表和第二向量表中。在索引处理中,为样本集中的每个样本建立两级索引,第一级索引指向该样本所属于的粗聚类中心,第二级索引指向该样本的分段向量所对应的分段聚类中心。在查询相似样本过程中,对查询样本进行两级检索。第一级检索,从分类处理的第一向量表中确定与查询样本距离较近的粗聚类中心,并获取归属于这些粗聚类中心的对比样本。第二级检索,将距离满足预定条件的对比样本作为相似样本。如此,实现样本的快速检索和查询。

Description

样本集的处理方法及装置、样本的查询方法及装置
技术领域
本说明书一个或多个实施例涉及计算机技术领域,尤其涉及样本集的预处理,和样本的查询方法及装置。
背景技术
随着互联网的升级,人们越来越多地利用互联网进行更多的搜索、查询工作。比如,人们已经非常习惯使用各种搜索引擎来搜索感兴趣的内容。同时,人们搜索和查询的对象也越来越复杂,例如,由搜索文本关键词,逐渐发展为搜索图片,搜索音乐等等。随着搜索和查询对象变得更加复杂,搜索的难度指数级增加。首先,复杂的对象通常需要用高维向量来表征。因此在进行搜索的过程中,通常需要比对诸多高维向量之间的距离或相似度。另一方面,在大数据时代下,网络上的数据呈爆炸式增长的趋势。当待检索的样本库中存在海量数据时,如果采用暴力搜索,针对每一样本进行高维向量的运算,计算量非常大,导致查询时间太长,从而难以满足用户需求。
因此,需要更有效的方式,对复杂对象进行相似性搜索。
发明内容
本说明书一个或多个实施例描述了一种方法和装置,预先对样本集中的样本进行两个层级的聚类并建立两个层级的索引,在样本查询过程中,通过两个层级的检索,快速地查询出相似样本。
根据第一方面,提供了一种对样本集进行分类处理的方法,包括:通过对样本集中多个样本的特征向量进行聚类,确定N个类簇以及对应的N个类簇中心,并在第一向量表中记录所述N个类簇的类簇标识以及所述N个类簇中心对应的N个中心向量;将所述多个样本中各个样本的特征向量根据维度划分为M个分段,以形成与各个分段i对应的分段向量;分别对所述多个样本的各个分段向量进行聚类,确定各个分段i对应的k个分段类簇,以及对应的k个分段类簇中心,并在第二向量表中记录各个分段i对应的k个分段类簇的类簇标识,以及各个分段类簇中心对应的分段中心向量。
根据第二方面,提供一种为样本集建立索引表的方法,包括:获取根据第一方面的第一向量表和第二向量表;获取所述样本集中任意样本的特征向量V;从所述第一向量表记录的N个中心向量中,确定出与所述特征向量V距离最近的中心向量,将该最近的中心向量对应的类簇标识作为第一索引数据;将所述特征向量V根据维度划分为M个分段,形成与各个分段i对应的分段向量Vi;从所述第二向量表记录的、各个分段i对应的k个分段中心向量中,确定与对应的分段向量Vi距离最近的分段中心向量,将确定出的分段中心向量对应的分段类簇的类簇标识作为第二索引数据;分别将所述第一索引数据和第二索引数据添加到索引表的第一索引字段和第二索引字段中。
根据第三方面,提供了一种查询相似样本的方法,包括:获取查询样本的特征向量T;获取根据第一方面的第一向量表和第二向量表;获取第二方面所述的索引表;从所述第一向量表记录的N个中心向量中,确定出与所述特征向量T的距离满足第一预定条件的中心向量,将该中心向量所对应的类簇作为选定类簇;根据所述索引表中的第一索引字段,确定与所述选定类簇对应的样本作为对比样本;确定所述对比样本中各个对比样本与所述查询样本之间的样本距离;将所述样本距离满足第二预定条件的样本确定为所述查询样本的相似样本。
根据第四方面,提供一种对样本集进行分类处理的装置,包括:第一聚类单元,配置为通过对样本集中多个样本的特征向量进行聚类,确定N个类簇以及对应的N个类簇中心,并在第一向量表中记录所述N个类簇的类簇标识以及所述N个类簇中心对应的N个中心向量;分段单元,配置为将所述多个样本中各个样本的特征向量根据维度划分为M个分段,以形成与各个分段i对应的分段向量;第二聚类单元,配置为分别对所述多个样本的各个分段向量进行聚类,确定各个分段i对应的k个分段类簇,以及对应的k个分段类簇中心,并在第二向量表中记录各个分段i对应的k个分段类簇的类簇标识,以及各个分段类簇中心对应的分段中心向量。
根据第五方面,提供一种为样本集建立索引表的装置,包括:向量表获取单元,配置为获取第四方面的装置得到的第一向量表和第二向量表;样本获取单元,配置为获取所述样本集中任意样本的特征向量V;第一索引建立单元,配置为从所述第一向量表记录的N个中心向量中,确定出与所述特征向量V距离最近的中心向量,将该最近的中心向量对应的类簇标识作为第一索引数据;分段单元,配置为将所述特征向量V根据维度划分为M个分段,形成与各个分段i对应的分段向量Vi;第二索引建立单元,配置为从所述第二向量表记录的、各个分段i对应的k个分段中心向量中,确定与对应的分段向量Vi距离最近的分段中心向量,将确定出的分段中心向量对应的分段类簇的类簇标识作为第二索引数据;记录单元,配置为分别将所述第一索引数据和第二索引数据添加到索引表的第一索引字段和第二索引字段中。
根据第六方面,提供一种查询相似样本的装置,包括:查询样本获取单元,配置为获取查询样本的特征向量T;向量表获取单元,配置为获取通过第四方面的装置得到的第一向量表和第二向量表;索引表获取单元,配置为获取通过第五方面的装置得到的索引表;第一确定单元,配置为从所述第一向量表记录的N个中心向量中,确定出与所述特征向量T的距离满足第一预定条件的中心向量,将该中心向量所对应的类簇作为选定类簇;第二确定单元,配置为根据所述索引表中的第一索引字段,确定与所述选定类簇对应的样本作为对比样本;距离确定单元,配置为确定所述对比样本中各个对比样本与所述查询样本之间的样本距离;样本确定单元,配置为将所述样本距离满足第二预定条件的样本确定为所述查询样本的相似样本。
根据第七方面,提供了一种计算设备,包括存储器和处理器,其特征在于,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现第一方面到第三方面的方法。
通过本说明书实施例提供的方法及装置,预先离线地为样本集中的样本进行两个层级的聚类,建立两个层级的索引。在在线查询过程中,相应地利用两个层级的检索和筛选,确定出查询样本的相似样本。在以上过程中,通过第一层级检索缩小样本范围,并且在第二层级检索中,将大量高维向量计算转化为分段的低维向量,进一步提升运算速度。从而,提供更加快速的复杂样本的查询和检索。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
图1示出本说明书披露的一个实施例的实施场景示意图;
图2示出根据一个实施例的分类处理的流程图;
图3示出根据一个实施例的索引处理的流程图;
图4示出根据一个实施例的查询相似样本的方法的流程图;
图5示出根据一个实施例的确定样本距离的流程图;
图6示出查询距离表的过程示意图;
图7示出根据一个实施例的对样本集进行分类处理的装置的示意性框图;
图8示出根据一个实施例的为样本集建立索引表的装置的示意性框图;
图9示出根据一个实施例的查询相似样本的装置的示意性框图。
具体实施方式
下面结合附图,对本说明书提供的方案进行描述。
图1为本说明书披露的一个实施例的实施场景示意图。如图1所示,在存储平台中存储有大量样本构成的样本集,这些样本可以是图片、音频、文档等各种内容类型。存储平台可以是集中式平台,分布式平台(例如hadoop分布式文件系统HDFS)。为了应对用户对这些复杂样本的搜索查询,计算平台预先离线地对存储平台中的样本集进行分析和处理。计算平台的离线处理过程主要包含两个部分:分类处理和索引处理。在分类处理过程中,计算平台对样本集中的样本进行两级聚类。第一级聚类,将各个样本的特征向量整体进行聚类,获得粗类簇中心;第二级聚类,将各个样本的特征向量划分为M个分段,针对每个分段i进行分段聚类,获得每个分段对应的分段类簇中心。可以在向量表(其可以更进一步地包含第一向量表和第二向量表)中分别记录上述粗类簇中心和各个分段类簇中心。
在索引处理过程中,计算平台为样本集中的每个样本建立索引,使得每个样本可以通过索引指向分类处理得到的粗类簇中心和分段类簇中心,也就是说,将样本集中的每个样本划分到,或者使其归属于其索引所指向的类簇中心。与两级分类处理相对应地,为每个样本建立两级索引,第一级索引指向该样本所属于的粗类簇中心,第二级索引指向该样本的分段向量所对应的分段类簇中心。相应地,为样本集建立索引表,索引表包括第一索引字段和第二索引字段,其中第一索引字段记录各个样本的第一级索引,第二索引字段记录各个样本的第二级索引。
在预先进行了上述分类处理和索引处理的基础上,计算平台可以利用分类处理和索引处理的结果,对在线的查询请求进行快速处理。具体地,对于接收到的查询样本T,对应地对其进行两级检索。第一级检索,从分类处理的第一向量表中确定与查询样本T距离较近的粗类簇中心,利用索引表的第一索引字段,获取归属于这些粗类簇中心的样本,在此称为对比样本。第二级检索,确定查询样本T与各个对比样本的距离,将距离满足条件的对比样本作为相似样本。更具体地,可以通过第二向量表和第二索引字段,快速确定查询样本T与各个对比样本的距离。如此,通过两级检索,提升查询的速度。
可以理解,图1所示的计算平台可以是任何具有处理、计算能力的实体,例如服务器。尽管在以上描述中,将计算平台示出为一个集中的平台,但是实践中,计算平台也可以采用分布式来实现。或者,计算平台可以包含不同处理模块来进行不同阶段的处理。例如,采用分类模块进行离线分类处理,采用索引模块进行索引处理,采用查询模块进行查询处理。下面具体描述上述分类处理、索引处理和查询处理的执行方式。
图2示出根据一个实施例的分类处理的流程图。如图2所示,分类处理可以包含以下步骤:步骤S21,对样本集中多个样本的特征向量进行聚类,确定N个类簇和N个类簇中心;步骤S22,在第一向量表中记录所述N个类簇的类簇标识和N个类簇中心对应的中心向量;步骤S23,将所述多个样本中各个样本的特征向量根据维度划分为M个分段,形成与各个分段i对应的分段向量;步骤S24,分别对所述多个样本的各个分段向量进行聚类,确定各个分段i对应的k个分段类簇和分段类簇中心;步骤S25,在第二向量表中记录各个分段i对应的k个分段类簇的类簇标识,以及各个分段类簇中心对应的分段中心向量。下面描述上述各个步骤的执行。
可以理解,样本集中包含大量的待处理、待检索样本,这些样本可以存储在例如HDFS的分布式文件系统中。为了对这些样本进行分析,在预备步骤中,可以首先为各个样本提取特征向量,特征向量用于表征样本的特征。如前所述,待分析样本可以是图片、音频、文档等各种内容类型。对于不同类型的样本,可以采用已知的方式提取其特征向量。例如,对于图片样本,可以提取以下样本特征元素:像素数目,灰度均值,灰度中值,子区域数目,子区域面积,子区域灰度均值,等等,将这些特征元素作为向量元素,构成特征向量。对于文本样本而言,样本特征可以包括:文本中的一元分词,二元分词,三元分词,词数目,词频等等。可以提取这些特征作为向量元素,构成文本样本的特征向量。对于其他类型的样本,可以采用本领域已知的对应的方式。可以理解的是,对于图片、音频等复杂类型的样本,样本的特征向量通常为高维向量。典型地,图片样本的特征向量可以在几百维,甚至上千维。一般地,存储平台在存储样本本身的同时,还存储其特征向量。
在提取了特征向量的基础上,在步骤S21,对样本集中多个样本的特征向量进行聚类,确定N个类簇和对应的类簇中心。在一个实施例中,样本集中的样本数目不算太大,例如,不超过一定阈值(比如5000个),此时可以利用样本集中的全部样本进行聚类。在另一实施例中,样本集中的样本数目非常大,例如超过上述阈值,此时可以从样本集中随机抽取一些样本进行聚类。相应地,该步骤中的多个样本为样本集中的部分样本。
对于上述的多个样本所对应的多个特征向量,可以采用多种聚类方法进行聚类。在一个实施例中,采用kmeans(K均值)聚类方法进行聚类。具体地,随机选择k个样本作为初始均值向量,计算样本到各均值向量的距离,把它划到距离最小的类簇;然后计算新的均值向量,进行迭代,直至均值向量未更新或到达最大次数。在另一实施例中,采取基于层次的聚类算法进行聚类,例如BIRCH算法、CURE算法等;在又一个实施例中,采取基于密度的聚类算法,例如DBSCAN算法、OPTICS算法等等。还可以采用其他聚类方法进行聚类。
假定通过聚类,将上述多个样本的特征向量聚类为N个类簇,每个类簇具有对应的类簇中心。于是,在步骤S21,确定出N个类簇中心。可以理解,每个类簇中心可以用一个与特征向量同样维度的向量来表示,此处称为中心向量。相应地,在步骤S22,可以在一个向量表中,此处称为第一向量表,记录N个类簇中心对应的中心向量。
相对于后面步骤中的分段向量聚类,步骤S21中的聚类在本文中有时又称为粗聚类,或全向量聚类,得到的类簇又称为粗类簇。可以理解的是,可以根据样本数目和所需精度,来设置或调整聚类算法和聚类参数,从而调整得到的粗类簇的数目N。
在一个具体例子中,假定样本库中有5万个样本,在步骤S21,对其中的5000个样本进行聚类,每个样本的特征向量为500维,得到20个粗类簇和对应的中心向量。表1示例性示出对应的第一向量表。
Figure BDA0001541573210000081
在表1中,用Ci表示第i个类簇的类簇标识,用
Figure BDA0001541573210000082
表示第i个类簇的中心向量。
另一方面,在步骤S23,将上述多个样本中各个样本的特征向量根据维度划分为M个分段,形成与各个分段i对应的分段向量。如前所述,复杂样本对应的特征向量往往为高维向量,为了在粗聚类基础上对其进行进一步分类,首先对各个特征向量进行降维处理。具体地,将各个样本的特征向量划分为M个分段,由此形成M个分段向量。在一个实施例中,将各个样本的特征向量平均地划分为M个分段向量。假定样本的特征向量的维度为P,那么可以将其平均地划分为M个P/M维的分段向量。在另一实施例中,分段向量的划分可以是非均匀的,例如第i分段的维度为Pi,只要保证Pi(i=1到M)之和为总维度P即可。更具体地,在一个例子中,假定样本的特征向量为500维,即V=(f1,f2,f3,…,f500),在步骤S22中将其划分为50个分段,即M=50。在平均划分的情况下,每个分段为10维的分段向量,即第一分段向量V1=(f1,f2,f3,…f10),第二分段向量V2=(f11,f12,…f20),第i分段向量Vi=(f10i+1,f10i+2,…f11i)。
在此基础上,在步骤S24,分别对所述多个样本的各个分段向量进行聚类,确定各个分段i对应的k个分段类簇和分段类簇中心,并在步骤S25,在第二向量表中记录所述分段类簇的标识,以及各分段类簇中心对应的分段中心向量。
可以理解,由于对各个样本的特征向量均进行了分段,因此每个样本都具有M个分段向量。对于同一分段i下各个样本的分段向量,可以再次进行聚类,从而确定该分段i对应的k个分段类簇中心。在一个实施例中,对于各个分段,采用相同的聚类算法,确定出相同数目的分段类簇中心。在另一实施例中,对于不同分段,可以采取不同的聚类算法,从而确定出不同数目的分段类簇中心。
仍以前述的被划分为50个分段的500维向量为例,假定在一个例子中,采用相同聚类算法,对各个分段的分段向量进行聚类,每个分段得到16个分段类簇中心(k=16)。每个分段类簇中心可以表示为与对应的分段向量维度相同的向量,在此称为分段中心向量。在该例子中,每个分段向量维度为10,相应地,分段中心向量为10维向量。如此确定出的各分段对应的分段中心向量可以记录在第二向量表中。表2示出在该例子下的第二向量表的示意。
Figure BDA0001541573210000091
在以上表2中,Si-j表示第i分段下的第j个分段类簇,
Figure BDA0001541573210000092
表示Si-j对应的分段中心向量。在被平均划分50个分段的500维向量的例子中,每个分段中心向量
Figure BDA0001541573210000101
均为10维向量。
需要理解的是,表2只是一种示例。如果各个分段不是平均分段,那么各个分段对应的分段向量的维数,以及进而的分段中心向量的维数,可以并不相同。如果各个分段采取不同的聚类算法,或者在相同的聚类算法中设定了不同的算法参数,那么各个分段聚类得到的分段类簇的数目可能并不相同。
如此,通过图2所示的方式对样本集进行了分类处理,得到第一向量表和第二向量表作为分类结果。在一个实施例中,上述第一向量表和第二向量表存储在计算平台本地。在另一实施例中,上述第一向量表和第二向量表存储在分布式文件系统中,例如HDFS系统中。在这样的情况下,计算平台需要记录第一向量表和第二向量表在分布式文件系统中的配置参数,这些配置参数用于记录各个向量表在分布式文件系统中的具体存储位置和访问路径。
在一个实施例中,计算平台每隔预定时间执行一次图2所示的分类处理过程,例如每天一次,三天一次,等等,以应对样本集中样本的变化和更新。在多次执行上述分类处理的过程中,每次可以选择样本集中同一部分的样本进行聚合分类,也可以选择不同部分的样本进行聚合分类。在生成的第一向量表和第二向量表有变化的情况下,更新存储的第一向量表和第二向量表。
基于分类处理的结果,可以对样本集中的各个样本进行索引处理,为其建立索引,使得每个样本可以通过索引指向分类处理得到的粗聚类中心和分段聚类中心。图3示出根据一个实施例的索引处理的流程图。如图3所示,索引处理的过程包括以下步骤:在步骤S31,获取分类处理的第一向量表和第二向量表;在步骤S32,获取样本集中任意样本的特征向量V;在步骤S33,从第一向量表记录的N个中心向量中,确定出与特征向量V距离最近的中心向量,将该最近的中心向量对应的类簇标识作为第一索引数据;在步骤S34,将所述特征向量V根据维度划分为M个分段,形成与各个分段i对应的分段向量Vi;在步骤S35,从所述第二向量表记录的、各个分段i对应的k个分段中心向量中,确定与对应的分段向量Vi距离最近的分段中心向量,将确定出的分段中心向量对应的分段类簇的标识作为第二索引数据;在步骤S36,分别将第一索引数据和第二索引数据添加到样本集的索引表所包括的第一索引字段和第二索引字段中。下面描述以上各个步骤的执行方式。
首先,在步骤S31,获取分类处理得到的第一向量表和第二向量表。在一个实施例中,上述第一向量表和第二向量表存储在分布式文件系统中。此时,可以首先获取上述第一和第二向量表的配置参数,通过配置参数获得第一向量表和第二向量表的访问路径,根据该访问路径读取第一向量表和第二向量表。
在一个实施例中,如前所述,上述第一向量表和第二向量表每隔预定时间进行一次更新。此时,首先判断第一向量表和第二向量表是否完成更新,仅在完成更新的情况下执行接下来的步骤。在一个例子中,通过设置标记文件,来标记向量表的更新状态,例如每当第一向量表和第二向量表更新完成,生成一个特定文件,例如done文件;而在重新进行分类处理的过程中,删除或隐藏该文件。相应地,通过查询标记文件来确定向量表的更新状态,例如通过判断done文件是否存在,来确定向量表的更新是否完成。在其他例子中,还可以通过其他形式设置更新状态,例如通过向量表本身的状态标签等等。在确定第一向量表和第二向量表完成更新的情况下,执行下面的步骤S32。
在步骤S32,获取样本集中任意样本R的特征向量V。可以理解,该任意样本R的特征向量V也是如前所述的高维向量,其提取过程和可能包含的元素如前所述,不再赘述。
接着,在步骤S33,从第一向量表记录的N个中心向量中,确定出与特征向量V距离最近的中心向量,将该最近的中心向量对应的类簇标记作为第一索引数据。
如前所述,第一向量表记录了粗聚类得到的N个类簇中心所对应的中心向量,相应地在该步骤S33中,分别计算特征向量V与这N个中心向量的距离,确定出距离最近的中心向量,将该中心向量对应的类簇标记,例如类簇ID号,作为第一索引数据。换而言之,确定出与样本R的整体特征向量V距离最近的中心向量,从而确定出特征向量V所归属的粗类簇。因此,第一索引数据指示出,与特征向量V距离最近的,也就是特征向量V所归属的粗类簇。
例如表1记录了针对5000个500维特征向量进行聚类,得到的20个类簇,以及各类簇中心对应的中心向量
Figure BDA0001541573210000121
Figure BDA0001541573210000122
假定对于当前的样本R,其同样具有500维特征向量V,可以分别计算该特征向量V与
Figure BDA0001541573210000123
Figure BDA0001541573210000124
的距离D1到D20,从中确定出距离最小的中心向量。假定在该步骤中确定出,在各中心向量中,
Figure BDA0001541573210000125
与特征向量V距离最近,那么该样本的第一索引数据即为
Figure BDA0001541573210000126
所对应的类簇标记C9。换而言之,该样本从全向量整体上,归属于类簇C9。
另一方面,在步骤S34,将上述特征向量V根据维度划分为M个分段,形成与各个分段i对应的分段向量Vi。可以理解,该步骤中将高维特征向量V划分为M个分段的方式,与分类处理过程中包含的分段聚类的分段方式相一致,不再赘述。
接着,在步骤S35,从第二向量表记录的、各个分段i对应的k个分段中心向量中,确定与对应的分段向量Vi距离最近的分段中心向量,将确定出的分段中心向量对应的分段类簇的标识作为第二索引数据。
如前所述,第二向量表记录了分段聚类得到的,各个分段i对应的k个分段类簇,以及各个分段类簇中心对应的分段中心向量。相应地在该步骤S35中,对于每个分段i,分别计算样本R的分段向量Vi与这k个分段中心向量的距离,确定出距离最近的分段中心向量,将该分段中心向量对应的分段类簇的标记,例如类簇ID号,作为第二索引数据。换而言之,确定出各个分段i下,与样本R的分段向量Vi距离最近的分段中心向量,从而确定出该分段向量Vi所归属的分段类簇。第二索引数据即指示出,与各个分段向量Vi距离最近的,也就是Vi所归属的分段类簇。
例如表2记录了将500维特征向量划分为50个分段(M=50),对每个分段的分段向量进行分段聚类,得到的各分段i下的16个分段类簇Si-j,以及各分段类簇中心对应的分段中心向量
Figure BDA0001541573210000131
假定当前样本R的特征向量V也被平均划分为50个分段。可以针对每一分段i,计算样本R的分段向量Vi与该分段i下的16个分段中心向量的距离,确定出距离最近的分段中心向量。例如,假定在该步骤中确定出,对于第1分段下的16个分段中心向量
Figure BDA0001541573210000132
Figure BDA0001541573210000133
样本R的分段向量V1距离
Figure BDA0001541573210000134
最近,那么该分段中心向量对应的分段类簇的标记S1-3可以包含在第二索引数据中。类似地,假定经过计算比较,在第2分段下,与样本R的分段向量V2距离最近的分段中心向量为
Figure BDA0001541573210000135
在第3分段下,与分段向量V3距离最近的分段中心向量为
Figure BDA0001541573210000136
……,在第50分段下,与分段向量V50距离最近的分段中心向量为
Figure BDA0001541573210000137
如此可以确定各个分段下距离最近的分段中心向量,和对应的分段类簇。对应地,在该具体例子中,样本R的第二索引数据可以包括:第一分段下的分段类簇S1-3,第二分段下的分段类簇S2-11,第三分段下的分段类簇S3-8,……,以及第50分段下的分段类簇S50-5。
在如上所述确定出第一索引数据和第二索引数据的基础上,在步骤S36,将确定出的第一索引数据和第二索引数据添加到样本集的索引表中。具体地,在为样本集创建索引表的时候,为索引表设置第一索引字段和第二索引字段,第一索引字段用于存储各个样本的第一索引数据,第二索引字段用于存储各个样本的第二索引数据。相应地,在为任意样本建立索引,即确定其第一索引数据和第二索引数据的基础上,将第一索引数据添加到索引表中与该样本对应的第一索引字段中,将第二索引数据添加到与该样本对应的第二索引字段中。例如,在以上举例的500维的样本R的例子中,其第一索引数据为C9,第二索引数据包括S1-3,S2-11,S3-8,等等。相应地,可以将C9添加到该样本对应的第一索引字段,将S1-3,S2-11,S3-8等添加到该样本对应的第二索引字段。
以上描述了针对样本集中某个样本R建立索引的过程。可以理解,通过对样本集中各个样本都执行上述方法,可以为样本集中各个样本均建立索引。在样本集发生变化时,例如添加了新的样本时,可以针对该新样本执行图3的方法,从而更新索引表。如此,索引表可以记录样本集中每个样本的索引信息。表3示出索引表的一个示例。
样本ID 第一索引字段 第二索引字段
样本Y1 C2 S1-3,S2-1,S3-10,……S50-16
样本Y2 C5 S1-16,S2-13,S3-1,……,S50-5
……
样本R C9 S1-3,S2-11,S3-8,…,S50-5
样本Ym Im IIm-1,IIm-2,IIm-3,…,IIm-j,…,IIm-50
在以上表3中,样本Ym的第一索引字段中的数据Im表示该样本m归属的粗类簇,Im的数值选自表1中的C1-C20;第二索引字段中的I Im-j表示该样本m的第j分段所归属的分段类簇,其数值选自表2中的Sj-1,Sj-2到Sj-16。特别地,表3中还示出了上述举例说明的样本R的索引信息,即第一索引字段的数据为C9,第二索引字段的数据包括S1-3,S2-11,S3-8,…,S50-5。
可以理解,以上的表3仅用于示例索引表中包含的信息,索引表的具体存储结构可以根据需要进行设置。在一个例子中,索引表被划分为若干子表,分别存储在分布式文件系统中。
在一个实施例中,在以上建立索引表的基础上,对该索引表进行进一步处理,获得倒排索引。具体地,对上述索引表中第一索引字段进行索引倒排,获得第一倒排索引表。索引倒排是本领域中常用的索引处理方式,是反向地从索引值确定出数据项的过程。由于以上获得的索引表中第一索引字段记录了各个样本对应的粗类簇标识,通过对第一索引字段经过索引倒排,可以反过来确定出各个粗类簇所对应的样本。从粗类簇到对应样本的映射记录在第一倒排索引表中。因此,第一倒排索引表实际上记录了归属于各个粗类簇Ci的样本。表4示出第一倒排索引表的一个例子。
粗聚类的类簇 对应样本
C1 Y1,Y21,Y23,Y61……
C2 Y3,Y8,Y9,Y34……
C3 Y2,Y5,Y11,Y24……
C20 Y4,Y10,Y13,Y52……
在表4中,与表1对应地记录了20个粗类簇对应的样本。在可以理解,表3、表4都只是一种示例,索引表的具体存储格式可以根据业务需求而设置。在一个实施例中,除了存储例如表3的索引表,还存储例如表4的倒排索引表。
如上所述,结合图2描述了对样本集进行分类处理的过程,结合图3描述了为样本集建立索引表的过程。可以理解,图2所示的分类处理,和图3所示的索引处理,都是针对样本集预先进行的准备处理,可以预先离线地进行,以便加快在线查询的处理速度和召回速度。
下面描述在线查询样本的过程。
图4示出根据一个实施例的查询相似样本的方法的流程图。如图4所示,查询相似样本的方法包括以下步骤:在步骤S41,获取查询样本的特征向量T;在步骤S42,获取图2方法获得的第一向量表和第二向量表;在步骤S43,获取图3方法获得的索引表;在步骤S44,从第一向量表记录的N个中心向量中,确定出与特征向量T的距离满足第一预定条件的中心向量,以及该中心向量对应的类簇标识;在步骤S45,根据索引表中的第一索引字段,确定与所述类簇标识对应的样本作为对比样本;在步骤S46,确定各个对比样本与查询样本之间的样本距离;在步骤S47,将样本距离满足第二预定条件的样本确定为查询样本的相似样本。下面描述以上各个步骤的执行方式。
首先在步骤S41,获取查询样本的特征向量T。一般地,查询样本为用户输入的样本,用户希望通过这样的查询,获得与查询样本相似的样本,例如用户输入一张图片,希望找到与该图片相似的其他图片。在一个实施例中,一旦接收到用户的查询请求,在步骤S41,从查询请求中获得用户输入的查询样本,例如,一张图片,并从查询样本中提取出其特征向量T。特征向量T的提取过程和可能包含的元素可以参考结合图2步骤S21的描述,不再赘述。
另一方面,在步骤S42和S43,分别获取图2方法获得的第一向量表和第二向量表,以及图3方法获得的索引表。在一个实施例中,上述第一和第二向量表,以及索引表,均存储在进行查询处理的计算平台本地,此时可以直接读取向量表和索引表。在另一实施例中,上述第一向量表和/或第二向量表和/或索引表,存储在分布式文件系统中。在这样的情况下,在以上步骤中,首先获取对应向量表和/或索引表的配置参数,从中提取出存储位置和访问路径,根据访问路径获取对应的向量表和/或索引表。
一旦获得了第一向量表,可以执行步骤S44,从第一向量表记录的N个中心向量中,确定出与特征向量T的距离满足第一预定条件的中心向量作为选定中心向量,并确定所述选定中心向量对应的选定类簇的标识。
如前所述,第一向量表记录了粗聚类得到的N个类簇对应的N个中心向量。在该步骤S44中,可以依次计算,查询样本的特征向量T与这N个中心向量的距离,得到N个距离,根据这N个距离确定出满足预定条件的中心向量作为选定中心向量。为了进行区分,此处的预定条件被称为第一预定条件。
在一个实施例中,该第一预定条件为距离最近的中心向量。此时,步骤S44中可以确定出距离最近的一个选定中心向量。
在另一实施例中,该第一预定条件为距离最小的预定数目个(n个)中心向量,例如n=3。相应地,在步骤S44中,对于计算得到的N个距离进行排序,确定距离值最小的3个中心向量为选定中心向量。
在又一实施例中,该第一预定条件为距离小于一定阈值的中心向量,例如该阈值为D0。相应地,在步骤S44中,对于计算得到的N个距离,确定出距离小于该阈值D0的中心向量作为选定中心向量。
在还一个实施例中,该第一预定条件为N个中心向量中距离最小的预定比例的中心向量。例如,假定该预定比例为10%,如果N=20,则从这20个中心向量中确定出距离最小的2个中心向量作为选定中心向量;如果N=50,则从这50个中心向量中确定出距离最小的5个中心向量作为选定中心向量。
在其他实施例中,可以根据业务需求将上述的第一预定条件设置为其他形式。一旦确定出满足第一预定条件的选定中心向量,根据第一向量表中记录的粗类簇标识和中心向量的对应关系,可以确定出满足条件的选定类簇和对应的类簇标识。
在步骤S45,根据索引表中的第一索引字段,确定与选定类簇对应的样本作为对比样本。如前所述,索引表的第一索引字段记录了各个样本所对应的粗类簇。通过查询索引表中的第一索引字段中的第一索引数据,可以确定出哪些样本对应于选定类簇,将这些样本作为对比样本。这个过程类似于索引倒排的过程。因此,在一个实施例中,步骤S45包括,通过对第一索引字段进行索引倒排,确定与选定类簇对应的样本作为对比样本。在另一实施例中,在索引处理阶段已经建立了如前所述的第一倒排索引表,例如表4。在这样的情况下,通过查询该第一倒排索引表,可以直接读取获得与选定类簇对应的样本作为对比样本。
可以理解,通过步骤S44-S45,首先确定出了距离查询样本较近(满足第一预定条件)的粗类簇,然后确定出了该粗类簇中包含的对比样本。如此,对样本集中的样本进行了第一级检索和筛选,选择出了与查询样本归属于同样的粗类簇或者归属于附近的粗类簇的样本作为对比样本,进行下一级的继续对比。
例如,如果将5000个样本粗聚类为20个类簇,平均每个类簇中包含250个样本。假定在步骤S44中确定出了2个粗类簇作为选定类簇,那么在步骤S45中将确定出大约500个对比样本。如此,通过第一级筛选,将样本范围缩小到了样本集总量的10%。相比于直接计算查询样本与样本集中所有样本的距离的方式,以上的筛选极大地减小了计算量和性能消耗。
对于以上确定出的对比样本,在接下来的步骤中进行继续比对。具体的,在步骤S46,确定各个对比样本与查询样本之间的样本距离。
在一个实施例中,直接计算查询样本与各个对比样本之间的距离。在一个例子中,计算查询样本的特征向量与对比样本的特征向量之间的欧式距离作为样本距离。在另一例子中,计算查询样本的特征向量和对比样本的特征向量之间的余弦相似度作为样本距离。还可以采取本领域中已知的其他距离计算方式。
在一个实施例中,为了减小计算量提升计算速度,将对比样本对应的第二索引数据中的分段中心向量近似作为其分段向量,计算查询样本与对比样本在各分段i下的分段距离Di,根据各个分段距离Di确定样本距离。
图5示出根据一个实施例的确定样本距离的流程图,即图4中步骤S46的子步骤。如图5所示,首先在步骤S51,将查询样本的特征向量T根据维度划分为M个分段,形成与各个分段i对应的分段向量Ti。可以理解,查询样本的特征向量T的分段方式与样本分类处理和索引处理过程中的向量分段方式相一致。
接着,在步骤S52,通过查询索引表的第二索引字段以及第二向量表,确定对比样本在各分段i下对应的分段类簇标识和分段中心向量。如前所述,第二索引字段中的数据指示出,样本的各分段向量所归属的分段类簇。第二向量表则记载了各个分段类簇对应的分段中心向量。通过查询第二向量表和索引表的第二索引字段,可以确定出对比样本在各分段i下所归属的分段类簇和对应的分段中心向量。此处,实际上将对比样本在分段i下所归属的分段类簇的分段中心向量,近似作为该对比样本在该分段i下的分段向量。如此,通过查表的方式近似获得对比样本的各分段向量,而省却了将对比样本重新划分为多个分段向量的过程,简化了计算,提升了速度。
如前所述,在步骤S51,获得了特征向量T在分段i下的分段向量Ti;在步骤S52,确定出了对比样本在分段i下的分段中心向量。基于此,在步骤S53,可以确定特征向量T在各分段i下的分段向量Ti与对比样本对应的分段中心向量之间的分段距离Di。在该步骤中,可以通过常规距离计算,确定两者之间的距离作为分段距离Di。
于是,在步骤S54,可以基于各个分段距离Di,确定查询样本与对比样本之间的样本距离。
在一个实施例中,对各个分段距离Di进行求和,将求和结果作为查询样本和对比样本的样本距离D。即:
Figure BDA0001541573210000191
在另一实施例中,将各个分段距离Di的平方和再开方作为查询样本和对比样本的样本距离D,即:
Figure BDA0001541573210000192
在其他实施例中,还可以采用其他算法,基于各个分段距离Di,确定样本距离。可以理解的是,通过以上方式,将查询样本和对比样本之间的距离计算从高维向量之间的运算,转化为分段的低维向量之间的运算,加快了计算速度。
进一步地,在一个实施例中,可以通过建立距离表并查表的方式,进一步加快步骤S53中确定分段距离Di的计算过程。具体而言,在一个实施例中,步骤S53可以包括以下步骤。
首先,计算查询样本在各分段i下的分段向量Ti与第二向量表中记录的、该分段i下的各个分段中心向量j之间的距离Dij,形成距离表。
接着,利用步骤S52确定的、对比样本在分段i下对应的分段类簇标识,查询所述距离表,确定分段向量Ti与对比样本对应的分段中心向量之间的分段距离Di。
图6示出以上查表过程。在图6的示意图中,假定基于表2中所示的第二向量表建立了距离表。具体地,表2示出了将样本集中的样本划分为50个分段,每个分段得到16个分段类簇中心的情况。对于每个分段i(i=1到50),可以分别计算查询样本的分段向量Ti与该分段下的16个分段中心向量之间的距离,由此形成50*16的距离表。距离表中的距离Dij表示,在分段i下,分段向量Ti与第j个分段类簇的分段中心向量之间的距离。
另一方面,假定通过查询第二索引字段确定出了对比样本在各分段下的分段类簇,例如对比样本Y1的第二索引数据包括:S1-3,S2-1,…,S50-16,这意味着,Y1在分段1下,归属于第3个分段类簇S1-3,在分段2下,归属于第1个分段类簇S2-1,…,在分段50下,归属于第16个分段类簇。因此,将上述第二索引数据定位到距离表中,可以相应地将分段1下分段向量T1与S1-3的距离,即D1-3,作为分段距离D1,将分段2下分段向量T2与S2-1的距离,即D2-1,作为分段距离D2,…,将分段50下分段向量T50与S50-16的距离,即D50-16,作为分段距离D50。在图6中,用加粗方框示出通过查表确定的对比样本Y1与查询样本的各分段距离。
可以理解,在对比样本数量依然比较大的情况下,例如大于一定阈值(比如500个),建立距离表并查表的方式可以进一步加快计算速度。尽管建立距离表需要一定的计算量,但是在对比样本数量较大的情况下,距离表中的各个分段距离可以在依次对各个对比样本进行计算时得到复用,省却一些重复计算,因此可以进一步提升计算效率。
通过以上方式,得到查询样本和对比样本的各个分段距离Di,并基于分段距离确定出总的样本距离。可以理解,可以针对各个对比样本进行这样的计算,从而得到各个对比样本的样本距离。
回到图4的步骤S47,基于以上得到的各个对比样本的样本距离,将样本距离满足第二预定条件的样本确定为查询样本的相似样本。
在一个实施例中,上述第二预定条件为样本距离最小的对比样本。此时,步骤S47中可以确定出样本距离最小的对比样本作为相似样本。
在另一实施例中,该第二预定条件为样本距离最小的预定数目个对比样本,例如10个。相应地,在步骤S47中,对于计算得到的样本距离进行排序,确定距离值最小的10个对比样本作为相似样本。
在又一实施例中,该第二预定条件为样本距离小于一定距离阈值的对比样本。相应地,在步骤S47中,对于计算得到的样本距离,确定出样本距离小于该阈值的对比样本作为相似样本。
在其他实施例中,可以根据业务需求设置上述的第二预定条件。
如此,通过两个层级的检索和筛选,确定出查询样本的相似样本。在以上过程中,第一预定条件作为第一层级的筛选条件,可以极大缩小样本范围,减小数据计算量。在第二层级筛选的过程中,可以基于预先建立的向量表和索引表,将高维向量计算转化为分段的低维向量,进一步提升运算速度。从而,提供更加快速的复杂样本的查询和检索。
根据另一方面的实施例,还提供对样本集进行分类处理、索引处理和查询处理的装置。
图7示出根据一个实施例的对样本集进行分类处理的装置的示意性框图。如图7所示,分类处理装置700包括:第一聚类单元71,配置为通过对样本集中多个样本的特征向量进行聚类,确定N个类簇以及对应的N个类簇中心;第一记录单元72,配置为在第一向量表中记录所述N个类簇的类簇标识以及所述N个类簇中心对应的N个中心向量;分段单元73,配置为将所述多个样本中各个样本的特征向量根据维度划分为M个分段,以形成与各个分段i对应的分段向量;第二聚类单元74,配置为分别对所述多个样本的各个分段向量进行聚类,确定各个分段i对应的k个分段类簇,以及对应的k个分段类簇中心;第二记录单元75,配置为在第二向量表中记录各个分段i对应的k个分段类簇的类簇标识,以及各个分段类簇中心对应的分段中心向量。
在一个实施例中,上述装置700还包括记录单元(未示出),配置为将所述第一向量表和第二向量表存储在分布式文件系统中,并记录所述第一向量表和第二向量表对应的配置参数,所述配置参数指示所述第一向量表和第二向量表在分布式文件系统中的访问路径。
图8示出根据一个实施例的为样本集建立索引表的装置的示意性框图。如图8所示,该装置800包括:向量表获取单元81,配置为获取如图7所示的装置得到的第一向量表和第二向量表;样本获取单元82,配置为获取所述样本集中任意样本的特征向量V;第一索引建立单元83,配置为从所述第一向量表记录的N个中心向量中,确定出与所述特征向量V距离最近的中心向量,将该最近的中心向量对应的类簇标识作为第一索引数据;分段单元84,配置为将所述特征向量V根据维度划分为M个分段,形成与各个分段i对应的分段向量Vi;第二索引建立单元85,配置为从所述第二向量表记录的、各个分段i对应的k个分段中心向量中,确定与对应的分段向量Vi距离最近的分段中心向量,将确定出的分段中心向量对应的分段类簇的类簇标识作为第二索引数据;以及记录单元86,配置为分别将所述第一索引数据和第二索引数据添加到索引表的第一索引字段和第二索引字段中。
在一个实施例中,第一向量表和第二向量表存储在分布式文件系统中,相应地,向量表获取单元81配置为:获取所述第一向量表和第二向量表的配置参数,通过配置参数获得第一向量表和第二向量表的访问路径;根据所述访问路径从所述分布式文件系统中读取第一向量表和第二向量表。
在一个实施例中,装置800还包括:状态查询单元(未示出),配置为通过查询标记文件,确定所述第一向量表和第二向量表的更新状态。
在一个实施例中,装置800还包括:索引倒排单元(未示出),配置为对所述索引表中第一索引字段进行索引倒排,获得第一倒排索引表,所述第一倒排索引表记录各个类簇所对应的样本。
图9示出根据一个实施例的查询相似样本的装置的示意性框图。如图9所示,装置900包括:查询样本获取单元91,配置为获取查询样本的特征向量T;向量表获取单元92,配置为获取通过图7的装置700得到的第一向量表和第二向量表;索引表获取单元93,配置为获取通过图8的装置得到的索引表;第一确定单元94,配置为从所述第一向量表记录的N个中心向量中,确定出与所述特征向量T的距离满足第一预定条件的中心向量,将该中心向量所对应的类簇作为选定类簇;第二确定单元95,配置为根据所述索引表中的第一索引字段,确定与所述选定类簇对应的样本作为对比样本;距离确定单元96,配置为确定所述对比样本中各个对比样本与所述查询样本之间的样本距离;样本确定单元97,配置为将所述样本距离满足第二预定条件的样本确定为所述查询样本的相似样本。
在一个实施例中,上述第一预定条件为:距离最小的预定数目个中心向量,或者,距离小于一定阈值的中心向量。
在一个实施例中,所述第二确定单元95配置为:通过对第一索引字段进行索引倒排,确定与选定类簇对应的样本作为对比样本。
在另一实施例中,所述索引表还包括根据所述第一索引字段确定的第一倒排索引表,所述第一倒排索引表记录各个类簇所对应的样本;相应地,第二确定单元95配置为:通过查询所述第一倒排索引表,读取与所述选定类簇对应的样本作为对比样本。
在一个实施例中,距离确定单元96配置为:将所述特征向量T根据维度划分为M个分段,形成与各个分段i对应的分段向量Ti;通过查询索引表的第二索引字段以及第二向量表,确定对比样本在各分段i下对应的分段类簇标识和分段中心向量;确定特征向量T在各分段i下的分段向量Ti与对比样本对应的分段中心向量之间的分段距离Di;基于各个分段距离Di,确定查询样本与对比样本之间的样本距离。
在一个实施例中,所述距离确定单元96进一步配置为:计算所述特征向量T在各分段i下的分段向量Ti与第二向量表中记录的、该分段i下的各个分段中心向量j之间的距离Dij,形成距离表;利用对比样本在各分段i下对应的分段类簇标识,查询所述距离表,确定分段向量Ti与对比样本对应的分段中心向量之间的分段距离Di。
通过以上的分类处理装置700和索引处理装置800,预先离线地为样本集中的样本进行了两个层级的聚类,建立了两个层级的索引。在在线查询过程中,查询处理装置900相应地利用两个层级的检索和筛选,确定出查询样本的相似样本。在以上过程中,通过第一层级检索缩小样本范围,并且在第二层级检索中,将大量高维向量计算转化为分段的低维向量,进一步提升运算速度。从而,提供更加快速的复杂样本的查询和检索。
根据另一方面的实施例,还提供一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序在计算机中执行时,令计算机执行结合图2至图5所描述的方法。
根据再一方面的实施例,还提供一种计算设备,包括存储器和处理器,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现结合图2至图5所述的方法。
本领域技术人员应该可以意识到,在上述一个或多个示例中,本发明所描述的功能可以用硬件、软件、固件或它们的任意组合来实现。当使用软件实现时,可以将这些功能存储在计算机可读介质中或者作为计算机可读介质上的一个或多个指令或代码进行传输。
以上所述的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的技术方案的基础之上,所做的任何修改、等同替换、改进等,均应包括在本发明的保护范围之内。

Claims (27)

1.一种对样本集进行分类处理的方法,包括:
通过对样本集中多个样本的特征向量进行聚类,确定N个类簇以及对应的N个类簇中心;
在第一向量表中记录所述N个类簇的类簇标识以及所述N个类簇中心对应的N个中心向量;
将所述多个样本中各个样本的特征向量根据维度划分为M个分段,以形成与各个分段i对应的分段向量;
分别对所述多个样本的各个分段向量进行聚类,确定各个分段i对应的k个分段类簇,以及对应的k个分段类簇中心;
在第二向量表中记录各个分段i对应的k个分段类簇的类簇标识,以及各个分段类簇中心对应的分段中心向量。
2.根据权利要求1所述的方法,还包括:将所述第一向量表和第二向量表存储在分布式文件系统中,并记录所述第一向量表和第二向量表对应的配置参数,所述配置参数指示所述第一向量表和第二向量表在分布式文件系统中的访问路径。
3.一种为样本集建立索引表的方法,包括:
获取根据权利要求1的方法得到的第一向量表和第二向量表;
获取所述样本集中任意样本的特征向量V;
从所述第一向量表记录的N个中心向量中,确定出与所述特征向量V距离最近的中心向量,将该最近的中心向量对应的类簇标识作为第一索引数据;
将所述特征向量V根据维度划分为M个分段,形成与各个分段i对应的分段向量Vi;
从所述第二向量表记录的、各个分段i对应的k个分段中心向量中,确定与对应的分段向量Vi距离最近的分段中心向量,将确定出的分段中心向量对应的分段类簇的类簇标识作为第二索引数据;
分别将所述第一索引数据和第二索引数据添加到索引表的第一索引字段和第二索引字段中。
4.根据权利要求3所述的方法,其中所述第一向量表和第二向量表存储在分布式文件系统中,所述获取根据权利要求1的方法得到的第一向量表和第二向量表包括:
获取所述第一向量表和第二向量表的配置参数,通过配置参数获得第一向量表和第二向量表的访问路径;
根据所述访问路径从所述分布式文件系统中读取第一向量表和第二向量表。
5.根据权利要求3所述的方法,还包括:通过查询标记文件,确定所述第一向量表和第二向量表的更新状态。
6.根据权利要求3所述的方法,还包括:对所述索引表中第一索引字段进行索引倒排,获得第一倒排索引表,所述第一倒排索引表记录各个类簇所对应的样本。
7.一种查询相似样本的方法,包括:
获取查询样本的特征向量T;
获取根据权利要求1的方法获得的第一向量表和第二向量表;
获取如权利要求3所述的索引表;
从所述第一向量表记录的N个中心向量中,确定出与所述特征向量T的距离满足第一预定条件的中心向量,将该中心向量所对应的类簇作为选定类簇;
根据所述索引表中的第一索引字段,确定与所述选定类簇对应的样本作为对比样本;
确定所述对比样本中各个对比样本与所述查询样本之间的样本距离;
将所述样本距离满足第二预定条件的样本确定为所述查询样本的相似样本。
8.根据权利要求7所述的方法,其中所述第一预定条件为:距离最小的预定数目个中心向量,或者,距离小于一定阈值的中心向量。
9.根据权利要求7所述的方法,其中根据所述索引表中的第一索引字段,确定与所述选定类簇对应的样本作为对比样本包括:通过对第一索引字段进行索引倒排,确定与选定类簇对应的样本作为对比样本。
10.根据权利要求7所述的方法,其中所述索引表还包括根据所述第一索引字段确定的第一倒排索引表,所述第一倒排索引表记录各个类簇所对应的样本;
根据所述索引表中的第一索引字段,确定与所述选定类簇对应的样本作为对比样本包括:通过查询所述第一倒排索引表,读取与所述选定类簇对应的样本作为对比样本。
11.根据权利要求7所述的方法,其中确定所述对比样本中各个对比样本与所述查询样本之间的样本距离包括:
将所述特征向量T根据维度划分为M个分段,形成与各个分段i对应的分段向量Ti;
通过查询索引表的第二索引字段以及第二向量表,确定对比样本在各分段i下对应的分段类簇标识和分段中心向量;
确定特征向量T在各分段i下的分段向量Ti与对比样本对应的分段中心向量之间的分段距离Di;
基于各个分段距离Di,确定查询样本与对比样本之间的样本距离。
12.根据权利要求11所述的方法,其中确定特征向量T在各分段i下的分段向量Ti与对比样本对应的分段中心向量之间的分段距离Di包括:
计算所述特征向量T在各分段i下的分段向量Ti与第二向量表中记录的、该分段i下的各个分段中心向量j之间的距离Dij,形成距离表;
利用对比样本在各分段i下对应的分段类簇标识,查询所述距离表,确定分段向量Ti与对比样本对应的分段中心向量之间的分段距离Di。
13.一种对样本集进行分类处理的装置,包括:
第一聚类单元,配置为通过对样本集中多个样本的特征向量进行聚类,确定N个类簇以及对应的N个类簇中心,并在第一向量表中记录所述N个类簇的类簇标识以及所述N个类簇中心对应的N个中心向量;
分段单元,配置为将所述多个样本中各个样本的特征向量根据维度划分为M个分段,以形成与各个分段i对应的分段向量;
第二聚类单元,配置为分别对所述多个样本的各个分段向量进行聚类,确定各个分段i对应的k个分段类簇,以及对应的k个分段类簇中心,并在第二向量表中记录各个分段i对应的k个分段类簇的类簇标识,以及各个分段类簇中心对应的分段中心向量。
14.根据权利要求13所述的装置,还包括:记录单元,配置为将所述第一向量表和第二向量表存储在分布式文件系统中,并记录所述第一向量表和第二向量表对应的配置参数,所述配置参数指示所述第一向量表和第二向量表在分布式文件系统中的访问路径。
15.一种为样本集建立索引表的装置,包括:
向量表获取单元,配置为获取权利要求13的装置得到的第一向量表和第二向量表;
样本获取单元,配置为获取所述样本集中任意样本的特征向量V;
第一索引建立单元,配置为从所述第一向量表记录的N个中心向量中,确定出与所述特征向量V距离最近的中心向量,将该最近的中心向量对应的类簇标识作为第一索引数据;
分段单元,配置为将所述特征向量V根据维度划分为M个分段,形成与各个分段i对应的分段向量Vi;
第二索引建立单元,配置为从所述第二向量表记录的、各个分段i对应的k个分段中心向量中,确定与对应的分段向量Vi距离最近的分段中心向量,将确定出的分段中心向量对应的分段类簇的类簇标识作为第二索引数据;
记录单元,配置为分别将所述第一索引数据和第二索引数据添加到索引表的第一索引字段和第二索引字段中。
16.根据权利要求15所述的装置,其中所述第一向量表和第二向量表存储在分布式文件系统中,所述向量表获取单元配置为:
获取所述第一向量表和第二向量表的配置参数,通过配置参数获得第一向量表和第二向量表的访问路径;
根据所述访问路径从所述分布式文件系统中读取第一向量表和第二向量表。
17.根据权利要求15所述的装置,还包括:状态查询单元,配置为通过查询标记文件,确定所述第一向量表和第二向量表的更新状态。
18.根据权利要求15所述的装置,还包括:索引倒排单元,配置为对所述索引表中第一索引字段进行索引倒排,获得第一倒排索引表,所述第一倒排索引表记录各个类簇所对应的样本。
19.一种查询相似样本的装置,包括:
查询样本获取单元,配置为获取查询样本的特征向量T;
向量表获取单元,配置为获取通过权利要求13的装置得到的第一向量表和第二向量表;
索引表获取单元,配置为获取通过权利要求15的装置得到的索引表;
第一确定单元,配置为从所述第一向量表记录的N个中心向量中,确定出与所述特征向量T的距离满足第一预定条件的中心向量,将该中心向量所对应的类簇作为选定类簇;
第二确定单元,配置为根据所述索引表中的第一索引字段,确定与所述选定类簇对应的样本作为对比样本;
距离确定单元,配置为确定所述对比样本中各个对比样本与所述查询样本之间的样本距离;
样本确定单元,配置为将所述样本距离满足第二预定条件的样本确定为所述查询样本的相似样本。
20.根据权利要求19所述的装置,其中所述第一预定条件为:距离最小的预定数目个中心向量,或者,距离小于一定阈值的中心向量。
21.根据权利要求19所述的装置,其中所述第二确定单元配置为:通过对第一索引字段进行索引倒排,确定与选定类簇对应的样本作为对比样本。
22.根据权利要求19所述的装置,其中所述索引表还包括根据所述第一索引字段确定的第一倒排索引表,所述第一倒排索引表记录各个类簇所对应的样本;
所述第二确定单元配置为:通过查询所述第一倒排索引表,读取与所述选定类簇对应的样本作为对比样本。
23.根据权利要求19所述的装置,其中所述距离确定单元配置为:
将所述特征向量T根据维度划分为M个分段,形成与各个分段i对应的分段向量Ti;
通过查询索引表的第二索引字段以及第二向量表,确定对比样本在各分段i下对应的分段类簇标识和分段中心向量;
确定特征向量T在各分段i下的分段向量Ti与对比样本对应的分段中心向量之间的分段距离Di;
基于各个分段距离Di,确定查询样本与对比样本之间的样本距离。
24.根据权利要求23所述的装置,其中所述距离确定单元还配置为:
计算所述特征向量T在各分段i下的分段向量Ti与第二向量表中记录的、该分段i下的各个分段中心向量j之间的距离Dij,形成距离表;
利用对比样本在各分段i下对应的分段类簇标识,查询所述距离表,确定分段向量Ti与对比样本对应的分段中心向量之间的分段距离Di。
25.一种计算设备,包括存储器和处理器,其特征在于,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现权利要求1-2中任一项所述的方法。
26.一种计算设备,包括存储器和处理器,其特征在于,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现权利要求3-6中任一项所述的方法。
27.一种计算设备,包括存储器和处理器,其特征在于,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现权利要求7-12中任一项所述的方法。
CN201810014815.3A 2018-01-08 2018-01-08 样本集的处理方法及装置、样本的查询方法及装置 Active CN108241745B (zh)

Priority Applications (5)

Application Number Priority Date Filing Date Title
CN201810014815.3A CN108241745B (zh) 2018-01-08 2018-01-08 样本集的处理方法及装置、样本的查询方法及装置
TW107143437A TWI696081B (zh) 2018-01-08 2018-12-04 樣本集的處理方法及裝置、樣本的查詢方法及裝置
EP18898858.8A EP3709184B1 (en) 2018-01-08 2018-12-26 Sample set processing method and apparatus, and sample querying method and apparatus
PCT/CN2018/123855 WO2019134567A1 (zh) 2018-01-08 2018-12-26 样本集的处理方法及装置、样本的查询方法及装置
US16/878,482 US10896164B2 (en) 2018-01-08 2020-05-19 Sample set processing method and apparatus, and sample querying method and apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810014815.3A CN108241745B (zh) 2018-01-08 2018-01-08 样本集的处理方法及装置、样本的查询方法及装置

Publications (2)

Publication Number Publication Date
CN108241745A CN108241745A (zh) 2018-07-03
CN108241745B true CN108241745B (zh) 2020-04-28

Family

ID=62699465

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810014815.3A Active CN108241745B (zh) 2018-01-08 2018-01-08 样本集的处理方法及装置、样本的查询方法及装置

Country Status (5)

Country Link
US (1) US10896164B2 (zh)
EP (1) EP3709184B1 (zh)
CN (1) CN108241745B (zh)
TW (1) TWI696081B (zh)
WO (1) WO2019134567A1 (zh)

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108241745B (zh) * 2018-01-08 2020-04-28 阿里巴巴集团控股有限公司 样本集的处理方法及装置、样本的查询方法及装置
CN110889424B (zh) * 2018-09-11 2023-06-30 阿里巴巴集团控股有限公司 向量索引建立方法及装置和向量检索方法及装置
CN111177438B (zh) * 2018-11-12 2023-05-12 深圳云天励飞技术有限公司 图像特征值的搜索方法、装置、电子设备及存储介质
CN110209895B (zh) * 2019-06-06 2023-09-05 创新先进技术有限公司 向量检索方法、装置和设备
CN110443229A (zh) * 2019-08-22 2019-11-12 国网四川省电力公司信息通信公司 一种基于人工智能的设备显示内容识别方法
CN110633379B (zh) * 2019-08-29 2023-04-28 北京睿企信息科技有限公司 一种基于gpu并行运算的以图搜图系统及方法
CN110825894A (zh) * 2019-09-18 2020-02-21 平安科技(深圳)有限公司 数据索引建立、数据检索方法、装置、设备和存储介质
CN110674328A (zh) * 2019-09-27 2020-01-10 长城计算机软件与系统有限公司 一种商标图像检索方法、系统、介质及设备
CN112819018A (zh) * 2019-10-31 2021-05-18 北京沃东天骏信息技术有限公司 生成样本的方法、装置、电子设备和存储介质
CN111026922B (zh) * 2019-12-26 2024-05-28 新长城科技有限公司 一种分布式向量索引方法、系统、插件及电子设备
CN111309984B (zh) * 2020-03-10 2023-09-05 支付宝(杭州)信息技术有限公司 利用索引从数据库中进行节点向量检索的方法及装置
CN111368133B (zh) * 2020-04-16 2021-09-14 腾讯科技(深圳)有限公司 一种视频库的索引表建立方法、装置、服务器及存储介质
CN113626471B (zh) * 2021-08-05 2024-02-23 北京达佳互联信息技术有限公司 数据检索方法、装置、电子设备及存储介质
EP4160434A4 (en) * 2021-08-16 2023-12-13 Baidu Online Network Technology (Beijing) Co., Ltd METHOD AND DEVICE FOR CONSTRUCTING A SEARCH DATABASE AND DEVICE AND STORAGE MEDIUM
CN113449132B (zh) * 2021-08-26 2022-02-25 阿里云计算有限公司 一种向量检索方法及装置
CN114049508B (zh) * 2022-01-12 2022-04-01 成都无糖信息技术有限公司 一种基于图片聚类和人工研判的诈骗网站识别方法及系统
CN114399058B (zh) * 2022-03-25 2022-06-10 腾讯科技(深圳)有限公司 一种模型更新的方法、相关装置、设备以及存储介质
US20230418883A1 (en) * 2022-06-28 2023-12-28 Open Text Holdings, Inc. Systems and methods for document analysis to produce, consume and analyze content-by-example logs for documents
CN116028500B (zh) * 2023-01-17 2023-07-14 黑龙江大学 一种基于高维数据的范围查询索引方法

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4041081B2 (ja) * 2004-03-23 2008-01-30 東芝ソリューション株式会社 分割クラスタリング装置及び分割データ数決定方法
CN102663100A (zh) * 2012-04-13 2012-09-12 西安电子科技大学 一种两阶段混合粒子群优化聚类方法
CN102831225A (zh) * 2012-08-27 2012-12-19 南京邮电大学 云环境下的多维索引结构、其构建方法及相似性查询方法
CN103136337A (zh) * 2013-02-01 2013-06-05 北京邮电大学 用于复杂网络的分布式知识数据挖掘装置和挖掘方法
CN103699771A (zh) * 2013-09-27 2014-04-02 广东工业大学 一种冷负荷预测的情景-聚类方法
CN107451200A (zh) * 2017-07-06 2017-12-08 西安交通大学 使用随机量化词汇树的检索方法及基于其的图像检索方法

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS57153754U (zh) 1981-03-23 1982-09-27
US5577135A (en) * 1994-03-01 1996-11-19 Apple Computer, Inc. Handwriting signal processing front-end for handwriting recognizers
US6684186B2 (en) * 1999-01-26 2004-01-27 International Business Machines Corporation Speaker recognition using a hierarchical speaker model tree
CN101283353B (zh) * 2005-08-03 2015-11-25 搜索引擎科技有限责任公司 通过分析标签找到相关文档的系统和方法
JP4550074B2 (ja) * 2007-01-23 2010-09-22 インターナショナル・ビジネス・マシーンズ・コーポレーション 不均質な情報源からの情報トラッキングのためのシステム、方法およびコンピュータ実行可能プログラム
US9589056B2 (en) * 2011-04-05 2017-03-07 Microsoft Technology Licensing Llc User information needs based data selection
JP4976578B1 (ja) * 2011-09-16 2012-07-18 楽天株式会社 画像検索装置およびプログラム
KR101348904B1 (ko) * 2012-01-20 2014-01-09 한국과학기술원 고차 상관 클러스터링을 이용한 이미지 분할 방법, 이를 처리하는 시스템 및 기록매체
US10176246B2 (en) * 2013-06-14 2019-01-08 Microsoft Technology Licensing, Llc Fast grouping of time series
US10140353B2 (en) * 2013-12-23 2018-11-27 Teredata, US, Inc. Techniques for query processing using high dimension histograms
US20160328654A1 (en) * 2015-05-04 2016-11-10 Agt International Gmbh Anomaly detection for context-dependent data
CN106557521B (zh) * 2015-09-29 2020-07-14 佳能株式会社 对象索引方法、对象搜索方法及对象索引系统
US10599731B2 (en) * 2016-04-26 2020-03-24 Baidu Usa Llc Method and system of determining categories associated with keywords using a trained model
US10719509B2 (en) * 2016-10-11 2020-07-21 Google Llc Hierarchical quantization for fast inner product search
US10789298B2 (en) * 2016-11-16 2020-09-29 International Business Machines Corporation Specialist keywords recommendations in semantic space
CN106650806B (zh) * 2016-12-16 2019-07-26 北京大学深圳研究生院 一种用于行人检测的协同式深度网络模型方法
US20190065833A1 (en) * 2017-08-30 2019-02-28 Qualcomm Incorporated Detecting false positives in face recognition
CN108241745B (zh) * 2018-01-08 2020-04-28 阿里巴巴集团控股有限公司 样本集的处理方法及装置、样本的查询方法及装置

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4041081B2 (ja) * 2004-03-23 2008-01-30 東芝ソリューション株式会社 分割クラスタリング装置及び分割データ数決定方法
CN102663100A (zh) * 2012-04-13 2012-09-12 西安电子科技大学 一种两阶段混合粒子群优化聚类方法
CN102831225A (zh) * 2012-08-27 2012-12-19 南京邮电大学 云环境下的多维索引结构、其构建方法及相似性查询方法
CN103136337A (zh) * 2013-02-01 2013-06-05 北京邮电大学 用于复杂网络的分布式知识数据挖掘装置和挖掘方法
CN103699771A (zh) * 2013-09-27 2014-04-02 广东工业大学 一种冷负荷预测的情景-聚类方法
CN107451200A (zh) * 2017-07-06 2017-12-08 西安交通大学 使用随机量化词汇树的检索方法及基于其的图像检索方法

Also Published As

Publication number Publication date
TW201931169A (zh) 2019-08-01
WO2019134567A1 (zh) 2019-07-11
EP3709184A1 (en) 2020-09-16
EP3709184A4 (en) 2020-12-09
CN108241745A (zh) 2018-07-03
US10896164B2 (en) 2021-01-19
EP3709184B1 (en) 2022-11-09
US20200278953A1 (en) 2020-09-03
TWI696081B (zh) 2020-06-11

Similar Documents

Publication Publication Date Title
CN108241745B (zh) 样本集的处理方法及装置、样本的查询方法及装置
US8676725B1 (en) Method and system for entropy-based semantic hashing
JP2014505313A (ja) 類似画像を識別する方法および装置
CN113850281B (zh) 一种基于meanshift优化的数据处理方法和装置
CN112395487B (zh) 信息推荐方法、装置、计算机可读存储介质及电子设备
CN110598061A (zh) 一种多元图融合的异构信息网嵌入方法
Carbonera An efficient approach for instance selection
Zhang et al. Dynamic time warping under product quantization, with applications to time-series data similarity search
US10671663B2 (en) Generation device, generation method, and non-transitory computer-readable recording medium
Tiwari et al. Entropy weighting genetic k-means algorithm for subspace clustering
CN110209895B (zh) 向量检索方法、装置和设备
Haripriya et al. Multi label prediction using association rule generation and simple k-means
TW201243627A (en) Multi-label text categorization based on fuzzy similarity and k nearest neighbors
Yu et al. A classifier chain algorithm with k-means for multi-label classification on clouds
US20230267175A1 (en) Systems and methods for sample efficient training of machine learning models
CN115146103A (zh) 图像检索方法、装置、计算机设备、存储介质和程序产品
Chen et al. Effective and efficient content redundancy detection of web videos
CN114896514A (zh) 一种基于图神经网络的Web API标签推荐方法
CN113901278A (zh) 一种基于全局多探测和适应性终止的数据搜索方法和装置
da Silva et al. Audio plugin recommendation systems for music production
US10311084B2 (en) Method and system for constructing a classifier
Alshaibanee et al. A proposed class labeling approach: From unsupervised to supervised learning
Kumar et al. ARSkNN-A k-NN classifier using mass based similarity measure
Wang et al. Efficient sampling of training set in large and noisy multimedia data
Athira et al. An efficient solution for multi-label classification problem using apriori algorithm (MLC-A)

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
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 1256518

Country of ref document: HK

GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20201020

Address after: Cayman Enterprise Centre, 27 Hospital Road, George Town, Grand Cayman Islands

Patentee after: Innovative advanced technology Co.,Ltd.

Address before: Cayman Enterprise Centre, 27 Hospital Road, George Town, Grand Cayman Islands

Patentee before: Advanced innovation technology Co.,Ltd.

Effective date of registration: 20201020

Address after: Cayman Enterprise Centre, 27 Hospital Road, George Town, Grand Cayman Islands

Patentee after: Advanced innovation technology Co.,Ltd.

Address before: A four-storey 847 mailbox in Grand Cayman Capital Building, British Cayman Islands

Patentee before: Alibaba Group Holding Ltd.