CN1230770C - 字符串相似度计算方法和装置 - Google Patents

字符串相似度计算方法和装置 Download PDF

Info

Publication number
CN1230770C
CN1230770C CN 02159822 CN02159822A CN1230770C CN 1230770 C CN1230770 C CN 1230770C CN 02159822 CN02159822 CN 02159822 CN 02159822 A CN02159822 A CN 02159822A CN 1230770 C CN1230770 C CN 1230770C
Authority
CN
China
Prior art keywords
character string
similarity
partial character
partial
consistent
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.)
Expired - Lifetime
Application number
CN 02159822
Other languages
English (en)
Other versions
CN1434400A (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.)
Association For Advancement Of Information Processing
Sumitomo Electric Industries Ltd
Original Assignee
Association For Advancement Of Information Processing
Sumitomo Electric Industries 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
Priority claimed from JP2002012259A external-priority patent/JP4065695B2/ja
Application filed by Association For Advancement Of Information Processing, Sumitomo Electric Industries Ltd filed Critical Association For Advancement Of Information Processing
Publication of CN1434400A publication Critical patent/CN1434400A/zh
Application granted granted Critical
Publication of CN1230770C publication Critical patent/CN1230770C/zh
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Landscapes

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

Abstract

一种字符串相似度计算方法,通过选择相似度计算中使用的部分字符串,来进行文件检索的高速化。将输入字符串X和文件数据库的文件Y作为两个字符串,计算它们的相似度。首先,根据出现频度来选择从输入字符串切出的部分字符串,并记录在部分字符串管理表中。接着,对于部分字符串管理表内的各部分字符串,收集一致信息,并记录在一致信息管理表中。然后,取出有关文件Y的列表,计算与输入字符串X的相似度。将文件号码和相似度形成组并记录在文件管理表中。对所有的文件重复进行该处理。最后,以相似度高的顺序重新排列文件管理表,从数据库中选择相似度高的文件,作为检索结果。

Description

