CN1204812A - 多级智能字符串比较方法 - Google Patents

多级智能字符串比较方法 Download PDF

Info

Publication number
CN1204812A
CN1204812A CN 98103003 CN98103003A CN1204812A CN 1204812 A CN1204812 A CN 1204812A CN 98103003 CN98103003 CN 98103003 CN 98103003 A CN98103003 A CN 98103003A CN 1204812 A CN1204812 A CN 1204812A
Authority
CN
China
Prior art keywords
character string
database
string
inquiry
database character
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
Application number
CN 98103003
Other languages
English (en)
Inventor
彼德·N·亚尼洛斯
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.)
NEC Corp
Original Assignee
NEC Corp
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 NEC Corp filed Critical NEC Corp
Priority to CN 98103003 priority Critical patent/CN1204812A/zh
Publication of CN1204812A publication Critical patent/CN1204812A/zh
Pending legal-status Critical Current

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

一种多级数据库检索方法,它包括第一步:仅考虑文本多图形的频率;第二步,考虑多图形的位置和粗约的近似查询字符串和数据库字符串的适当的准直性;第三步,提供一个更好的近似准直。最后输出是一个按照其与查询的近似度排序的建议数据库记录的列表。

Description

多级智能字符串比较方法
本发明涉及数据库检索,具体地说,涉及一种基于对分加权匹配的高容错且高效率的数据库查询方法。更进一步讲,本发明的多级数据库查询方法包括:第一步仅考虑原文复写频率,第二步考虑复写的位置和粗约的近似查询和数据库字符串之间适定的同心度,第三步提供更好的准直近似,最后输出为一个以其与查询近似度排序的建议数据库记录的列表。
在过去的十年中,“数据库”已经从一个相对少量的高结构化共同数据处理的环境中的用户的应用转变为一个主流计算中心的应用,这在很大程度上归因于过去十年在连接上的进步。八十年代中期流行的局域网已被国际互连网络代替,同时存取数据库的计算机用户群已由多少有些相同的和以地域定位的群体转变为一个高度分散的群体,他们遍布世界,讲多种语言。
本发明是一种软件方法,由软件控制计算机执行,它致力于由于这些变化而引起的一个中心问题,那就是,对于小型和中型大小的数据库的坚固的半结构化文本查询问题。本发明的关键就在于比较两个文本字符串并返回一个指明相似性的数值。典型地,这些字符串中的一个是用户的查询,另外的是从数据库中获得的一字符串。因为这个功能非常快速,它可在可以接受的时间里用要查询数据去比较几千个,甚至于几十万个数据记录。它同时还包括一个在查询中面临的用一追踪最佳匹配的高速数据结构堆。
半结构化文本是基于完全结构化数据库和无约束文本流之间的文本,例如,一个完全结构化数据库可能用对应它的各个部分的多个域来代表一个人名,半结构化方法代表这个人名用一个更不正式的方法一用一个文本域。其它半结构化文本的例子是,地址、主题或描述(例如一个在线目录)、书或论文名、公司或研究所名,几个这样的部分被组合在一起。例如查询可能是“Problmoptimldictionry”,记录是,安德森,(Anderson),词典问题的最佳界限(optimal Bounds on theDictionory Problem)LNCS,401,1989。
上述查询的三个单词都拼错了,并有错误的顺序,并且在词之间没有空格,然而,利用本发明的最佳实施例,所期望的记录从一个理论计算领域中的列有50360份论文说明的记录中辨认出来了。这个记录在J.Seiferas的一个大的关于理论方面的书刊目录中被找到/计算科学联合会地址ftp:∥ftp.es.rochester.edu.1996-7,作者名,论文题目和相关信息被组合成一个单独数据库文本字段。
考虑到利用半结构化记录来描述一个主题的不同可能性,一个人的姓可能被写在前面或后面,中间名可能被去除或缩写,复杂名字的各部分顺序不总是很好的被确定的。从原理上讲一种规则化说明的策略应当制定出来,但实际上这种策略迅速变得复杂和模糊。代之的是,直接处理这些变化的问题通过增加用于比较查询和半结构域的软件解决。类似地变化还存在于用户的查询,然而,在这里问题更大。
本发明一个重要的益处是查询与用户要找的简单自由形式的表达。这里没有查询语言,并且对于典型错误、丢失或额外信息及整体排序,其比较功能非常强大。而且一个本发明的最佳实施例包括,没有自然语言特别考虑。它操作于字符串的字节,因此可以被用于交叉语言并且可能用于与语言没有任何关系的应用(如DNA比较)。
利用一个200兆赫兹的奔腾处理器和本发明的最佳实施例处理数据库信息的一个字节大致需0.5微秒,因此30个字符的10万个字段只需0.15秒处理。它是某种意义上体现出一般方法的第四代的实现。
应用于本发明一般类型的算法介绍于P.N.Yianilos的题为“符号串相似性功能的定义、计算和应用”的硕士论文,Emory大学,数学系1978年。后来用于Proximity技术公司和富兰克林电子出版社的商业拼写校正器,这些公司的语言软件部分被最终获得许可用于几百个出版商,打字员的字处理器程序和几千万个手提拼写装置。
PF474超大规模集成电路芯片是一种特殊用途的管道处理器,它完成这种算法。这种芯片在一篇题为“一个专用的快速和智能的比较符号串的比较器”文中描述。此文发表于《电子杂志》作者McGraw Hill1983年12月。此芯片还在发表于《字节杂志》的S.Rosenthan的题为“PF474-一种用于字符串比较的比较器”的文章中描述过。另外在Yianilos和Buss申请的美国专利号为4490811中题为“字符串比较器装置系统电路和方法”中描述过。今天的软件可比于甚至超过这些装置的性能,尽管比较并不一定公平,因为PF474只用了4兆赫兹的时钟频率。今天实现的同种设计的装置将仍然导致1-2个数量级的硬件优势。
友好的寻找器软件应用在Miller的发表于1987年《信息世界》的一篇题为“预览,-友好地程序且不需要额外的匹配来寻找数据库查询目标”文中描述。并且首次被Prximity技术公司1987年介绍,它实现了算法、软件加速和对双字母的特殊对待的结合。此结果使得用个人计算机而不要PF474芯片可查询小数据库。
友好寻找器的计算核心被获得许可制造,并叫做“P2”。
转变为对分匹配的观点来源于2篇文章,一篇是Buss和Yianilos的发表于第五届ACM-SIAM年会的关于离散算法的讨论会,1994年65-76页,题为“用于拟凸变换的线性和o(n log n)时间最小花费匹配算法”另一篇题为“一种用对分匹配方法来估计字符串比较和查询”来自于普林斯顿,NEC研究所、公司新泽西州的技术报告,No.95-193这两篇文章的算法都有改进并在某些情况下被减化,这导致了一个完全新的算法,并且仍属同一系列。
本发明是基于这些新进展的首次实现,Yianilos和Buss的算法引出了线性时间算法,它是为大量的图形花费功能而用的,并包括LIkEIT用的简单线性花费。LIkEIT是实现这种形成本发明的多级方法的一种软件系统,在这里LIkEIT形成了附录A,对于这种特殊的简化情况的线性时间匹配算法首次发表于R.M.karp和S-Y.R.Li的题为“算法问题的两种特殊情况”一文中,在《离散数学》13(1975)129-142页。
本发明的文件批露部分(附录A)包含受到版权保护的材料,版权所有者不授权任何人复制本发明文件和批露本发明。
一种可选的对于字符串比较的方法、计算“编辑距离”这种方法描述于Hall和Dowling的一篇题为“近似字符串匹配”文中,发表于《计算测量》1980年第12期381-402页,并在Sankoff和kruskal的题为“宏分子:顺序比较的理论和实践”文中描述,Addison-wesley 1983年,这是通过某些基本的操作从一种到另一种的最小花费的转变。此方法最通常的形式是用加权插入、删除和替代操作,并且距离计算是一个直接的动态程序。这里有导致本发明的两个问题。第一,当m.n是字符串长度时,此算法要在0(m.n)时间运算,本发明在0(m+n)时间运算。第二,编辑距离方法对整体排列高度敏感,也就是改变字的顺序。人们往往对此不大注意,但本发明能很好的处理这个问题。
一种类似的用于友好的寻找器的也有效的方法是建立一个优化的要查询的字母和多图形的加权匹配,并在每一个数据库记录中建立它们。对字没有特殊的对待。这和M.Damashek的文本查询方法有关。这种方法与在《科学》267期,1995年843-848页的题为“n个字母调整相似性,语言无关的文本分类”相关,作者M.Damashek,此方法还发表在M.Damashek和Huffman的题为“Aguainfanee一种用于文本分类的新的矢量空间n字母gram技术,文本查询讨论会(TREC-3)华盛顿特区1995,NIST,305-310页”。
基于自动的快速字符串匹配方法介绍于Knuth,Morris和Pratt的一篇题为“字符串中快速图形匹配”,发表于SIAM计算论文集6期1977年,323-350页。它只处理精确匹配,自然的旧纳放松了绝对正确的需求,允行一点(实际上很小)数量的错误。每一个这样的错误通常被限制在要么是一个插入、删除、代替,或者是某些时候是一个相邻符号的转变。给一个查询字符串,它就可以在第二字符串中,建立一个对它的自动机检测,或者在错误范围内匹配。在Manber和Wu的最近的工作中,一篇题为“一瞥:从整个文件系统中查找的一个工具”文中,见1994年冬季USENIX大会论集,23-32页和一篇题为“允许错误的快速测试”,见ACM通信,1993年35期,83-91页,在文中,说明在这种框架下可非常快速的为比较查询文本。本发明的框架可以满足查询,此查询不属于自动机方法的实际能力之列,因为他们所期望的数据库记录大不一样。本发明和相关的方法对于中等大小的文本数据库是非常重要的和有效的工具,但对每一查询查找整个范围还太小。
在已有技术中,有关的低水平的比较方法应用于单个字母和有向图的操作上,并且使用一个完全特定的重新准直的方法。
本发明是一个高效率的以前的方法的扩展和结合而形成一个新的方法。它是一种时间递减的多级的处理方法,在前期阶断是快速并且从更进一步的考虑中排除许多记录。
本发明扩展比较到更长的多图形,并且使用一个单独的自动机探测所有的在要查询数据中存在的数据库字符串中的多图形。在本发明的最佳实施例中,第一阶段使用匹配计数多图形来从更进一步的考虑中排除许多数据库记录。
本发明智能地根据匹配的增加引导重新准直,这些边界长度的意义被用来建立下一个准直。这使得不需重新扫描字符串就能调整匹配花费成为可能。这种“自由重新准直”是第二阶段一个重要思想,第二阶段从考虑中排除更多的记录,但需要比第一阶段更多的CPU时间。
本发明在第三阶段重复这种重新准直一重新匹配的过程。这是一个更加智能的匹配结果,但需要额外的CPU时间。
本发明通过调整它们到一个固定的长度来补偿查询和数据库字符串的变化,并数学地作用于这个调整,导致计算结果是普通的。
每一阶段的输出结果最好是以二进制堆的形式保存。结果是在绝大多数情况下,返回的最终匹配与将接收的最终的、非常有分辨力但很慢的对整个数据库处理阶段匹配结果一样。
通过以下的说明与图结合,本发明能被更好的理解。
图1是包括本发明的处理程序的示意图。
图2是表示本发明的实施例组成的方框图。
图3是本发明的处理程序的流程图。
图2是一个方框图,其示出了本发明实施例的组成。本实施例是由存储装置102、控制装置103、输入装置101和输出装置104组成。输入装置101接收来自用户的信号并将其输出至控制装置103。存储装置102存储程序和数据以按照本发明暂短的工作。控制装置103根据存储在存储装置102中的程序处理来自输入装置102的输入内容,并将产生的结果输出到打印机和显示设备等的输出装置104。上面所述的实施例是一普通的计算机系统。通常,在存储装置102中存储的程序是被存储在易于附加的记录媒体上,并且是经输入装置101输入的。
图3是一流程图,其示出了如下的本发明的处理过程。
(a)提供一数据库字符串;
(b)提供一查询字符串;
(c)辨别在所述查询字符串和在所述数据库字符串中存在的多图形;
(d)提供每个所述的辨别的多图形的花费;
(e)相对于每个数据库字符串定位查询字符串;
(f)将查询字符串中出现的多图形与每个数据库中的多图形匹配,匹配的花费提供所述查询字符串和每个所述数据库字符串之间数字表示的相似性;
(g)通过检测存在于匹配结果中的边界再准直所述查询字符串以减少花费;
(h)重复所述的匹配和所述的再准直到一预定的次数,或直到匹配的花费不再增加;
(i)为了辨别那些最接近所述查询字符串的数据库的目的,为每个数据库字符串重复上述的步骤(c)至(h)。
一种高效率的ANSI-C设备被描述用于智能地将一查询字符串与一系列数据库字符串比较。对分加权匹配的方法能够承受对简单自动机或字符串编辑距离方法来说是个问题的顺序扰乱。这种扰乱现实中很普遍。此方法是基于字符和多图形的,不需要在一查询中字按顺序排列。
数据库字符被利用200兆赫兹的高能奔腾处理器以大约每秒2.5百万次的速度处理。一个子程序级别的API与一个可执行的应用一起被描述。此应用支持命令行和网形界面。
处理开始于翻译以空格结尾的字符串一个字母一个字母的译成一种内部字母。缺省操作破坏ASCII码,可通过映射所有的非字母数字符号为空格,并且字母大写映射为小写相应字母。这种定制的前置翻译由以下说明。
查询字符串被用来与数据库字符串S1....Sn顺序比较,每一次比较返回的结果是一个表示相似性的数值,并且软件保持追踪最相似的数据库字符串的匹配数值。
实验表明了把它们传递到likeit()之前简要的处理要查询数据和数据库字符串的改善结果。头上的和末尾的空格被删除,重复的空格被减成只有一个空格。最后一个单独的空格被加在头部。把这些步骤与上述的缺省翻译相结合可得例如:OPtimal  (Dictionary), ..  → OPTIMAL  DICTIONARY
在这里,最后结果中的重复空格来源于上述翻译过程,这种结合的处理过程被发现为一种有效的一般目的的解决方法。它被下面要说明的应用程度执行。其它处理方式和映射转换也许对某种特殊用途更合适。
LIKEIT设备读数据库记录并且输出那些它认为与查询数据最相似匹配的那些记录。一种加权的对分匹配方法被用在数据化相似性的问题上。要查询的数据被假想定位于数据库的某一位置,匹配问题就是对应于使用最小的总权重的边界的特征。在最简单的例子里,特征包括单个字母,边界的权重就是出现字符串的最顶部到最底部间的距离(在字符串位置单元中)。
一个人对字符串相似性的感觉相当清楚地取决于高级的特征,如,双图形,三图形,最终整个字。LIkEIT设备效法这种情况有效解决了几个匹配问题,一个是对单图形另一个是对双图形,也就是说,相似性的感觉是由这些方法的结合。
查询数据库字符串中的特殊准直很明显会影响匹配的花费,因此LikEIT把这种准直当成可变的,并试图把匹配费用最小化。也就是说,查询是被假想成左右来回移动直到一个最小匹配花费的位置被找到。
结果是非常复杂的过程。尽管重视了效率时间花费了,因此LikEIT设备把它作为第三级过滤器实现,如图1所示。其中上述计算是用F3表示的最后阶段,两个早期的阶段F1和F2粗略的估计相似性,用比F3少许多的时间。第二阶段F2粗约的估计查询准直的优化,如下面所述。第一阶段F1通过计数匹配多图形估计匹配过程,而不管它们的位置。
这三个阶段F1、F2、F3中的任何一个都起到了过滤输入数据库的作用,输出比输入要少的输出记录。从第一个过滤器输出的记录数量记为Y,而从最后一个过滤器传递的记录数记为X,在这里Y大于X。F2阶段的输出介于F1和F3之间。LIkEIT设备把Y定成1000和10倍的X中更大的一个。这种递减的过滤方法结果是,最终的输出好象整个算法。F3阶段被用于每一个数据库记录。这此阶段计算提高了有效性,还有CPU的强度观念相似性。从每一个过滤器输出的记录被保留成二进制堆。完成的过程是简单而快速的,结果是,堆操作意味着可忽视总体CPU时间的一部分。
三个阶段的每一阶段把查询字符串和数据库字符串当成一系列不同长度的多图形来操作(单个字母是1个多图形)。匹配边界仅存在于查询字符串和在涉及的数据库字符串中均有的多图形之间,也就是说,所有的其它数据记录多图形都可被排除。
目前的方法是在查询字符串的基础上建立一有限态自动机(FSM),它检测数据库记录中所有查询字符串中也存在的多图形(上到某一固定长度)。随着一个数据库记录特征的存在,该态有限自动机改变状态,这些状态对应着最长的也存在于查询字符串中的结尾多图形。
此状态自动机的结构是直接了当的给出,并且在提供的文件fsm,doc中描述给出的考虑是用这种状态自动机一次处理数据库和保存结果。但是因为由F2、F3考虑的记录远小于F1,并且因为当与F2、F3比较时状态自动机很快,因此对于每一过滤阶段记录重新被处理。
匹配过滤器F1、F2、F3基于FSM辨别的多图形操作,缺省操作限制了过滤器F1的多图形的长度为3-6,而F2,F3为1-6。
在所有的过滤器中有一种标准化还须考虑,即致使不同长度的查询和数据库的字符串的匹配分值是可比较的,这种标准化可被认为是“调整”查询和数据库字符串到某个大的长度L,L的最佳的缺省值是1024。在所有情况下,影响很容易计算,从而实际上调整并不需要。
过滤器F1计算匹配多图形。初步辨别所有的在查询字符串中在所要求范围内(缺省为3-6)的多图形。查询字符串中的每一个计数被保存。当FSM处理数据库字符串字符和多图形被辨认时,F1计数匹配直到查询字符串中的每一个多图形的重复性所加的限制。例如,当“ing”出现在查询字符串中三次时那么仅仅第一个三次出现在数据库字符串才算匹配计数。那些未出现在查询字符串中的数据库字符串的多图形定义为不匹配,那些不匹配多字母也包括因为超过查询字符串重复性限制而未被计数的多图形。
F1过滤器不考虑匹配多图形的相对位置,它分配一个固定的0.5L的花费来匹配多图形,并且分配给每一对未匹配的多图形花费L。因此它是一个削减后期匹配过程微小的固定花费功能。因为位置无关,F1不考虑准直。最终的分值计算由对每一多图形长度处理的F1、F2、F3的分值结合和线性加权,也就是长度1-6分别接收加权1-6。
第二阶段F2开始于一个查询左准直,并且分解匹配问题成各“级”的子问题,正如前述的Buss和Yianilos定义的“用于拟凸变换的线性和o(n log n)时间花费最小匹配算法”。每一这种等级包括出现在查询或数据库字符串中的多图形。如果出现的次数是偶数,匹配被唯一的定义,如果出现的是奇数,那LIkEIT通过去掉第一个或最后一个来粗约估计优化的匹配。整个过程在没有实际记录匹配边界中完成,记录匹配的边界仅有的花费是当处理数据库字母时在线的传递。投入仅仅一点额外的时间产生优化匹配,这在前述的Buss和Yianilos的“一种用对分匹配方法来估计字符串比较和查询”文中讲到,这也是一种联机形式,但在LIkEIT中没有实现。
产生匹配后,一个单独的近似准直步骤被实行。这通过处理过程中保持平均边界长度完成,并且数学地重新定位查询字符串,致使平均长度尽可能接近零。匹配本身没有改变,这点很重要,边界是为了准直简单的扩展或收缩,因此我们把这称为“自由准直”。
最后的过滤器F3同F2一样开始,但经过每一次准直后,一个新的匹配解决方法生成,这种重新准直-重新匹配步骤进行预先定好的次数,最好的次数是3次,或者直到分值不再增加。这种LikEIT重新准直的平均长度方法很容易实现,但我们注意到的是适当的计算而不是平均长度。
该设备在时间上的表现可通过使用LIkEIT程序查询前述的Seiferas的数据库来测量,此数据库是理论计算科学方面的一序列50360份论文。每一行给出作者、题目、论文集或讨论会、和时间。这些记录按这种说明并在它们之间加上“1”来保存。文件共有4,278,967字节。
这些定时是利用因特尔的奔腾200兆处理器和512K缓存,在Linux2.0.27版本下做的,分配是用gec-03版本2.7.2.1完成的。
要注意到处理数据库文本的一个字母所需时间,因为这种统计使得应用设计者迅速算出反应时间。但这个时间并不是常量,影响它的主要变量是要查询数据的长度和要求最佳匹配数。实验证明,在实际操作中,对于查询的特定值或数据库的特定内容非常不敏感。
查询 过滤器     返回的匹配
    1     5     25     100     500
