CN104732512A - 空间划分方法以及空间划分装置 - Google Patents

空间划分方法以及空间划分装置 Download PDF

Info

Publication number
CN104732512A
CN104732512A CN201410687156.1A CN201410687156A CN104732512A CN 104732512 A CN104732512 A CN 104732512A CN 201410687156 A CN201410687156 A CN 201410687156A CN 104732512 A CN104732512 A CN 104732512A
Authority
CN
China
Prior art keywords
intersection point
space
lineoid
dimension
setting unit
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.)
Granted
Application number
CN201410687156.1A
Other languages
English (en)
Other versions
CN104732512B (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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Publication of CN104732512A publication Critical patent/CN104732512A/zh
Application granted granted Critical
Publication of CN104732512B publication Critical patent/CN104732512B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • G06T7/73Determining position or orientation of objects or cameras using feature-based methods
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0643Hash functions, e.g. MD5, SHA, HMAC or f9 MAC
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3226Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using a predetermined code, e.g. password, passphrase or PIN
    • H04L9/3231Biological data, e.g. fingerprint, voice or retina
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N7/00Computing arrangements based on specific mathematical models
    • G06N7/01Probabilistic graphical models, e.g. probabilistic networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2200/00Indexing scheme for image data processing or generation, in general
    • G06T2200/04Indexing scheme for image data processing or generation, in general involving 3D image data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2210/00Indexing scheme for image generation or computer graphics
    • G06T2210/21Collision detection, intersection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2219/00Indexing scheme for manipulating 3D models or images for computer graphics
    • G06T2219/20Indexing scheme for editing of 3D models
    • G06T2219/2004Aligning objects, relative positioning of parts

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Power Engineering (AREA)
  • Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biodiversity & Conservation Biology (AREA)
  • Biomedical Technology (AREA)
  • General Health & Medical Sciences (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Image Analysis (AREA)

Abstract

本发明提供了空间划分方法以及空间划分装置。空间划分方法包括指定和放置。指定包括:指定超平面的交点的位置,使得该位置被包括在球面内,该球面存在于维数比特征空间的维数高一维或更多维的空间中。放置包括:放置超平面,使得超平面共享所指定的位置的交点。

Description

空间划分方法以及空间划分装置
技术领域
本文中所讨论的实施方式涉及空间划分方法等。
背景技术
例如,当针对各种系统对用户进行认证时,执行用于获得用户的生物信息并且确定与所获得的生物信息相匹配的生物信息是否存在于预先注册的数据库中的处理。现在,因为在认证时所获得的生物信息与在注册时所获得的生物信息难以完全匹配,所以相似性搜索是有效的。
对于在执行相似性搜索时的相似度的表示,存在以下技术:该技术将生物信息的特征值转换为散列向量,使得它们的散列向量之间的汉明距离很短的生物信息被指定为相似的生物信息。
使用相关技术,通过使用超平面(hyper-plane)可以将特征值转换为散列向量,但是还存在着以下处理:通过使用超球面(hyper-sphere)将特征值转换为散列向量,并且当使用超球面时可以更好地期待精度的提高。
专利文献1:日本专利公开号2011-100395
专利文献2:日本专利公开号2012-160047
专利文献3:日本专利公开号10-247243
专利文献4:日本专利公开号2008-282391
非专利文献1:M.Datar,N.Immorlica,P.Indyk,V.S.Mirrokni:Locality-Sensitive Hashing Scheme Based on p-Stable Distributions,计算几何第二十届年度研讨会会议录(SCG),2004年
非专利文献2:Jae-Pil Heo,Youngwoon Lee,Junfeng He,Shih-FuChang和Sung-Eui Yoon,“Spherical hashing”,CVPR,第2957页至第2964页,2012年
非专利文献3:Kengo Terasawa和Yuzuru Tanaka,“Spherical lshfor approximate nearest neighbor search on unit hyper-sphere”,编者:Frank K.H.A.Dehne,Jorg-Rudiger Sack和Norbert Zeh,WADS,计算机科学讲义的第4619卷,第27页至第38页,施普林格出版社,2007年
然而,使用相关技术,并未以高精度来执行使用散列向量的相似性搜索。
例如,当通过使用超球面将特征向量转换为散列向量时,存在以下情况:由于虫洞(worm hole)的影响,对于明显彼此不同的特征向量,转换成散列向量后的汉明距离可能结果是小的。因此,可能将不同的特征向量错误地确定为相似的特征向量。
现在将描述虫洞。图16至图18是示出虫洞的图。例如,考虑通过使用超球面将m维特征空间V划分成区域,并且根据区域在超球面内部还是外部来为每个区域分配比特串。如图16所示,根据超球面的放置,互不连接的区域A和区域B可能具有相同的比特串(0,0,0)。
在出现图16所示现象的情况下,当人们根据分配给特征向量的比特串之间的汉明距离来评估特征向量之间的相似性时,即使特征向量明显互相远离,但是汉明距离可能结果是小的。如图17所示,为了理解这种非连通性,人们可以假定区域A和区域B之间连接有管子10。在广义相对论的特定解决方案下,该管子被称为“虫洞”。
图18示出当通过使用超球面S4将一维特征空间划分成区域时产生的非连接区域,以及连接在区域之间的虫洞。通过超平面F5和F6将超球面S4划分成区域。例如,超平面F5左侧的区域在其第一比特中被分配“1”,并且超平面F5右侧的区域在其第一比特中被分配“0”。超平面F6右侧的区域在其第二比特中被分配“1”,并且超平面F6左侧的区域在其第二比特被分配“0”。然后,即使它们相互并不连接,但图18的南极附近和北极附近被分配相同的比特串(0,0)。原因在于超球面S4的南极附近和北极附近之间连接有虫洞。
因此,本发明的实施方式的一个方面的目的在于提供空间划分方法、空间划分装置以及空间划分程序;使用该空间划分方法、空间划分装置以及空间划分程序,可以以高精度来执行使用特征向量的相似性搜索。
发明内容
根据实施方式的一个方面,空间划分方法包括:指定超平面的交点的位置,使得该位置被包括在球面内,该球面存在于维数比特征空间的维数高一维或更多维的空间中;以及放置超平面,使得超平面共享所指定的位置的交点。
附图说明
图1是示出根据第一实施方式的空间划分装置的系统配置的图;
图2是示出超球面S上的逆立体投影(inverse stereographicprojection)的图;
图3是示出通过将超球面S投影到特征空间V上所获得的圆形图像的半径的示例的图;
图4是示出要经历逆立体投影到超球面S上的区域的图,以及通过该逆立体投影所获得的区域的示例;
图5示出近似直线的示例;
图6是示出设置在超球面S内的示例公共交点的图;
图7示出整个处理;
图8示出用于设置公共交点的处理流程的第一示例;
图9示出用于设置公共交点的处理流程的第二示例;
图10示出用于设置公共交点的处理流程的第三示例;
图11是示出根据第二实施方式的空间划分装置的系统配置的图;
图12示出用于设置公共交点的处理流程的第四示例;
图13示出用于设置公共交点的处理流程的第五示例;
图14示出用于设置公共交点的处理流程的第六示例;
图15示出目标函数的示例处理流程;
图16是示出说明出现虫洞的第一示例的图;
图17是示出说明出现虫洞的第二示例的图;
图18是示出说明出现虫洞的第三示例的图;以及
图19是示出空间划分装置的硬件配置的图。
具体实施方式
将参照附图说明优选实施方式。注意,实施方式并不限制本发明的范围。只要各个处理互相兼容,则可以互相组合实施方式。
[a]第一实施方式
空间划分装置的系统配置
将参照图1描述空间划分装置100的系统配置。图1是示出根据第一实施方式的空间划分装置的系统配置的图。如图1所示,空间划分装置100包括控制单元110、存储单元120和特征空间数据130。存储单元120包括超平面数量121和比特串122a。空间划分装置100还包括比特串122b和查询数据131。例如,存储单元120对应于例如RAM(随机存取存储器)、ROM(只读存储器)或闪存的半导体存储器装置,或者例如硬盘或光盘的存储装置。注意,可以将特征空间数据130包括在存储单元120中。
控制单元110包括投影单元111a、设置单元112、创建单元113和生成单元114a。空间划分装置100包括投影单元111b、生成单元114b和汉明距离计算单元116。例如,控制单元110的功能可以由集成电路,例如ASIC(专用集成电路)或FPGA(现场可编程门阵列)来实现。控制单元110的功能可以由执行预定程序的CPU(中央处理单元)来实现。注意,设置单元112是指定单元的示例。创建单元113是放置单元的示例。
特征空间数据130是存储多个特征向量的存储单元。例如,特征向量是从用户的生物信息获得的m维特征值的数据。任何相关技术可以用作为从生物信息获得特征向量的方法。例如,m是等于或大于1的整数。超平面数量121是要被设置在空间U中的超平面的数量,该空间U的维数比m高p。比特串122a和比特串122b是基于特征向量生成的比特串。
投影单元111a和投影单元111b每个是以下处理单元:该处理单元用于使m维特征空间V经历逆立体投影,使得特征空间V与(m+p-1)维超球面S相关联,该超球面S嵌入空间U内,该空间U的维数比m高p。此处,p是等于或大于1的整数。在下面的描述中,将投影单元111a和投影单元111b统称为投影单元111。
图2是示出逆立体投影到超球面S上的图。如图2所示,通过逆立体投影,特征空间V上的点与超球面S上的点相关联。在图2所示的示例中,特征空间V上的点X1与超球面S上的点r1相关联。将特征空间V与在超球面S的北极Y和南极Z之间延伸的直线之间的交点定义为X0。例如,北极Y的坐标集为(xS1,xS2,…,xSm,1),而南极Z的坐标集为(xN1,xN2,…,xNm,-1)。
将从特征空间V到超球面S的北极Y的高度定义为d。穿过北极Y和点X1的直线与超球面S的表面之间的交点对应于r1。图3是示出通过将超球面S投影到特征空间V上所获得的圆形图像的半径的示例的图。如图3所示,超球面S的横截面SA对应于特征空间V的区域VA
现在,逆立体投影与立体投影相反。如图2所示,当超球面S和特征空间V被设置有从北极Y延伸至与超球面S相交的直线时,将立体投影定义为从超球面S与直线之间的交点r1到该直线与特征空间V之间的交点X1的映射。注意,图2所示的示例表示p的值为1的情况。
假定特征空间V的特征向量(坐标集)为(x1,x2,…,xm),则逆立体投影“f-1:V→U”如以下表达式1中所表达。然而,注意,表达式1中的r2由表达式2定义。
f - 1 ( x 1 , . . . , x m ) = ( 2 d ( x 1 - x o 1 ) d 2 + r 2 + x o 1 , . . . , 2 d ( x m - x om ) d 2 + r 2 + x om , - d 2 + r 2 d 2 + r 2 ) - - - ( 1 )
r 2 = Σ i = 1 m ( x i - x oi ) 2 - - - ( 2 )
在表达式1和表达式2中,x0和d是参数。参数x0和d对应于图2中示出的x0和d。参数x0是被映射到超球面S的南极Z的特征空间V上的点的坐标。参数d是用于调整立体投影的比例(scale)的参数,并且对应于当超球面S的中纬线被映射到特征空间V时超球面S的半径。注意,超球面S的中纬线的坐标集为(xS1,xS2,…,xSm,0)。
图4是示出要经历逆立体投影到超球面S上的区域的图,以及通过逆立体投影所获得的区域的示例。如图4所示,当投影点为超球面S的北极Y时,特征空间V上的区域Varea经历逆立体投影到超球面S上的区域rarea
投影单元111a基于所指定的参数x0和参数d以及表达式1来执行特征向量的逆立体投影。注意,投影单元111a可以使参数x0和参数d的信息预先存储在其中。
投影单元111b基于存储在查询数据131中的特征向量和表达式1来执行逆立体投影,由此计算与特征向量对应的超球面S上的坐标集。投影单元111a将所计算的坐标集输出至生成单元114a。
投影单元111b基于存储在特征空间数据130中的各个特征向量和表达式1来执行逆立体投影,由此计算与各个特征向量对应的超球面S上的多个坐标集。投影单元111b将所计算的坐标集输出至生成单元114b。
生成单元114a和生成单元114b每个是用于根据转换规则将超球面S上的坐标集转换成比特串的处理单元。比特串对应于散列向量。在下面的描述中,可以将生成单元114a和生成单元114b统称为生成单元114。
在表达式3中,n×(m+1)矩阵“W11,W12,…,Wn(m+1)”的信息和n×1矩阵“c1,c2,…,cn”的信息是转换规则。生成单元114从创建单元113获得转换规则。在表达式3中,信息“x1,x2,…,xm+1”是超球面S上的坐标集。
W 11 W 12 W 13 W 1 ( m + 1 ) W 21 W 22 W 23 W 2 ( m + 1 ) W n 1 W n 2 W n 3 W n ( m + 1 ) x 1 x 2 x ( m + 1 ) + c 1 c 2 c n = b 1 b 2 b n - - - ( 3 )
生成单元114通过求解表达式3来计算“b1,b2,b3,…,bn”。
在计算“b1,b2,b3,…,bn”之后,如果bN的值为正,则生成单元114将bN转换成“1”,如果bN的值不为正,则将bN转换成“0”,由此计算比特串。例如,在“b1,b2,b3,…,bn”的值分别为正,负,正,…,正的情况下,生成单元114生成比特串“1,0,1,…,1”。
生成单元114a基于从投影单元111a获得的坐标集来生成比特串,并且将所生成的比特串输出至汉明距离计算单元116。
生成单元114b基于从投影单元111b获得的坐标集来生成多个比特串,并且将所生成的比特串122b输出至汉明距离计算单元116。注意,生成单元114b可以将比特串122b存储在存储区域(如RAM)中。
汉明距离计算单元116计算由生成单元114a生成的每个比特串122a与由生成单元114b生成的比特串122b之间的汉明距离。根据具有相同数字数的两个二进制值之间的比较所获得的汉明距离是二进制值彼此不同的数字数。基于汉明距离计算结果,汉明距离计算单元116对于查询比特串按照汉明距离的升序对各个比特串进行排序(rank)。汉明距离计算单元116可以输出排序最高的比特串作为与查询比特串对应的比特串,或者可以输出排序结果。
设置单元112在超球面S内设置超平面之间共享的公共交点。公共交点是超平面之间共享的点。通过空间划分装置100设置的超平面共享公共交点。例如,设置单元112沿着在超球面S的北极与南极之间连接的线来设置公共交点。注意,设置单元112可以将所设置的公共交点存储在存储器如RAM中。
创建单元113是用于将跨越(m+p-1)维超球面S的n个超平面放置在超球面S中的处理单元。创建单元113基于放置的结果生成转换规则。
将参照三个特定示例对设置单元112指定各个超平面的初始放置的处理进行描述。将对指定各个超平面的初始放置的处理的第一示例进行描述。设置单元112从特征空间数据130获得各个特征向量,并且针对每个特征向量计算方差-协方差矩阵的特征值的平方根。设置单元112将特征值中的最大特征值指定为δ。设置单元112还指定通过将超球面S投影到特征空间V所获得的圆形图像的半径R。
设置单元112根据表达式4计算c。设置单元112将公共交点的位置设置到从超球面S的中心沿m+1维方向移动c的位置。注意,例如,在图3中示出了通过将超球面S投影到特征空间V所获得的圆形图像的半径R。
c = 2 { 1 + exp ( δ / R ) } - 1 - - - ( 4 )
也就是说,当考虑到法向向量被定向为第m+1轴方向的超平面以及由该超平面所形成的超球面的半径时,当公共交点的位置更接近北极时半径更大,并且当公共交点的位置更接近南极时半径更小。设置单元112根据分布有数据的区域的近似半径与映射到中纬线的球面的半径之间的比率来调整公共交点的位置。
将对指定各个超平面的初始放置的处理的第二示例进行描述。设置单元112使特征向量经历主分量分析,由此计算累积贡献比率。例如,设置单元112执行主分量分析,以便获得第一主分量到第N主分量的扩展(spread)。设置单元112按照降序排列各个主分量的扩展,以从具有最大扩展的主分量开始将主分量表示为δ1,δ2,…,δN。设置单元112计算累积贡献比率λm。注意,m表示主分量的数量。
在横轴表示m个分量并且纵轴表示对数累积贡献比率“logλm”的图上,设置单元112描绘m与logλm之间的关系,由此根据描绘的结果指定近似直线。例如,设置单元112通过使用最小二乘法等来指定近似直线。
图5示出近似直线的示例。设置单元112计算近似直线的斜率b/a为“γ+1”。设置单元112根据表达式5计算c。设置单元112将公共交点的位置设置到从超球面S的中心沿m+1维方向移动c的位置。
c = 2 { 1 + exp ( δ / γR ) } - 1 - - - ( 5 )
也就是说,数据分布被视为椭圆的,并且可以从累积贡献比率曲线读出椭圆的扁率程度。以如下方式通过圆来近似扁椭圆:使圆的半径取决于扁率。
将对指定各个超平面的初始放置的处理的第三示例进行描述。设置单元112计算沿vecN方向的三阶矩(third-order moment)(其是第一主向量)作为ν。例如,设置单元112基于下面的表达式6来计算三阶矩。在表达式6中,xi (k)对应于第k个特征向量的第i个分量,u对应于特征向量的平均值,以及K对应于特征向量的数量。
v = 1 K Σ k = 1 K Σ i = 1 N ( vec N i · ( x i ( k ) - u i ) ) 3 - - - ( 6 )
设置单元112根据表达式4计算c,并且根据表达式7计算c2。设置单元112将公共交点的位置设置到通过将该位置沿m+1维方向移动c并且再沿vecN方向移动c2所获得的位置。
c 2 = sng ( v ) | v | 1 3 R - - - ( 7 )
也就是说,当数据的偏差关于数据的平均值非对称时,所得到的超球面的位置和半径的出现概率不需要关于数据的平均值对称。可以通过三阶矩来测量数据的偏差。根据数据的偏差程度从连接在北极与南极之间的线段来移动公共交点的位置。
参照图6,将对关于上述第一示例至第三示例要设置在超球面S内的公共交点和超平面进行描述。图6是示出设置在超球面S内的示例公共交点的图。F1至F4表示由创建单元113设置的超平面。如图6所示,延伸跨过超球面S的超平面每个都通过存在于超球面S内的公共交点。为了防止当使用超球面进行散列(hashing)时出现虫洞,由空间U中的超平面F1至F4形成的交点需要存在于超球面S内。因此,设置参数以便提供超平面F1至F4之间的公共交点。
图7示出整个处理。如图7所示,将特征数据Xp输入至特征空间V(步骤S10)。投影单元111在维数比m高p的空间U中设置超球面S(步骤S11)。投影单元111使特征数据Xp经历逆立体投影到超球面S上(步骤S12)。设置单元112在超球面S内设置超平面之间共享的公共交点(步骤S13)。
创建单元113在超球面S中设置延伸跨过(m+p-1)维超球面S的n个超平面(步骤S14)。生成单元114基于从投影单元111a获得的坐标生成比特串(步骤S15)。汉明距离计算单元116计算由生成单元114a生成的比特串122a与由生成单元114b生成的比特串122b之间的汉明距离(步骤S16)。现在将描述用于设置公共交点的处理流程。
图8示出用于设置公共交点的处理流程的第一示例。设置单元112针对特征值(feature value)计算协方差矩阵Xmm的特征值(eigenvalue)中的最大特征值(eigenvalue)的平方根δ(步骤S20)。设置单元112根据表达式4计算移动距离c(步骤S21)。在表达式4中,R是通过超球面S的中纬线的立体投影所获得的圆形图像的半径。设置单元112将公共交点的位置A设置到从超球面S的中心沿(m+1)维方向移动c的位置(步骤S22)。
图9示出用于设置公共交点的处理流程的第二示例。设置单元112针对特征值计算协方差矩阵Xmm的特征值中的最大特征值的平方根δ(步骤S30)。设置单元112对特征数据组执行主分量分析,并且计算关于多个主分量的累积贡献比率(步骤S31)。
设置单元112计算从以下图中获得的斜率γ:在该图中横轴表示多个主分量,纵轴表示对数累积贡献比率(步骤S32)。设置单元112根据表达式5计算移动距离c(步骤S33)。设置单元112将公共交点的位置A设置到从超球面S的中心沿m+1维方向移动c的位置(步骤S34)。
图10示出用于设置公共交点的处理流程的第三示例。设置单元112针对特征值计算协方差矩阵Xmm的特征值中的最大特征值的平方根δ(步骤S40)。设置单元112计算沿与最大特征值对应的特征向量方向(eigenvector direction)的vecN方向的三阶矩ν(步骤S41)。
设置单元112根据表达式3计算移动距离c(步骤S42)。设置单元112根据表达式7计算移动距离c2(步骤S43)。设置单元112将公共交点的位置A设置到从超球面S的中心沿m+1维方向移动c、并且再沿vecN方向移动c2的位置(步骤S44)。
[b]第二实施方式
将参照图11描述根据第二实施方式的空间划分装置200的系统配置。图11是示出根据第二实施方式的空间划分装置的系统配置的图。如图11的示例所示,空间划分装置200包括控制单元210、存储单元220和特征空间数据230。存储单元220包括超平面数量221和比特串222a。空间划分装置200包括比特串222b和查询数据231。例如,存储单元220对应于例如RAM、ROM或闪存的半导体存储器装置,或者例如硬盘或光盘的存储装置。注意,可以将特征空间数据230包括在存储单元220中。
控制单元210包括投影单元211a、设置单元212、创建单元213、生成单元214a和计算单元215。空间划分装置200包括投影单元211b、生成单元214b和汉明距离计算单元216。例如,控制单元210的功能可以由集成电路例如ASIC或FPGA来实现。控制单元210的功能可以由执行预定程序的CPU来实现。注意,设置单元212是指定单元的示例。创建单元213是放置单元的示例。现在将描述控制单元210的处理单元。
投影单元111b基于存储在查询数据131中的特征向量和表达式1来执行逆立体投影,由此计算与特征向量对应的超球面S上的坐标集。
将参照三个具体示例对设置单元212设置具有高近似准确度的公共交点的处理进行描述。将对设置单元212通过使用“爬山搜索”来设置具有高近似准确度的公共交点的处理的第一示例进行描述。设置单元212将位置A指定为公共交点的位置的初始值。计算单元215从生成单元214a获得通过该初始值计算的各个特征向量的比特串。计算单元215根据各个特征向量和比特串来计算近似准确度。例如,通过下面的表达式8或表达式9来计算近似准确度。
m 1 = | R k ∩ Q k ′ | | Q k ′ | - - - ( 8 )
m 2 = | R k ∩ Q k ′ | | R k | - - - ( 9 )
现在,将描述计算近似准确度的处理的示例。计算单元215从特征空间数据230中选择特征向量va,并且根据特征空间上与特征向量va的接近度来指定第一特征向量至第M特征向量。将特征空间上最接近特征向量va的特征向量表示为特征向量va1至vaM。例如,在表达式8中,特征向量的数量M对应于|Rk|。
计算单元215根据与对应于特征向量va的比特串的接近度,从生成单元214a指定第一比特串至第M比特串,并且指定与所指定的比特串对应的特征向量vb1至vbM。计算单元215计数在特征向量vb1至vbM之中、与特征向量va1至vaM相同的特征向量的数量。所计数的数量对应于表达式8中的|Rk∩Qk|。
设置单元212在公共交点的位置A附近设置位置Bi。计算单元215针对公共交点的位置Bi计算近似准确度。设置单元212将具有最高近似准确度的公共交点的位置设置为位置A。设置单元212重复该处理,以指定具有最高近似准确度的公共交点。
汉明距离计算单元216通过使用设置单元212重复该处理预定次数之后所获得的最终公共交点的位置A来计算汉明距离。
将描述设置单元212通过使用“马尔可夫链蒙特卡罗方法”来设置具有高近似准确度的公共交点的第二示例。设置单元212基于根据第一实施方式的过程来指定公共交点的位置A。计算单元215从生成单元214a获得基于公共交点的位置A所生成的各个特征向量的比特串。
计算单元215基于各个特征向量和比特串执行近似相似性搜索,由此计算在公共交点的位置为A的情况下的近似准确度X1。例如,如使用爬山搜索,通过表达式8来计算近似准确度。
设置单元212在公共交点的位置A附近设置位置B。计算单元215基于各个特征向量和比特串来执行近似相似性搜索,由此计算在公共交点的位置为B的情况下的近似准确度X2。
设置单元212生成随机数,并且当随机数的值小于X2/X1时将公共交点的位置B设置为位置A。另一方面,参数设置单元310生成随机数,并且当随机数的值不小于X2/X1时不改变公共交点的位置。设置单元212执行该处理预定次数。
将描述设置单元212通过使用“群体智能(swarm intelligence)”来设置具有高近似准确度的公共交点的第三示例。设置单元212指定多个公共交点的位置。例如,通过类似于第一实施方式的方法,设置单元212获得公共交点的位置,并且还获得公共交点的位置附近的多个位置,因此指定多个公共交点的位置。
设置单元212从生成单元214a获得根据多个公共交点的位置所计算的各个特征向量的比特串。设置单元212将公共交点的位置视为带电粒子(charged particle)的位置,并且通过使用目标函数执行带电系统搜索(charged system search),由此指定具有最高近似准确度的公共交点的位置。
通过将公共交点的位置视为带电粒子的位置,可以设置以下限制:当公共交点的位置在周围移动时,公共交点的位置不会相互更接近。然后,可以在彼此相距预定距离的位置当中指定近似准确度变得最高的公共交点的位置。使用这样的公共交点的位置,汉明距离计算单元216计算汉明距离。
注意,带电系统搜索的目标函数是用于在已经给出了公共交点的位置的情况下计算近似准确度的函数,并且计算近似准确度的处理类似于上述爬山搜索和马尔可夫链蒙特卡罗方法的处理。
接下来,将描述根据第二实施方式的空间划分装置200的过程。在下文中,将以下面的顺序来描述用于指定公共交点的位置的处理:使用爬山搜索的参数指定处理;使用马尔可夫链蒙特卡罗方法的参数指定处理;以及使用群体智慧的参数指定处理。
首先,将描述使用爬山搜索的参数指定处理的示例过程。图12示出用于设置公共交点的处理流程的第四示例。如图12所示,空间划分装置200的设置单元212指定公共交点的位置A(步骤S50)。设置单元212将迭代次数t设置为1(步骤S51)。如果迭代次数t大于预定次数,则设置单元212结束处理(步骤S52中的“是”)。另一方面,如果迭代次数t小于或等于预定次数,则设置单元212进行至步骤S53(步骤S52中的“否”)。
创建单元213基于所设置的公共交点的位置A生成转换规则(步骤S53)。生成单元214a基于转换规则计算近似相似性搜索的近似准确度α(步骤S54)。
设置单元212在公共交点的位置A附近生成多个位置Bi(步骤S55)。基于公共交点的位置Bi,创建单元213生成各自的转换规则(步骤S56)。基于转换规则,计算单元215计算各自的近似准确度βi(步骤S57)。设置单元212将与近似准确度α和具有最高近似准确度的近似准确度βi中的一个相对应的公共交点的位置设置为位置A(步骤S58)。设置单元212将迭代次数t加1(步骤S59)。
接下来,将描述使用马尔可夫链蒙特卡罗方法的参数指定处理的示例过程。图13示出用于设置公共交点的处理流程的第五示例。如图13所示,空间划分装置200的设置单元212指定公共交点的位置A(步骤S60)。设置单元212将迭代次数t设置为1(步骤S61)。如果迭代次数t大于预定次数,则设置单元212结束处理(步骤S62中的“是”)。另一方面,如果迭代次数t小于或等于预定次数,则设置单元212进行至步骤S63(步骤S62中的“否”)。
创建单元213基于所设置的公共交点的位置A生成转换规则(步骤S63)。计算单元215基于转换规则计算近似相似性搜索的近似准确度X(步骤S64)。设置单元212在公共交点的位置A附近生成位置B(步骤S65)。创建单元213基于公共交点的位置B生成转换规则(步骤S66)。计算单元215基于转换规则计算近似准确度X2(步骤S67)。
设置单元212生成随机数[0,1],并且如果随机数小于X2/X1,则设置单元212将附近位置B设置为公共交点的位置A(步骤S68中的“是”)(步骤S69),否则不改变公共交点的位置(步骤S68中的“否”)并且进行至步骤S70。设置单元212将迭代次数t加1(步骤S70)。
接下来,将描述使用群体智能的参数指定处理的示例过程。图14示出用于设置公共交点的处理流程的第六示例。设置单元212通过例如根据第一实施方式的过程来设置多个公共交点的位置(步骤S80)。
设置单元212将迭代次数t设置为1(步骤S81)。如果迭代次数t大于预定次数,则设置单元212结束处理(步骤S82中的“是”)。另一方面,如果迭代次数t小于或等于预定次数,则设置单元212进行至步骤S83(步骤S82中的“否”)。
设置单元212将公共交点的位置视为带电粒子的位置,并且通过使用目标函数执行带电系统搜索(步骤S83)。设置单元212将迭代次数t加1(步骤S84)。
将描述图14的处理流程中所用的目标函数。图15示出用于目标函数的示例处理流程。如图15所示,空间划分装置200的创建单元213启动目标函数(步骤S90),并且基于公共交点的位置生成转换规则(步骤S91)。计算单元215基于所生成的转换规则来计算近似相似性搜索的近似准确度X1(步骤S92),以输出近似准确度X1(步骤S93),并且结束目标函数(步骤S94)。
空间划分装置的硬件配置
图19是示出空间划分装置的硬件配置的图。如图19所示,计算机300包括用于执行各种算术运算的CPU 301、用于接收从用户输入的数据的输入装置302以及监视器303。计算机300还包括用于从存储介质读取程序等的介质读取器304、用于与其他装置进行连接的接口装置305、以及用于与其他装置进行无线连接的无线通信装置306。计算机300还包括用于临时存储各种信息的RAM(随机存取存储器)307、以及硬盘装置308。各个装置301至308连接至总线309。
例如,硬盘装置308存储以下信息处理程序:该信息处理程序具有与图1所示的控制单元110的处理单元的功能相似的功能。可替代地,硬盘装置308存储以下信息处理程序:该信息处理程序具有与图11所示的控制单元210的处理单元的功能相似的功能。硬盘装置308还存储用于执行信息处理程序的各种数据。
CPU 301将存储在硬盘装置308中的程序读出并提取到RAM 307,并且CPU 301执行程序以执行各种处理。这些程序可以使计算机300用作为图1中所示的控制单元110。
注意,无需将信息处理程序存储在硬盘装置308中。例如,计算机300可以读出并且执行存储在能够由计算机300读取的存储介质中的程序。能够由计算机300读取的存储介质可以是例如CD-ROM,DVD盘,例如USB(通用串行总线)存储器的便携式存储介质,例如闪存的半导体存储器,硬盘驱动器等。可替代地,可以将程序存储在连接至公用网、因特网、LAN(局域网)等的装置中,使得计算机300能够从该装置读出程序和执行程序。
根据本发明的一个实施方式,可以以高准确度执行使用特征向量的相似性搜索。

Claims (9)

1.一种空间划分方法,包括:
指定超平面的交点的位置,使得所述位置被包括在球面内,所述球面存在于维数比特征空间的维数高一维或更多维的空间中;以及
放置所述超平面,使得所述超平面共享所指定的位置的交点。
2.根据权利要求1所述的空间划分方法,其中,所述指定包括:在所述球面的北极与南极之间连接的线上设置要共享的所述交点。
3.根据权利要求1所述的空间划分方法,其中,所述指定包括:基于根据特征向量计算的方差-协方差矩阵的特征值中的最大特征值来设置要共享的所述交点。
4.根据权利要求1所述的空间划分方法,其中,所述指定包括:基于根据特征向量计算的方差-协方差矩阵的特征向量方向上的矩来设置所述交点。
5.根据权利要求2所述的空间划分方法,其中,所述指定包括:基于对特征数据组执行主分量分析时计算的关于若干主分量的累积贡献比率来设置所述交点。
6.根据权利要求2至5中任一项所述的空间划分方法,其中,所述指定包括:通过一次或更多次迭代,执行将所述球面内设置的第一交点和所述第一交点附近的一个或更多个第二交点当中的一个交点设置为第一交点的处理,所述一个交点具有更高的近似准确度,从而最终确定所述第一交点。
7.根据权利要求2至5中任一项所述的空间划分方法,其中,所述指定包括:当通过将所述球面内设置的所述第一交点附近的第二交点的近似准确度除以所述第一交点的近似准确度所获得的值大于随机数时,通过一次或更多次迭代,执行将第二交点设置为第一交点的处理,从而最终确定所述第一交点。
8.根据权利要求1所述的空间划分方法,其中,所述指定包括:将被视为带电粒子时而放置的多个交点当中的一个交点设置在所述球面内,所述一个交点具有最高的近似准确度。
9.一种空间划分装置,包括:
指定单元,用于指定超平面的交点的位置,使得所述位置被包括在球面内,所述球面存在于维数比特征空间的维数高一维或更多维的空间中;以及
放置单元,用于放置所述超平面,使得所述超平面共享所指定的位置的交点。
CN201410687156.1A 2013-12-20 2014-11-25 空间划分方法以及空间划分装置 Active CN104732512B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2013-264610 2013-12-20
JP2013264610A JP6277710B2 (ja) 2013-12-20 2013-12-20 空間分割方法、空間分割装置および空間分割プログラム

Publications (2)

Publication Number Publication Date
CN104732512A true CN104732512A (zh) 2015-06-24
CN104732512B CN104732512B (zh) 2017-09-19

Family

ID=52015823

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410687156.1A Active CN104732512B (zh) 2013-12-20 2014-11-25 空间划分方法以及空间划分装置

Country Status (5)

Country Link
US (1) US20150178929A1 (zh)
EP (1) EP2890043B1 (zh)
JP (1) JP6277710B2 (zh)
KR (1) KR101642597B1 (zh)
CN (1) CN104732512B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107767449A (zh) * 2017-10-16 2018-03-06 苏州蜗牛数字科技股份有限公司 一种基于球面顶点的球体区域划分方法
CN113628224A (zh) * 2021-08-09 2021-11-09 南通大学 一种基于三维欧式距离变换的房间分割方法

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105631805B (zh) * 2016-03-05 2018-09-04 陈晋飞 一种高维视觉的产生方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10247243A (ja) * 1997-03-04 1998-09-14 Mitsubishi Heavy Ind Ltd 識別装置
US6005984A (en) * 1991-12-11 1999-12-21 Fujitsu Limited Process and apparatus for extracting and recognizing figure elements using division into receptive fields, polar transformation, application of one-dimensional filter, and correlation between plurality of images
CN102096947A (zh) * 2009-12-15 2011-06-15 李楚雅 球面网格模型生成方法

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030065632A1 (en) * 2001-05-30 2003-04-03 Haci-Murat Hubey Scalable, parallelizable, fuzzy logic, boolean algebra, and multiplicative neural network based classifier, datamining, association rule finder and visualization software tool
JP5072693B2 (ja) 2007-04-11 2012-11-14 キヤノン株式会社 パターン識別装置及びその制御方法、異常パターン検出装置及びその制御方法、プログラム、記憶媒体
JP2011100395A (ja) 2009-11-09 2011-05-19 Sony Corp 判別装置、判別方法およびプログラム
JP5563494B2 (ja) 2011-02-01 2014-07-30 株式会社デンソーアイティーラボラトリ 対応参照画像検索装置及び方法、コンテンツ重畳装置、システム、及び方法、並びにコンピュータプログラム
US9213565B2 (en) * 2013-06-28 2015-12-15 Vmware, Inc. Methods and systems for mining datacenter telemetry data

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6005984A (en) * 1991-12-11 1999-12-21 Fujitsu Limited Process and apparatus for extracting and recognizing figure elements using division into receptive fields, polar transformation, application of one-dimensional filter, and correlation between plurality of images
JPH10247243A (ja) * 1997-03-04 1998-09-14 Mitsubishi Heavy Ind Ltd 識別装置
CN102096947A (zh) * 2009-12-15 2011-06-15 李楚雅 球面网格模型生成方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
JIM LAMBER: "Three-Dimensional Coordinate Systems", 《HTTP://WWW.MATH.USM.EDU/LAMBERS/MAT169/FALL09/LECTURE17.PDF》 *
KENGO TERASAWA 等: "Approximate Nearest Neighbor Search for a Dataset of Normalized Vectors", 《IEICE TRANSACTIONS ON INFORMATION & SYSTEMS》 *

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107767449A (zh) * 2017-10-16 2018-03-06 苏州蜗牛数字科技股份有限公司 一种基于球面顶点的球体区域划分方法
CN107767449B (zh) * 2017-10-16 2020-12-18 苏州蜗牛数字科技股份有限公司 一种基于球面顶点的球体区域划分方法
CN113628224A (zh) * 2021-08-09 2021-11-09 南通大学 一种基于三维欧式距离变换的房间分割方法
CN113628224B (zh) * 2021-08-09 2023-12-19 南通大学 一种基于三维欧式距离变换的房间分割方法

Also Published As

Publication number Publication date
EP2890043B1 (en) 2016-10-12
EP2890043A1 (en) 2015-07-01
JP6277710B2 (ja) 2018-02-14
KR20150073076A (ko) 2015-06-30
US20150178929A1 (en) 2015-06-25
KR101642597B1 (ko) 2016-07-25
JP2015121899A (ja) 2015-07-02
CN104732512B (zh) 2017-09-19

Similar Documents

Publication Publication Date Title
CN104899901A (zh) 分类方法及分类设备
Agrawal et al. Global K-means (GKM) clustering algorithm: a survey
CN110598867B (zh) 一种量子态信息转化方法
CN105279554A (zh) 基于哈希编码层的深度神经网络的训练方法及装置
CN104731847B (zh) 搜索方法、搜索程序以及搜索装置
CN111552849B (zh) 可搜索加密方法、系统、存储介质、车载网、智能电网
Lin et al. Optimizing ranking measures for compact binary code learning
CN104732512A (zh) 空间划分方法以及空间划分装置
Song et al. Rank preserving hashing for rapid image search
CN109977961B (zh) 基于分层注意力机制的二值特征学习方法及系统
US8307184B1 (en) Communication and memory capacity enhancement method and apparatus
Liu et al. Shaping codes for structured data
CN105740916B (zh) 图像特征编码方法及装置
EP2890041B1 (en) Space division method, space division device, and space division program
CN104573696B (zh) 用于处理人脸特征数据的方法和装置
Saxena et al. Evolving efficient clustering patterns in liver patient data through data mining techniques
CN113268376B (zh) 基于遗传算法的数据中心对象存储方法及系统
CN105022836A (zh) 基于sift嵌入的紧凑的深度cnn特征索引方法
CN118093633A (zh) 高维向量查询方法、装置、计算机设备及可读存储介质
JP6151612B2 (ja) 特徴変換装置及び特徴変換方法
WO2023212390A1 (en) Neural network methods
Hido et al. Hash-based structural similarity for semi-supervised Learning on attribute graphs

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant