CN106933824A - 在多个文档中确定与目标文档相似的文档集合的方法和装置 - Google Patents

在多个文档中确定与目标文档相似的文档集合的方法和装置 Download PDF

Info

Publication number
CN106933824A
CN106933824A CN201511016976.9A CN201511016976A CN106933824A CN 106933824 A CN106933824 A CN 106933824A CN 201511016976 A CN201511016976 A CN 201511016976A CN 106933824 A CN106933824 A CN 106933824A
Authority
CN
China
Prior art keywords
document
vector
similar
collection
integer
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
CN201511016976.9A
Other languages
English (en)
Other versions
CN106933824B (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.)
EMC Corp
Original Assignee
EMC 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 EMC Corp filed Critical EMC Corp
Priority to CN201511016976.9A priority Critical patent/CN106933824B/zh
Priority to US15/385,037 priority patent/US10331717B2/en
Publication of CN106933824A publication Critical patent/CN106933824A/zh
Application granted granted Critical
Publication of CN106933824B publication Critical patent/CN106933824B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

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/33Querying
    • G06F16/3331Query processing
    • G06F16/334Query execution
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/31Indexing; Data structures therefor; Storage structures
    • G06F16/316Indexing structures
    • G06F16/325Hash tables
    • 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/33Querying
    • G06F16/3331Query processing
    • 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/33Querying
    • G06F16/3331Query processing
    • G06F16/334Query execution
    • G06F16/3344Query execution using natural language analysis
    • 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/33Querying
    • G06F16/3331Query processing
    • G06F16/334Query execution
    • G06F16/3347Query execution using vector based model
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/93Document management systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Computational Linguistics (AREA)
  • Artificial Intelligence (AREA)
  • Software Systems (AREA)
  • Business, Economics & Management (AREA)
  • General Business, Economics & Management (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • General Health & Medical Sciences (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本公开内容的实施例提供了一种在多个文档中确定与目标文档相似的文档集合的方法和装置。该多个文档和目标文档中均可以包括多个词语,每个词语可以对应于一个不同的整数。该方法可以包括:针对该多个文档和目标文档中的每个文档,基于与文档相关联的词语集合来获得与文档相关联的整数集合;根据预定转换规则将与每个文档相关联的整数集合转换为维度相同的向量;以及基于该多个文档的相应向量与目标文档的向量之间的差异来确定相似的文档集合。

Description

在多个文档中确定与目标文档相似的文档集合的方法和装置
技术领域
本公开内容的实施例一般性地涉及与计算机相关的技术领域,并且更特别地涉及一种在多个文档中确定与目标文档相似的文档集合的方法和装置。
背景技术
相似文档搜索对于内容管理、内容搜索和内容推荐而言是非常有用的特征。在各种场景中,许多应用都需要从海量的文档中找出与目标文档相似的文档集合。
典型的解决方案是逐个地计算需要确定的文档与目标文档的相似度,然后返回满足相似度准则的那些文档。例如,可以根据倒排索引来逐个地搜索关键词,将各个关键词搜索得到的文档集合的交集确定为相似的文档集合。但是,当需要确定的文档数目变得越来越大时,这种方法花费的时间将变得显著,从而难以在用户所给定的时间中完成该确定。此外,上述方法在性能上以及准确度上也存在问题。
发明内容
鉴于现有技术中存在的上述问题,本公开内容的实施例的目的之一在于提供一种在多个文档中确定与目标文档相似的文档集合的方法和装置,以解决现有技术中的上述以及其他的问题。
根据本公开内容的第一方面,提供了一种在多个文档中确定与目标文档相似的文档集合的方法。该多个文档和目标文档中均可以包括多个词语,每个词语可以对应于一个不同的整数。该方法可以包括:针对该多个文档和目标文档中的每个文档,基于与文档相关联的词语集合来获得与文档相关联的整数集合;根据预定转换规则将与每个文档相关联的整数集合转换为维度相同的向量;以及基于多个文档的相应向量与目标文档的向量之间的差异来确定相似的文档集合。
在一些实施例中,该方法可以进一步包括:根据多个预定转换规则确定多个相似的文档集合;以及将多个相似的文档集合的交集确定为最终的相似文档集合。
在一些实施例中,该方法可以进一步包括:使用多维的向量矩阵来存储多个文档中的每个文档的通过多个预定转换规则得到的多个向量,每个预定转换规则对应于向量矩阵的一个不同维度,每个向量对应于相应维度上的一个坐标值。
在一些实施例中,该方法可以进一步包括:根据多个预定转换规则,针对新的文档得到相应的多个向量;以及将所得到的多个向量存储在向量矩阵中。在一些实施例中,该方法可以进一步包括:使用哈希图来存储向量矩阵。
在一些实施例中,该方法可以进一步包括:将每个维度上的与文档的向量相对应的坐标值之外的坐标值标记为“空”。在这些实施例中,该方法可以进一步包括:在确定相似的文档集合的过程中不考虑被标记为“空”的坐标值。
在一些实施例中,预定转换规则可以包括:针对整数集合中的每个整数,获得相应的二进制数;取出相应二进制数的连续N位,其中N为大于零的整数;将该连续N位转换为十进制数以替代相应整数而形成新的整数集合;以及使用位图法将该新的整数集合转换为位长度2N的位向量。在一些实施例中,该方法可以进一步包括:根据多个预定转换规则确定多个相似的文档集合,其中多个预定转换规则分别取出相应二进制数的互不交叠的多个连续N位,以得到相应的位向量。在一些实施例中,位长度可以是8的整数倍。
在一些实施例中,该方法可以进一步包括:通过直接比较相似的文档集合中的文档的相关联的词语集合与所述目标文档的相关联的词语集合来确定更为精确的相似文档子集。
在一些实施例中,基于多个文档的相应向量与目标文档的向量之间的差异来确定相似的文档集合可以包括:将差异小于预定阈值的文档集合确定为相似的文档集合。在一些实施例中,确定所述相似的文档集合可以包括:确定差异最小的前K个文档,K为大于零的整数。
在一些实施例中,该方法可以进一步包括:基于目标文档的向量和预定阈值,确定符合于预定阈值的向量的值区间;以及将向量落在所述值区间内的文档集合确定为相似的文档集合。在一些实施例中,该方法可以进一步包括:以一为步长递增预定阈值,以使相似的文档集合包括预定数目的文档。
在一些实施例中,与文档相关联的词语集合可以包括文档的关键词集合。在一些实施例中,可以通过词频统计或者名称实体提取增强算法来确定与文档相关联的词语集合。
在一些实施例中,该方法可以进一步包括:将向量添加到搜索引擎的索引段中,以用于通过搜索引擎对向量进行搜索。
根据本公开内容的第二方面,提供了一种在多个文档中确定与目标文档相似的文档集合的装置。该多个文档和目标文档中均包括多个词语,每个词语对应于一个不同的整数。该装置可以包括:获得单元,被配置为针对该多个文档和目标文档中的每个文档,基于与文档相关联的词语集合来获得与文档相关联的整数集合;转换单元,被配置为根据预定转换规则将与每个文档相关联的整数集合转换为维度相同的向量;以及确定单元,被配置为基于该多个文档的相应向量与目标文档的向量之间的差异来确定相似的文档集合。
根据本公开内容的第三方面,提供了一种计算机可读存储介质,具有存储在其上的计算机可读程序指令,这些计算机可读程序指令可以用于执行根据第一方面的方法。
根据本公开内容的第四方面,提供了一种计算机***,可以包括根据第二方面的装置。
本公开内容的实施例相对于现有技术的方法至少提供了以下的优点。首先,在性能上,本公开内容的实施例可以快速地确定相似文档,即使是在文档集合中的文档数量非常大的时候。这是因为,本公开内容的实施例通过搜索相似的与文档相关联的向量(本文中也称为指纹)组合可以得出可能相似的文本集合,从而缩减了最终需要精确计算更精确相似的文本集合。其次,在准确度上,因为本公开内容的实施例可以使用文档中的所有关键词来生成指纹,所以最终的结果比现有技术的方法(例如,Lucene的more-like-this搜索方法)更加准确。
附图说明
通过参考附图阅读下文的详细描述,本公开内容的实施例的上述以及其他目的、特征和优点将变得容易理解。在附图中,以示例性而非限制性的方式示出了本公开内容的若干实施例,其中:
图1示意性地示出了从文档转换为数值化的词语集合的过程。
图2示意性地示出了根据本公开内容的实施例的在多个文档中确定与目标文档相似的文档集合的方法的流程图。
图3示意性地示出了根据本公开内容的实施例的从数值化的词语集合中提取指纹的示意图。
图4示意性地示出了根据本公开内容的实施例的利用文档的二维指纹矩阵来表示本文的示意图。
图5示意性地示出了根据本公开内容的实施例的利用文档的二维指纹矩阵来搜索相似本文的示意图。
图6示意性地示出了根据本公开内容的实施例的向文档的三维指纹矩阵中添加新的文档的示意图。
图7示意性地示出了根据本公开内容的实施例的利用文档的三维指纹矩阵来搜索相似文档的示意图。
图8示意性地示出了根据本公开内容的实施例的在多个文档中确定与目标文档相似的文档集合的装置的框图。
图9示意性地示出了可以用来实现本公开内容的实施例的示例性计算机***/服务器的框图。
具体实施方式
下面将参考附图中所示出的若干示例性实施例来描述本公开内容的原理和精神。应当理解,描述这些具体的实施例仅是为了使本领域的技术人员能够更好地理解并实现本公开内容,而并非以任何方式限制本公开内容的范围。
相似文档搜索对于内容管理、内容搜索和内容推荐而言是非常有用的特征。考虑到相似的文档仅是文档储存库中的少数文档,一种可能的改进是快速地得到可能相似的文档集合,并且然后精确地对这些候选文档进行检查。本公开内容提出了利用指纹矩阵解决方案来实施这种构思。
在详细介绍本公开内容之前,首先给出本公开内容中的可能使用到的术语的定义。
在本公开内容的上下文中,词汇表是指文档可能包含的所有词语。在一些实施例中,能够选择不同的策略来减少词汇表的大小,例如,可以选择仅名词、动词和重要的形容词来构造词汇表。在本公开内容的上下文中,文档是词汇表中的词语的序列,在我们的模型中,文档只是词语的序列而不论标点和符号。此外,在本公开内容的上下文中,文档和文档可以互换地使用。
在本公开内容的上下文中,关键词集合是指文档的关键词的集合,其可以表示文档的内容。在本公开内容的上下文中,数值化(numeration)方法能够将一个词语映射为一个整数。最终,一个文档能够被表示为整数的集合。可以使用Dn来标示这个整数集合并且将它们视为文档本身。在本公开内容的上下文中,词语集合(SOW)是使用上述数值化方法对文档的数字表示。SOW包含整数集合,该整数集合表示一个文档中的所有词语而不论词语在文档中的重复次数和位置。图1示意性地示出了从文档转换为数值化的词语集合的过程。如图1中所示出的,文档101可以通过关键词提取102得到关键词集合103,关键词集合103可以通过数值化104得到SOW 105。
在本公开内容的上下文中,文档差异被用来量化两个文档之间的差异。在一些实施例中,可以具有不同的策略来定义文档差异函数。例如,在计算样本之间的单方向差异的示例中,如果一个文档D0具有关键词{Clinton,Republican,vote,White House},而另一文档D1具有{swing,campaigns,Clinton,Republican,Donald},那么D0到D1的文档差异是diff(D0,D1)==2(D1不具有“vote”和“White House”)而D1到D0的文档差异是diff(D1,D0)=3(D0不具有“swing”、“campaigns”和“Donald”)。
在本公开内容的上下文中,文档差异阈值被用来定义“两个相似的文档应当有多相似”。如在前面的示例中,如果将文档差异阈值定义为2,则D1是D0的相似文档,而D0不是D1的相似文档。
确定相似文档的问题可以表达为,给定一个文档差异阈值M和目标文档Dt,在储存库中找出相似的文档集合SIMM(Dt),该集合中的文档与目标文档的文档差异不大于阈值M。
SIMM(Dt)={Di|diff(Dt,Di)≤M,Di∈Repository} (0)对前K个相似文档的搜索也是该问题的一部分,其是从公式(0)得出最为相似的K个文档。
图2示意性地示出了根据本公开内容的实施例的在多个文档中确定与目标文档相似的文档集合的方法200的流程图。在一些实施例中,该多个文档和目标文档中均包括多个词语,每个词语对应于一个不同的整数。
本领域的技术人员可以理解,可以采用各种方法来将词语映射为一个整数并且不同的词语映射为不同的整数,从而将文档表示为不同整数的集合,本公开内容在这个方面不受限制。
如图2中所示出的,方法200在开始之后可以进入步骤201。在步骤201中,可以针对多个文档和目标文档中的每个文档,基于与文档相关联的词语集合来获得与文档相关联的整数集合。
在一些实施例中,与文档相关联的词语集合可以包括所述文档的关键词集合。在一些实施例中,可以通过词频统计或者名称实体提取增强算法来确定与文档相关联的词语集合。本领域的技术人员可以理解,一个文档可能包含许多的细节和噪声信息。需要某种提取和精化来得到文档的主题信息。关键词提取过程可以采用词频统计(TF)、名称实体提取增强算法等等。这个部分并不为本公开内容所关注,并且存在许多方法来得到我们想要的。
在一个特定的实施例中,为了具体说明本公开内容的目的,给出了将与文档相关联的词语集合转换为整数集合的具体示例。在该具体示例中,D0具有相关联的词语集合{Clinton,Republican,vote,White House},而另一D1具有相关联的词语集合{swing,campaigns,Clinton,Republican,Donald}。按照一种预定的映射规则,可以将上述词语集合如下地转换为整数集合。
D0:{Clinton,Republican,vote,White House}→D0:{44,17,28,6}
D1:{swing,campaigns,Clinton,Republican,Donald}→
D1:{87,63,44,17,79}
其中,每个词语所对应的整数是预定义的。本公开内容对于词语如何映射为整数并不进行限制,只需要存在这种预定的映射关系即可。
此外,本领域的技术人员可以理解,尽管上面使用了英文词语作为示例来进行说明,但是本公开内容的实施例可以等同地应用到其他语言的技术场景中。
接着,在完成步骤201之后,方法200可以进入步骤202。在步骤202中,可以根据预定转换规则将与每个文档相关联的整数集合转换为维度相同的向量。在本公开内容的上下文中,可以将与一个文档相关联的向量称为该文档的指纹,并且在本公开内容的上下文中,“向量”可以与“指纹”互换地使用。本领域的技术人员可以理解,指纹在某种程度上是原有整数集合的抽象信息。因此,文档的指纹可以用于确定相似的文档集合。本领域的技术人员可以理解,尽管本文中主要采用位向量的形式来具体地阐述本公开内容的实施例,但是根据预定转换规则从整数集合转换得到的其他向量也可以等同地被实施用于本公开的实施例。
在一些实施例中,方法200可以进一步包括:根据多个预定转换规则确定多个相似的文档集合;以及将该多个相似的文档集合的交集确定为最终的相似文档集合。
本领域的技术人员可以理解,文档的指纹虽然可以携带原有整数集合的信息,但是这种信息是具有局限性的。对于一种预定转换规则而言,不同的整数集合可能对应于相同的指纹。因此,为了使得方法200的结果更加准确,可以使用多个不同的预定转换规则针对某个文档分别生成多个不同的指纹。通过不同的指纹可以分别得出不同的相似文档集合。然后,可以将该多个相似的文档集合的交集确定为最终的相似文档集合,从而提高结果的准确性。
图3示意性地示出了根据本公开内容的实施例的从数值化的词语集合中提取指纹的示意图。如图3中所示出的,在确定与文档相关联的词语集合(例如,关键词集合)之后,可以该词语集合表示为整数集合,在图3中表示为SOW 301。接着,可以通过预定转换规则从SOW 301中提取处多个指纹。这些指纹在图3中表示为FP0 302、FP1 303、FPn 304等等。此外,指纹也可以从原始文档中提取。
这些指纹能够帮助用户快速地定位相似的文档,用户能够选择使用多个指纹来确保有效性和无冗余性。指纹转换规则能够将不同长度的文档或者整数集合的规格化为维度相同的向量,特别是位长度相同的位向量。这意味着该过程将公平地保持与文档相关联的词语集合中的每个词语的信息,而无需粗略地切分词语的数目。
在一些实施例中,方法200中的预定转换规则可以包括:针对整数集合中的每个整数,获得相应的二进制数;取出相应二进制数的连续N位,其中N为大于零的整数;将所述连续N位转换为十进制数以替代相应整数而形成新的整数集合;以及使用位图法将所述新的整数集合转换为位长度2N的位向量。
在一些实施例中,可以根据多个预定转换规则确定多个相似的文档集合,其中所述多个预定转换规则分别取出所述相应二进制数的互不交叠的多个连续N位,以得到相应的位向量。
在一个特定的实施例中,二进制表示的低2比特的段可以作为指纹-0的提取函数,并且二进制表示的2-3比特的段可以作为另一指纹-1的提取函数。
在该特定的实施例中,针对上文所给出的具体示例,可以存在如下的“指纹”提取过程。
在这种转换中,位图法bitmap的含义是,所得到的位向量中的1表示所转换的整数集合中包括该位所代表的数字,0表示所转换的整数集合中不包括该位所代表的数字。例如,{0,1,0,2}包括0、1、2,所以位向量01112的第一、二、三位为1,而{0,1,0,2}不包括3,所以位向量01112的第四位为0。
换句话说,在该特定的实施例中,文档D0的“指纹”0可以是“01112”,而“指纹”1可以是“10112”。文档D1的“指纹”0可以是“10112”,而“指纹”1可以是“10112”。从该示例可以看出,不同长度的整数集合D0和D1最终被转换为相同位长度的位向量。这有利于在后续步骤中确定不同文档的指纹之间的差异。在一些实施例中,位长度可以是8的整数倍。
在一些实施例中,可以使用多维的向量矩阵来存储所述多个文档中的每个文档的通过所述多个预定转换规则得到的多个向量,每个预定转换规则对应于向量矩阵的一个不同维度,每个向量对应于相应维度上的一个坐标值。在这些实施例中,如果指纹被存储在指纹矩阵中,则该指纹矩阵中的每个点可以存储具有相同指纹组合的文档参考号的列表。
图4示意性地示出了根据本公开内容的实施例的利用文档的二维指纹矩阵来表示本文的示意图。如图4中所示出的,针对上面的特定实施例,文档D0和文档D1可以使用它们各自的两个指纹作为相应维度上的坐标值而存储在指纹矩阵中。
除了使用二维指纹之外,在其他的实施例中,也可以使用更高维度的指纹矩阵来提供用以访问这些指纹的快速搜索能力。如上文所述,指纹矩阵是使用每个指纹FPi作为其维度的矩阵。为了说明的目的,下文还给出了三维指纹的示例,这意味着在指纹提取过程中提取了三个不同的指纹。
图6示意性地示出了根据本公开内容的实施例的向文档的三维指纹矩阵中添加新的文档的示意图。如图6中所示出的,可以根据多个预定转换规则,针对新的文档得到相应的多个向量,并且将所得到的多个向量存储在向量矩阵中。
具体地,为了在指纹矩阵中***新的文档Din,可以将这个文档的参考号以指纹FPMATRIX[FP0(Din)][FP1(Din)][FP2(Din)]为坐标添加到这个矩阵中。
在一些实施例中,可以将每个维度上的与文档的向量相对应的坐标值之外的坐标值标记为“空”(BLANK)。例如,如果不存在任何文档具有例如FP0=B的指纹值,则这个指纹值将被标记为空。可以通过这个标记来跳过指纹矩阵中的空坐标值,从而可以加速相似文档的搜索过程。因此,在一些实施例中,可以在确定相似的文档集合的过程中不考虑被标记为“空”的坐标值。
在方法200中,可以使用文档的指纹作为该文档的定位符,这意味着仅需要花费O(1)的时间来搜索某个文档的指纹组合。此外,这种方式确保了具有相同指纹组合的文档或者其参考号可以被放置在矩阵中的相同位置处。
进一步地,可以存在两种方式来存储指纹矩阵。首先是原始存储,其完整地存储整个指纹矩阵空间并且将文档列表存储在该简明指纹矩阵空间中。其次是哈希映射图(HashMap)存储,它使用指纹组合作为它的关键码(key)并且将指纹组合存储在该映射图中,这对于在稀疏情况中压缩矩阵的大小是有用的。对于上面所提到的新文档,可以将新文档的指纹(FP0(Din),FP1(Din)...FPn(Din))作为关键码并且将它们存放到哈希映射图中以压缩矩阵空间。因此,在一些实施例中,可以使用哈希图来存储向量矩阵。
在这两种存储方式中,原始存储方式在搜索时间上具有优势,因为它是简明的矩阵并且对它的访问是直接的,但是它浪费了许多存储空间来存储空的指纹组合。相对照地,哈希映射图存储方式可以极大地压缩该存储空间。
接着,在完成步骤202之后,方法200可以进入步骤203。在步骤203中,可以基于多个文档的相应向量与目标文档的向量之间的差异来确定相似的文档集合。如上文所描述的,文档的向量部分地体现了与文档相关联的词语集合的信息。进一步如上文所描述的,不论与文档相关联的词语集合的词语数目,文档的向量都具有相同的维度。因此,通过比较不同文档的向量,确定文档的向量之间的差异,就可以确定出与目标文档相似的文档集合。
在一些实施例中,步骤203可以进一步包括:将差异小于预定阈值的文档集合确定为相似的文档集合。本领域的技术人员可以理解,该预定阈值可以根据具体的技术场景和要求进行预先设置。通过调整该预定阈值,可以调整所确定的相似文档集合与目标文档之间的相似度的高低,同时可以调整所确定的相似文档集合中的文档数目。
在一些场景中,在使用某个预定阈值的情况下,可能无法找到用户所要求的预定数目的相似文档。在这些场景中,可以以一为步长来递增该预定阈值,以使相似的文档集合包括预定数目的文档。
在确定相似文本的具体过程中,可以基于目标文档的向量和预定阈值,确定符合于预定阈值的向量的值区间,并且将向量落在值区间内的文档集合确定为相似的文档集合。
下文通过图5和图7分别通过二维指纹矩阵和三位指纹矩阵来具体地阐述确定相似的文档集合的过程。
图5示意性地示出了根据本公开内容的实施例的利用文档的二维指纹矩阵来搜索相似本文的示意图。
根据本公开内容的实施例,在搜索相似本文的阶段中,可以通过指纹组合来找出所有可能的相似文档。在一个具体的示例中,可以假设目标文档为:Dt:{Clinton,campaigns,Virginia,Donald}={44,63,26,79},并且可以将文档差异阈值M为1。
首先,可以计算Dt的指纹如下: 其中函数FP0可以取出各个整数的二进制表示的最低2位,并且将取出的2位表示为十进制。具体地,整数44、63、26、79分别被转换为0、3、2、3。接着可以通过位图法将整数集合{0,3,2,3}转换为位向量11012。在这种转换中,位向量中的1表示所转换的整数集合中包括该位所代表的数字,0表示所转换的整数集合中不包括该位所代表的数字。例如,{0,3,2,3}包括0、2、3,所以位向量11012的第一、三、四位为1,而{0,3,2,3}不包括1,所以位向量11012的第二位为0。
类似地,提取函数FP1可以取出各个整数的二进制表示的次低2位,然后使用类似的过程得出另一个位向量11002
然后,可以根据目标文档的位向量以及文档差异阈值M来构造符合相似条件的文档的可能指纹。在这个过程中,可以通配符“?”来表示该比特能够是0或者1。此外,在构造可能指纹的过程中,可以不考虑目标文档的指纹中为0的位,而仅需要考虑为1的位。如此,针对函数FP0可以得出用指纹表示的可能的相似文档集合为: 针对FP1可以得出用指纹表示的可能的相似文档集合为:
图5中所描绘的阴影区域表示了在二维的指纹矩阵中所表示的与目标文档Dt相似的文档所在的区域,该区域是通过两个指纹所确定的可能相似文档集合的交集。如图5中所示出的,上文的具体示例中的文档D0在该搜索范围之外,并且文档D1在该搜索范围之中。这与实际地比较它们之间的相似度的结果是吻合的:diff(Dt,D0)==3,diff(Dt,D1)=1。
最终,可以通过传统的方式检查出D1中的关键词满足具体场景的相似度要求。上面的计算过程在文档增加时,成本将比逐个比较要少得多。因此,在一些实施例中,可以通过直接比较相似的文档集合中的文档的相关联的词语集合与目标文档的相关联的词语集合来确定更为精确的相似文档子集。
图7示意性地示出了根据本公开内容的实施例的利用文档的三维指纹矩阵来搜索相似文档的示意图。
如图7中所示出的,搜索相似文档的过程开始于针对目标文档的指纹计算:FP0(Dt),FP1(Dt),FP2(Dt),...。然后,在阈值M内的可能指纹将被计算:这个步骤将排除掉具有大于M的差异的那些指纹。
如上文所描述的,在这个过程中,可以通过滤除具有空标记的指纹来加速搜索。如果一个指纹被标记了空标记,这意味着没有文档具有该指纹,所以不需要搜索这些指纹。
针对多个指纹中的每个指纹进行前面的步骤,然后可以得到所有的指纹相似的集合。然后,根据上文公式(4),可以得到根据多个指纹综合得出的相似文本集合:
可以看出,通过本公开的实施例的方法,极大地缩减了需要进行查询的相似文档的范围,并且能够进行最终的相似度计算过程来滤除虚假肯定(false-positive)的情况。
此外,对于确定前K个最佳相似文本的问题,该问题在本公开内容的模型中将会更加简单。从阈值M=0开始,在这种情况中,将会找到对于所使用的指纹而言的完全匹配。如果相似本文集合大小少于K个,则可以逐一地放宽阈值M,同时查看结果的相似文本集合的大小是否足够大。如果满足了用于所需要的预定数目K,则可以返回该K个相似文档。因此,在一些实施例中,方法200可以确定差异最小的前K个文档,K为大于零的整数。
在一些实施例中,可以将向量添加到搜索引擎的索引段中,以用于通过搜索引擎对向量进行搜索。本领域的技术人员可以理解,基于倒排索引(inverted index)的传统搜索引擎长于一般性的搜索,如果对相似文档搜索能够与传统搜索引擎进行集成可能是一种有吸引力的特征。为了将本公开内容的方法集成在搜索引擎中,可以将所有的指纹存储在搜索引擎的索引字段中,在搜索阶段,可以使用“与(AND)”子句来搜索特定的指纹组合。
在完成步骤203之后,方法200可以结束。
在下文中,将给出与本公开内容的实施例的方法有关的理论推导,以证明本公开内容的实施例的正确性和可行性。本领域的技术人员应该理解,在下面的推导过程中,可能使用了特定的场景或者表述,这些特定的场景或者表述仅是为了说明而并不是限制本公开内容的实施例。
在一般的场景中,文档的SOW可能由大量的比特集合来表示,所以需要使用词汇表比特的大小来存储SOW。但是,文档的SOW通常是一个稀疏的比特集合,因为与整个词汇表相比较,一个文档的关键词是非常少的。因此,本公开内容替代地使用了整数集合Dn={wn0,wn1,...,wnk}来表示文档。
通常,每个(数学)函数FP(x)可以具有如下的性质: 自然地,本公开内容中的用于提取指纹的函数也可以具有如下性质:以及 (1)。例如,在上文使用低2比特段作为用于提取指纹的函数的特定实施例中,可以有:
因此,在本公开的特定实施例中,可以使用比特段函数作为用于提取指纹的函数。在上文给出的具体示例中,关键词集合D0:{Clinton,Republican,vote,White House}的数值化形式可以为:D0={44,17,28,6}。在一些实施例中,该数值转换可以基于惯用的词汇表格。
基于上面的公式(1)和位向量的性质,容易得到以下公式:
bitdiff(FPi(D0),FPi(D1))≤diff(D0,D1) (2),
其中函数bittdiff(I0,I1)可以是针对I0是1而I1是0的比特组合进行计数的函数。
可以定义具有与目标文档Dt具有文档差异阈值M的指纹相似集合:
基于上文的公式(0)和公式(2),相似文档集合SIMM(Dt)必须是的子集:
如果具有n个指纹,从上面的公式(3)可以得到:
通过上面的公式(4),能够通过使用指纹相似集合的交集来缩减相似文档集合的搜索范围。
作为简要的总结,本公开内容提出了一种利用指纹矩阵的解决方案来找出相似文档的新方法。这种方法确保了具有相同关键词的文档将以O(1)的速度被返回,该方法将容忍一些虚假肯定的文档以便获得更好性能。本公开内容所提出的这种解决方案的主要步骤可以粗略地分为三个部分:第一,指纹提取:将从文档中提取固定数目的指纹。每个指纹具有相同的位长度,通常是基数8的整数个比特,例如8比特、32比特,等等。第二,指纹矩阵构造:这些指纹将被存储在指纹矩阵中。该矩阵的维度由指纹的固定数目来决定。第三,相似文档搜索:将利用指纹矩阵来得到目标文档的相似文档。
本公开内容提出了一种以可接受的虚假肯定概率在文档差异阈值条件内快速地搜索所有文档的机制。它针对每个文档可以生成若干指纹,并且将这些指纹存储在名为指纹矩阵的数据结构中。在相似文档搜索期间,指纹矩阵能够以相当快的速度缩减搜索的范围。在搜索时间中,通过计算目标文档的指纹,指纹矩阵能够快速地找出可能包含相似文档的存储区,并且可以排除对不相似的路径进行遍历。
图8示意性地示出了根据本公开内容的实施例的在多个文档中确定与目标文档相似的文档集合的装置800的框图。在一些实施例中,该多个文档和目标文档中均可以包括多个词语,每个词语可以对应于一个不同的整数。在图8中,使用虚线框来表示可选的单元。
本领域的技术人员可以理解,图8中仅示出了装置800中的与本公开的实施例紧密相关的单元或组件,在具体的实现中,装置800可以包括使其能够正常操作的其他功能单元或组件。此外,本领域的技术人员还可以理解,装置800的各个单元之间可以存在必要的连接。
如图8中所示出的,装置800可以包括获得单元801、转换单元802、以及确定单元803。
在一些实施例中,获得单元801可以被配置为针对多个文档和目标文档中的每个文档,基于与文档相关联的词语集合来获得与文档相关联的整数集合。在一些实施例中,与文档相关联的词语集合可以包括文档的关键词集合。在一些实施例中,可以通过词频统计或者名称实体提取增强算法来确定与文档相关联的词语集合。
在一些实施例中,转换单元802可以被配置为根据预定转换规则将与每个文档相关联的整数集合转换为维度相同的向量。确定单元803可以被配置为基于多个文档的相应向量与目标文档的向量之间的差异来确定相似的文档集合。在一些实施例中,位长度可以是8的整数倍。在一些实施例中,确定单元803可以进一步被配置为:确定差异最小的前K个文档,K为大于零的整数。
在一些实施例中,转换单元802和确定单元803可以进一步被配置为:根据多个预定转换规则确定多个相似的文档集合,以及将多个相似的文档集合的交集确定为最终的相似文档集合。
在一些实施例中,装置800可以进一步包括存储单元804。存储单元804可以被配置为使用多维的向量矩阵来存储多个文档中的每个文档的通过多个预定转换规则得到的多个向量,每个预定转换规则对应于向量矩阵的一个不同维度,每个向量对应于相应维度上的一个坐标值。
在一些实施例中,转换单元802可以进一步被配置为根据多个预定转换规则,针对新的文档得到相应的多个向量。在这些实施例中,存储单元804可以进一步被配置为,将所得到的多个向量存储在向量矩阵中。
在一些实施例中,装置800可以进一步包括标记单元805。标记单元805可以被配置为将每个维度上的与文档的向量相对应的坐标值之外的坐标值标记为“空”。在这些实施例中,确定单元803可以进一步被配置为:在确定相似的文档集合的过程中不考虑被标记为“空”的坐标值。
在一些实施例中,存储单元804可以进一步被配置为:使用哈希图来存储向量矩阵。
在一些实施例中,预定转换规则可以包括:针对整数集合中的每个整数,获得相应的二进制数;取出相应二进制数的连续N位,其中N为大于零的整数;将该连续N位转换为十进制数以替代相应整数而形成新的整数集合;以及使用位图法将新的整数集合转换为2N长度的向量。
在一些实施例中,转换单元802和确定单元803可以进一步被配置为:根据多个预定转换规则确定多个相似的文档集合,其中该多个预定转换规则分别取出相应二进制数的互不交叠的多个连续N位,以得到相应的向量。
在一些实施例中,确定单元803可以进一步被配置为:通过直接比较相似的文档集合中的文档的相关联的词语集合与目标文档的相关联的词语集合来确定更为精确的相似文档子集。在一些实施例中,确定单元803可以进一步被配置为:将差异小于预定阈值的文档集合确定为相似的文档集合。在一些实施例中,确定单元803可以进一步被配置为:基于目标文档的向量和预定阈值,确定符合于预定阈值的向量的值区间;以及将向量落在该值区间内的文档集合确定为相似的文档集合。
在一些实施例中,装置800可以进一步包括递增单元806。递增单元806可以被配置为以一为步长递增预定阈值,以使相似的文档集合包括预定数目的文档。
在一些实施例中,装置800可以进一步包括添加单元807。添加单元807可以被配置为将向量添加到搜索引擎的索引段中,以用于通过搜索引擎对向量进行搜索。
图9示意性地示出了可以用来实现本公开内容的实施例的示例性计算机***/服务器912的框图。应当注意,图9中所示出的计算机***/服务器912仅是一种示例,不对本公开内容的实施方式的功能和使用范围进行任何限制。
如图9中所示出的,计算机***/服务器912以通用计算设备的形式表现。计算机***/服务器912的组件可以包括但不限于:一个或者多个处理器或者处理单元916,***存储器928,连接不同***组件(包括***存储器928和处理单元916)的总线918。
总线918表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器,***总线,图形加速端口,处理器或者使用多种总线结构中的任意总线结构的局域总线。举例来说,这些体系结构包括但不限于工业标准体系结构(ISA)总线,微通道体系结构(MAC)总线,增强型ISA总线、视频电子标准协会(VESA)局域总线以及***组件互连(PCI)总线。
计算机***/服务器912典型地包括多种计算机***可读介质。这些介质可以是任何能够被计算机***/服务器912访问的可用介质,包括易失性和非易失性介质,可移除的和不可移除的介质。
***存储器928可以包括易失性存储器形式的计算机***可读介质,例如,存储器930和/或缓存器932。计算机***/服务器912可以进一步包括其他可移除/不可移除的、易失性/非易失性计算机***存储介质。尽管图9中未示出,但是可以提供用于对可移除非易失性磁盘(例如“软盘”)读写的磁盘,以及对可移除非易失性光盘(例如CD-ROM、DVD-ROM或者其他光介质)读写的光盘。在这些情况下,每个磁盘可以通过一个或者多个数据介质接口与总线918相连。存储器928可以包括至少一个程序产品,该程序产品具有一组(例如至少一个)程序模块,这些程序模块被配置以执行本公开内容的各实施方式的功能。
具有至少一个程序模块942的程序/实用工具940,可以存储在例如存储器928中,这样的程序模块942包括但不限于:操作***、一个或者多个应用程序、其他程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。程序模块942通常执行本公开内容所描述的实施方式中的功能和/或方法。
根据需要,计算机***/服务器912也可以与一个或多个外部设备(例如显示设备924、存储设备914等)通信,还可与一个或者多个使得用户能与该计算机***/服务器912交互的设备通信,和/或与使得该计算机***/服务器912能与一个或多个其他计算设备进行通信的任何设备(例如网卡,调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口922进行。并且,计算机***/服务器912还可以通过网络适配器920与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。如图所示,网络适配器920通过总线918与计算机***/服务器912的其他模块通信。应当明白,尽管图中未示出,可以结合计算机***/服务器912使用其他硬件和/或软件模块,包括但不限于:微代码、设备磁盘、冗余处理单元、外部磁盘驱动阵列、RAID***、磁带磁盘以及数据备份存储***等。
在对本公开内容的实施例的描述中,术语“包括”及其类似用语应当理解为开放性包含,即“包括但不限于”。术语“基于”应当理解为“至少部分地基于”。术语“一个实施例”或“该实施例”应当理解为“至少一个实施例”。
应当注意,本公开内容的实施例可以通过硬件、软件或者软件和硬件的结合来实现。硬件部分可以利用专用逻辑来实现;软件部分可以存储在存储器中,由适当的指令执行***,例如微处理器或者专用设计硬件来执行。本领域的技术人员可以理解上述的设备和方法可以使用计算机可执行指令和/或包含在处理器控制代码中来实现,例如在可编程的存储器或者诸如光学或电子信号载体的数据载体上提供了这样的代码。
此外,尽管在附图中以特定顺序描述了本公开内容的方法的操作,但是这并非要求或者暗示必须按照该特定顺序来执行这些操作,或是必须执行全部所示的操作才能实现期望的结果。相反,流程图中描绘的步骤可以改变执行顺序。附加地或备选地,可以省略某些步骤,将多个步骤组合为一个步骤执行,和/或将一个步骤分解为多个步骤执行。还应当注意,根据本公开内容的两个或更多装置的特征和功能可以在一个装置中具体化。反之,上文描述的一个装置的特征和功能可以进一步划分为由多个装置来具体化。
虽然已经参考若干具体实施例描述了本公开内容,但是应当理解,本公开内容不限于所公开的具体实施例。本公开内容旨在涵盖所附权利要求的精神和范围内所包括的各种修改和等效布置。

Claims (38)

1.一种在多个文档中确定与目标文档相似的文档集合的方法,所述多个文档和所述目标文档中均包括多个词语,每个词语对应于一个不同的整数,所述方法包括:
针对所述多个文档和所述目标文档中的每个文档,基于与文档相关联的词语集合来获得与文档相关联的整数集合;
根据预定转换规则将与所述每个文档相关联的整数集合转换为维度相同的向量;以及
基于所述多个文档的相应向量与所述目标文档的向量之间的差异来确定所述相似的文档集合。
2.根据权利要求1所述的方法,进一步包括:
根据多个预定转换规则确定多个相似的文档集合;以及
将所述多个相似的文档集合的交集确定为最终的相似文档集合。
3.根据权利要求2所述的方法,进一步包括:
使用多维的向量矩阵来存储所述多个文档中的每个文档的通过所述多个预定转换规则得到的多个向量,每个预定转换规则对应于所述向量矩阵的一个不同维度,每个向量对应于相应维度上的一个坐标值。
4.根据权利要求3所述的方法,进一步包括:
根据所述多个预定转换规则,针对新的文档得到相应的多个向量;以及
将所得到的多个向量存储在所述向量矩阵中。
5.根据权利要求4所述的方法,进一步包括:
将每个维度上的与文档的向量相对应的坐标值之外的坐标值标记为“空”。
6.根据权利要求5所述的方法,进一步包括:
在确定所述相似的文档集合的过程中不考虑被标记为“空”的坐标值。
7.根据权利要求3所述的方法,进一步包括:
使用哈希图来存储所述向量矩阵。
8.根据权利要求1所述的方法,其中所述预定转换规则包括:
针对整数集合中的每个整数,获得相应的二进制数;
取出相应二进制数的连续N位,其中N为大于零的整数;
将所述连续N位转换为十进制数以替代相应整数而形成新的整数集合;以及
使用位图法将所述新的整数集合转换为位长度2N的位向量。
9.根据权利要求8所述的方法,进一步包括:
根据多个预定转换规则确定多个相似的文档集合,其中所述多个预定转换规则分别取出所述相应二进制数的互不交叠的多个连续N位,以得到相应的位向量。
10.根据权利要求8所述的方法,其中所述位长度是8的整数倍。
11.根据权利要求1所述的方法,进一步包括:
通过直接比较所述相似的文档集合中的文档的相关联的词语集合与所述目标文档的相关联的词语集合来确定更为精确的相似文档子集。
12.根据权利要求1所述的方法,其中基于所述多个文档的相应向量与所述目标文档的向量之间的差异来确定所述相似的文档集合包括:
将所述差异小于预定阈值的文档集合确定为所述相似的文档集合。
13.根据权利要求12所述的方法,进一步包括:
基于所述目标文档的向量和所述预定阈值,确定符合于所述预定阈值的向量的值区间;以及
将向量落在所述值区间内的文档集合确定为所述相似的文档集合。
14.根据权利要求12所述的方法,进一步包括:
以一为步长递增所述预定阈值,以使所述相似的文档集合包括预定数目的文档。
15.根据权利要求1所述的方法,其中与文档相关联的词语集合包括所述文档的关键词集合。
16.根据权利要求1所述的方法,其中通过词频统计或者名称实体提取增强算法来确定与文档相关联的词语集合。
17.根据权利要求1所述的方法,其中确定所述相似的文档集合包括:确定所述差异最小的前K个文档,K为大于零的整数。
18.根据权利要求1所述的方法,进一步包括:
将所述向量添加到搜索引擎的索引段中,以用于通过搜索引擎对所述向量进行搜索。
19.一种在多个文档中确定与目标文档相似的文档集合的装置,所述多个文档和所述目标文档中均包括多个词语,每个词语对应于一个不同的整数,所述装置包括:
获得单元,被配置为针对所述多个文档和所述目标文档中的每个文档,基于与文档相关联的词语集合来获得与文档相关联的整数集合;
转换单元,被配置为根据预定转换规则将与所述每个文档相关联的整数集合转换为维度相同的向量;以及
确定单元,被配置为基于所述多个文档的相应向量与所述目标文档的向量之间的差异来确定所述相似的文档集合。
20.根据权利要求19所述的装置,其中所述转换单元和所述确定单元进一步被配置为:
根据多个预定转换规则确定多个相似的文档集合;以及
将所述多个相似的文档集合的交集确定为最终的相似文档集合。
21.根据权利要求20所述的装置,进一步包括:
存储单元,被配置为使用多维的向量矩阵来存储所述多个文档中的每个文档的通过所述多个预定转换规则得到的多个向量,每个预定转换规则对应于所述向量矩阵的一个不同维度,每个向量对应于相应维度上的一个坐标值。
22.根据权利要求21所述的装置,其中所述转换单元进一步被配置为根据所述多个预定转换规则,针对新的文档得到相应的多个向量;并且
所述存储单元进一步被配置为,将所得到的多个向量存储在所述向量矩阵中。
23.根据权利要求22所述的装置,进一步包括:
标记单元,被配置为将每个维度上的与文档的向量相对应的坐标值之外的坐标值标记为“空”。
24.根据权利要求23所述的装置,其中所述确定单元进一步被配置为:
在确定所述相似的文档集合的过程中不考虑被标记为“空”的坐标值。
25.根据权利要求21所述的装置,其中所述存储单元进一步被配置为:
使用哈希图来存储所述向量矩阵。
26.根据权利要求19所述的装置,其中所述预定转换规则包括:
针对整数集合中的每个整数,获得相应的二进制数;
取出相应二进制数的连续N位,其中N为大于零的整数;
将所述连续N位转换为十进制数以替代相应整数而形成新的整数集合;以及
使用位图法将所述新的整数集合转换为位长度2N的位向量。
27.根据权利要求26所述的装置,其中所述转换单元和所述确定单元进一步被配置为:
根据多个预定转换规则确定多个相似的文档集合,其中所述多个预定转换规则分别取出所述相应二进制数的互不交叠的多个连续N位,以得到相应的位向量。
28.根据权利要求26所述的装置,其中所述位长度是8的整数倍。
29.根据权利要求19所述的装置,其中所述确定单元进一步被配置为:
通过直接比较所述相似的文档集合中的文档的相关联的词语集合与所述目标文档的相关联的词语集合来确定更为精确的相似文档子集。
30.根据权利要求19所述的装置,其中所述确定单元进一步被配置为:
将所述差异小于预定阈值的文档集合确定为所述相似的文档集合。
31.根据权利要求30所述的装置,其中所述确定单元进一步被配置为:
基于所述目标文档的向量和所述预定阈值,确定符合于所述预定阈值的向量的值区间;以及
将向量落在所述值区间内的文档集合确定为所述相似的文档集合。
32.根据权利要求30所述的装置,进一步包括:
递增单元,被配置为以一为步长递增所述预定阈值,以使所述相似的文档集合包括预定数目的文档。
33.根据权利要求19所述的装置,其中与文档相关联的词语集合包括所述文档的关键词集合。
34.根据权利要求19所述的装置,其中通过词频统计或者名称实体提取增强算法来确定与文档相关联的词语集合。
35.根据权利要求19所述的装置,其中所述确定单元进一步被配置为:
确定所述差异最小的前K个文档,K为大于零的整数。
36.根据权利要求19所述的装置,进一步包括:
添加单元,被配置为将所述向量添加到搜索引擎的索引段中,以用于通过搜索引擎对所述向量进行搜索。
37.一种计算机可读存储介质,具有存储在其上的计算机可读程序指令,所述计算机可读程序指令用于执行根据权利要求1-18中任一项所述的方法。
38.一种计算机***,包括根据权利要求19-36中任一项所述的装置。
CN201511016976.9A 2015-12-29 2015-12-29 在多个文档中确定与目标文档相似的文档集合的方法和装置 Active CN106933824B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201511016976.9A CN106933824B (zh) 2015-12-29 2015-12-29 在多个文档中确定与目标文档相似的文档集合的方法和装置
US15/385,037 US10331717B2 (en) 2015-12-29 2016-12-20 Method and apparatus for determining similar document set to target document from a plurality of documents

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201511016976.9A CN106933824B (zh) 2015-12-29 2015-12-29 在多个文档中确定与目标文档相似的文档集合的方法和装置

Publications (2)

Publication Number Publication Date
CN106933824A true CN106933824A (zh) 2017-07-07
CN106933824B CN106933824B (zh) 2021-01-01

Family

ID=59087144

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201511016976.9A Active CN106933824B (zh) 2015-12-29 2015-12-29 在多个文档中确定与目标文档相似的文档集合的方法和装置

Country Status (2)

Country Link
US (1) US10331717B2 (zh)
CN (1) CN106933824B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110866407A (zh) * 2018-08-17 2020-03-06 阿里巴巴集团控股有限公司 确定互译文本及文本间相似度分析方法、装置及设备
US11288329B2 (en) * 2017-09-06 2022-03-29 Beijing Sankuai Online Technology Co., Ltd Method for obtaining intersection of plurality of documents and document server

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110781272A (zh) * 2019-09-10 2020-02-11 杭州云深科技有限公司 一种文本匹配方法和装置、存储介质
US11836145B2 (en) * 2020-01-31 2023-12-05 EMC IP Holding Company LLC Method and system for the engramic indexing of information technology infrastructure
CN111507260B (zh) * 2020-04-17 2022-08-05 重庆邮电大学 一种视频相似度快速检测方法及检测装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101876995A (zh) * 2009-12-18 2010-11-03 南开大学 一种计算xml文档相似度的方法
EP2624149A2 (en) * 2012-02-02 2013-08-07 Xerox Corporation Document processing employing probabilistic topic modeling of documents represented as text words transformed to a continuous space
CN103294671A (zh) * 2012-02-22 2013-09-11 腾讯科技(深圳)有限公司 文档的检测方法及***

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5864855A (en) * 1996-02-26 1999-01-26 The United States Of America As Represented By The Secretary Of The Army Parallel document clustering process
US20080195567A1 (en) * 2007-02-13 2008-08-14 International Business Machines Corporation Information mining using domain specific conceptual structures
US9852337B1 (en) * 2015-09-30 2017-12-26 Open Text Corporation Method and system for assessing similarity of documents

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101876995A (zh) * 2009-12-18 2010-11-03 南开大学 一种计算xml文档相似度的方法
EP2624149A2 (en) * 2012-02-02 2013-08-07 Xerox Corporation Document processing employing probabilistic topic modeling of documents represented as text words transformed to a continuous space
CN103294671A (zh) * 2012-02-22 2013-09-11 腾讯科技(深圳)有限公司 文档的检测方法及***

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
张帆: "基于指纹检索的文本相似性检测技术研究与应用", 《中国优秀硕士学位论文全文数据库 信息科技辑》 *
王金宝 等: "RM树:一种支持字符串相似性操作的索引", 《计算机学报》 *

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11288329B2 (en) * 2017-09-06 2022-03-29 Beijing Sankuai Online Technology Co., Ltd Method for obtaining intersection of plurality of documents and document server
CN110866407A (zh) * 2018-08-17 2020-03-06 阿里巴巴集团控股有限公司 确定互译文本及文本间相似度分析方法、装置及设备
CN110866407B (zh) * 2018-08-17 2024-03-01 阿里巴巴集团控股有限公司 确定互译文本及文本间相似度分析方法、装置及设备

Also Published As

Publication number Publication date
CN106933824B (zh) 2021-01-01
US20170185671A1 (en) 2017-06-29
US10331717B2 (en) 2019-06-25

Similar Documents

Publication Publication Date Title
CN111753099B (zh) 一种基于知识图谱增强档案实体关联度的方法及***
US20190236102A1 (en) System and method for differential document analysis and storage
WO2019091026A1 (zh) 知识库文档快速检索方法、应用服务器及计算机可读存储介质
US9355171B2 (en) Clustering of near-duplicate documents
US8781815B1 (en) Non-standard and standard clause detection
WO2020114100A1 (zh) 一种信息处理方法、装置和计算机存储介质
CN106933824A (zh) 在多个文档中确定与目标文档相似的文档集合的方法和装置
US20080208566A1 (en) Automated word-form transformation and part of speech tag assignment
CN107844493B (zh) 一种文件关联方法及***
CN111159343A (zh) 基于文本嵌入的文本相似性搜索方法、装置、设备和介质
US10037381B2 (en) Apparatus and method for searching information based on Wikipedia's contents
WO2021114825A1 (zh) 机构标准化方法、装置、电子设备及存储介质
CN110532347A (zh) 一种日志数据处理方法、装置、设备和存储介质
US20230030086A1 (en) System and method for generating ontologies and retrieving information using the same
US20060248037A1 (en) Annotation of inverted list text indexes using search queries
CN106919565B (zh) 一种基于MapReduce的文档检索方法及***
CN111831624A (zh) 数据表创建方法、装置、计算机设备及存储介质
CN113742447B (zh) 基于查询路径生成的知识图谱问答方法、介质和设备
Porwal et al. A comparative analysis of data cleaning approaches to dirty data
KR101592670B1 (ko) 인덱스를 이용하는 데이터 검색 장치 및 이를 이용하는 방법
CN110471901B (zh) 数据导入方法及终端设备
JP6040141B2 (ja) キーワード付与装置、キーワード付与方法及びプログラム
KR102519955B1 (ko) 토픽 키워드의 추출 장치 및 방법
Anand et al. Integrating and querying similar tables from PDF documents using deep learning
US8176407B2 (en) Comparing values of a bounded domain

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
TA01 Transfer of patent application right

Effective date of registration: 20200423

Address after: Massachusetts, USA

Applicant after: EMC IP Holding Company LLC

Address before: Ma Sazhusaizhou

Applicant before: EMC Corp.

TA01 Transfer of patent application right
GR01 Patent grant
GR01 Patent grant