查询1     F1F2F3     285402     2834255     2834212     2804223     287168164
  总计     327     330     337     345     619
查询2     F1F2F3     3016812     2997021     2997044     30168108     306301285
  总计     381     390     413     477     892
查询3     F1F2F3     3379814     3379826     3349654     33998108     346437285
  总计     449     461     484     545     1068
  查询1 最佳
  查询2 最佳词典问题
  查询3 安德森,词典问题的最佳界限
表1显示了通过增加长度和要求的匹配数目从1-500对于三种查询每一数据库文本的字母处理时间(纳秒),对于每一阶段的时间和总的时间也给了出来。例如:对于查询Q2,25个最佳匹配要求,处理每一数据库字母的时间是413纳秒此次查询的反应时间为413纳秒×4,278,967≈1.77秒。同时也很容易算出每秒可处理1/413纳秒=2.4百万个字符。
表1同时还显示了在LikEIT处理中的三个过滤阶段的时间,表中的样品表明与算法的设计是一致的。根据时间的数值特性,表明F1时间基本上对于每一查询都是常数,变化很小,这与预期的由于F1的角色是计算数据库记录的多图形一样,它与查询只有极小的关系。第二过滤时间主要取决于查询长度,因为对于每一个数据库和查询字符中要进行相似性处理,对于固定的查询字符串,F2在100个要求匹配数目范围基本不变,但如果匹配数目增到500的话,时间迅速增加,这是因为选择了设定F1的输出匹配数目为1000和10倍的要求匹配数目中更大的一个值。如果匹配数目在100以内,F1总是输出1000个候选者给F2,要求500个匹配数目使得F1产生5000个候选者,因此基本线性地增加了F2需求的时间。对于一固定的查询,预期F3时间将随着F2产生的候选者数目增加而增加,表中当匹配数目为1,5,25,100,500时,F3过滤器输出分别由检索“problmoptimldictionry”确定的31,70,125,316,1581个记录。由于实行不同数目的重新准直步骤使得分析F3的时间复杂化,然而,可以期望当查询字符串长度接近数据库字符串长度时,需要较少的步骤。表中F3的次数与这两个期望是致的。
总的来说,对每一查询当所要求的匹配数目从1变到500时,查询时间大致以2∶1的比例变化,表中数据稍小于这种变化,实际上角对角的变化要超过3∶1,如果去掉500个匹配数目这项,变化将变得非常小。
应用设计者通过下面简单的假定可以较好的估计性能,至少是为了预算目的。
每一数据库字符需400ns处理时间,相当于每秒2.5MB,然而这种假定在某些时候会失效,如数据库记录非常短,这样每个记录的开销起支配作用。
当在此描述一个实现多级智能字符串比较的最佳方法时,很显然对于那些精于此道的人是能够对本发明进行修改变化的,但都没有脱离所附的权利要求的范围。