字符串相似度计算方法和装置
技术领域
本发明涉及两个字符串的相似度判定,特别适用于在信息检索中进行输入的字符串与数据库中登录的文件的相似度判定。
背景技术
从文件数据库中,经常进行取出期望的文件的信息检索。在这样的信息检索中,文件作为将多个字符组成的单词进行组合的字符串的集合来处理。而且,在检索字符串和检索对象文件中的字符串之间进行比较,通过选择一个或多个相似度高的字符串来进行信息检索。这种字符串之间的相似度大致分为使用词素解析的方法,以及求长度n的部分字符串(以下,称为n个描述内容(グラム))的一致的方法这两种情况。
使用词素解析的方法例如披露于“Gerard Salton and Christopher Buckley,Term-Weighting Approaches in Automatic Text Retrieval,Information Proceedingand Management,24,pp.513-523,1988.”。在该方法中,求两个字符串之间的相似度的基本步骤如下。首先,通过使用字典和语法知识的词素解析,将两方的字符串分解为单词串。接着,比较两方的单词串,求出一致的单词。然后,对一致的单词设定加权。而且,对于所有的一致的单词,将该加权相加。该加法结果所得的总和为基于词素的相似度。
使用词素解析的方法存在词素解析本身的精度低时信息检索以失败告终这样的本质性问题。就提高词素解析的精度来说,不得不使单词字典和语法规则等成为大规模,难以简单地进行信息检索。而且,在出现流行词、复合词、仅在被限定的区域中使用的专业术语的文件中,单词字典的准备工夫成为大负担。
其次,基于n个描述内容的方法例如披露于“Yasushi Ogawa and ToruMatsuda,Overlapping statistical word indexing:A new indexing method forJapanese text,In proceeding of SIGIR’97,Philadelphia PA,USA,pp.226-234,1997.”。在该方法中,求出字符串之间的相似度的基本步骤如下。首先,求出两方的字符串中共同包含的n个字符的部分字符串。接着,对于该共同的部分字符串,设定加权。然后,对于所有的一致部分,将该加权相加。该加法结果所得的总和成为基于n个描述内容的相似度。
关于共同的部分字符串的加权设定,对在特定的文件中集中出现,在其他文件中不出现的字符串赋予大的值。相反,对于在许多文件中出现的字符串仅赋予小的值。这是因为在许多文件中出现的字符串不能成为具有文件特征的元素,在检索时,是反映不能有效利用的字符串。
基于n个描述内容的方法不需要词素解析,所以也可以对付新的技术术语等未知词,可以简单地使用。
即使在基于n个描述内容的方法中,也有以下方法:特别是在基于两个字符串(以下称为bigram)的相似度计算中,不是以切出的所有bigram为对象,而是限定于不包含平假名的bigram,求有关字符串之间的一致信息,并计算相似度。这是因为包含平假名的bigram在文件数据库内许多文件中出现的可能性高,成为具有各文件特征的字符串的概率非常小。如果包含平假名的bigram包含在字符串的比较对象中,则不仅计算量增大,而且被认为不能期待检索精度的极大提高。
如上所述,基于n个描述内容的方法与基于词素解析的方法相比较,有利的方面多,在信息检索领域中使用的情况多。基于n个描述内容的方法的问题在于,随着文件数据库增大,计算量增加,获得检索结果所需的时间长。
可是,在从字符串中切出的部分字符串中,在相似度计算上不一定有效的部分字符串、即由于包含在文件数据库内的许多文件中而加权小,可认为包含很多对相似度产生的影响小的部分字符串。因此,调查对于从字符串中切出的所有n个描述内容是否一致的方法,从计算时间的观点来看效率低。
此外,对于切出的bigram,不将包含平假名的字符串作为一致信息使用的方法,在计算时间方面效率高,但即使是检索上本来有效的字符串也一律被舍去。其结果,存在检索精度下降的问题。
发明内容
本发明解决上述n个描述内容方法的问题,提供兼顾缩短计算时间和提高检索精度的方法。
方案1所述的发明提供一种字符串相似度计算方法,计算两个字符串的相似度,其特征在于,在从第1字符串中切出的部分字符串中,对根据相似度计算所对应的效果选择的部分字符串,收集与第2字符串的一致信息,由所述一致信息来计算一致的部分字符串的加权,根据所述加权来计算相似度,其中,所述一致信息包含部分字符串的长度、第1字符串中的部分字符串的出现场所、第2字符串中的部分字符串的出现场所、表示与第2字符串内第几号码一致的序列号码。这样,在求字符串之间的一致信息时,不使用切出的所有n个描述内容,而通过估计对应于相似度计算的效果,来选择在相似度计算上有效的n个描述内容。
由于这样的构成,所以可保持与基于不选择的方法的检索精度大致相同的检索精度,并缩短计算时间。
方案2所述的发明的特征在于,在方案1所述的发明中,从所述一致信息中包含的部分字符串中,根据适合第1和第2字符串中出现的顺序的部分字符串的加权来计算相似度。这样,在字符串之间的相似度计算中,从记录在一致信息中的部分字符串中,选择在各个字符串中出现的顺序合适的部分字符串,将其加权用于相似度的计算。
由于这样的构成,所以计算加权的部分字符串被限定,保持原有的检索精度,同时可以实现进一步的计算高速化。
方案3所述的发明的特征在于,在方案1或2所述的发明中,加入从第1字符串中切出的部分字符串出现在第2字符串中的次数来进行所述部分字符串的选择。
由于这样的构成,所以可以有效地选择在相似度计算上有效的某个部分字符串,保持检索精度,同时可进一步缩短计算时间。
方案4所述的发明提供一种字符串相似度计算装置,计算两个字符串的相似度,其特征在于,该字符串相似度计算装置包括:部分字符串选择部,在从第1字符串中切出的部分字符串中,根据相似度计算所对应的效果来进行选择;一致信息收集部,在从第1字符串中切出的部分字符串中,对根据相似度计算所对应的效果选择的部分字符串,收集该部分字符串与第2字符串的一致信息;以及相似度计算部,根据所述一致信息来计算一致的部分字符串的加权,通过将所述加权进行总和来计算相似度,其中,所述一致信息包含部分字符串的长度、第1字符串中的部分字符串的出现场所、第2字符串中的部分字符串的出现场所、表示与第2字符串内第几号码一致的序列号码。
由于这样的构成,所以可实现保持与基于不选择的方法的检索精度大致相同的检索精度,同时缩短计算时间的装置。
方案5所述的发明的特征在于,在方案4所述的发明中,该字符串相似度计算装置还包括:部分字符串选择部,在从第1字符串中切出的部分字符串中,根据相似度计算所对应的效果来进行选择,并且所述相似度计算部将所述合适部分字符串附加的加权进行总和。
由于这样的构成,所以计算加权的部分字符串被限定,可以实现保持检索精度,同时达到计算的进一步高速化的装置。
附图说明
图1是表示本发明的文件检索装置的实施例的图。
图2是表示本发明的进行文章检索的计算机系统的实施例的图。
图3是进行本发明实施例的文章检索的处理流程图。
图4是选择从字符串切出的部分字符串的处理流程图。
图5是收集并记录一致信息的流程图。
图6是由一致信息求基于加法的相似度的处理流程图。
图7是求部分字符串的加权的处理流程图。
图8是一致信息管理表的构成图。
图9是表示本发明的文件检索装置的另一实施例的图。
图10是由一致信息求出n个随机DP相似度的处理的前半部分流程图。
图11是由一致信息求出n个随机DP相似度的处理的后半部分流程图。
图12是表示在选择基准中使用tf、df时的选择出的部分字符串的数目和检索精度的关系图。
图13是表示在选择基准中使用tf、df时的选择出的部分字符串的数目和检索时间的关系图。
图14是表示本发明的使用DP的相似度计算方法和基于加法的相似度计算方法的检索精度的对比图。
图15是求部分字符串的加权的另一处理流程图。
具体实施方式
本发明涉及基于n个描述内容的字符串之间的相似度计算方法、实现该方法的装置、程序、记录媒体。假设计算输入的字符串和与数据库中登录的多个文件的相似度,但也可以是除此以外的应用。在求字符串之间的一致部分时,分别对于数据库中的所有文件,不是求输入字符串和文件中共同的n个描述内容这样的方法,而使用从输入字符串中求出n个描述内容,利用后缀文件高效率地从数据库内检索包含各个n个描述内容的文件的方法。
在从输入字符串中切出的n个描述内容中,认为包含很多对相似度的计算产生影响小的n个描述内容。例如,如果输入字符串的长度为m,将部分字符串限定为2字符的bigram,则从输入字符串中切出的部分字符串的数目为m-1。因此,如果不进行部分字符串的选择,对切出的所有bigram求一致信息,则输入字符串长度m越大,计算时间也越长。因此,在本发明中,从切出的n个描述内容中,通过估计对应于相似度计算的效果来选择n个描述内容,在一致信息的收集中仅采用固定个数的n个描述内容。
对于部分字符串的选择,需要选择在相似度上相加的加权大的部分字符串,以便提高检索精度。加权由包含该部分字符串的数据库中的文件数目(以下记为df)来确定,所以根据df的值进行选择是自然的。但是,在本发明的一个方面中,推荐取代df,根据n个描述内容在数据库内的文件中出现的次数(以下记为出现次数或tf)来进行部分字符串的选择。
tf可以直接计算,即使其值增加,计算时间也几乎不变,而在计算df时,在计算了tf后必须再计算文件内的重复,因而tf的值大时计算时间增大。另一方面,tf和df强相关,所以即使用tf取代df,在检索精度上也不产生影响。
对于选择的各n个描述内容,一致信息的收集按以下的方法进行。
首先,计算n个描述内容的加权。接着,从整个文件数据库中求出包含该n个描述内容的文件,将该文件内的n个描述内容的出现场所、输入字符串的n个描述内容出现场所、n个描述内容的长度、表示该n个描述内容在文件内与第几号文件一致的序列号码、n个描述内容的加权作为一致信息并记录。
通常,不对得到的一致信息进行记录和管理,而计算将其原来的加权相加后的相似度,但在本发明中,通过记录和管理该一致信息,不仅采用将一致的n个描述内容的加权进行相加来计算相似度的方法,而且可采用原样保持高速性的多种相似度计算方法。
输入字符串和数据库内文件的相似度通过将附加在一致的n个描述内容上的加权相加来计算。其中,即使一致的n个描述内容在相同的文件内出现两次以上时,其加权也仅被相加一次。即,一致的n个描述内容出现两次,相加的加权不变为两倍。相反,按照n个描述内容在文件内形成的次数(以下为dtf),作为一致信息存储的n个描述内容的加权因各文件而异,dtf的值越大,被赋予的加权越大。此外,该加权对各n个描述内容在dtf=0时也被定义,对于不包含该n个描述内容的所有文件,相加0以下的加权。这是因为基于不包含n个描述内容表示不相似这样的方法,相加的加权可以说是将不相似的程度进行数值化。因此,表示相似度的值取包含负值的实数值,在该数量直线上的值越大,与输入字符串的相似度越高。
计算相似度的方法不限定于将附加在一致的n个描述内容上的加权进行相加这样的上述方法,也可以采用除此以外的相似度计算方法。其一例是以下方法:从一致的n个描述内容中仅选择在各个字符串中出现的顺序合适的n个描述内容,将附加在这些n个描述内容上的加权进行总和后的值作为相似度。
考虑字符串的出现顺序来计算相似度的方法以前曾提出过。但是,该方法对所有长度一致的部分字符串计算加权,所以与将一致的n个描述内容的加权进行相加的方法相比,计算量增加,使用的字符串的长度越长,计算时间越长。
在本发明中,对选择的n个描述内容赋予加权,仅在这些n个描述内容一致时才将加权与相似度相加。因此,仅对选择的部分字符串,考虑一致和出现顺序就可以,所以与以往的方法相比,可以高速地计算,即使使用的字符串长度长,在计算时间上产生的影响也小。在该方法中,可高效率地寻找在合适的n个描述内容的组合中相似度最高的组合,所以使用动态规划方法(Dynamic Programming,以下称为DP)来计算相似度。以下,使用DP,说明求出n个描述内容DP相似度的方法。
设α、β、γ、δ为长度0以上的字符串,ξ、ζ、η为长度1以上的字符串,””为空字符串。将多个字符串(例如ξ和γ)相连的字符串(例如α)通过连续书写作为元素的字符串的记号来表示(例如,α=ξγ)。
n个描述内容DP相似度SinDP可按照有关自变量的字符串部分的一致模型,通过循环使用以下式来求出。首先,在双方都为空字符串时,设
SimDP(””,””)=0                               (1)。除此以外时,设
SimDP(α,β)=MAX(SimDPs(α,β),SimDPg(α,β)) (2)
这里,ξ为与一致信息管理表的α和β有关的列表中记录的字符串,如果α=ξγ、β=ηδ,则通过与所有的ξ相关联地计算
SimDPs(α,β)=MAX(Score(ξ)+SimDP(γ,δ)  (3)来求出SimDPs(α,β)。在这样的字符串ξ不存在时,设
SimDP(α,β)=0.0                           (4)。Score(ξ)是返回一致信息管理表中记录的ξ的加权的函数。
此外,ζ和η满足α=ζγ、β=ηδ,并且与一致信息管理表的有关α和β的列表中记录的字符串不具有共同部分的最大字符串,则SimDPg(α,β)通过
SimDPg(α,β)=MAX(SimDP(α,δ),SimDP(γ,β),SimDP(γ,δ))                                             (5)来求出。该式意味着从两个字符串(ζγ和ηδ)中,在与除去ζ或η一方、或除去ζ和η两方后的剩余字符串相当的字符串之间(α和δ、γ和β、γ和δ)的相似度中,采用最高的相似度。
通过循环使用以上的公式,从一致信息管理表中记录的部分字符串中,求出适合两个字符串的各自顺序的部分字符串,并且使相似度最大。
如式(3)所示,上述所示的n个描述内容DP相似度不是考虑字符(长度1的字符串),而是考虑相对于n个描述内容(长度n的字符串)的一致,提供赋予加权,加入字符的连续性的相似度计算方法。此外,不是对于所有的部分字符串考虑字符串之间的一致,而通过限定在一致信息管理表中记录的n个描述内容,如式(5)所示,对于与一致信息管理表中记录的部分字符串无关的部分,不需要判定有无一致,可以除去。由此,即使作为相似度计算对象的字符串的长度很长,仅考虑与一致信息管理表中记录的部分字符串有关的部分就可以,所以与对于所有的部分字符串考虑字符串之间的一致的以往方法相比,可以高速地计算相似度。
(第1实施例)
首先,表示使用n个描述内容来计算字符串之间的相似度的方法的实施例。图1是根据选择的部分字符串来检索与输入的字符串相似度最高的文件的文件检索装置。该文件检索装置由文件数据库10、字符串输入部11、部分字符串选择部13、一致信息收集部14、相似度计算部15、相似度计算控制部16、以及检索结果输出部12构成。
在文件数据库10中,登录作为检索对象的多个文件10a、10b、…、10c。为了检索,输入关键词、词、短语、句子、文章等(以下,作为代表,称为检索文章)。字符串输入部11将检索文章作为字符串X提供给部分字符串选择部13。
部分字符串选择部13从字符串输入部11提供的字符串X中切出部分字符串,在计算了出现频度tf后,从算出的tf小的字符串中取出规定个数,并登录在部分字符串管理表T1中。部分字符串选择部13由部分字符串切出控制部31、部分字符串切出部32、字符串出现频度计算部33、部分字符串登录部34构成。部分字符串切出控制部31对部分字符串切出部32是否切出哪个部分字符串进行控制。部分字符串切出部32从字符串X中切出部分字符串x。字符串出现频度计算部33计算部分字符串x在文件数据库10内的出现频度tf。部分字符串登录部34以tf值小的顺序选择固定个数的切出的部分字符串,并登录在部分字符串管理表T1中。
一致信息收集部14对于登录在部分字符串管理表T1中的各部分字符串,计算赋予在字符串上的加权,检测文件数据库内的各部分字符串的出现场所,作为一致信息,将文件内的出现场所、输入字符串的出现场所、部分字符串的字符串长度、表示文件内第几号一致的序列号码、字符串的加权记录在一致信息管理表T2中。
一致信息收集部14由一致信息收集控制部41、字符串出现场所检索部42、字符串加权计算部43、一致信息登录控制部44、一致信息登录部45构成。一致信息收集控制部41每次取出一个登录在部分字符串管理表T1中的部分字符串a,提供给字符串出现场所检索部42和字符串加权计算部43。字符串出现场所检索部42对于提供的部分字符串a的文件数据库内的所有出现场所,求出出现场所、部分字符串a的长度、表示部分字符串与文件内第几号一致的序列号码。字符串加权计算部43计算赋予在提供的字符串a上的加权。一致信息登录控制部44每次选择一个部分字符串a,使文件内的出现场所、输入字符串的出现场所、部分字符串a的长度、文件内的序列号码、部分字符串a的加权形成组,并提供给一致信息登录部45。一致信息登录部45将接收的各组作为一致信息登录在一致信息管理表T2的对应文件号码的列表中。
相似度计算控制部16从一致信息管理表T2中取出与某个文件Y有关的列表,提供给相似度计算部15。
相似度计算部15根据提供的一致信息的列表来计算X和Y的相似度。相似度计算部15由字符串加权加法控制部51、字符串加权加法部52构成。字符串加权加法控制部51从一致信息的列表中选择一个一致信息,如果该一致信息具有的序列号码为1,则将该字符串的加权score提供给字符串加权加法部52。字符串加权加法部52将提供的加权与X和Y的相似度Sim(X,Y)相加。
检索结果输出部12选择并输出相似度最高的文件。此时,也可以同时输出相似度在一定值以上的文件或以从高位到一定的位次的文件。
(第2实施例)
以下说明通过软件实施本发明的文章检索的实施例。
图2表示一例用于执行文章检索的计算机系统。该计算机系统由显示器101、打印机102、键盘103、软盘装置(R)104、CD-ROM(Compact Disk-ReadOnly Memory)装置105、只读存储器(Read Only Memory,以下为ROM)106、可读写随机存储器(Random Access Memory,以下为RAM)107、磁盘装置108、中央处理装置(Central Processing Unit,以下记为CPU)109、通信接口110、以及连接它们的总线111构成。软盘(R)装置104进行软盘(R)112的读写,CD-ROM装置104进行CD-ROM113的读出。此外,通过通信接口110,本计算机系统被连接到通信网114。
将实施本发明的文章检索程序存储在ROM106中。或者,将文章检索程序存储在软盘(R)112、CD-ROM113或磁盘装置108中,在传送到RAM107后,CPU109就可以执行。CPU109在作业区域使用RAM107来执行文章检索程序。根据需要,在作业区域也可以使用磁盘装置108。文章检索程序的执行指示由键盘103进行,将执行结果输出到显示器101或打印机102。不用说,也可以从软盘(R)112指示文章检索程序的执行,将执行结果写入在软盘(R)112上。
文件数据库可存储在软盘(R)112、CD-ROM113、或磁盘108中。为了高速的存取,最好是传送到RAM107。在传送到RAM107时,也可以变换为可以容易处理的形式。此外,当然也可以将文章检索程序、文件数据库、或执行的指示经由网络114输入到本计算机系统,并且将执行的结果经由网络114从本计算机系统输出。
此外,不限于图示的情况,不用说,使用各种记录媒体、输入方式、输出方式,进行对本计算机系统的输入和输出等各种实施形态的变形都可以。这些存储媒体、输入方式、输出方式除了本计算机系统直接存取以外,当然也可以经由通信网络进行存取。
图3至图7是基于选择并计算作为计算对象的n个描述内容的字符串相似度的文件检索程序的处理流程。
图3表示根据检索文章对文件数据库进行检索,选择并输出相似度高的文件的处理流程图。
首先,在步骤S11(以下简记为S11)中,为了准备高效率地计算字符串的出现次数,集中文件数据库中包含的所有文件来形成后缀文件(SuffixFile)。后缀文件的形成方法和使用方法披露于“M.Yamaoto and K.W Church,Using Suffix Arrays to Compute Term Frequency and Document Frequency forAll Substrings in a Corpus,In proceeding of 6th Workshop on Very Large Corpora,Ed.Eugene Chamiak,Motreal,pp28-37,1998”。
如果使用后缀文件,则可以高速地求出某个字符串出现在文件数据库内的次数。后缀文件通过将所有文件中产生的部分的字符串以字符代码顺序重新排列,附加通用号码(后缀)来实施。字符串在文件数据库中出现的次数通过计算与该字符串一直的字符串在后缀文件中有几个来求出。
具体地说,首先,分别根据二分寻找方法来求出一致的字符串的后缀的最小值min和最大值max。如果不是一致的字符串,则在文件数据库中出现的次数为0。如果求出min和max,则字符串出现的次数tf按tf=max-min+1来求出。
文件数据库的文件通过文件号码来相互区分,在后缀文件中登录的部分字符串上附加该文件号码。由此,可以高效率地检索包含某个部分字符串的文件。此外,可以通过列举重复的文件号码的数目,从tf中减去该数目来计算df。
接着,在S12中,将检索文章读入为字符串X。
在S13中,根据文件数据库内的出现频度tf来选择从字符串X中切出的部分字符串,与tf形成组并记录在部分字符串管理表中。有关S13中进行的处理将用图4后述。
在S14中,对于部分字符串管理表中记录的各部分字符串,收集一致信息,并进行对一致信息管理表的记录。在一致信息管理表中,在每个文件号码中,被记录为一致信息的列表。有关S14中进行的处理将用图5后述。
在S15中,从一致信息管理表中取出某个文件Y的列表。
接着,在S16中,根据取出的列表来计算X和Y的相似度。有关S16中进行的处理将用图6后述。
在S17中,将求出的相似度和文件号码形成组并登录在文件管理表中。
在S18中,判定是否对于记录在一致信息管理表中的所有列表计算了相似度。如果还未对所有的列表计算相似度,则在S15中选择并取出还未进行相似度计算的列表,重复进行直至S17的处理。如果对于所有的列表进行了计算,则在S19中将登录的表以相似度高的顺序重新排列。
在S20中,进行输出相似度高的文件的处理。输出的文件可以是仅为一个或规定的多个、或规定的相似度以上的所有文件等各种形态。
图4表示从读入检索文章的字符串X中切出部分字符串,根据出现频度选择在一致信息的收集中使用的部分字符串,并记录在部分字符串管理表上的处理流程。
首先,在S31中,将部分字符串管理表中记录的表示部分字符串的数目的变量num_substring和表示切出的部分字符串的长度的变量j进行初始化。MinNgramLength是确定切出的部分字符串长度的最小值的参数。
接着,在S32中,从字符串X中切出一个长度j的部分字符串,并计算文件数据库内的出现频度tf。
在S33中,判定切出的部分字符串的tf的值是否为0。如果tf=0,则在文件数据库内不存在该部分字符串,所以不适合在一致信息的收集中使用。因此,跳过S34的处理,进至S35。如果tf≠0,则进至S34。
在S34中,将切出的部分字符串与tf一起记录在部分字符串管理表中,使num_substring的值增加1。
在S35中,判断是否对从X中切出的长度j的所有部分字符串计算了tf。如果未对长度j的所有部分字符串进行计算,则在S32中选择还未计算的长度j的部分字符串并计算tf,重复进行直至S34的处理。如果对于长度j的所有部分字符串进行了计算,则在S36中在j上加1。
在S37中,判定从X中切出的部分字符串的长度j的值是否大于确定切出的部分字符串的长度最大值的参数MaxNgramLength。如果j的值小于MaxNgramLength,则返回到S32,对长度j的部分字符串重复进行直至S36的处理。如果j的值大于MaxNgramLength,则结束对长度在MinNgramLength以上、MaxNgramLength以下的所有部分字符串的tf的计算,所以进至S38,以tf小的顺序重新排列部分字符串管理表中记录的部分字符串。
在S39中,判定部分字符串管理表中登录的部分字符串的数目num_substring是否大于确定用于一致信息收集的部分字符串数目的上限值的参数SubStringLimit。如果num_substring大于SubStringLimit,则进至S40,以tf小的顺序取出SubStringLimit个部分字符串,并将这些部分字符串再次记录在部分字符串管理表中。如果num_substring小于SubStringLimit,则跳过S40进至S41。
S41是返回记录的部分字符串管理表的处理。
图5表示收集部分字符串管理表中记录的各部分字符串和与文件数据库内的各文件的一致信息,将该信息记录在一致信息管理表中的处理流程图。
首先,在S51中,将变量p0fit_sum初始化为0。p0fit_sum是在以一致的n个描述内容的加权的加法来计算相似度时,使计算处理高速化的变量,是有关文件数据库内的所有文件的相似度的偏置。
在S52中,从部分字符串管理表中选择某一个部分字符串并读入为a。
在S53中,计算p0fit、p1fit、p2fit、p3fit、p4fit,将p0fit与p0fit_sum相加。p0fit、p1fit、p2fit、p3fit、p4fit分别是a在某个文件内不出现、出现1次、出现2次、出现3次、出现4次以上时的该文件的a的加权。有关p0fit、p1fit、p2fit、p3fit、p4fit的计算方法用图7后述。
在S54中,求文件数据库内出现a的所有场所,将该场所以出现的场所的顺序重新排列。
在S55中,对a的各出现场所,求包含a的文件的文件号码。此时,a以出现场所顺序排列,所以得到的文件号码也以小的顺序排列。
在S56中,以出现场所的顺序选择一个a的出现场所。
在S57中,判定选择的a的出现场所在包含该出现场所的文件中是否为最前方的出现场所。即,如果选择的出现场所的文件和前一个出现场所的文件不同,则该场所是最初的出现场所,如果相同,则是第2个以后的出现场所。如果是最初的出现场所,则进至S58,计算该文件内的a的出现次数dtf,确定a的文件内的加权。此外,设sequence_num=1。sequence_num表示选择的出现场所是文件内第几号的a的出现场所的序列号码。
在S59中,将文件内的序列号码sequence_num、输入字符串X中的a的出现场所(以下为startX)、文件内的a的出现场所(以下为startdoc)、a的长度(以下为termlength)、a的加权(以下为score)形成组并记录在一致信息管理表中,并使sequence_num加1。其中,score中记录的值不是a的原来的加权,而是记录从a的加权中减去p0fit后的值。这是因为在用一致的n个描述内容的加权的加法来计算相似度时,对于选择的各部分字符串,取代将各个部分字符串的p0fit与不包含该部分字符串的文件的相似度相加,而与从一致的n个描述内容的加权中减去p0fit后的值相加,最后通过对所有相似度相加加权的偏置p0fit_sum,可减少计算的时间。
在S60中,比较sequence_num和tf的值,判定对于a的所有出现场所是否进行了一致信息的记录。如果没有记录一致信息,则在S56中选择下一个a的出现场所,重复进行直至S59的处理。如果对于a的所有出现场所进行了一致信息的记录,则进至S61。
在S61中,判定对于部分字符串管理表内的所有部分字符串是否进行了一致信息的收集。如果存在未进行一致信息收集的部分字符串,则在S52中将还没有选择的部分字符串写入为a,重复进行直至S60的处理。如果结束了对所有部分字符串的一致信息的收集,则在S62中返回得到的一致信息管理表。
图6是使用从一致信息管理表中取出的列表,通过一致的字符串的加权的加法运算来求输入文件X和文件Y的相似度的处理流程图。
首先,在S71中,将X和Y的相似度(以下为sim)初始化为0。
在S72中,从一致信息管理表中记录的有关Y的列表中选择一个列表,读入为I。
在S73中,判定读入的I的sequence_num是否为1。这是为了不进行将同一部分字符串的score重复相加在sim上的处理。如果sequence_num不是1,则跳过S74,进至S75。如果sequence_num=1,则在S74中,将I的score与sim相加。
在S75中,判定是否调查了有关Y的一致信息的列表中记录的所有一致信息。如果调查了所有的一致信息,则在S76中,将所有文件的加权的偏置p0fit_sum与sim相加。而如果是没有调查的一致信息,则在S72中,选择还没有调查的一致信息并读入为I,重复进行直至S74的处理。
S77是将得到的sim作为X和Y的相似度返回的处理。
图7表示图5的S53中的p0fit、p1fit、p2fit、p3fit、p4fit的计算处理流程图。
首先,在S81中,将p0fit、p1fit、p2fit、p3fit、p4fit都初始化为0。
在S82中,计算部分字符串a的df,在S83中,根据df和文件数据库内的文件的总数N来计算idf。该idf是以信息理论领域中的信息量作为背景的值,已知将该值作为部分字符串的加权的方法。
在S84中,计算用于判定部分字符串a是否是检索中有效的部分字符串的阈值tf_threshold。
在S85中,根据tf和df的值来判定部分字符串a在检索中是否有效。如果tf/df>tf_threshold,则判断是检索上有效的部分字符串,进至S86。如果不是这样,则判断为在检索上无效,跳过S86、S87,在S88中返回p0fit、p1fit、p2fit、p3fit、p4fit。即,p0fit、p1fit、p2fit、p3fit、p4fit的值都被返回0。
在S86中,计算p0fit、p1fit、p2fit、p3fit、p4fit。
S87的函数MAX和MIN分别是返回提供给自变量的数值的最大值或最小值的函数,根据该函数,将p0fit、p1fit、p2fit、p3fit、p4fit的值限制在LB以上、UB以下的范围内。LB和UB都是限制p0fit、p1fit、p2fit、p3fit、p4fit的分布的参数。S88是返回p0fit、p1fit、p2fit、p3fit、p4fit的处理。
从以上说明可知,加权p0fit、p1fit、p2fit、p3fit、p4fit被作为tf、df、idf的函数来求。根据披露于“Christopher D.Manning and Hinrich Schutze,Foundations of Statistical Natural Language Processing,The MIT Press,Cambridge,Massachusetts,pp.529-574,1999.”的理论,通过求出文件数据的观测值来确定S84和S86中使用的系数。再有,这些系数不限于所示的数值,容许按照目的形成为合适的值。
作为图5的S53的p0fit、p1fit、p2fit、p3fit、p4fit的计算处理流程,也可以采用图15所示的流程俩取代图7所示的流程。以下说明图15的计算处理流程。
首先,在S181中,将p0fit、p1fit、p2fit、p3fit、p4fit都初始化为0。
在S182中,计算部分字符串a的df和部分字符串a在文件数据库中出现两次以上的文件的数目(以下记为df2)。在S183中,根据df和文件数据库内的文件的总数N来计算idf。
在S184中,将用于判定部分字符串a是否是检索中有效的部分字符串的阈值df2_threshold设定为0.22。
在S185中,根据df和df2的值判定部分字符串a是否在检索上有效。如果df2/df>df2_threshold,则判断是检索上有效的部分字符串,进至S186。如果不是这样,则判断为在检索上无效,跳过S186、S187,在S188中返回p0fit、p1fit、p2fit、p3fit、p4fit。即,p0fit、p1fit、p2fit、p3fit、p4fit的值都被返回0。
在S186中,计算p0fit、p1fit、p2fit、p3fit、p4fit。
S187与图7的S87同样,将p0fit、p1fit、p2fit、p3fit、p4fit的值限制在LB以上、UB以下的范围内。LB和UB都是限制p0fit、p1fit、p2fit、p3fit、p4fit的分布的参数。S188是返回p0fit、p1fit、p2fit、p3fit、p4fit的处理。
从以上说明可知,在图15的计算处理流程中,作为判定部分字符串a是否在检索上有效的基准,使用df2取代上述图7的计算处理流程中的tf。df2/df表示部分字符串的出现集中度,即某个部分字符串仅在特定的文件中集中出现的程度,通过使用该信息进行部分字符串的选择,可提高检索精度。
S183中的阈值df2_threshold和S186中使用的系数不限于所示的数值,容许按照目的形成为合适的值。
图8表示一致信息管理表的构成图。一致信息管理表由每个文件号码的一致信息的列表构成。在图8中,在文件号码0002中记录一致信息1和一致信息5,在文件号码0100中记录一致信息2、一致信息3和一致信息6,在文件号码0111中记录一致信息4和一致信息7。在各个一致信息中,存储部分字符串的文件内的序列号码sequence_num、输入字符串X中的部分字符串的出现场所(startX)、文件内的部分字符串的出现场所(startdoc)、部分字符串的长度(termlength)、部分字符串中附加的的加权(score)。
在获得新的有关文件号码0002的一致信息8时,如图8所示,指示以往一致信息5的列表开头的指针指示一致信息8,指针从一致信息8向一致信息5扩展,将一致信息8记录在文件号码0002的列表的开头。
(第3实施例)
下面,根据n个描述内容DP相似度,检索输入的字符串和相似度最高的文件的文件检索装置的实施例示于图9。该文件检索装置由文件数据库10、字符串输入部11、部分字符串选择部13(内部的图示省略)、一致信息收集部14(内部的图示省略)、相似度计算部17、相似度计算控制部18、循环执行控制部19、以及检索结果输出部12构成。
文件数据库10、字符串输入部11、部分字符串选择部13、一致信息收集部14、以及检索结果输出部12是与附加了实施例1的相同标号的部分具有相同功能和结构,因而省略说明。
相似度计算控制部18从一致信息管理表T2中取出某一个有关文件Y的列表,与字符串X和Y一起提供给相似度计算部17。
相似度计算部17从提供的一致信息的列表中,根据式(1)或式(2)来计算X和Y的相似度。在计算该相似度的中途,对于一部分的字符串同样需要求相似度。这可由循环执行控制部19通过重复使用相似度计算部17来实施。相似度计算部17由一致字符串相似度计算部61、任意字符串相似度计算部62、最大值选择部63构成。一致字符串相似度计算部61计算式(3)的SimDPs(α,β)。任意字符串相似度计算部62计算式(5)的SimDPg(α,β)。最大值选择部63通过实施对于它们的函数MAX,来计算式(2)的SimDP(α,β)。再有,相似度计算部17接收的字符串α、β两方为空字符时,通过循环执行控制部19使SimDP(α,β)=0.0。此时,一致字符串相似度计算部61、任意字符串相似度计算部62、最大值选择部63不工作。不用说,该SimDP(α,β)=0.0这样的值是实施式(1)的值。
一致字符串相似度计算部61通过字符串分离控制部71、字符串分离部72、相似度计算部73、加法部74、最大值选择部75进行实施,来计算式(3)的SimDPs(α,β)。仅在α和β的一致的开头字符串是在一致信息管理表T2中记录的字符串时才计算SimDPs(α,β)。
首先,字符串分离控制部71在一致字符串相似度计算部61接收了字符串α(=ξγ)、β(=ξδ)中,没有一致的字符串ξ时,即在一致的字符串ξ为空字符串时,根据式(1),使SimDPs(α,β)=0.0。
接着,字符串分离控制部71在一致字符串相似度计算部61接收了字符串α(=ξγ)、β(=ξδ)中,在是一致的字符串ξ情况下,与所有的ξ相关联,使字符串分离部72、相似度计算部73、加法部74工作,计算式(3)中包含的Score(ξ)+SimDP(γ、δ)。然后,由最大值选择部75选择最大值。由此,求出式(3)所示的SimDPs(α、β)。
字符串分离部72在将字符串α分离成ξ和γ,将字符串β分离成ξ和δ后,参照一致信息管理表T3将ξ的加权Score(ξ)提供给加法部74,将γ和δ提供给相似度计算部73。相似度计算部73计算式(3)的SimDP(γ、δ)。实际上,相似度计算部73由循环执行控制部17通过对γ和δ使用相似度计算部16来进行计算。加法部74进行式(3)的加法运算。
任意字符串相似度计算部62通过相似度计算部81~83、最大值选择部84来实施,计算式(2)的SimDPg(α、β)。在开头的字符串不同时,或在开头的字符串一致,但不是登录在一致信息管理表中的字符串时,由任意字符串相似度计算部62进行计算。对应于接收的字符串α(=ξγ)、β(=ξδ)的开头的与1个字符ζ、η的有无有关的各情况,相似度计算部81、82、83分别求出式(5)的SimDP(α、δ)、SimDP(γ、β)、SimDP(γ、δ)。实际上,相似度计算部81~83通过循环执行控制部19通过分别对α和δ、γ和β、γ和δ使用相似度计算部17来进行计算。最大值选择部84计算式(5)的函数MAX。
(第4实施例)
通过软件来求出字符串X和字符串Y的n个描述内容DP相似度的处理流程示于图10和图11。作为图3的S16的内部处理,该处理可用图6说明的处理来取代。此外,执行时,使用第2实施例所示的计算机系统。
首先,在S91中,分别在X和Y中,在列表中记录的部分字符串的开头字符和最终字符中,求处于最前面的开头字符的场所minX、minY,以及处于最后的最终字符的场所maxX、maxY,准备长度maxX-minX+1的排列X_index、以及maxY-minY+1的排列Y_index,并将所有的元素初始化为-1。这些排列分别对应于从X的minX至maxX的各字符、从Y的minY至maxY的各字符。
在S92至S94的处理中,用从X的minX至maxX的各字符、从Y的minY至maxY的各字符代入列表中记录的各部分字符串的开头字符或在与位于最终字符的字符对应的排列X_index、Y_index的元素中代入0。
在S95至S99的处理中,对于作为X_index[i]=0的i,从前面起顺序分配X_index_num-1那样的号码0、1、、2、…,将该号码代入X_index[i]。因此,X_index_num是作为X_index[i]≠-1的数i。
在S100至S104的处理中,对于Y_index进行同样的处理。对于作为Y_index[j]=0的j,从前面起顺序分配Y_index_num-1那样的号码0、1、、2、…,将该号码代入Y_index[j]。因此,Y_index_num是作为Y_index[j]≠-1的数j。
在S105中,首先以X中的部分字符串的出现顺序重新排列列表中记录的X和Y的一致信息。接着,对于X中的部分字符串的出现顺序相同的部分字符串,以Y中的部分字符串的出现顺序重新排列,将一致信息的数目读入为m。
接着,作为通过DP高效率地求出相似度的准备,形成(X_index_num+2)行(Y_index_num+2)列的评分表scoretable,将表的所有元素初始化为0。该表的纵方向与字符串X中列表上记录的部分字符串的开头字符或作为最终字符的字符相对应,横方向与字符串Y中列表上记录的部分字符串的开头字符或作为最终字符的字符相对应。
在S106中,将k和i初始化为k=1、i=0。
在S107中,将j初始化为j=0。变量k表示当前关注从开头起第k号的一致信息。i和j分别是表示在X和Y的列表中记录的部分字符串的开头字符或最终字符中关注哪个字符的变量。在S108中,作为当前的评分,将scoretable[i][j]代入currentscore。
这里,为了便于说明,将从列表的开头起第k号的一致信息分别表示为startX(k)、startdoc(k)、termlength(k)、score(k)。
在S109中,判定i和j指示的场所是否与从前面起第k号的一致信息的部分字符串出现的场所一致。如果一致,则进至S110,而如果不一致,则进至S114。
在S110中,在评分表中,求与一致的部分字符串的最终字符对应的行号码和列号码,分别代入target_i和target_j。
在S111中,在scoretable[target_i][target_j]中,比较现阶段得到的评分和将一致的部分字符串的加权score(k)与currentscore相加所得的评分,如果currentscore+score(k)大于scoretable[target_i][target_j],则在S112中,将currentscore+score(k)代入scoretable[target_i][target_j]。如果不是这样,则跳过S112,进至S113。
在S113中,使k的值增加1,关注列表内的下一个一致信息,并返回S109。在S109中,如果下一个一致信息也将i和j作为出现场所,则重复进行直至S113的处理,如果不是这样,则进至S114。
在从S114至S119的处理中,比较当前的评分currentscore和评分表的右、下、右下的评分,如果currentscore的一方大,则代入currentscore。
在S120中,判定j是否到达评分表的右端。如果没有到达右端,则在S121中使j增加1,返回到S108,重复进行直至S119的处理。如果到达右端,则进至S122。
在S122中,判定i是否到达评分表的下端。如果没有到达下端,则在S123中使i增加1,返回到S107,重复进行直至S120的处理。如果到达下端,则进至S124,将scoretable[X_index_num+1][Y_index_num+1]作为X和Y的相似度返回。
根据方案1所述的发明,在从输入的字符串切出的部分字符串中,选择与文件数据库内的文件的相似度计算有相关效果的某个字符串,可以求出相似度。即,可以限定检索上效率高的字符串来求相似度。
根据方案2所述的发明,可以适合两个字符串各自的顺序,并且着眼于共同的部分字符串来求相似度。即,求出考虑了字符串的出现顺序的相似度。
根据方案3所述的发明,以相似度计算上相关效果大的顺序来选择字符串,可以求出相似度。由此确定的相似度为更合适的值。
根据方案4所述的发明,不仅是将一致的部分字符串的加权进行相加的方法,而且可以组合其他的相似度计算方法。由此,检索精度进一步提高。
根据方案5所述的发明,在从输入的字符串切出的部分字符串中,选择与文件数据库内的文件的相似度计算有相关效果的某个字符串,可以实现限定检索上效率高的字符串来求出相似度的装置。
根据方案6所述的发明,可以实现适合两个字符串各自的顺序,并且着眼于共同的部分字符串来求相似度的装置。
根据方案7的发明,可以提供一种程序,在从输入的字符串切出的部分字符串中,选择与文件数据库内的文件的相似度计算有相关效果的某个字符串,限定检索上效率高的字符串来求相似度。
根据方案8所述的发明,提供一种程序,可以适合两个字符串各自的顺序,并且着眼于共同的部分字符串来求出考虑了字符串的出现顺序的相似度。
根据方案9所述的发明,可以在各种计算机上实现上述效果。
下面,说明有关第1和第2实施例的检索性能。进行确认选择从输入字符串切出的部分字符串的效果和在部分字符串的选择基准上使用tf取代df的效果的评价实验。
在选择基准上使用tf、df时的选择的部分字符串的数目和检索精度的关系示于图12,选择的部分字符串的数目和检索时间的关系示于图13。就检索精度来说,使用被称为11pt平均精度的值。11pt平均精度是对于再现率(0~1)按0.1刻度分配1~11点,将各个值进行平均后的评价指数,有关细节披露于“G Salton and M.J MacGill,Introduction to Modern Information Retrieval,p174-181,MacGraw-Hill Book Co.,New York,1983.”。
从输入的字符串切出的部分字符串的长度仅为2、即bigram。此外,图7的S87使用的参数LB和UB分别为LB=0、UB=idf。使用的文件数据是被称为NTCIR1测试集合的有代表性的相似信息检索用测试数据,包含约3000000件文件和53件检索文章。
图12、图13的横轴都表示选择的部分字符串的数目、即SubStringLimit的值,图12的纵轴表示检索精度,图13的纵轴表示对53件检索文章进行检索所需的时间。
观察图12,在tf、df的SubStringLimit的值都小时,可以确认通过使SubStringLimit增加可提高检索精度,但如果增大到某个程度,即使SubStringLimit的值增加,检索精度也不大变化。这是因为如果将SubStringLimit设定为适当的值,则进行部分字符串的选择,也可以抑制检索精度的下降。此外,如果比较tf和df,可确认以df作为基准的选择的检索精度上升,但如果SubStringLimit的值增大到某个程度,可以确认,即使是以tf作为基准进行选择,也具有与df时大致同等的检索精度。
观察图13,tf、df随着SubStringLimit的值减少检索时间都缩短,可以确认基于选择部分字符串的高速化效果。此外,如果进行tf和df的比较,则可确认使用tf的检索时间小,SubStringLimit的值越小,其差别越大。假设将SubStringLimit的值设定为tf、df都表示检索精度高的值,即设定为SubStringLimit=22,则这时的检索时间是tf为264.6秒,df为367.1秒,tf约快1.4倍。于是,根据本发明,可以提高检索时间。
下面,说明在图3的S16的相似度计算中,采用第3和第4实施例方法时的检索性能。在相似度的计算方法中,进行图6的使用基于加法的方法和图10、图11的使用基于DP方法的检索精度的比较。其结果示于图14。就检索精度来说,使用11pt平均精度。从输入的字符串切出的部分字符串的长度仅为2、即bigram。此外,图7的S87使用的参数LB和UB分别为LB=0、UB=idf。使用的文件数据为NTCIR1测试集合。
在图14的横轴上表示选择出的部分字符串的数目、即SubStringLimit的值,在纵轴上表示检索精度。观察图14,在SubStringLimit为15以下时,检索精度上没有大的差,但在超过15时,使用DP方法与基于加法的方法相比,可确认检索精度上升。此外,测定检索时间时,可确认基于DP的方法与基于加法的方法相比需要约2倍的检索时间,与基于现有的DP方法相比速度提高几十倍。
于是,根据本发明,对于收集的一致信息可采用DP,与基于加法的方法相比可提高检索精度,与现有的基于DP方法相比可以高速地计算相似度。

Claims (5)

1.一种字符串相似度计算方法,计算两个字符串的相似度,其特征在于,在从第1字符串中切出的部分字符串中,对根据相似度计算所对应的效果选择的部分字符串,收集与第2字符串的一致信息,由所述一致信息来计算一致的部分字符串的加权,根据所述加权来计算相似度,其中
所述一致信息包含部分字符串的长度、第1字符串中的部分字符串的出现场所、第2字符串中的部分字符串的出现场所、表示与第2字符串内第几号码一致的序列号码。
2.如权利要求1所述的字符串相似度计算方法,其特征在于,从所述一致信息中包含的部分字符串中,根据适合第1和第2字符串中出现的顺序的部分字符串的加权来计算相似度。
3.如权利要求1或2所述的字符串相似度计算方法,其特征在于,加入从第1字符串中切出的部分字符串出现在第2字符串中的次数来进行所述部分字符串的选择。
4.一种字符串相似度计算装置,计算两个字符串的相似度,其特征在于,该字符串相似度计算装置包括:部分字符串选择部,在从第1字符串中切出的部分字符串中,根据相似度计算所对应的效果来进行选择;一致信息收集部,在从第1字符串中切出的部分字符串中,对根据相似度计算所对应的效果选择的部分字符串,收集该部分字符串与第2字符串的一致信息;以及相似度计算部,根据所述一致信息来计算一致的部分字符串的加权,通过将所述加权进行总和来计算相似度,其中
所述一致信息包含部分字符串的长度、第1字符串中的部分字符串的出现场所、第2字符串中的部分字符串的出现场所、表示与第2字符串内第几号码一致的序列号码。
5.如权利要求4所述的字符串相似度计算装置,其特征在于,该字符串相似度计算装置还包括合适部分字符串选择部件,从所述一致信息中包含的部分字符串中,选择在各个字符串中出现的顺序合适的部分字符串,并且所述相似度计算部将所述合适部分字符串附加的加权进行总和。
CN 02159822 2002-01-22 2002-12-27 字符串相似度计算方法和装置 Expired - Lifetime CN1230770C (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP012259/02 2002-01-22
JP012259/2002 2002-01-22
JP2002012259A JP4065695B2 (ja) 2001-01-24 2002-01-22 文字列類似度算出装置、文字列類似度算出プログラム、それを記録したコンピュータ読み取り可能な記録媒体および文字列類似度算出方法

Publications (2)

Publication Number Publication Date
CN1434400A CN1434400A (zh) 2003-08-06
CN1230770C true CN1230770C (zh) 2005-12-07

Family

ID=27649504

Family Applications (1)

Application Number Title Priority Date Filing Date
CN 02159822 Expired - Lifetime CN1230770C (zh) 2002-01-22 2002-12-27 字符串相似度计算方法和装置

Country Status (1)

Country Link
CN (1) CN1230770C (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101561813B (zh) * 2009-05-27 2010-09-29 东北大学 一种Web环境下的字符串相似度的分析方法
CN102184169B (zh) * 2011-04-20 2013-06-19 北京百度网讯科技有限公司 用于确定字符串信息间相似度信息的方法、装置和设备
CN102298618B (zh) * 2011-08-03 2013-05-29 百度在线网络技术(北京)有限公司 一种获取匹配度以执行相应操作的方法、装置及设备
CN104484391B (zh) * 2014-12-11 2017-11-21 北京国双科技有限公司 字符串相似度的计算方法和装置

Also Published As

Publication number Publication date
CN1434400A (zh) 2003-08-06

Similar Documents

Publication Publication Date Title
CN1158627C (zh) 用于字符识别的方法和装置
CN1113305C (zh) 语言处理装置和方法
CN1894688A (zh) 对译判断装置、方法及程序
CN1489089A (zh) 文件检索系统和问题回答系统
CN1198225C (zh) 关键字提取系统及采用该系统的文本检索系统
CN1168068C (zh) 语音合成系统与语音合成方法
CN1439979A (zh) 解决方案数据编辑处理及自动概括处理装置和方法
CN1286776A (zh) 文件处理装置与记录媒体
CN1975857A (zh) 会话控制装置
CN1975858A (zh) 会话控制装置
CN1924858A (zh) 一种获取新词的方法、装置以及一种输入法系统
CN1731398A (zh) 信息处理装置、文档检索方法
CN1172994A (zh) 文件检索系统
CN1530926A (zh) 语音识别词典制作装置及信息检索装置
CN1841366A (zh) 用于通过执行翻译来支持交流的交流支持设备和方法
CN1319836A (zh) 转换表达方式的方法和装置
CN101069184A (zh) 信息处理装置和方法、及程序
CN1667609A (zh) 文档信息管理系统和文档信息管理方法
CN1801135A (zh) 音乐内容再现装置、其方法和记录装置
CN1777888A (zh) 基于移动结构概念的句子结构分析及使用其的自然语言搜索
CN1239793A (zh) 基于字符分类检索字符串的装置和方法
CN1622195A (zh) 语音合成方法和语音合成系统
CN1846210A (zh) 利用本体存储并检索数据的方法及装置
CN1871563A (zh) 加工信息产生装置、程序和加工信息产生方法
CN1858786A (zh) 一种电子文档格式化批注系统与方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CX01 Expiry of patent term
CX01 Expiry of patent term

Granted publication date: 20051207