CN101248433A - 具有签名产生及关联性检测的匹配引擎 - Google Patents

具有签名产生及关联性检测的匹配引擎 Download PDF

Info

Publication number
CN101248433A
CN101248433A CNA2006800227288A CN200680022728A CN101248433A CN 101248433 A CN101248433 A CN 101248433A CN A2006800227288 A CNA2006800227288 A CN A2006800227288A CN 200680022728 A CN200680022728 A CN 200680022728A CN 101248433 A CN101248433 A CN 101248433A
Authority
CN
China
Prior art keywords
document
character
token
signature
text
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
CNA2006800227288A
Other languages
English (en)
Other versions
CN101248433B (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.)
Trend Micro mountain Co.
Trend Polytron Technologies Inc. (Japan)
Trend Micro Inc
Original Assignee
DGATE TECHNOLOGIES Inc
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 US11/361,340 external-priority patent/US7516130B2/en
Priority claimed from US11/361,447 external-priority patent/US7747642B2/en
Application filed by DGATE TECHNOLOGIES Inc filed Critical DGATE TECHNOLOGIES Inc
Publication of CN101248433A publication Critical patent/CN101248433A/zh
Application granted granted Critical
Publication of CN101248433B publication Critical patent/CN101248433B/zh
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/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/31Indexing; Data structures therefor; Storage structures
    • G06F16/313Selection or weighting of terms for indexing

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

一种系统及方法产生至少一个与文档相关联的签名。在一个实施例中,接收由文本组成的文档且对所述文档进行语法分析以产生权标组。所述权标组包括多个权标。每一权标对应于所述文档中由预定义字符特征分离的文本。基于所述文档中所述文本的频率及分布计算所述权标组中的每一权标的得分。然后,基于所述计算的得分排列每一权标。选择一子组的所述排列权标及针对所述选择的权标的每一次出现而产生签名。然后,输出签名的选择列表。

Description