Claims (15)

1、一种根据一查询检索数据库的方法,其特征在于包括如下步骤:
(a)提供一数据库字符串;
(b)提供一查询字符串;
(c)识别既存在于所述查询字符串又存在于所述数据库字符串中的多图形;
(d)提供每一所述识别的多图形的花费;
(e)将查询字符串相对于每一数据库字符串定位;
(f)将存在于查询字符串和每一个数据库字符串中的多图形匹配,比较的花费提供所述查询字符串和每一所述数据库字符串之间的数值指示的相似性;
(g)重新准直所述的查询字符串以减少花费,这通过检查存在于匹配方案中的边界来实现;
(h)重复所述的匹配和上述重新准直至一预定的次数或直到匹配花费不再增加;以及
(i)对每一个数据库字符串重复上述步骤(c)至(h),以识别那些与上述查询字符串最相似的数据库字符串。
2、一种如权利要求1所述的检索方法,其中多图形比一预定的固定最小长度长并比一预定的最大固定长度短。
3、一种如权利要求1所述的检索方法,其中查询字符串与每一数据库字符串被初始化左准直。
4、一种如权利要求1所述的检索方法,其中所述匹配仅依赖于所述多图形的匹配数目来近似。
5、一种如权利要求1所述的检索方法,其中,通过将匹配多图形分成多个级别使得其在所述查询字符串和数据库字符串之间交替存在,以近似地识别所述匹配,从而,当存在的数目为偶数时,匹配被单一地确定,并且当存在值为奇数时,省略最先或最后的存在值。
6、一种如权利要求1所述的检索方法,其中,通过拟凸匹配方法来辨别所述的匹配。
7、一种如权利要求1所述的检索方法,其中,所述边界的检测包括计算边界长度的平均值。
8、一种如权利要求1所述的检索方法,其中,所述边界的检测包括计算边界长度的中间值。
9、一种如权利要求1所述的检索方法,其中,所述的跟随重新准直的所述匹配是通过数学调整边界长度来近似。
10、一种如权利要求1所述的检索方法,其中,所述的最相似数据库字符串的辨别是使用数据结构堆执行的。
11、一种如权利要求1所述的检索方法,其中,所述的查询条和数据库字符串被数学地调整到一预定的长度。
12、一种多级检索数据库的方法,包括下面步骤:
提供一数据库字符串;
提供一查询字符串;
用根据计算的时间效率为原则所选的一个第一种方法处理每一个数据库字符串,以辨别与所述查询字符串相似的数据库字符串;
用所选的一种更准确但时间效率更低的第二种方法处理上述的相似的数据库字符串,以辨别出更少量的与上述字符串相似的数据库字符串,并
提供根据处理所述的相似数据库字符串的结果而得到的最后的最相似的数据库字符串。
13、一种权利要求12所述的多级检索方法,其中,所述的第一种方法和第二种方法自一组群中选择的,该组群是由依赖于多图形匹配的数目,将匹配多图形分为不同等级以便在所述查询字符串和数据库字符串间交替存在:即当存在的数目为偶数时,匹配被唯一的定义,当存在的数目为奇数时,去掉第一个或最后一个存在,以及拟凸匹配和数学地调整边界长度所组成。
14、一种如权利要求13所述的多级检索方法,其中,通过堆数据结构的操作提供最相似的数据库字符串的所述最后辨别。
15、一种如权利要求12所述的多级检索方法,其中,通过堆数据结构的操作提供最相似的数据库字符串的所述最后辨别。
CN 98103003 1997-07-09 1998-07-09 多级智能字符串比较方法 Pending CN1204812A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN 98103003 CN1204812A (zh) 1997-07-09 1998-07-09 多级智能字符串比较方法

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US08/890,659 1997-07-09
CN 98103003 CN1204812A (zh) 1997-07-09 1998-07-09 多级智能字符串比较方法

Publications (1)

Publication Number Publication Date
CN1204812A true CN1204812A (zh) 1999-01-13

Family

ID=5217671

Family Applications (1)

Application Number Title Priority Date Filing Date
CN 98103003 Pending CN1204812A (zh) 1997-07-09 1998-07-09 多级智能字符串比较方法

Country Status (1)

Country Link
CN (1) CN1204812A (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100424676C (zh) * 1999-07-01 2008-10-08 株式会社日立制作所 地名字符串识别设备和邮件分检系统
CN106959994A (zh) * 2006-10-25 2017-07-18 谷歌公司 服务器侧的匹配

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100424676C (zh) * 1999-07-01 2008-10-08 株式会社日立制作所 地名字符串识别设备和邮件分检系统
CN106959994A (zh) * 2006-10-25 2017-07-18 谷歌公司 服务器侧的匹配

Similar Documents

Publication Publication Date Title
US5978797A (en) Multistage intelligent string comparison method
US7747642B2 (en) Matching engine for querying relevant documents
US7516130B2 (en) Matching engine with signature generation
CN102750323B (zh) 用于为具有多个书写系统的语言识别相关查询的系统和方法
Voorhees et al. TREC: Experiment and evaluation in information retrieval
US7860853B2 (en) Document matching engine using asymmetric signature generation
Turpin et al. Fast generation of result snippets in web search
US7461056B2 (en) Text mining apparatus and associated methods
Ladani et al. Stopword identification and removal techniques on tc and ir applications: A survey
US8781817B2 (en) Phrase based document clustering with automatic phrase extraction
US8266150B1 (en) Scalable document signature search engine
CN1839386A (zh) 使用语义歧义消除与扩展的因特网搜索
Chen et al. Template detection for large scale search engines
Elhassan et al. Arabic text classification review
CN112989791A (zh) 一种基于文本信息抽取结果的去重方法、系统以及介质
CN101248433B (zh) 具有签名产生及关联性检测的匹配引擎
CN1204812A (zh) 多级智能字符串比较方法
CN105426490A (zh) 一种基于树形结构的索引方法
Van Galen et al. In Search of America: Topic modelling nineteenth-century newspaper archives
Ling et al. Mining generalized query patterns from web logs
Ling et al. Improving encarta search engine performance by mining user logs
JPH1196170A (ja) データベース作成方法および情報検索方法および情報検索装置および記録媒体
Singh et al. Clustering of blogs with enhanced semantics
Masand Effects of query and database sizes on classification of news stories using memory based reasoning
Tsay et al. A scalable approach for Chinese term extraction

Legal Events

Date Code Title Description
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C06 Publication
PB01 Publication
C02 Deemed withdrawal of patent application after publication (patent law 2001)
WD01 Invention patent application deemed withdrawn after publication