具有签名产生及关联性检测的匹配引擎
相关申请案交叉参考
本申请案主张2005年5月9日申请的题为″Matching Engine for QueryingRelevant Documents with Signature Generation and Relevance Detection of TextDocuments″的美国临时专利申请案第60/679,314号、2006年2月24日申请的题为″Matching Engine With Signature Generation″的美国实用型专利申请案第11/361,340号及2006年2月24日申请的题为″Matching Engine For QueryingRelevant Documents″的美国实用型专利申请案第11/361,447号的权益,所述专利全文以引入方式并入本文中。
技术领域
一般来说,本发明涉及搜索引擎技术领域,且更具体来说,涉及用从文档储存库查询关联文档的企业搜索引擎领域。
背景技术
一般来说,企业搜索引擎是用既定查询语句搜索关联文档的软件系统。所述企业搜索引擎通常由浏览器、索引器、搜索器及查询引擎组成。所述浏览器从预指派位置聚集文档且将其转储到文件储存库中。所述索引器从所述文档储存库读取文档,从所述文档创建索引,且将所述索引存储于索引数据库中。所述搜索器响应于具体查询而搜索所述索引数据库且返回关联文档(称为“命中”)的列表。所述查询引擎分析由用户所提供的查询表达式且将查询命令发送到搜索器以供处理。
常规搜索引擎技术不足以针对许多查询问题来搜索关联文档。举例来说,设想有一种其中假定以某一预定百分值(例如,X%)测量两个文档的关联性的问题。给定输入文件及百分值X%,则进行从所述文档储存库的关联文档搜索以使所述输入文档与任一返回文档之间的关联性必须大于X%。
所述常规搜索引擎对上述查询问题的直接应用导致数个缺点,例如,缺少文档关联性的精确及有效测量。此外,常规系统返回较大列表的文档,其中大多数完全没有关联。因而,检索的精确率低。返回较大列表的文档是所有常规搜索引擎技术的共同的问题,这是因为通过关键术语所提供的查询不能精确地描述用户正试图检索的文档。
在返回大量不相关文档的同时,常规搜索引擎的另一个问题是其依赖于语言。对于每一种书面语言,常规搜索引擎必须实施不同的语言语法分析程序及分析器。这导致大量使用资源且通常效率不高。
常规搜索引擎的再一个问题是其通过常常不准确或为高计算密集的模型测量文档的关联性。这些不准确且资源密集模型的实例包括术语向量空间模型、概率模型、潜在语义空间模型及诸如此类。
因此,需要修改及改进常规搜索引擎体系结构以有效地执行查询以返回具有高关联程度的文档的系统及方法。
发明内容
在一个实施例中,搜索引擎可经配置以通用应用及使用与文档相关联的签名而有效地执行查询以返回具有高关联程度的文档。与其他机构(例如,关键词)相比所述签名允许文档的更好表征。此外,签名在关联文档之间具有稳定性以使两个关联文档应具有某些共同签名。共同签名的数量可取决于关联程度。此外,签名在文档之间是唯一的以使两个不相关文档不拥有相同的签名。这些因素提供更稳健的环境及机构来进行搜索。
在一个实施例中,一种系统(及一种方法)经配置以产生至少一个与文档相关联的签名。所述系统接收包括文本的文档。所述文档经语法分析以产生权标组。所述权标组包括两个或更多个权标。每一权标对应于所述文档中的由预定义字符特征所分离的文本。预定义字符特征的实例包括定界符、小写体、及停止词。在另一个实例中,可通过词根操作识别预定义字符特征。
所述系统基于所述文本在所述文档中的频率及分布计算每一权标在所述权标组中的得分。基于计算出的得分,所述系统排列所述权标组中的每一权标。从所述经排列权标,所述系统选择所述子组的排列权标。举例来说,所述系统可经配置以选择最前面的N个经排列权标,其中N为小于经排列权标的总数量的任一整数。一旦选择了所述经排列权标,所述系统产生用于所述选定的权标的每一出现签名。所述系统(例如)通过对所述签名进行分类且选择最初的M个签名来选择一子组产生的签名,其中M为小于所产生的签名的总数量的任一整数。所述过程然后输出产生的签名的列表。
签名系统(及方法)的另一实施例提供用于使用UTF-8(8位单一码变换格式)编码的文档的额外灵活性。在一个实施例中,一种系统(及方法)经配置以产生与文档相关联的至少一个签名。特定来说,所述系统接收包括两个或更多个字符的文档。所述文档经规范化以从所述两个或更多个字符移除无信息字符。所述无信息字符的实例包括额外空格或控制字符。
所述系统基于在所述文档中的出现频率及分布计算所述多个字符中的每一信息字符的得分。基于计算出的得分排列所述多个字符中的每一信息字符。根据所述排列,所述系统选择字符出现且针对每一选择的字符出现而产生签名。然后,可输出一个或多个产生的符号的列表。
如前文所提到,签名的产生提供许多益处及优点。举例来说,在搜索引擎签名的情况下可用于有效地执行查询以返回具有高关联程度的文档。如所提及,所述签名允许文档的更好表征。此外,签名在关联文件之间具有稳定性以使两个关联文件应具有某些共同签名。共同签名的数量可取决于关联程度。此外,签名在文档中是唯一的以使两个不相关文档不拥有相同签名。两个关联文档之间的共同签名使搜索引擎能够针对输入文档返回所述关联文档。输入文档的签名的唯一性使如本文所述所配置的搜索引擎能够不返回不相关文档,且相反地,返回高度关联文档。
在一个实施例中,搜索引擎可经配置以有效地执行查询以返回具有高关联程度的文档。根据本文的揭示内容所配置的关联性检测引擎基于预定义程度的文档关联性计算既定文档与一列其他文档之间的关联性(或相似性)。
在另一个实施例中,一种系统(及方法)经配置以接收包括文本的初始文档。此外,所述接收文档的列表,其也包括文档。所述列的文档用于匹配所述初始(或既定)文档。所述系统还可接收对应于所查找关联程度的呈百分比形式的预定值。举例来说,所述系统可查找具有至少X%(例如,95%)关联性的文档,以便从最终结果过滤出低于X%(例如,95%)关联性的文档。
所述系统接收最小子串匹配长度且规范化所述列的文档中的文档的文本。在一个实施例中,所述系统在开始其搜索之前对所述初始文档的文本进行分类,且还可在开始其搜索之前产生所述初始文档的所述文本的子串的散列值。当所述系统确实启动搜索时,其搜索所述初始文档的所述文本与所述列的文档中的每一文档的文本之间的共同子串。然后,其基于所述搜索共同子串计算匹配百分比。在一个实施例中,所述系统经配置以基于相似性函数计算匹配百分比。然后,所述系统输出具有对应于预定值(其对应于最初所定义的关联程度)文档。
所述关联性检测引擎有利地经配置以确定呈百分比度量形式的文档关联性。所述配置经构造以便可通过百分比阈值过滤出命中中所包括的不相关文档。此增加搜索引擎利用且提供具有更高认可程度的结果。
在一个实施例中,所述关联性检测引擎经有利地构造以提供文档过滤器。其基于文档关联性的定义计算既定文档与一列其他文档之间的关联性(或相似性)。所述关联性以百分比形式给出。针对既定阈值X%,所述引擎过滤出所述列中具有小于X%关联性的文档。
本说明书中所描述的特征和优点并不是包括一切的,而且特别地,所属技术领域的一般技术人员根据附图、本说明书及权利要求书,将易知许多其他的特征和优点。而且,应注意,本说明书中所使用的语言原则上是出于易读性和指导性目的而选取,而非是为限定或限制发明的主题而选取。
附图说明
所揭示实施例具有其他优点及特征,结合附图阅读下文详细说明及随附权利要求书将更容易得知这些其他优点及特征,附图中:
图1图解搜索引擎的常规体系结构的一个实施例。
图2图解根据本发明的匹配引擎的体系结构的一个实施例。
图3图解根据本发明的签名产生过程的第一实施例。
图4图解根据本发明的签名产生过程的第二实施例。
图5图解根据本发明的关联性检测过程的第一实施例。
图6图解根据本发明的关联性检测过程的第二实施例。
具体实施方式
现在将详细参考各个实施例,所述实施例的实例在附图中加以图解说明。应注意,在任何可行之处各附图中可使用相同或相似的参考编号且可指示相同或相似的功能性。图式仅出于说明目的而描绘本发明的各实施例。依据以下论述,所属领域的技术人员将易知,在不背离本文所述的原理的前提下,还可采用本文中所图解说明的结构及方法的替代实施例。
一般来说,所揭示实施例阐述了一种用以产生至少一个与文档相关联的签名的系统及方法。所述签名用于获得(例如)企业计算系统中的搜索查询的关联结果。在一个实施例中,接收及语法分析包含文本的文档以产生权标组。所述权标组包括多个权标。每一权标对应于所述文档中的由预定义字符特征所分离的文本。基于所述文本在所述文档中的频率及分布针对所述权标组中的每一权标计算得分。然后,基于所计算得分排列每一权标。选择所述子组的排列权标且针对选择的权标的每一出现而产生签名。然后输出签名的选择的列表。本文将进一步阐述所述系统及过程。
首先参考图1,其图解搜索引擎100的常规体系结构的一个实施例。常规体系结构100包括存储于文档储存库110中的一个或多个文档105(a-n)。然后,通过搜索引擎120将所述文档编入索引,且将经索引文档122存储于索引数据库124中。
随后,查找信息的用户150将组合查询130以在搜索引擎120中搜索文档126。依据索引数据库124中的经索引文档122进行搜索。当发现对应于所述查询的匹配时,所述搜索引擎返回关联的经索引文档作为提供给用户150的搜索结果。
此过程虽然有超过常规劳动密集搜索操作的改进但仍具有局限性。所述经索引文档未必是与所述查询的内容相关的。因此,对关于全国足球联赛得分的文档的搜索可能返回关于英国足球(英式足球)而非美式橄榄球联赛的结果。
图2图解根据本发明的匹配引擎的体系结构的一个实施例。在一个实施例中,将一个或多个文档资源205(a-n)收集(或存储)在文档储存库210中。一般来说,所述体系结构经构造以预处理来自所述文档的权标,选择最具信息权标及基于所述信息权标产生与所述文档相关联的签名。所述体系结构还经配置以保证关于输入文档内容所产生签名的唯一性。所述体系结构进一步经配置以限制所收集签名的数量,同时跨越保持相同文档的各个版本的收集的稳定性。应注意,在一个实施例中,所述签名为值,例如,对应于依据选定的权标的特定信息或ASCII字符串的散列表示。
现在参照关于所述体系结构的过程的实施例,首先请注意,可手动地或通过使用浏览器搜集文档205。举例来说,浏览器可经配置以访问所有指派的文档源以收集文档,向所收集的每一文档指派唯一文档标识符(ID),且然后将所述唯一文档ID及文档置于文档储存库210中。
其后,签名产生器215产生来自文档储存库210中特定文档的签名的列表。签名为由表示文档的唯一信息所作出的串或值。对于所述文档来说,这种代表信息是唯一的且在所述文档适度改变时是稳定的。签名产生器215可经配置以存储一个或多个签名产生过程。签名产生器215可进一步经配置以基于将要处理的文档的类型选择及执行所存储的过程中的一者。举例来说,签名产生过程的一个实施例经调适(配置)以供用于英语文档(例如,呈ASCII代码),且将关于图3进一步阐述所述实施例。所述过程还可应用于可使用小写体、停止词及词根操作的其他语音,例如,罗曼及拉丁语。签名产生过程的另一个实施例经调适以供用于以UTF-8(单一码变换格式)编码的单一码所支持的任一语言的文档,且将关于图4进一步阐述所述实施例。
一旦签名产生器215产生了所述特定文档的签名,则索引器222将所述具有唯一文档标识符(ID)及由签名产生器215产生的签名的文档编入索引。结果为存储在搜索引擎220的索引数据库224中的经索引文档(由索引222)。
对于搜索引擎220的索引数据库224中的经索引文档来说,所述文档已准备好供查询。用户250使用查询写入器230以组合基于由签名产生器215签名的查询表达式。请注意,由用户250所提供的所述输入文档提供查询输入。用户250不需要知道所述签名是什么,相反,用户250仅需要知道输入文档是什么。用户250将所述输入文档传送到签名产生器215。从签名产生器215所输出的签名被传送到查询写入器230以供查询组合。然后,将所组合查询传送到搜索器226(搜索机构)以供搜索文档。
搜索引擎220中的搜索器226使用通过查询写入器230所提供的查询搜索索引数据库224。所述搜索器向关联性检测引擎240返回可能相关文档226(“命中”)的列表。关联性检测引擎240计算所述输入文档与所述命中之间的关联性(例如,呈百分比形式)。关联性检测引擎240经配置以包括一个或多个用于关联性计算(或分析)的过程。将关于图5进一步阐述关联性检测过程的第一实施例。将关于图6进一步阐述关联性检测过程的第二实施例。请注意,关联性检测引擎240可选择及/或实施所述过程中的任一者。举例来说,对小文档来说,可采用所述关联性检测过程的第一实施例,且对于大文档(例如,在大小上大于10MB)来说,可采用所述关联性检测过程的第二实施例。
所述匹配引擎体系结构有利地提供唯一配置。举例来说,查询经构造以便用于既定文档D及百分比X%,其从文档储存库搜索一列文档{D1、...、Dn}以使D与{D1、...、Dn}中的所有文档之间的关联性大于X%。
签名产生
图3图解根据本发明的签名产生过程的第一实施例。这一实施例图解从以ASCII代码所编码的英语文档产生签名。所述过程开始于输入305所述文档。所述过程语法分析310所述文档以产生(或创建)一个或多个权标的初始列表(权标列表)。在一个实施例中,权标包括所述文档中的由预定义字符特征所分离的文本。预定义字符特征的实例包括定界符。一旦分离了权标,则可应用诸如词根操作、停止词或小写体分析等功能。
所述过程继续所述权标列表中的每一权标的小写体化315。小写体化315是将权标的每一字母转换为小写体字符的功能。所过程还对所述权标列表的每一权标进行词根操作320。请注意,词根操作是从一个词识别或抽取核心词根的过程。接下来,所述过程将停止词列表应用325于所述列表的每一权标以订出新的第一权标列表(L1)。所述停止词是被认为不携载信息的词。停止词的实例包括′the′、′are′、′do′、′am′及诸如此类。此外,所述过程对停止词列表中的每一成员进行词根操作。
所述过程选择(或挑选)330所述第一新权标列表(L1)中的每一唯一权标以形成第二权标列表(L2)。对于第二权标列表L2中的每一权标,所述过程标记335其在第一权标列表L1中出现的位置以产生集合:
L1={t1,t2,....,tn}
L2={T1,T2,....,Tm},
其中指示Ti~<P(i,1)、P(i,2)、...、P(i,Sj)>以标记所述出现位置,且其中i=1、...、m且其中S1+S2+...+Sm=n。
然后,所述过程计算(或产生)340第二权标列表L2中每一权标的排列得分。所述得分可由下式确定:
Score(Tj)=[P(j,Sj)-P(j,1)]*Sj*Weight(Tj)/Sqrt(Dj),
其中Dj=[P(j,2)-P(j,1)]2+[P(j,3)-P(j,2)]2....+[P(j,Sj)-P(j,Sj-1)]2
此外,得分函数通过所述频率且还通过权标的所指派的权重测量所述权标在所述文本中的重要性。请注意,Weight()可以是预定义函数。在一个实施例中,其值为′1′,然而在替代实施例中如果所述权标含有特殊字符′-′、′_′及′@′,则其值可以是某些预指派数字,例如,6.8。所述得分函数可通过Sj*Weight(Tj)确定。所述得分函数可用于在所述文档中均匀地分布权重以获得更好的得分。此通过[P(j,Sj)-P(j,1)]/Sqrt(Dj)确定。
其后,所述过程通过计算出的得分对第二权标列表L2进行分类345且然后按照得分同所述列表(L2)选择(或挑选)350最前面的N个权标。请注意,N可以是任何整数,且可预定于所述系统中或可选择作为所述系统的输入。按照得分来自第二权重列表L2的最前面的N个权重创建第三权重列表L3。针对第三权重列表L3中的每一权重Tj,根据其在L1中的出现及相邻权重产生355签名。这一过程还可表示为:
针对每一k∈{P(j,1)、P(j,2)、...、P(j,Si)},挑选表L1中其相邻2d的权重且将其连接在一起以形成串,也就是tk-d+...+tk-i+tk+tk+i+...+tk+d
编码此串以给出签名Fj,k
针对第三权标列表L3中的每一Tj,所述过程对列表{Fj,1、Fj,2、...Fj,Sj}进行分类且从所分类列表选择360最前面的M个签名。请注意,M可以是任何整数且可预定义于所述系统中或可选择作为所述系统的输入。其后,针对第三权标列表L3中的所有成员,聚集(或收集)365总共(N*M)个选定的签名。然后,所述过程输出370签名收集。
图4图解根据本发明的签名产生过程的第二实施例。所述第二实施例包括输入405(例如)呈明文UTF-8格式(通用变换格式)的任一语言的文本文档及我们视为具有信息的UTF-8字符字母中的字符列表的过程。此外,其他输入可包括对应于具有最高排列得分的字符的数量的某一数字M及对应于每一字符的最大签名数量的某一数字N。其可选输入可包括常量整数CHAR_NEIGHBOR,其可具有预定义值(例如,30)。此常量整数定义将用于产生签名的文本串中字符的相邻字符的大小。另一输入为选择率R,其具有介于0与1之间的预定义范围(例如,0.20)。所述选择率是用于从集合中选择子组的数量。再一个输入可以是空签名列表S。
所述过程通过扫描所述文档而规范化410所述文档以移除无信息的字符。无信息的字符是无助于所述文本内容的UTF-8字符。其可提供诸如格式化的其他用途。举例来说,如果串具有n个连续空格,则n-1个空格被视为无信息的。无信息字符的其他实例包括控制(CTRL)字符及回车。
所述过程扫描415所述经规范化文档以记录UTF-8字符字母中每一字符(c)的出现。所述出现的位置表示为P(1,c)、P(2,c)、...、P(n,c)。所述过程使用下式计算(或产生)字符c的排列得分:
Score(c)=Sqrt(n)*[P(n,c)-P(1,c)]/Sqrt(D)
其中[(P(2,c)-P(1,c)]2+[(P(3,c)-P(2,c)]2+...+[(P(n,c)-P(n-1,c)]2。所述得分函数通过字符的频率测量其在所述文本中的重要性。所述得分函数还保证所述字符均匀地分布在所述文档中以获得更好的得分。为实现此目的的计算包括:
[P(n,c)-P(1,c)]/Sqrt(D).
所述继续通过得分对所述字符字母分类420且然后选择(或挑选)425具有最高得分的M个字符。这一所产生列表可表示为字符列表L。请注意,如先前所述,M可以是任一整数且可预定义于所述系统中或可选择作为所述系统的输入。
针对字符列表L中的每一字符c,所述过程计算在字符c的每一出现p处字符c的相邻字符。特定来说,所述过程通过获取其左及右字符且将所有编码位连接在一起以形成整数v而取值。这一相邻值v及出现p组成二元组(v,p)。其后,所述过程将为1的值指派到变量j。变量j是列表L的枚举。通过使用j,可一个接一个地处理L的成员。在所图解过程中,此结构用于实现“每一个”的概念且递增增加。依次地,此形成440字符列表L中每一字符c的二元组列表L1(c)。所述列表L1(c)的大小可表示为N(c)。针对每一列表L1(c),所述过程计数每一相邻-值v在所述列表中的重复m以形成445三元组(m,v,p)的列表L2(c)。第二列表L2(c)的大小也可表示为N(c)。通过(m,v)对每一列表L2(c)进行分类,其中m是第一比较参数且v是第二比较参数。
所述过程从第二经分类列表L2(c)选择(或挑选)455最前面的K(c)个三元组,其中K(c)<R*N(c)。此形成第三列表L3(c)。针对第三列表L3(c)的每一三元组(m,v,p),所述过程通过散列函数(hash(p))计算460其散列值,所述散列函数用围绕出现位置p的相邻字符产生散列值。可应用的散列函数的实例可以是常规Karp-Rabin散列函数。相邻字符的数量由CHAR_NEIGHBOR确定。所述过程通过散列值对第三列表L3(c)进行分类465,且从经分类列表L3(c)的顶上选择(挑选)470上至N个三元组以形成第四列表L4(c)。请注意,如先前所提及,N可以是任一整数且可预定义于所述系统中或可选择作为所述系统的输入。针对L4(c)中的每一三元组(m,v,p),所述过程使用围绕出现位置p的字符产生475签名且将其添加到签名列表S。然后,所述过程输出485签名列表S。请注意,所述过程是迭代的,且因此针对列表L中的所有字符c进行迭代。
所述签名产生器是在组合查询时有利地替代关键词的角色的唯一配置。所述签名产生器是有效的,这是因为其降低了命中的大小。这提高了所述匹配引擎的性能。而且,所述签名产生器改进了所述匹配引擎的搜索精确率。此外,所述签名产生器可经构造以是不依赖于语言的,因而扩展了可供搜索的文档的范围。
总的来说,签名以可比常规关键词更有用的方式在搜索引擎中扮演特殊角色。以如上文所述方式从文档抽象出签名以表征/代表文档比关键词更好。因此,与关键词相比其与文档更相关。请注意,签名可不同于关键词,这是因为签名大大地与文件相关而关键词未必如此,两不相关文档不共享任何签名,然而其可拥有相同的单个关键词且与关键词相比签名实现了更好的搜索精确率。
关联性检测
根据本发明的系统还可包括关联性检测的可能。关于关联性检测,每一文档可视为字符字母的一串字符(ASCII、单一码等)。因而,两个文档的关联性大大地与两个串的相似性有关。存在用以定义两个串的相似性的常规方法。一种方法是获取两个串的最大共同子序列。第二种方法是抽取两个串的最大共同子串。然而,这两种方法均具有常常使其不适用的局限性。所述最大共同串方法不包括其他较小共同子串,且因此不精确。最大共同子序列方法不能处理内容交换,且因此也是不精确的。
根据本发明的第三种方法以串相似性开始。举例来说,设想两个串str1及str2及所述第二串str2的子串的列表S。所述列表满足如下条件:S中的所有成员不重复,S中每一成员的长度应大于最小值M,且S的每一成员还应是str1的子串。请注意,M可以是任一整数,且可预定于所述系统中或可选择作为所述系统的输入。
针对满足所提及三个条件的子串的所有集合,S获得所有子串长度的最大总和。应用函数SIM以测量str2对str1的相似性。所述函数可定义为:
SIM(str2,str1)=(S中所有子串的长度的总和)/(str2的长度)*100%
应知道,函数SIM不具有对称性,也就是SIM(str2,str1)≠SIM(str1,str2)。举例来说,设想str1=″AAAAACCCCCCCCBBBBBBDDDDDDAAAAAALLLLLLL″且str2=″CCCCCCCCCZZZZZAAAAAAABBBBTTTTLLL″。则所需的最小子串长度可以设定为(例如)M=4。则S={″AAAAAA″、″CCCCCCCC″、″BBBB″}str2的子串需要计算相似性:
SIM(str2,str1)=18/27=67%.
上述实例图解两个串的相似性的一个实施例,其实际上由在每一副本的最小大小需要的情况下从str1到str2的子串副本定义。在文本文档中,存在许多未必有助于文档内容的字符。举例来说,额外空格及不可见字符是完全无信息的。因此,在应用函数SIM之前首先从所述文档移除所述无用字符。这一过程可称为串规范化。举例来说,串″There are some uselesscharacters in this sentence!″可规范化为″There are some useless charactersin this sentence!″。在此实例中,在原始句子中的词之间存在不需要的(或无用的)空格且在规范化之后词之间仅存在一个空格。
除上述情况之外,设想下述实例给定两个呈明文ASCII或UTF-8格式的文本文档doc1及doc2。最初,文档doc1经规范化变成串str1且文档doc2经规范化变成串str2。doc2对doc1的关联性由SIM(str2,str1)定义,其可表示为RLVN(doc2,doc1)。在此实例中,函数RLVN不是对称性的。
其后,设想串后缀。给定n+1个字符的串X=x0x1...xn,其中最前面的n个字符包含所述实际串且xn=$是未定义于ASCII或UTF-8表中的唯一标记字符,开始于位置i的X的后缀表示为S(X,i),其中i=0、1、...、n。在此实例中,S(X,0)=X且S(X,n)=$,且串X具有n+1个后缀(或后缀串)。此外,对所述后缀串进行分类。串X具有n+1个后缀串。可通过任一装置将其词典编辑式地分类。后缀分类是所属技术领域的技术人员已知的常规算法问题。
考虑到上述概述,现在参照图5。图5图解根据本发明的关联性检测过程的第一实施例。所述过程开始于输入505初始文档(例如,称为doc)加上一个或多个额外文档,加上整数M。作为实例,额外文档的列表可以是将要匹配的文本文档的列表。所述额外文档可称为doc1(或doc_1)到docm(或doc_m),其中m是额外文档的数量,且M是对应于最小子串匹配长度的整数。请注意,如先前所述,M可以是任一整数且可预定义于所述信息中或可选择作为所述系统的输入。
所述过程规范化510所有所述文档(初始doc加上额外doc1到docn)以获得串str(str、str1(或str_1)到strm(str_m))。通过使用常规后缀分类算法,所述过程用矩阵IDX对str的后缀进行分类515以记录后缀串位置。请注意,在常规后缀分类算法中已知矩阵IDX。所述过程然后指派(或假设)520用以指派值的变量k(例如,指派k=1)。其还指派(假设)525为串str的长度的变量L、为strk的长度的变量Lk、变量P=0及SIMk=0。
其后,所述过程搜索535串str与S(strk,P)的最大匹配长度。特定来说,所述过程指派(假设)变量V=searchMaxMatchLen(IDX,0,L,str,L,S(strk,P),Lk-P),其中如进一步定义,searchMaxMatchLen()是递归函数以计算串str与S(strk,P)的最大匹配长度:
int searchMaxMatchLen(int IDX,int start,int end,char*str,int len,
char*str2,int len2){
int i,j;
if(end-start<2){
i=getMaxMatchSize(str+IDX[start],len-IDX[start],str2,len2);
j=getMaxMatchSize(str+IDX[end],len-IDX[end],str2,len2);
if(i>j)
   return i;
else
  return j;}
i=start+(end-start)/2;
if(strncmp(str+IDX[i],str2,minimum(len-IDX[i],len2))<0)
   return searchMaxMatchLen(IDX,i,end,str,len,str2,len2);
else
return searchMaxMatchLen(IDX,i,start,str,len,str2,len2);}
int getMaxMatchSize(char*str,int len,char*str2,int len2){
int i;
for(i=0;(i<len)&&(i<len2);i++)
if(str[i]!=str2[i])break;
return i;}
上文举例说明了用以搜索与另一串str2共享最长共同前缀子串的(串str的)后缀串的函数searchMaxMartchLen的实例。这一函数由二进制搜索实施。函数getMaxMatchSize用以获得两串之间的最长共同前缀。其后,所述过程确定540V>=M,则其指派550SIMk=SIMk+V/Lk,P=P+V。否则,如果所述过程确定540不满足条件V>=M,则所述过程递增545变量P以使P=P+1。如果所述过程然后确定555P<Lk,则所述过程回到搜索535串str与与S(strk,P)的最大匹配长度。
如果所述过程确定555不满足条件P<Lk,则所述过程确定560是否k<m。如果k<m,则所述过程以k=k+1来递增k且过程回到指派525变量L为串str的长度,变量Lk为strk的长度,变量P=0且SIMk=0。如果所述过程确定560不满足条件k<m,则所述过程输出565SIM1、...、SIMm的结果。
所述输出有利地以百分比提供输入文档与一列额外文档之间的相似性。举例来说,如上文所图解,给出x%及输入文档以找出所存储索引文档数据库中的文档。所述过程有利地通过签名产生器产生所述输入文档的签名。所述搜索器使用所述签名搜索所述索引数据库且返回一列文档(命中),其中的每一文档与所述输入文档共享至少一个共同签名。所述关联性检测过程计算所述输入文档与所述列表中的每一文档之间的相似性。将这些相似性输出为SIM1、...、SIMm。所述过程现在可选择满足SIMk>=x%的文档。这种逻辑还包含于所述匹配引擎体系结构中。
现在参照图6,其图解根据本发明的关联性检测过程的第二实施例。所述过程开始于输入605初始文档文档(称为doc)及一列将要与所述doc匹配的文本文档,加上整数M。请注意,如先前所述,M可以是任一整数且可预定于所述系统中或可选择作为所述系统的输入。
所述过程规范化doc、doc1、...、docm产生(或生成)串str、str1、...、strm。其后,所述过程指派615最初数值Q,其大于称为L的串str的大小。作为实例,为产生此实施例目的,假设Q=3*L/2。所述过程向具有链接能力的散列表指派阵列H及大小Q以解决散列值的冲突。对于既定变量,j=0到L-M,所述过程产生620散列值,h=HT_FUN(str,M),且将串位置、j存储于H[h]。或者,所述过程可将其存储在碰撞链接连接表中。散列函数HT_FUN用以计算串str的子串的散列值,所述子串开始于位置j且具有长度M。在一个实例性实施例中,可应用常规Karp-Rabin散列函数。
其后,指派625变量k,例如,k=1。此外,还指派为串strk长度的Lk的值、P=0及SIMk=0。所述过程计算640散列值以便h=HT_FUN(strk,P,M)。所述过程查找散列表条目H[h]且确定615H[h]是否为空。如果H[h]不为空,则对H[h]处的所述链接连接表的每一串位置s,所述过程指派变量V(s)=getMaxMatchSize(str+s,L-s,strk+P,Lk-P)以获得两个子串的最大匹配长度。所述过程然后指派V=maximum(V(s))。变量V表示(strk,P)的最大前缀串的长度且此前缀也是串str的子串。
如果所述过程确定660V>=M,则其指派670SIMk=SIMk+V/Lk,且P=P+V。如果其确定660V<M,则其指派665P=P+1。同样地,如果所述过程确定H[h]为空,则其将指派665P=P+1。在所述过程的这后两种方面的任一者中,下一步骤均为确定675是否P<Lk-M。如果P<Lk-M,则所述过程回到计算640散列值以使h=HT_FUN(strk,P,M)。然而,如果所述过程确定P不小于Lk-M,则其确定680是否k<m。如果k<m,则所述过程递增635k以使k=k+1且指派630Lk的值为串strk的长度、P=0及SIMk=0。如果k不小于m,则所述过程输出685SIM1、...、SIMm。如上文所述,所述输出有利地呈现输入文档与一列额外文档之间的呈百分比形式的相似性。
所述关联性检测引擎有利地经配置以确定呈百分比度量形式的文档关联性。所述配置经构造以便可通过百分值阈值过滤出命中中所包括的不相关文档。此增加搜索引擎利用且提供具有更高认可程度的结果。
在一个实施例中,所述关联性检测引擎有利地经构造以提供文档过滤器。其基于文档关联性的定义计算既定文档与一列其他文档之间的关联性(或相似性)。所述关联性以百分比形式给出。对于既定阈值X%,所述引擎过滤出所述列表中具有小于X%的关联性的文档。
总之,所揭示的匹配引擎包括许多独有的特征及优点。如上文所述的签名产生器及关联性检测引擎的应用各自独立地添加独有方面且添加于系统配置中。
此外,所述说明中所述的特征及优点向使用如本文实施例中所述的系统及方法的人提供有益的用途。举例来说,向用户提供机构,例如,如本文所述通过接收及/或传输控制信号以控制对特定信息的存取。此外,无论用以支持其功能的所有或部分组件(例如,服务器系统)相对于所述用户本地或远程定位均出现所述益处。
为提供对各实施例的透彻理解,上文已阐述了许多具体细节。然而,所属技术领域的技术人员应了解,不使用所述具体细节也可实施各个实施例。在其他情形中,未详细阐述众所周知的作业、组件及电路,以便不会使所述实施例变得不分明。应了解,本文所揭示的具体结构及功能细节可具有代表性但未必限定各实施例的范围。
各个实施例可使用一个或多个硬件元件实施。一般来说,硬件元件可以是指任何经布置以实施某些操作的硬件结构。举例来说,在一个实施例中,所述硬件元件可包括制造于底板上的任一模拟或数字电或电子元件。所述制造可使用基于硅的集成电路(IC)技术实施,例如(诸如)互补金属氧化物半导体(CMOS)、偶极及偶极CMOS(BiCMOS)技术。硬件元件的实例可包括处理器、微处理器、电路、电路元件(例如,晶体管、电阻器、电容器、感应器等等)、集成电路、专用集成电路(ASIC)、可编程逻辑装置(PLD)、数字信号处理器(DSP)、场可编程门阵列(FPGA)、逻辑门、寄存器、半导体装置、芯片、微芯片、芯片组等等。本发明的实施例在这方面并不受到限制。
各个实施例可使用一个或多个软件元件实施。一般来说,软件元件可以是指任一经布置以实施某些操作的软件结构。举例来说,在一个实施例中,所述软件元件可包括经调适以供硬件元件(例如,处理器)执行的程序指令及/或数据。程序指令可包括在执行时致使处理器实施对应的一组操作的经组织的一列命令,其包括以预定语法布置的词、值或符号。
所述软件可使用编程语言写成或编码。编程语言的实例包括C、C++、BASIC、Perl、Matlab、Pascal、Visual BASIC、JAVA、ActiveX、汇编语言、机器代码等等。所述软件可使用任一类型的计算机可读媒体或机器可读媒体存储。此外,所述软件可作为源代码或目标代码存储在所述媒体上。所述软件还可作为压缩及/或加密数据存储在所述媒体上。软件的实例可包括任一软件组件、程序、应用、计算机程序、应用程序、系统程序、机器程序、操作系统软件、中间件、固件、软件模块、例程、子例程、功能、方法、过程、软件接口、应用程序接口(API)、指令组、计算代码、计算机代码、代码段、计算机代码段、词、值、符号或其任一组合。本发明的实施例在这方面并不受到限制。
某些实施例可能使用措辞“耦接(coupled)”及“连接(connected)”以及其派生词来加以描述。应了解,这些用语并非旨在彼此同义。举例来说,某些实施例可使用用语“连接”来加以描述以表明所述两个或更多个元件彼此直接进行物理接触或电接触。在另一个实例中,某些实施例可使用用语“耦接”来加以描述以表明两个或更多个元件直接进行物理接触或电接触。然而,用语“耦接”还可意指两个或更多个元件并不彼此直接接触,但仍彼此相互协作或相互作用。本发明的实施例在这方面并不受到限制。
某些实施例可使用(例如)任一计算机可读媒体、机器可读媒体或能够存储软件的物品实施。所述媒体或物品可包括任一合适类型的存储器单元、存储器装置、存储器物品、存储器媒体、存储装置、存储物品、存储媒体及/或存储单元,例如上文关于存储器所述的实例中的任一者。所述媒体或物件可包含存储器、可拆卸或非可拆卸媒体、可擦或非可擦媒体、可写或可重写媒体、数字或模拟媒体、硬盘、软盘、可重写光盘(CD-RW)、光盘、磁性媒体、磁光媒体、可拆卸存储器卡或盘、各种类型的数字多功能光盘(DVD)、订户识别模块、磁带、盒式磁带或诸如此类。所述指令可包含任一适合类型的代码,例如源代码、目标代码、编译代码、解译代码、可执行码、静态代码、动态代码及诸如此类。所述指令可使用例如以下等任一适合的高阶编程语言、低阶编程语言、面向对象的编程语言、可视编程语言、编译及/或解译的编程语言来实施:C,C++,Java,BASIC,Perl,Matlab,Pascal,Visual BASIC,汇编语言,机器代码等等。本发明的实施例在这方面并不受到限制。
除另外具体指明外,应了解,例如“处理(processing)”、“计算(computing)”、“计算(calculating)”、“确定(determing)”等用语是指计算机或计算系统、或类似电子计算装置的作业及/或处理,其将所述计算系统的寄存器及/或存储器内表示为物理量(例如电子量)的数据调处及/或变换成所述计算系统的存储器、寄存器或其他此种信息存储、传输或显示装置内其他类似地表示为物理量的资料。本发明的实施例在这方面并不受到限制。
在本说明书中所提及的“一个实施例”或“实施例”意指结合所述实施例所述的特定器件、结构或特征包含于至少一个实施例中。说明书中的各个地方中所出现的措词“在一个实施例中”未必均指代同一个实施例。
本文所用词语“包含(comprises)”、“包含(comprising)”、“包括(includes)”、“包括(including)”、“具有(has)”、“具有(having)”或其任何其他变形词汇均意欲涵盖非排他性包含的内容。例如,包括一系列要素的过程、方法、物品或设备并非一定仅限于这些要素,而是可包含其他未明确列出的或这些过程、方法、物品或设备所固有的要素。此外,除非明确说明相反的情况,否则,“或”是指包含性“或”且非指排他性“或”。例如,条件A或B可通过下述任何一者得以满足:A为真(或存在)且B为假(或不存在)、A为假(或不存在)且B为真(或存在),以及A与B均为真(或存在)。
同样,“一个”或“一种”用于说明本发明的要素或构成部分。此举仅为方便的目的并用于说明本发明的要旨。除非所述描述明显指其他情形,否则,其应理解为包括一个或至少一个且所述单数形式还包括复数形式。
在阅读本揭示内容时,所属技术领域的技术人员应了解仍有其他替代结构及功能设计用于使匹配引擎查询关联文档的系统及过程,所述系统及过程可包括通过本文所揭示原理的签名产生及关联检测。因而,虽然已图解及阐述了特定实施例及应用,但应了解,本发明不限定于本文所揭示的精确结构及组件,且所属技术领域的技术人员可在不背离随附权利要求书中所定义的本发明的精神及范围的情况下对本文所揭示的方法及设备的布置、操作及细节做出各种修改、改变及变化。

Claims (38)

1、一种用于产生与文档相关联的多个签名的方法,所述方法包含:
接收包含文本的文档;
对所述文档进行语法分析以产生包含多个权标的权标组,每一权标对应于所述文档中由预定义字符特征所分离的所述文本;
基于所述文档中所述文本的频率及分布计算所述权标组中每一权标的得分;
基于所述计算的得分排列所述权标组中的每一权标;
从所述排列权标中选择一子组的排列权标;及
针对所述选择的权标的每一次出现而产生签名。
2、如权利要求1所述的方法,其中所述预定义字符特征包含定界符。
3、如权利要求1所述的方法,其中从所述排列权标中选择所述子组的排列权标进一步包含选择预定数量的排列在最前面的权标。
4、如权利要求1所述的方法,其中输出签名的选择列表进一步包含输出列表中预定数量的最前面的签名。
5、如权利要求1所述的方法,其中所述文档为ASCII文档。
6、如权利要求1所述的方法,其进一步包含输出所述产生的签名的列表。
7、一种用于产生与文档相关联的多个签名的方法,所述方法包含:
接收包含多个字符的文档;
规范化所述文档以从所述多个字符中移除无信息字符;
基于在所述文档中的出现频率及分布计算所述多个字符中的每一信息字符的得分;
基于所述计算的得分排列所述多个字符中的每一信息字符;
从所述排列信息字符中选择字符出现;及
针对每一选择的字符出现而产生签名。
8、如权利要求7所述的方法,其中选择字符出现进一步包含:
在每一字符出现周围散列字节以产生散列值;及
将所述散列值分类为预定义排列。
9、如权利要求7所述的方法,其中产生所述签名进一步包含使用围绕所述选择的字符出现的字符产生所述签名。
10、如权利要求7所述的方法,其中所述字符为UTF-8字符。
11、如权利要求10所述的方法,其中所述无信息字符包含来自由额外空格、控制字符或其组合组成的群组中的一者。
12、如权利要求7所述的方法,其进一步包含输出所述产生的签名的列表。
13、一种计算机可读媒体,其经构造以存储可由处理器执行的指令,所述指令在被执行时致使处理器:
接收包含文本的文档;
对所述文档进行语法分析以产生包含多个权标的权标组,每一权标对应于所述文档中由预定义字符特征所分离的所述文本;
基于所述文档中所述文本的频率及分布计算所述权标组中每一权标的得分;
基于所述计算的得分排列所述权标组中的每一权标;
从所述排列权标中选择一子组的排列权标;及
针对所述选择的权标的每一次出现而产生签名。
14、如权利要求13所述的计算机可读媒体,其中所述预定义字符特征包含定界符。
15、如权利要求13所述的计算机可读媒体,其中所述用以致使所述处理器从所述排列权标中选择所述子组的排列权标的指令进一步包含用以致使所述处理器选择预定数量的排列在最前面的权标的指令。
16、如权利要求13所述的计算机可读媒体,其中所述用以致使所述处理器输出签名的所述选择列表的指令进一步包含用以致使所述处理器输出列表中预定数量的最前面签名的指令。
17、如权利要求13所述的计算机可读媒体,其中所述文档为ASCII文档。
18、如权利要求13所述的计算机可读媒体,其中所述指令在由所述处理器执行时进一步致使所述处理器输出所述产生的签名的列表。
19、一种计算机可读媒体,其经构造以存储可由处理器执行的指令,所述指令在被执行时致使处理器:
接收包含多个字符的文档;
规范化所述文档以从所述多个字符中移除无信息字符;
基于在所述文档中的出现频率及分布计算所述多个字符中的每一信息字符的得分;
基于所述计算的得分排列所述多个字符中的每一信息字符;
从所述排列信息字符中选择字符出现;及
针对每一选择的字符出现而产生签名。
20、如权利要求19所述的计算机可读媒体,其中所述用以致使所述处理器选择字符出现的指令进一步包含在由所述处理器执行时致使所述处理器执行以下操作的指令:
在每一字符出现周围散列字节以产生散列值;及
将所述散列值分类为预定义排列。
21、如权利要求19所述的计算机可读媒体,其中所述用以致使所述处理器产生所述签名的指令进一步包含用以致使所述处理器使用围绕所述选择的字符出现的字符产生所述签名的指令。
22、如权利要求19所述的计算机可读媒体,其中所述字符为UTF-8字符。
23、如权利要求22所述的计算机可读媒体,其中所述无信息字符包含来自由额外空格、控制字符、回车或其组合组成的群组中的一者。
24、如权利要求19所述的计算机可读媒体,其中所述指令在由所述处理器执行时进一步致使所述处理器输出所述产生的签名的列表。
25、一种用于产生具有预定关联性的文档的输出的方法,所述方法包含:
接收包含文本的初始文档;
接收用于匹配的文档的列表,每一文档包含文本;
接收最小子串匹配长度;
规范化所述文档列表中的所述文档的所述文本;
搜索所述初始文档的所述文本与所述文档列表中每一文档的所述文本之间的共同子串;
基于所述搜索共同子串计算匹配百分比;及
输出具有对应于预定值的匹配百分比的文档。
26、如权利要求25所述的方法,其进一步包含在搜索之前对所述初始文档的所述文本进行分类。
27、如权利要求25所述的方法,其进一步包含在搜索之前产生所述初始文档的所述文本的子串的散列值。
28、如权利要求25所述的方法,搜索进一步包含使用二进制搜索技术进行搜索。
29、如权利要求25所述的方法,其中计算进一步包含基于相似性函数计算匹配百分比。
30、如权利要求25所述的方法,其中所述预定值是第一预定值与第二预定值之间的范围。
31、如权利要求25所述的方法,其中所述文档列表包含多个文档。
32、一种计算机可读媒体,其经构造以存储可由处理器执行的指令,所述指令在被执行时致使处理器:
接收包含文本的初始文档;
接收用于匹配的文档的列表,每一文档包含文本;
接收最小子串匹配长度;
规范化所述文档列表中的所述文档的所述文本;
搜索所述初始文档的所述文本与所述文档列表中每一文档的所述文本之间的共同子串;
基于所述搜索共同子串计算匹配百分比;及
输出具有对应于预定值的匹配百分比的文档。
33、如权利要求32所述的计算机可读媒体,其进一步包括致使所述处理器在搜索之前对所述初始文档的所述文本进行分类的指令。
34、如权利要求32所述的计算机可读媒体,其进一步包括致使所述处理器在搜索之前产生所述初始文档的所述文本的子串的散列值的指令。
35、如权利要求32所述的计算机可读媒体,其中所述用以致使所述处理器进行搜索的指令进一步包含用以致使所述处理器使用二进制搜索技术进行搜索的指令。
36、如权利要求32所述的计算机可读媒体,其中所述用以致使所述处理器进行计算的指令进一步包含用以致使所述处理器基于相似性函数计算匹配百分比的指令。
37、如权利要求32所述的计算机可读媒体,其中所述预定值是第一预定值与第二预定值之间的范围。
38、如权利要求32所述的计算机可读媒体,其中所述文档列表包含多个文档。
CN2006800227288A 2005-05-09 2006-05-08 具有签名产生及关联性检测的匹配引擎 Active CN101248433B (zh)

Applications Claiming Priority (7)

Application Number Priority Date Filing Date Title
US67931405P 2005-05-09 2005-05-09
US60/679,314 2005-05-09
US11/361,447 2006-02-24
US11/361,340 US7516130B2 (en) 2005-05-09 2006-02-24 Matching engine with signature generation
US11/361,340 2006-02-24
US11/361,447 US7747642B2 (en) 2005-05-09 2006-02-24 Matching engine for querying relevant documents
PCT/US2006/017846 WO2006122086A2 (en) 2005-05-09 2006-05-08 Matching engine with signature generation and relevance detection

Publications (2)

Publication Number Publication Date
CN101248433A true CN101248433A (zh) 2008-08-20
CN101248433B CN101248433B (zh) 2010-09-01

Family

ID=37397221

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2006800227288A Active CN101248433B (zh) 2005-05-09 2006-05-08 具有签名产生及关联性检测的匹配引擎

Country Status (3)

Country Link
JP (1) JP5072832B2 (zh)
CN (1) CN101248433B (zh)
WO (1) WO2006122086A2 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107798637A (zh) * 2016-08-30 2018-03-13 北京国双科技有限公司 同案异判文书的获取方法及装置
CN112580108A (zh) * 2020-12-10 2021-03-30 深圳证券信息有限公司 签名和印章完整性验证方法及计算机设备

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7516130B2 (en) * 2005-05-09 2009-04-07 Trend Micro, Inc. Matching engine with signature generation
US7860853B2 (en) * 2007-02-14 2010-12-28 Provilla, Inc. Document matching engine using asymmetric signature generation
JP5372853B2 (ja) 2010-07-08 2013-12-18 株式会社日立製作所 デジタルシーケンス特徴量算出方法及びデジタルシーケンス特徴量算出装置
JP5617674B2 (ja) * 2011-02-14 2014-11-05 日本電気株式会社 文書間類似度算出装置、文書間類似度算出方法、及び、文書間類似度算出プログラム

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5325091A (en) * 1992-08-13 1994-06-28 Xerox Corporation Text-compression technique using frequency-ordered array of word-number mappers
JP2758826B2 (ja) * 1994-03-02 1998-05-28 株式会社リコー 文書検索装置
JPH09293079A (ja) * 1996-04-18 1997-11-11 Internatl Business Mach Corp <Ibm> 情報検索方法、情報検索装置及び情報検索プログラムを格納する記憶媒体
EP0961210A1 (en) * 1998-05-29 1999-12-01 Xerox Corporation Signature file based semantic caching of queries
US6493709B1 (en) * 1998-07-31 2002-12-10 The Regents Of The University Of California Method and apparatus for digitally shredding similar documents within large document sets in a data processing environment
CN1369839A (zh) * 2001-02-16 2002-09-18 意蓝科技股份有限公司 文件关联性判定系统与方法
US6584470B2 (en) * 2001-03-01 2003-06-24 Intelliseek, Inc. Multi-layered semiotic mechanism for answering natural language questions using document retrieval combined with information extraction
JP2002269116A (ja) * 2001-03-13 2002-09-20 Ricoh Co Ltd 文書検索システム及びプログラム
JP3719666B2 (ja) * 2001-07-12 2005-11-24 松下電器産業株式会社 文書照合装置
US7139756B2 (en) * 2002-01-22 2006-11-21 International Business Machines Corporation System and method for detecting duplicate and similar documents

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107798637A (zh) * 2016-08-30 2018-03-13 北京国双科技有限公司 同案异判文书的获取方法及装置
CN112580108A (zh) * 2020-12-10 2021-03-30 深圳证券信息有限公司 签名和印章完整性验证方法及计算机设备
CN112580108B (zh) * 2020-12-10 2024-04-19 深圳证券信息有限公司 签名和印章完整性验证方法及计算机设备

Also Published As

Publication number Publication date
WO2006122086A2 (en) 2006-11-16
WO2006122086A3 (en) 2007-03-29
JP5072832B2 (ja) 2012-11-14
CN101248433B (zh) 2010-09-01
JP2008541272A (ja) 2008-11-20

Similar Documents

Publication Publication Date Title
US7747642B2 (en) Matching engine for querying relevant documents
US7516130B2 (en) Matching engine with signature generation
US7860853B2 (en) Document matching engine using asymmetric signature generation
US7461056B2 (en) Text mining apparatus and associated methods
US8781817B2 (en) Phrase based document clustering with automatic phrase extraction
Treeratpituk et al. Disambiguating authors in academic publications using random forests
US7424421B2 (en) Word collection method and system for use in word-breaking
US8316041B1 (en) Generation and processing of numerical identifiers
CN101248433B (zh) 具有签名产生及关联性检测的匹配引擎
CN101933017B (zh) 文件检索装置、文件检索系统和文件检索方法
JP4426041B2 (ja) カテゴリ因子による情報検索方法
Orlando et al. Seed: A framework for extracting social events from press news
Sohrabi et al. Finding similar documents using frequent pattern mining methods
Soualmia et al. Matching health information seekers' queries to medical terms
Aref et al. Ink as a first-class datatype in multimedia databases
Carmel et al. Morphological disambiguation for Hebrew search systems
Baeza-Yates et al. Text searching: theory and practice
JPH1166086A (ja) 類似文書検索装置および類似文書検索方法
Wang et al. Exploiting multi-document term extraction to improve named entity recognition for major concept detection
Patra et al. A novel word clustering and cluster merging technique for named entity recognition
Alajmi et al. DACS Dewey index-based Arabic Document Categorization System
CN112700830B (zh) 从电子病历中提取结构化信息的方法、装置及存储介质
Wei et al. Improving database quality through eliminating duplicate records
Chen et al. A three-phase system for chinese named entity recognition
Cisłak Full-text and Keyword Indexes for String Searching

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
ASS Succession or assignment of patent right

Owner name: TREND MICRO INCORPORATED (JAPAN)

Free format text: FORMER OWNER: TREND MICRO INC.

Effective date: 20120720

C41 Transfer of patent application or patent right or utility model
C56 Change in the name or address of the patentee

Owner name: TREND MICRO INC.

Free format text: FORMER NAME: TREND MICRO SHANJING CORPORATION

Owner name: TREND MICRO SHANJING CORPORATION

Free format text: FORMER NAME: PROVILLA, INC.

CP03 Change of name, title or address

Address after: California, USA

Patentee after: TREND MICRO INCORPORATED

Address before: Delaware

Patentee before: Trend Micro mountain Co.

Address after: Delaware

Patentee after: Trend Micro mountain Co.

Address before: California, USA

Patentee before: Provilla, Inc.

TR01 Transfer of patent right

Effective date of registration: 20120720

Address after: Tokyo, Japan

Patentee after: Trend Polytron Technologies Inc. (Japan)

Address before: California, USA

Patentee before: TREND MICRO INCORPORATED