CN102982053A - 检测复制和近似复制的文件 - Google Patents

检测复制和近似复制的文件 Download PDF

Info

Publication number
CN102982053A
CN102982053A CN2012101588952A CN201210158895A CN102982053A CN 102982053 A CN102982053 A CN 102982053A CN 2012101588952 A CN2012101588952 A CN 2012101588952A CN 201210158895 A CN201210158895 A CN 201210158895A CN 102982053 A CN102982053 A CN 102982053A
Authority
CN
China
Prior art keywords
document
duplicate
technology
documents
similarity technology
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
CN2012101588952A
Other languages
English (en)
Other versions
CN102982053B (zh
Inventor
莫尼卡·H·亨津格尔
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.)
Google LLC
Original Assignee
Google LLC
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 Google LLC filed Critical Google LLC
Publication of CN102982053A publication Critical patent/CN102982053A/zh
Application granted granted Critical
Publication of CN102982053B publication Critical patent/CN102982053B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/194Calculation of difference between files
    • 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/95Retrieval from the web
    • G06F16/958Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking

Abstract

一种检测复制和近似复制的文件的方法和系统。可以通过以下方式来识别近似复制的文档:使用第一技术来处理已接受的文档集合以确定近似复制的文档的第一集合,以及使用第二技术来处理所述第一集合以确定近似复制的文档的第二集合。第一技术可以依赖于标志次序,而第二技术可以独立于次序。第一技术可以独立于标志频率,而第二技术可以依赖于频率。第一技术可以使用基于两个文档的词语或标志的子集的表示来确定这两个文档是否是近似复制件,而第二技术可以使用基于两个文档的所有词语或标志的表示来确定这两个文档是否是近似复制件。第一技术可以使用集合相交来确定文档是否是近似复制件,而第二技术可以使用随机投射来确定文档是否是近似复制件。

Description

检测复制和近似复制的文件
本申请是国际申请日为2007年8月3日、国际申请号为PCT/US2007/017487的PCT国际申请的、进入中国国家阶段的国家申请号为200780036634.0、题为“检测复制和近似复制的文件”的专利申请的分案申请。
§1.发明背景
§1.1技术领域
本发明一般涉及信息管理和检索。更具体地,本发明涉及诸如在要搜索的文档库中检测以及可选地移除复制和近似复制的信息或内容。
§1.2背景技术
在以下,术语“文档”应当被广义地解释并且可以包括诸如网页、文本文件、多媒体文件、对象特征、链接结构等内容。并且,应当注意,当检测到近似复制的文档时,作为结果,也将检测到准确复制的文档(虽然这样的准确复制件可能不一定与近似复制件相区分)。
检测近似复制的文档具有许多潜在的应用。例如,复制或近似复制的文档可以指示剽窃或著作权侵权。近似复制的文档检测的一个重要应用在于信息存储和检索的环境中。
存在检测是准确复制件的文档的高效技术。检测文档是否是近似复制件则更为困难,尤其是在文档的大型集合中。例如,因特网整体差不多包括几十亿的“网站”文档。
在以下1.2.1中,介绍了在因特网上的复制和近似复制的文档的源。然后,在以下§1.2.2中,介绍了由这些复制和近似复制的文档带来的对于终端用户和对于辅助终端用户的实体的问题。最后,在以下§1.2.3中,介绍了用于在大型文档集合的环境中检测复制和近似复制的文档的在先技术,以及所发现的这些技术的缺点。
§1.2.1在因特网上的复制和近似复制的文档的源
在因特网上,万维网(被称为“环球网(the Web)”)可以包括以不同的形式或在不同的地方复制的相同的文档。(自然地,其它的网络或甚至独立的系统可以具有复制的文档)。此处介绍这样的复制的源。
首先,一些文档在环球网的不同的站点处被“镜像”。这样的镜像被用来在许多用户试图在同一时间请求同一个文档时降低潜在的延迟,和/或将网络等待时间最小化(例如,通过将网页在本地缓存)。
第二,一些文档将具有带不同格式的不同版本。例如,给定的文档可以具有纯文本和HTML(超文本标记语言)版本使得用户能够以他们想要的形式呈现(render)或下载内容。随着越来越多的不同设备(例如,计算机、移动电话、个人数字助理等)被用来访问因特网,给定的文档可以具有越来越多的带不同格式的不同的版本(仅为文本、文本加其它媒体等)。
第三,在文档的前面和后面经常附有与其在环球网上的位置有关的信息、日期、其最近被修改的日期、版本、标题、分层分类路径(可以将网页分类在网站分层中的一个以上的类别下)等。
第四,在一些实例中,使用一致(consistent)的词语替换从现有的文档生成新的文档。例如,可以通过词语替换将网站“重新包装(re-brand)”用于不同的受众。
最后,一些网页将可从环球网上的另一个源获得的内容聚合或合并。
§1.2.2由复制和近似复制的文档带来的问题
复制和近似复制的文档给访问(例如,来自环球网的)信息的人们和帮助人们访问期望的信息的实体(例如,搜索引擎公司)两者带来了潜在的问题。以下介绍了这些潜在的问题。
虽然人们继续使用计算机来输入、操作和存储信息,考虑到数据存储、网间互联(例如,因特网)、信息的互链接和交叉引用(例如,使用超文本链接)中的发展,人们正以不断扩展的范围使用计算机(或更一般地,信息访问机器)来访问信息。
搜索引擎已被用来帮助用户发现期望的信息。搜索引擎通常根据用户查询搜索数据库化的内容或“网站”或“网页”。响应于用户的查询,返回一个以排名排序的列表,该列表通常包括所发现的内容的简单描述以及指向所发现的内容的超文本链接(即具有相关联的URL的文本)。该列表的排名排序通常是基于出现在查询中的词语和出现在内容中的词语的匹配。
从用户的角度,复制和近似复制的文档带来问题。更具体地,当用户向搜索引擎提交查询时,绝大部分都不希望到具有大量冗余信息的网页的链接(以及其描述)。例如,搜索引擎通常通过提供以十条为一组的结果来对搜索查询作出响应。如果返回了具有复制内容的页面,在一个组中的许多结果可能包括相同的内容。这样,需要避免提供与具有复制内容的网页相关联(例如具有到具有复制内容的网页的链接)的搜索结果的技术。
从托管搜索引擎的实体的角度,复制和近似复制的文档也带来问题---给予终端用户他们所想要的,为其中一条。为了理解由复制和近似复制的文档带来的其它的一些潜在问题,首先介绍一些搜索引擎技术。
大部分搜索引擎执行三个主要功能:(1)爬行环球网;(2)索引环球网的内容;以及(3)使用所述索引生成搜索结果来对搜索查询作出响应。由于有大量的可用的信息,这三个主要功能在较大程度上被自动化。爬行操作将词语或短语与文档(例如网页)关联起来,而索引操作将文档(例如网页)与词语或短语关联起来。搜索操作进而(1)使用该索引来找到包含搜索查询的各种词语的文档(例如,网页),以及(2)对根据一些探试法找到的文档进行排名或排序。
前面讲到,环球网可以包括以不同的形式或在环球网上的不同地方复制的相同的文档。例如,如在以上§1.2.1所介绍的,可以在环球网的不同的站点处“镜像”文档,文档可以具有多个不同的格式,以使用户能够以他们喜好的形式呈现或下载内容,文档可以具有在其前或其后附有不同信息的不同版本,一些文档可以是使用一致的词语替换而从其它文档生成的,并且一些文档可以将可从环球网上的另一个源获得的文档聚合或合并。期望消除这样的复制件或近似复制件。除了消除复制或近似复制的文档以达到用户期望和愿望之外,对于搜索引擎托管实体而言消除复制或近似复制的文档也是所期望的,以(1)降低存储要求(例如,对于索引和从该索引导出的数据结构),以及(2)降低处理索引、查询等所需要的时间和/或计算资源。
鉴于上述内容,需要检测(以及消除)近似复制的文档的技术。
§1.2.3用于检测复制和近似复制的文档的已知的技术以及其已知的局限性
一种朴素的解决方案是将所有的对与文档相比较。由于这对于大型的数据集极其昂贵,曼巴(U.Manber,″Finding similar files in a largefile system,″Proc.of the USENIX Winter 1994 Technical Conference(Jan.1994))和亨策(N.Heintze,"Scalable Document Fingerprinting,"Proc.of the 2nd USENIX Workshop on Electronic Commerce(Nov 1996))提出了用于检测近似复制的文档的算法,这些算法减少了比较的数量。这两个算法在相邻字符的序列上运用。布灵等人(S.Brin,J.Davis,and H.Garcia-Molina,"Copy Detection Mechanisms for Digital Documents,"1995 ACM SIGMOD International Conference on Management of Data,pp.398-409(May 1995))开始使用词语序列来检测著作权侵权。布劳德等人(A.Broder,S.Glassman,M.Manasse,and G.Zweig,"SyntacticClustering of the Web,"6th International World Wide Web Conference,pp.93-404(Apr.1997),此处以引用的方式并入)也使用了词语序列来有效地找出近似复制的网页。后来,查立卡(M.S.Charikar,"SimilarityEstimation Techniques from Rounding Algorithms,"34th Annual ACM Symposium on Theory of Computing(May 2002),在此以引用的方式并入。也参见美国专利申请公开号2006/0101060,在此也以引用的方式并入)基于对文档中的词语的随机投射开发了一种方法。最近,侯德和枣贝尔(T.C.Hoad and J.Zobel,"Methods for identifying versioned andplagiarised documents,"Journal of the American Society for Information Science and Technology,54(3),pp.203-215(2003))开发并比较了用于识别有版本的和剽窃的文档的方法。然而,不幸的是,侯德和枣贝尔推荐的技术效率较差,其具有O(N2)的计算复杂度,其中N是要与感兴趣的文档作比较的文档的数量。
§1.2.3.1对文档相似性的布劳德和查立卡算法的介绍
在布劳德和查立卡算法两者中,每一个HTML页面被转换成标志(token)序列。这两个算法仅在它们如何将标志序列转换成表示该页面的位串(bit string)上有所不同。
为了将HTML页面转换成标志序列,页面中的所有的HTML标记被替代为空格,或在格式化指令的情况下被忽略。然后将每一个最大字母数字序列看作是词语并且使用拉宾的指纹方案(M.Rabin,"Fingerprinting by random polynomials,"Report TR-15-81,Center forResearch in Computing Technology,Harvard University(1981),此处以引用的方式并入)来将其散列以生成标志,但有两个例外。
这两个算法从页面的标志序列生成位串并且使用该位串来确定该页面的近似复制件。
设n为页面的标志序列的长度。使用布劳德算法,用64位拉宾指纹对每一个有k个标志的子序列(其中这些子序列重叠)采指纹(tofingerprint),这产生了(n-k+1)个被称为“shingle”的指纹的序列。设S(d)是页面“d”的shingle的集合。布劳德算法假设两个页面d和d’在独特(unique)的shingle的百分比上相合(agree)。即,布劳德算法假设
Figure BDA00001662321400061
是d和d’的相似性的良好测量。
可以通过以m个不同的采指纹函数fi对每一个shingle采指纹来模拟以上内容,其中1≤i≤m。这导致对于每一个fi有(n-k+1)个值。对于每一个i,这些值的最小的一个被称为“第i个最小值(minvalue)”并被存储在页面中。作为结果,布劳德算法创建了最小值的m维向量。布劳德等人表明,两个页面d和d’相合的在最小值向量中的条目的期望百分比与d和d’在其上相合的独特的shingle的百分比相等。这样,为了估计两个页面的相似性,确定最小值向量中的相合的条目的百分比就足够了。为了节省空间和加速相似性计算,可以通过对不重叠的最小值的序列采指纹来将最小值的m维向量简化为supershingle的m’维向量。设m可被m’除尽并且设l=m/m’。可以用另一个采指纹函数在0≤j<m’内对最小值的串接j*l,......,(j+1)*l-1采指纹。(注意在布劳德等人的论文中还介绍了“megashingle”的概念,以进一步加快该算法。megashingle是通过对每一对supershingle采指纹而生成的,使得每一个megashingle是采指纹的supershingle对。然而,由于使用megashingle并不改善精度或查全率(recall),因此不需要使用它们)。在布劳德算法中,在且仅在两个页面的supershingle向量在至少两个supershingle上相合的情况下,该两个页面才是近似复制件(被称为“B-相似”)。在两个页面的supershingle向量中的等同条目的数量是其“B-相似性”。布劳德算法的参数是m、l、m’和k。
从以上可以了解,布劳德算法依赖于次序(例如,由于shingle是重叠的子序列的指纹),但是独立于shingle的频率。
现在描述查立卡算法。设b为常数。通过从{-1,1}中随机地选择b个条目来将每一个标志投射到b维空间。所产生的b维向量可被称为“标志向量”。不管在同一页面上或在不同的页面上出现,相同的标志将具有相同的b维表示(即,相同的“标志向量”)。对于每一个页面,通过添加页面的标志序列中的所有标志的投射(即,添加页面的“标志向量”的全部)来创建代表性的b维向量(其可以被称为“初始页面向量”)。通过将向量中的每一个正的条目设置为1以及每一个非正的条目设为0来创建该页面的最终的向量(其可以被称为“最终页面向量”)。这生成了每一个页面的随机b维投射(即,最终页面向量)。最终页面向量具有以下性质:两个页面的余弦相似性与两个对应的投射相合的位的数量成比例。即,查立卡算法中的两个页面的相似性(被称为“C-相似性”)是其投射相合的位的数量。在查立卡算法中,如果两个页面的投射中的相合的位的数量超过固定的阈值t,则这两个页面是近似复制件(或者是C-相似)。
从以上可以看出,给定了最小值的定义(从该定义产生了supershingle甚或megashingle),布劳德的技术使用基于所分析的原始文档的词语(或标志)的子集的表示。在另一个方面,查立卡的技术使用基于所分析的原始文档的所有词语(没有被预处理所移除)(或标志)的表示。即,查立卡的技术可以考虑作为输入被接受的文档的所有词语(或标志)。而且,布劳德的技术使用集合相交来确定文档是否是近似复制件。在另一方面,查立卡的技术使用随机投射来确定文档是否是近似复制件。
从以上可以看出,在两个算法中,带有相同的标志序列的页面被分配相同的位串。查立卡算法忽视标志的次序(给定了从标志向量生成页面向量的附加方面)。布劳德算法的shingle是基于标志的次序的。然而,布劳德算法忽视了shingle的频率。在另一方面,查立卡算法考虑了词语的频率(同样,给定了从标志向量生成页面向量的附加方面)。对于这两个算法,可以有伪正值(作为近似复制件而被返回的非近似复制的对)以及伪负值(没有作为近似复制件而被返回的近似复制的对)。
设T为在所有文档中的标志的数量的总和,并且设D为文档的数量。布劳德算法花费O(Tm+Dm′)=O(Tm)的时间。布劳德算法花费O(Tb)的时间来确定每一个页面的向量。如以下所述,可以使用类似于supershingle的技巧来计算C-相似的对。这花费O(D)的时间,使得查立卡算法的总时间为O(Tb)。
符合本发明的一些实施例可以进一步(d)使用第二文档相似性技术来处理文档的集合以确定近似复制的文档的第三集合,(e)通过确定近似复制的文档的第二集合和近似复制的文档的第三集合的并集来确定近似复制的文档的第四集合。
§1.2.3.2对布劳德和查立卡算法的评估
本发明人根据以下三个标准在16亿个不同的网页上评估了布劳德和查立卡算法---(1)随机子集上的精度,(2)每一个近似复制的对的词语差异的数量分布,以及(3)每一个页面的近似复制件的数量分布。布劳德算法中的所有参数均根据文献中所建议而设置。选择查立卡算法中的参数,使得其对每个文档使用同样数量的空间并且返回大约同样数量的正确的近似复制的对(即,具有大约相同的查全率)。
本发明人发现,查立卡算法实现了0.50的精度,而布劳德算法实现了0.38的精度。对于在同一站点(低精度)上的近似复制的对以及对于在不同站点(高精度)上的近似复制的对,发现这两个算法的执行效率大致相同。然而,超过90%的由布劳德算法发现的近似复制的对属于同一站点,但是只有74%的由查立卡算法发现的近似复制的对属于同一站点。
这样,查立卡算法发现更多的精度较高的近似复制的对。对于这两个算法,发现每一个近似复制的对的词语差异的数量非常相似,但是布劳德算法返回了更少的带有非常大的词语差异的对。对于这两个算法,发现每一个页面的近似复制件的数量分布遵循幂律(power-law)。然而,发现布劳德算法在幂律曲线周边具有更高的“展形(spread)”。本发明人相信该“噪音”的可能原因是在布劳德算法中表示页面的位串是基于页面中的词语的随机选择的子集的。因而,可以有“幸运的”和“不幸的”选择,所述选择导致伪近似复制的对或错过实际上的近似复制的对。查立卡算法没有选择词语的子集而是基于页面中的所有词语。
本发明人发现,这两个算法对于发现在同一网站上的近似复制的对表现均不良好,虽然这两个算法对于在不同网站上的近似复制的对实现了较高的精度。
鉴于此,提供改进的技术来发现近似复制的文档将会是有用的。如果这样的技术改进了布劳德和查立卡算法的精度,则将会是有用的。最后,如果这样的技术对找出在同一个网站上以及在不同的网站上的近似复制的对有效的话,将会是有用的。
§2.发明内容
符合本发明的一些实施例可以通过以下来检测近似复制的文档(a)接受的文档的集合,(b)使用第一文档相似性技术处理所述文档的集合以确定近似复制的文档的第一集合,以及(c)使用第二文档相似性技术处理所述近似复制的文档的第一集合以确定近似复制的文档的第二集合。
在符合本发明的至少一些实施例中,第一文档相似性技术可以依赖于标志次序,并且第二文档相似性技术可以独立于次序。
在符合本发明的至少一些实施例中,第一文档相似性技术可以独立于标志频率,并且第二文档相似性技术可以依赖于频率。
在符合本发明的至少一些实施例中,第一文档相似性技术可以使用基于两个文档的词语或标志的子集的表示来确定所述两个文档是否是近似复制件,并且第二文档相似性技术可以使用基于两个文档的所有词语或标志的表示来确定所述两个文档是否是近似复制件。
在符合本发明的至少一些实施例中,第一文档相似性技术可以使用集合相交来确定文档是否是近似复制件,并且第二文档相似性技术可以使用随机投射来确定文档是否是近似复制件。
符合本发明的至少一些其它实施例可以通过以下来识别近似复制的文档:(a)接受文档的集合,以及(b)处理所述文档的集合以确定近似复制的文档,其中使用第一文档相似性技术为来自相同网站的文档确定近似复制的文档,并且其中使用第二文档相似性技术为来自不同网站的文档确定近似复制的文档。
§3.附图说明
图1是在其中可以使用本发明的至少一些方面的环境的框图。
图2是高级搜索工具的过程气泡图,在所述高级搜索工具中可以使用本发明的至少一些方面。
图3是用于以符合本发明的方式确定近似复制的文档的示例方法的流程图。
图4是用于以符合本发明的方式从近似复制的文档的初始集合确定近似复制的文档的最终集合的示例方法的流程图。
图5是一种机器的框图,所述机器可以被用来以符合本发明的方式执行一个或多个以上所述的操作,和/或存储这些操作所生成的和/或所使用的信息。
§4.具体实施方式
本发明可以涉及用于确定文档是否相似的新的方法、装置、消息格式和/或数据结构。提供了以下的描述来使本领域的技术人员做出和使用本发明,并且是在特定应用和其需求的环境下提供了以下描述。因此,对符合本发明的实施例的以下描述提供了图示和描述,但是并不意在穷举或将本发明限定在所公开的精确形式。对于本领域的技术人员对所公开的实施例的各种修改都是显而易见的,并且可以将以下披露的一般原理应用到其它实施例和应用中。例如,虽然可以参考流程图描述一系列动作,但是在其它实施方式中当一个动作的执行不依赖于另一个动作的完成时动作的次序可以不一样。并且,非依赖的动作可以并行执行。在描述中使用的元素、动作或指令都不应当被解释为对于本发明是关键的或至关重要的,除非清楚地表述为此。并且,如在此所使用的,不加数量词的项表示包括一个或多个项。在想要表达一个项的地方,使用了术语“一个”或类似语言。在下面,“信息”可以指实际的信息,或指向这样的信息的指针或这样的信息的位置。这样,本发明并不意在被限定在所示出的实施例,并且发明人认为其发明包括所描述的任何可授予专利的主题。
在以下的§4.1中,介绍了在其中可以使用本发明的环境。接着,在§4.2中描述了符合本发明的示例实施例。最后,在§4.3中阐明了关于本发明的一些结论。
§4.1在其中可以实施发明的示例环境
提供了以下的示例实施例来说明符合本发明的实施例的用途的示例,以及说明这样的实施例可以在其中实施的环境的示例。然而,可以将本发明用在其它环境中并且其使用并不意在被限定在以下分别参考图1和2介绍的示例环境100和搜索工具200。
图1是环境100的框图,在该环境中可以使用本发明的至少一些方面。该环境100可以是网络(诸如因特网)160,在该网络中使用信息访问工具(客户端)110来呈现所访问的来自一个或多个内容提供者(服务器)180的信息。可以由信息访问工具110使用搜索工具(服务器)130来搜索感兴趣的内容。
信息访问工具110可以包括浏览操作112,其可以包括导航操作114和用户界面操作116。浏览操作112可以经由输入/输出接口操作118访问网络160。例如,在个人计算机的情况下,浏览操作112可以是浏览器(诸如Mozilla的“Firefox”,华盛顿州雷德蒙德的微软公司的“Internet Explorer”,Opera Software的“Opera”,时代华纳公司的“Netscape”),并且输入/输出接口操作可以包括调制解调器或网络接口卡(或NIC)和网络软件。可能的信息访问工具110的其它示例包括诸如个人数字助理和移动电话的无线(untethered)设备、机顶盒、信息站等。
每一个内容提供者180可以包括:存储的资源(也称为内容)136,响应于请求访问和提供内容的资源检索操作184,以及输入/输出接口操作182。内容提供者180的这些操作可以由诸如个人计算机或服务器的计算机执行。相应地,可以将存储的资源186实现为存储在某种类型的存储介质上的数据,所述存储介质诸如磁盘、光盘等。在该特定环境100中,术语“文档”可以被解释为包括可寻址内容,诸如网页。
搜索工具130可以执行爬行、索引/排序以及查询处理功能。这些功能可以由同一实体或分离的实体执行。而且,可以在同一位置或在不同的位置执行这些功能。在任何情况下,在爬行工具150处,爬行操作152从可经由网络160访问的各种源获得内容,并且存储这样的内容,或这样的内容的一种形式,如154所示。接着,在自动的索引/排序工具140处,自动的索引/排序操作142可以访问存储的内容154并且可以生成内容索引(例如,反向索引,如以下所述)以及内容评级(例如,PageRank,如以下所述)140。最后,查询处理操作134接受查询并基于内容索引(以及内容评级)140返回查询结果。爬行、索引/排序以及查询处理功能可以由一个或多个计算机执行。
虽然可以将符合本发明的实施例与多个不同类型的搜索引擎一起使用,但是其可以与高级搜索工具一起使用,诸如现在可从加利福尼亚的山景城的谷歌公司获得的高级搜索工具。图2是这样的高级搜索工具200的过程气泡图,在该高级搜索工具中,可以使用符合本发明的实施例的至少一些方面。
在图2中图示的高级搜索工具200执行三个主要功能:(1)爬行;(2)索引/排序;以及(3)搜索。图2中的水平虚线将其分为对应于这三个主要功能的三个部分。更具体地,第一部分150’对应于爬行功能,第二部分140’对应于索引/排序功能,并且第三部分134’对应于搜索(或查询处理)功能。(注意,在标号后面的撇号是用来指示:所引用的项仅是不带撇号的该标号所引用的项的一个示例)。在以下将对这些部分的每一个作更详细的介绍。然而,在此之前,先介绍该高级搜索工具200的一些区别特征。
高级搜索工具使用环球网的链接结构以及其它技术,以改善搜索结果。(参见例如美国专利No.6,285,999以及论文:S.Brin和L.Page,"The Anatomy of a Large-Scale Hypertextual Search Engine,"Seventh International World Wide Web Conference,Brisbane,Australia,此处以引用的方式并入两者)
回见图2,现在进一步描述高级搜索引擎200的三个主要部分。
爬行部分150’可以跨多个机器分布。单个URL服务器(未示出)将统一资源定位符(“URL”)的列表206派发到多个爬行器。基于该URL列表206,爬行操作202爬行网络160’并获得网页208。接着预索引操作210可以从这些页面208生成页面排名212以及库214。页面排名212可以包括多个URL指纹(即独特值)及PageRank值(如上所述)的对。库214可以包括URL、内容类型和压缩页面的三元组。
对于索引/排序部分140’,索引/排序操作220可以生成反向索引226。索引/排序操作220也可以从引文(citation)排名212生成页面排名228。页面排名228可以包括文档ID及PageRank值的对。
对于查询处理部分134’,搜索操作230可以由web服务器运行并可以响应于查询使用词典232以及反向索引226和PageRank 228以生成查询结果。查询结果可以是基于以下的组合:(1)从PageRank 228导出的信息,以及(2)从特定文档与包含在该查询中的词语(也被称为信息检索(或“IR”)部件)匹配程度而导出的信息。以上描述了本发明可以在其中使用的示例环境,下面将在§4.2中描述符合本发明的示例实施例。
§4.2示例实施例
以下在§4.2.1中将描述符合本发明的示例方法。接着,在§4.2.2中将描述符合本发明的示例装置。最后,在§4.2.3中将描述这样的实施例的改进替选和扩展。
§4.2.1示例方法
图3是用于以符合本发明的方式确定近似复制的文档的示例方法300的流程图。如所示出,示例方法300接受文档集合(框310)。接着可以使用第一文档相似性技术处理该文档集合以确定近似复制的文档的初始集合(框320)。最后,在离开方法300(节点340)前,可以使用第二文档相似性技术处理所述近似复制的文档的初始集合以确定近似复制的文档的最终集合(框330)。
回见框310,在符合本发明的一些实施例中,文档可以是网页。在符合本发明的其它实施例中,文档可以是从诸如网页的源文档导出的标志序列位串的集合。
回见框320,在符合本发明的一些实施例中,第一文档相似性技术可以依赖于次序,和/或独立于频率(例如,对于文档词语、文档n-gram(n阶),文档标志等而言)。
仍然回见框320,在符合本发明的一些实施例中,第一文档相似性技术可以包括(1)将每一个k个标志的子序列采指纹以生成(n-k+1)个shingle,(2)用m个不同的采指纹函数fi对每一个shingle采指纹,以对于所述m个采指纹函数fi的每一个生成(n-k+1)个值,其中1≤i≤m,(3)对于每一个i,确定最小的值以创建最小值(minvalue)的m维向量,(4)通过对最小值的非重叠序列采指纹来将所述最小值的m维向量降低至supershingle的m’维向量,以及(5)在且仅在两个文档的supershingle的向量在至少两个supershingle上相合的情况下(或者替选地,在这两个文档在至少一个megashingle上相合的情况下),推断所述两个文档是近似复制件。第一文档相似性技术可以是在以上§1.2.3中介绍的布劳德论文中所描述的或者在费特立的论文中(D.Fetterly,M.Manasse,and M.Najork,"On the Evolution of Clusters ofNear-Duplicate Web Pages,"1st Latin American Web Congress,pp.37-45(Nov.2003);以及D.Fetterly,M.Manasse,and M.Najork,"DetectingPhrase-Level Duplication on the World Wide Web,"28th Annual International ACM SIGIR Conference(Aug.2005),两者均以引用的方式并入)所描述的任何技术。在这样的实施例中,参数m可以被设置为84,参数l可以被设为14,参数m’可以被设为6以及参数k可以被设为从5到10的任何值(例如8)。符合本发明的一些实施例可以使用以下的参数值:m=84;l=14;m’=6;并且k=在5到10中间的某个值。符合本发明的一些实施例可以省去shingling“窗口”从文档结尾的包覆,在该情况下生成(n-k+1)个shingle。在另一方面,如果shingling窗口可以从文档的结尾包覆到文档的开头,则生成n个shingle。
回见框330,在符合本发明的一些实施例中,第二文档相似性技术可以独立于次序,和/或依赖于频率(例如,对于文档词语、文档n-gram、文档标志等而言)。
仍然回见框330,在符合本发明的一些实施例中,文档集合可以是标志序列位串的集合,并且第二文档相似性技术可以包括(1)通过从{-1,1}随机选择预定数量b的条目来将每一个标志投射到b维空间,(2)对于每一个文档,通过添加其标志序列中的所有标志的投射来创建b维向量,并且通过将b维向量中的每一个正的条目设置为1以及每一个非正的条目为0来创建该文档的最终向量,以及(3)基于在两个文档的对应的投射上相合的位的数量来确定这两个文档之间的相似性。第二文档相似性技术可以是在以上§1.2.3节中介绍的查立卡的论文中所描述的任何技术。在这样的实施例中,可以设置参数b,使得对每个文档存储48字节的位串(例如,b可以被设置为384)。自然地,符合本发明的一些实施例可以为参数b选择使用更少(或更多)空间的值。
在符合本发明的一些实施例中,第二技术可以在重叠的标志序列(即shingle)上而不是在各个标志上操作。
仍然回见图3的框330,图4是用于以符合本发明的方式从近似复制的文档的初始集合确定近似复制的文档的最终集合的示例方法400的流程图。如所示出,示例方法400可以接受近似复制的文档的初始集合(框410)。
如循环420-460所示,对于初始集合中的近似复制的文档的每一对可以执行多个动作。具体地,可以使用第二文档相似性技术确定相似性值(框430),接着可以确定所确定的相似性值是否小于阈值(判断框440)。如果确定所确定的相似性值小于阈值,则在方法400前进到框460之前,可以从初始集合中移除近似复制的文档的当前对以生成更新后的集合(框450)。另一方面,如果确定所确定的相似性值不小于阈值,则方法400可以直接前行至框460。
回见框460,一旦初始集合中的近似复制的文档的所有对已被处理,在离开方法400之前(节点480),可以将近似复制的文档的最终集合设置为近似复制的文档的最新更新的集合(或在所确定的相似性值从未小于阈值情况下,设置为近似复制的文档的初始集合)(框470)。
回见框410,在符合本发明的一些实施例中,文档的集合可以是网页。替选地,文档的集合可以是标志序列位串的集合。
回见框430,在符合本发明的一些实施例中,第二文档相似性技术可以包括(1)通过从{-1,1}中随机选择预订数量b的条目来将多个标志序列位串中的每一个投射到b维空间,(2)对于每一个文档,通过添加在其标志序列中的所有标志的投射来创建b维向量,并且通过将b维向量中的每一个正的条目设置为1以及每一个非正的条目为0来创建该文档的最终向量,以及(3)基于在两个文档的对应的投射上相合的位的数量来确定这两个文档之间的相似性。回见框440,在这样的实施例中,预定数量b可以是384并且阈值可以被设置为372。在符合本发明的一些实施例中,阈值可以被设置为预定数量b的大约97%(或至少96%)。预定数量b可以是更低的值。例如,将b设置为低至192的值已经给出了良好的结果。实际上,本发明人相信将b设置为100或稍微更低的值可以提供适当的结果。在b值的这些较低设置中,阈值可以被设置为b的大约97%,或至少b的96%。
§4.2.2示例装置
图5是机器500的框图,所述机器可以被用来以符合本发明的方式执行以上所述的一个或多个操作,和/或存储这样的操作所生成的和/或使用的信息。机器500基本上包括处理器510、输入/输出接口单元530、存储设备520以及用于促进所耦接的元件之间的信息通信的系统总线或网络540。输入设备532和输出设备534可以与输入/输出接口530耦接。
处理器510可以执行机器可执行指令以对本发明的一个或多个方面起作用。机器可执行指令的至少一部分可以(临时地或更永久地)存储在存储设备520中和/或可以经由输入接口单元530从外部源接收。
可以在诸如计算机模块的计算机可执行指令的一般环境中执行符合本发明的示例实施例的一些方面,这可以由个人计算机执行。然而,可以由其它装置执行方法(并且数据结构可以存储在其它设备中)。程序模块可以包括执行操作或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等。而且,本领域的技术人员将会明白,本发明的至少一些方面可以与其它配置一起实现,包括手持设备、多处理器系统、基于微处理器或可编程的消费电子设备、网络计算机、微型计算机、机顶盒、大型机等。本发明的至少一些方面也可以在分布式计算环境中实现,在所述环境中通过经通信网络链接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于本地和/或远程存储器存储设备中。
在符合本发明的一个实施例中,机器500可以是一个或多个传统个人计算机或服务器。在该情况下,处理单元510可以是一个或多个微处理器,总线540可以包括系统总线,所述系统总线将包括系统存储器的各种系统组件耦接到处理单元。系统总线540可以是多个类型的总线结构中的任一个,包括使用各种总线结构中的任一个的存储器总线或存储器控制器、外围设备总线和本地总线。存储设备520可以包括系统存储器,诸如只读存储器(ROM)和/或随机存取存储器(RAM)。基础输入/输出系统(BIOS),包括帮助诸如在开机期间在个人计算机中的元件之间转移信息的基础例程,可以被存储在ROM中。存储设备520也可以包括用于从硬盘读取及写入到硬盘的硬盘驱动,用于从(例如,可移除的)磁盘读取和写入到(例如,可移除的)磁盘的磁盘驱动,以及用于从可移除的(磁)光盘读取及写入到可移除的(磁)光盘的光盘驱动,所述可移除的(磁)光盘诸如致密型盘或其它(磁)光介质。所述硬盘驱动、磁盘驱动以及(磁)光盘驱动可以分别通过硬盘驱动接口、磁盘驱动接口和(磁)光盘驱动接口来耦接到系统总线540。这些驱动和其相关联的存储介质可以提供对机器可读指令、数据结构、程序模块和用于个人计算机的其它数据的非易失性存储。虽然在此描述的示例环境使用硬盘、可移除磁盘以及可移除光盘,本领域的技术人员将会明白,可以替代上述存储设备或在上述存储设备之外使用(带有适当的接口设备的)其它类型的存储介质。
用户可以通过诸如键盘和指示设备(例如鼠标)的输入设备532将指令和信息输入到个人计算机。也可以(或替选地)包括诸如麦克风、游戏操纵杆、游戏垫、卫星蝶形天线、扫描器等的其它输入设备。这些和其它的输入设备通常通过耦接到系统总线540的串行端口接口530连接到处理单元510。输入设备可以通过诸如并行端口、游戏端口或通用串行总线(USB)的其它接口530来连接。然而,在搜索工具130的环境下,除了需要用来接受查询的输入设备以及可能用于系统管理和维护的输入设备之外,不需要任何输入设备。
外部设备534可以包括监视器或其它类型的显示设备,其也可以经由诸如视频适配器的接口530连接到系统总线540。除了监视器之外(或替代监视器),个人计算机可以包括其它(外围)输出设备(未示出),诸如扬声器和打印机。再次,在搜索工具130的环境下,除了需要用来传递查询结果的输出设备以及可能用于系统管理和维护的输入设备之外,不需要任何输出设备。
计算机可以在联网的环境中运行,所述联网的环境限定到一个或多个远程计算机的逻辑和/或物理连接,诸如远程计算机。远程计算机可以是另一个个人计算机、服务器、路由器、网络计算机、对等设备和其它常见网络节点,并且可以包括以上相对于个人计算机描述的许多或所有的元件。逻辑和/或物理连接可以包括局域网(LAN)和广域网(WAN)。可以替代这样的网络或除了这样的网络之外使用内联网和因特网。
当在LAN中使用时,个人计算机可以通过网络接口适配器(或“NIC”)530连接到LAN。当在诸如因特网的WAN中使用时,个人计算机可以包括调制解调器或用于在广域网上建立通信的其它设备。在联网环境中,相对于个人计算机所描述的至少一些程序模块可以被存储在远程存储器存储设备中。所示出的网络连接是示例性的,并且可以使用在计算机之间建立通信链接的其它设备。
再次回见图1,信息访问工具110可以是个人计算机,浏览操作112可以是因特网浏览器,并且输入/输出接口操作118可以包括通信软件和硬件。其它信息访问工具110可以是诸如移动电话、个人数字助理等的无线设备或诸如机顶盒、网络用具等的其它信息用具。
§4.2.3改进、替代和扩展
虽然符合本发明的实施例被描述为处理网页文档,但是符合本发明的实施例能够在各种其它类型的文档(例如,从其它文档提取的摘录、文本文档、电子表格、数据库记录、媒体流、电子邮件、电子邮件垃圾、位序列、遗传序列、核苷酸序列、化学结构的表示、分子结构的表示、物理物体的特征等)上操作。这样,符合本发明的实施例具有各种应用。例如,符合本发明的实施例可以被用于检测垃圾邮件,因为垃圾邮件通常被复制许多次,也许只带有微小的差异。作为另一个示例,符合本发明的实施例可以被用来检测新闻故事的冗余摘录。
一些近似复制的文档检测算法在来自同一网站的网页的对上表现较差。本发明人相信这主要是由于样板文件文本的缘故。在一些符合本发明的替代实施例中,在近似复制的文档分析中样板文件可以被检测,然后被移除或忽略。替选地,或额外地,用来分析在同一个网站上的网页以发现近似复制的文档的算法可以不同于(并且潜在地慢于)用来分析在不同网站上的网页的对的另一个算法。
回见图3的框320,符合本发明的一些实施例可以修改第一文档相似性技术,使得通过频率来对特征加权。
仍然回见图3,虽然符合本发明的示例方法描述了第一文档相似性技术继之第二文档相似性技术的简单情况,但是可以使用多于两个文档相似性技术。替选地,或额外地,可以使用至少两个文档相似性技术,其中至少一个可以被迭代地应用。
在上述一些示例实施例中,在基于布劳德-费特立的技术之后运行了基于查立卡的技术。这是因为基于查立卡的技术能够被调节到比基于布劳德-费特立的技术(例如,6个匹配supershingle中的2个)更精细的程度(例如,在384位向量中有372个位相匹配)。因此,在这样的实施例中,第二技术能够被调节到比第一技术更精细的程度。然而,在符合本发明的替代实施例中,可以使用其它的考虑来确定先运行哪一个技术。例如,在符合本发明的一些实施例中,第二技术可以比第一技术花费更长时间来运行(和/或需要更多存储)。
回想一下,可以将文档处理来生成标志。符合本发明的一些实施例可以对URL和/或图像应用专门的处理。例如,在符合本发明的一些实施例中,包含在页面的文本中的每一个URL可以在斜线和点处被截断,并且被当作独立的词语的序列。在符合本发明的一些实施例中,为了区别带有不同的图像的页面,在IMG标签中的URL可以被看作是页面中的词语。更具体地,如果URL指向不同的主机,整个URL可以被看作词语。在另一方面,如果URL指向页面的主机自身,则只有URL的文件名可以被作为词语使用。这样,如果页面和在同一主机上的该页面的图像在不同的主机上被镜像,则IMG标签的URL可以生成原始和镜像版本的相同的标志。可以使用其它替选技术来处理URL。实际上,符合本发明的一些实施例可以忽略URL,或仅仅将URL当作词语。
虽然上述示例实施例可以使用拉宾的采指纹技术来生成标志,可以使用其它采指纹技术来生成标志(例如,在侯德和枣贝尔的论文中提及的采指纹技术)。
符合本发明的一些实施例可以通过以下方式来增加查全率:除了如上所述确定近似复制的文档的“最终”集合之外,使用基于查立卡的技术(优选地以高阈值,诸如b的97%,或至少b的96%)来确定近似复制的文档的第二最终集合。将近似复制的文档的所述最终集合和第二最终集合相并以获得近似复制的文档的“高查全率”的集合。
§4.3结论
如从以上可以了解到的,公开了改进的近似复制检测技术。这些近似复制检测技术表现良好,尤其是在对来自同一网站的网页进行分析时。这些技术在返回的正确对的数量上没有牺牲很多的情况下做到了以上这些。

Claims (9)

1.一种计算机实现的方法,包括:
接受文档的集合;以及
对所述文档的集合进行处理以确定近似复制的文档,所述处理包括对于所述文档的集合中的一个或多个文档对:
确定每个文档对中的文档是否来自相同的网站;以及
当文档对是来自相同的网站时,使用第一文档相似性技术确定每个文档对是否是近似复制的文档,当文档对是来自不同的网站时,使用第二文档相似性技术确定每个文档对是否是近似复制的文档,其中所述第一文档相似性技术和所述第二文档相似性技术是不同的文档相似性技术。
2.如权利要求1所述的方法,其中,所述第一文档相似性技术依赖于标志次序并且独立于标志频率。
3.如权利要求1所述的方法,其中,所述第二文档相似性技术独立于标志次序并且依赖于标志频率。
4.一种系统,包括:
一个或多个计算机,所述一个或多个计算机被配置为执行包括以下的操作:
接受文档的集合;以及
对所述文档的集合进行处理以确定近似复制的文档,所述处理包括对于所述文档的集合中的一个或多个文档对:
确定每个文档对中的文档是否来自相同的网站;以及
当文档对是来自相同的网站时,使用第一文档相似性技术确定每个文档对是否是近似复制的文档,当文档对是来自不同的网站时,使用第二文档相似性技术确定每个文档对是否是近似复制的文档,其中所述第一文档相似性技术和所述第二文档相似性技术是不同的文档相似性技术。
5.如权利要求4所述的系统,其中,所述第一文档相似性技术依赖于标志次序并且独立于标志频率。
6.如权利要求4所述的系统,其中,所述第二文档相似性技术独立于标志次序并且依赖于标志频率。
7.一种机器可读介质,在所述机器可读介质上存储有机器可执行指令,所述机器可执行指令在被机器执行时促使机器执行包括以下的操作:
接受文档的集合;以及
对所述文档的集合进行处理以确定近似复制的文档,所述处理包括对于所述文档的集合中的一个或多个文档对:
确定每个文档对中的文档是否来自相同的网站;以及
当文档对是来自相同的网站时,使用第一文档相似性技术确定每个文档对是否是近似复制的文档,当所述文档对是来自不同的网站时,使用第二文档相似性技术确定每个文档对是否是近似复制的文档,其中所述第一文档相似性技术和所述第二文档相似性技术是不同的文档相似性技术。
8.如权利要求7所述的机器可读介质,其中,所述第一文档相似性技术依赖于标志次序并且独立于标志频率。
9.如权利要求7所述的机器可读介质,其中,所述第二文档相似性技术独立于标志次序并且依赖于标志频率。
CN201210158895.2A 2006-08-04 2007-08-03 检测复制和近似复制的文件 Active CN102982053B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US11/499,260 US8015162B2 (en) 2006-08-04 2006-08-04 Detecting duplicate and near-duplicate files
US11/499,260 2006-08-04
CN2007800366340A CN101523343B (zh) 2006-08-04 2007-08-03 检测复制和近似复制的文件

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
CN2007800366340A Division CN101523343B (zh) 2006-08-04 2007-08-03 检测复制和近似复制的文件

Publications (2)

Publication Number Publication Date
CN102982053A true CN102982053A (zh) 2013-03-20
CN102982053B CN102982053B (zh) 2016-08-10

Family

ID=39033519

Family Applications (2)

Application Number Title Priority Date Filing Date
CN201210158895.2A Active CN102982053B (zh) 2006-08-04 2007-08-03 检测复制和近似复制的文件
CN2007800366340A Active CN101523343B (zh) 2006-08-04 2007-08-03 检测复制和近似复制的文件

Family Applications After (1)

Application Number Title Priority Date Filing Date
CN2007800366340A Active CN101523343B (zh) 2006-08-04 2007-08-03 检测复制和近似复制的文件

Country Status (5)

Country Link
US (2) US8015162B2 (zh)
EP (1) EP2054797A4 (zh)
CN (2) CN102982053B (zh)
CA (1) CA2660202C (zh)
WO (1) WO2008019133A2 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111367563A (zh) * 2020-03-06 2020-07-03 中国银行股份有限公司 主机版本合并方法及装置

Families Citing this family (98)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6658423B1 (en) * 2001-01-24 2003-12-02 Google, Inc. Detecting duplicate and near-duplicate files
US7685126B2 (en) 2001-08-03 2010-03-23 Isilon Systems, Inc. System and methods for providing a distributed file system utilizing metadata to track information about data stored throughout the system
US7146524B2 (en) 2001-08-03 2006-12-05 Isilon Systems, Inc. Systems and methods for providing a distributed file system incorporating a virtual hot spare
WO2004046971A1 (en) 2002-11-14 2004-06-03 Isilon Systems, Inc. Systems and methods for restriping files in a distributed file system
US7739363B1 (en) * 2003-05-09 2010-06-15 Apple Inc. Configurable offline data store
US8051425B2 (en) 2004-10-29 2011-11-01 Emc Corporation Distributed system with asynchronous execution systems and methods
US8238350B2 (en) 2004-10-29 2012-08-07 Emc Corporation Message batching with checkpoints systems and methods
US8055711B2 (en) * 2004-10-29 2011-11-08 Emc Corporation Non-blocking commit protocol systems and methods
US7788303B2 (en) 2005-10-21 2010-08-31 Isilon Systems, Inc. Systems and methods for distributed system scanning
US7797283B2 (en) 2005-10-21 2010-09-14 Isilon Systems, Inc. Systems and methods for maintaining distributed data
US7917474B2 (en) * 2005-10-21 2011-03-29 Isilon Systems, Inc. Systems and methods for accessing and updating distributed data
US7551572B2 (en) * 2005-10-21 2009-06-23 Isilon Systems, Inc. Systems and methods for providing variable protection
US7848261B2 (en) * 2006-02-17 2010-12-07 Isilon Systems, Inc. Systems and methods for providing a quiescing protocol
US8370455B2 (en) * 2006-03-09 2013-02-05 24/7 Media Systems and methods for mapping media content to web sites
US7756898B2 (en) * 2006-03-31 2010-07-13 Isilon Systems, Inc. Systems and methods for notifying listeners of events
US7676465B2 (en) * 2006-07-05 2010-03-09 Yahoo! Inc. Techniques for clustering structurally similar web pages based on page features
US7941420B2 (en) * 2007-08-14 2011-05-10 Yahoo! Inc. Method for organizing structurally similar web pages from a web site
US8539056B2 (en) * 2006-08-02 2013-09-17 Emc Corporation Systems and methods for configuring multiple network interfaces
US7882071B2 (en) 2006-08-18 2011-02-01 Isilon Systems, Inc. Systems and methods for a snapshot of data
US7680836B2 (en) * 2006-08-18 2010-03-16 Isilon Systems, Inc. Systems and methods for a snapshot of data
US7680842B2 (en) * 2006-08-18 2010-03-16 Isilon Systems, Inc. Systems and methods for a snapshot of data
US7676691B2 (en) * 2006-08-18 2010-03-09 Isilon Systems, Inc. Systems and methods for providing nonlinear journaling
US7899800B2 (en) * 2006-08-18 2011-03-01 Isilon Systems, Inc. Systems and methods for providing nonlinear journaling
US7953704B2 (en) * 2006-08-18 2011-05-31 Emc Corporation Systems and methods for a snapshot of data
US7822932B2 (en) * 2006-08-18 2010-10-26 Isilon Systems, Inc. Systems and methods for providing nonlinear journaling
US7590652B2 (en) 2006-08-18 2009-09-15 Isilon Systems, Inc. Systems and methods of reverse lookup
US7752402B2 (en) * 2006-08-18 2010-07-06 Isilon Systems, Inc. Systems and methods for allowing incremental journaling
US8286029B2 (en) 2006-12-21 2012-10-09 Emc Corporation Systems and methods for managing unavailable storage devices
US7593938B2 (en) * 2006-12-22 2009-09-22 Isilon Systems, Inc. Systems and methods of directory entry encodings
US8234277B2 (en) * 2006-12-29 2012-07-31 Intel Corporation Image-based retrieval for high quality visual or acoustic rendering
US7509448B2 (en) 2007-01-05 2009-03-24 Isilon Systems, Inc. Systems and methods for managing semantic locks
US8966080B2 (en) * 2007-04-13 2015-02-24 Emc Corporation Systems and methods of managing resource utilization on a threaded computer system
US7900015B2 (en) * 2007-04-13 2011-03-01 Isilon Systems, Inc. Systems and methods of quota accounting
US7779048B2 (en) * 2007-04-13 2010-08-17 Isilon Systems, Inc. Systems and methods of providing possible value ranges
US7698317B2 (en) * 2007-04-20 2010-04-13 Yahoo! Inc. Techniques for detecting duplicate web pages
US20090012984A1 (en) * 2007-07-02 2009-01-08 Equivio Ltd. Method for Organizing Large Numbers of Documents
US7966289B2 (en) * 2007-08-21 2011-06-21 Emc Corporation Systems and methods for reading objects in a file system
US7949692B2 (en) 2007-08-21 2011-05-24 Emc Corporation Systems and methods for portals into snapshot data
US7882068B2 (en) 2007-08-21 2011-02-01 Isilon Systems, Inc. Systems and methods for adaptive copy on write
US7895225B1 (en) * 2007-12-06 2011-02-22 Amazon Technologies, Inc. Identifying potential duplicates of a document in a document corpus
US8131751B1 (en) 2008-01-18 2012-03-06 Google Inc. Algorithms for selecting subsequences
US8184953B1 (en) * 2008-02-22 2012-05-22 Google Inc. Selection of hash lookup keys for efficient retrieval
US8239387B2 (en) * 2008-02-22 2012-08-07 Yahoo! Inc. Structural clustering and template identification for electronic documents
US7984324B2 (en) 2008-03-27 2011-07-19 Emc Corporation Systems and methods for managing stalled storage devices
US7953709B2 (en) * 2008-03-27 2011-05-31 Emc Corporation Systems and methods for a read only mode for a portion of a storage system
US7949636B2 (en) * 2008-03-27 2011-05-24 Emc Corporation Systems and methods for a read only mode for a portion of a storage system
US7870345B2 (en) 2008-03-27 2011-01-11 Isilon Systems, Inc. Systems and methods for managing stalled storage devices
US7962523B2 (en) * 2008-04-11 2011-06-14 Yahoo! Inc. System and method for detecting templates of a website using hyperlink analysis
US7930306B2 (en) * 2008-04-30 2011-04-19 Msc Intellectual Properties B.V. System and method for near and exact de-duplication of documents
US8121991B1 (en) 2008-12-19 2012-02-21 Google Inc. Identifying transient paths within websites
US8086953B1 (en) * 2008-12-19 2011-12-27 Google Inc. Identifying transient portions of web pages
US8862691B2 (en) * 2008-12-22 2014-10-14 Microsoft Corporation Media aggregation and presentation
US20100169311A1 (en) * 2008-12-30 2010-07-01 Ashwin Tengli Approaches for the unsupervised creation of structural templates for electronic documents
US20150010143A1 (en) * 2009-04-30 2015-01-08 HGST Netherlands B.V. Systems and methods for signature computation in a content locality based cache
US9176883B2 (en) 2009-04-30 2015-11-03 HGST Netherlands B.V. Storage of data reference blocks and deltas in different storage devices
US8180773B2 (en) * 2009-05-27 2012-05-15 International Business Machines Corporation Detecting duplicate documents using classification
CN101788976B (zh) * 2010-02-10 2012-05-09 北京播思软件技术有限公司 一种基于内容的文件分割方法
US8650195B2 (en) * 2010-03-26 2014-02-11 Palle M Pedersen Region based information retrieval system
US8825641B2 (en) 2010-11-09 2014-09-02 Microsoft Corporation Measuring duplication in search results
CN102033962B (zh) * 2010-12-31 2012-05-30 中国传媒大学 一种快速去重的文件数据复制方法
US8594239B2 (en) * 2011-02-21 2013-11-26 Microsoft Corporation Estimating document similarity using bit-strings
WO2012145912A1 (en) * 2011-04-28 2012-11-01 Google Inc. Presenting search results for gallery web pages
US20120290678A1 (en) * 2011-05-12 2012-11-15 International Business Machines Corporation Dynamic, user-driven service catalog
US9501455B2 (en) * 2011-06-30 2016-11-22 The Boeing Company Systems and methods for processing data
US9407463B2 (en) * 2011-07-11 2016-08-02 Aol Inc. Systems and methods for providing a spam database and identifying spam communications
US8954458B2 (en) 2011-07-11 2015-02-10 Aol Inc. Systems and methods for providing a content item database and identifying content items
US8521769B2 (en) 2011-07-25 2013-08-27 The Boeing Company Locating ambiguities in data
US8484170B2 (en) * 2011-09-19 2013-07-09 International Business Machines Corporation Scalable deduplication system with small blocks
US20130086083A1 (en) * 2011-09-30 2013-04-04 Microsoft Corporation Transferring ranking signals from equivalent pages
US20130097704A1 (en) * 2011-10-13 2013-04-18 Bitdefender IPR Management Ltd. Handling Noise in Training Data for Malware Detection
US8914668B2 (en) 2012-09-06 2014-12-16 International Business Machines Corporation Asynchronous raid stripe writes to enable response to media errors
US8843784B2 (en) 2012-09-06 2014-09-23 International Business Machines Corporation Remapping disk drive I/O in response to media errors
US8843493B1 (en) * 2012-09-18 2014-09-23 Narus, Inc. Document fingerprint
US20140156624A1 (en) * 2012-12-04 2014-06-05 Microsoft Corporation Producing, Archiving and Searching Social Content
US9563677B2 (en) 2012-12-11 2017-02-07 Melissa Data Corp. Systems and methods for clustered matching of records using geographic proximity
US9111183B2 (en) 2013-01-04 2015-08-18 International Business Machines Corporation Performing a comparison between two images which are scaled to a common resolution
US9218701B2 (en) * 2013-05-28 2015-12-22 Bank Of America Corporation Image overlay for duplicate image detection
US9213820B2 (en) 2013-09-10 2015-12-15 Ebay Inc. Mobile authentication using a wearable device
RU2665920C2 (ru) * 2014-06-26 2018-09-04 Гугл Инк. Оптимизированный процесс визуализации в браузере
WO2015196414A1 (en) 2014-06-26 2015-12-30 Google Inc. Batch-optimized render and fetch architecture
JP6211722B2 (ja) 2014-06-26 2017-10-11 グーグル インコーポレイテッド 最適化されたブラウザレンダリング処理
US9607029B1 (en) * 2014-12-17 2017-03-28 Amazon Technologies, Inc. Optimized mapping of documents to candidate duplicate documents in a document corpus
CN104850574B (zh) * 2015-02-15 2018-07-06 博彦科技股份有限公司 一种面向文本信息的敏感词过滤方法
US10147107B2 (en) * 2015-06-26 2018-12-04 Microsoft Technology Licensing, Llc Social sketches
US10381108B2 (en) * 2015-09-16 2019-08-13 Charles Jianping Zhou Web search and information aggregation by way of molecular network
CN105760445A (zh) * 2016-02-03 2016-07-13 北京光年无限科技有限公司 用于过滤垃圾词的方法及系统
CN105893463B (zh) * 2016-03-23 2019-11-05 广州酷狗计算机科技有限公司 专辑录入方法及装置
US20180234234A1 (en) * 2017-02-10 2018-08-16 Secured FTP Hosting, LLC d/b/a SmartFile System for describing and tracking the creation and evolution of digital files
US10417269B2 (en) 2017-03-13 2019-09-17 Lexisnexis, A Division Of Reed Elsevier Inc. Systems and methods for verbatim-text mining
US10860885B2 (en) 2017-11-16 2020-12-08 Samsung Electronics Co., Ltd. Method and system for management and operation over image in a computing system
US10261784B1 (en) * 2018-06-20 2019-04-16 Terbium Labs, Inc. Detecting copied computer code using cryptographically hashed overlapping shingles
GB201821327D0 (en) 2018-12-31 2019-02-13 Transversal Ltd A system and method for discriminating removing boilerplate text in documents comprising structured labelled text elements
CN112131340B (zh) * 2019-06-25 2024-02-20 杭州萤石软件有限公司 字符串检测方法、装置及存储介质
JP7400543B2 (ja) * 2020-02-28 2023-12-19 富士フイルムビジネスイノベーション株式会社 情報処理装置及びプログラム
US11526506B2 (en) * 2020-05-14 2022-12-13 Code42 Software, Inc. Related file analysis
US11726779B2 (en) * 2021-11-03 2023-08-15 Sap Se Code simplification system
US11797486B2 (en) 2022-01-03 2023-10-24 Bank Of America Corporation File de-duplication for a distributed database
CN114091428A (zh) * 2022-01-20 2022-02-25 北京搜狐互联网信息服务有限公司 信息内容的重复判定方法、相关装置及计算机存储介质

Family Cites Families (34)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6850252B1 (en) * 1999-10-05 2005-02-01 Steven M. Hoffberg Intelligent electronic appliance system and method
US5465299A (en) * 1992-12-03 1995-11-07 Hitachi, Ltd. Electronic document processing system and method of forming digital signature
US5850490A (en) * 1993-12-22 1998-12-15 Xerox Corporation Analyzing an image of a document using alternative positionings of a class of segments
US6505160B1 (en) * 1995-07-27 2003-01-07 Digimarc Corporation Connected audio and other media objects
US5778395A (en) * 1995-10-23 1998-07-07 Stac, Inc. System for backing up files from disk volumes on multiple nodes of a computer network
US5909677A (en) * 1996-06-18 1999-06-01 Digital Equipment Corporation Method for determining the resemblance of documents
US6052693A (en) * 1996-07-02 2000-04-18 Harlequin Group Plc System for assembling large databases through information extracted from text sources
US5745900A (en) * 1996-08-09 1998-04-28 Digital Equipment Corporation Method for indexing duplicate database records using a full-record fingerprint
US6285999B1 (en) * 1997-01-10 2001-09-04 The Board Of Trustees Of The Leland Stanford Junior University Method for node ranking in a linked database
US6088707A (en) * 1997-10-06 2000-07-11 International Business Machines Corporation Computer system and method of displaying update status of linked hypertext documents
US6134532A (en) * 1997-11-14 2000-10-17 Aptex Software, Inc. System and method for optimal adaptive matching of users to most relevant entity and information in real-time
US6119124A (en) * 1998-03-26 2000-09-12 Digital Equipment Corporation Method for clustering closely resembling data objects
US6263348B1 (en) * 1998-07-01 2001-07-17 Serena Software International, Inc. Method and apparatus for identifying the existence of differences between two files
US6363377B1 (en) * 1998-07-30 2002-03-26 Sarnoff Corporation Search data processor
US6240409B1 (en) * 1998-07-31 2001-05-29 The Regents Of The University Of California Method and apparatus for detecting and summarizing document similarity within large document sets
US6317722B1 (en) * 1998-09-18 2001-11-13 Amazon.Com, Inc. Use of electronic shopping carts to generate personal recommendations
US6360215B1 (en) * 1998-11-03 2002-03-19 Inktomi Corporation Method and apparatus for retrieving documents based on information other than document content
JP2000187668A (ja) * 1998-12-22 2000-07-04 Hitachi Ltd グループ化方法と重複排除方法
US6873982B1 (en) * 1999-07-16 2005-03-29 International Business Machines Corporation Ordering of database search results based on user feedback
US6718363B1 (en) * 1999-07-30 2004-04-06 Verizon Laboratories, Inc. Page aggregation for web sites
US6665661B1 (en) * 2000-09-29 2003-12-16 Battelle Memorial Institute System and method for use in text analysis of documents and records
US6978419B1 (en) * 2000-11-15 2005-12-20 Justsystem Corporation Method and apparatus for efficient identification of duplicate and near-duplicate documents and text spans using high-discriminability text fragments
US6658423B1 (en) * 2001-01-24 2003-12-02 Google, Inc. Detecting duplicate and near-duplicate files
US7203343B2 (en) * 2001-09-21 2007-04-10 Hewlett-Packard Development Company, L.P. System and method for determining likely identity in a biometric database
US6871200B2 (en) * 2002-07-11 2005-03-22 Forensic Eye Ltd. Registration and monitoring system
US20040139072A1 (en) * 2003-01-13 2004-07-15 Broder Andrei Z. System and method for locating similar records in a database
US20040210575A1 (en) * 2003-04-18 2004-10-21 Bean Douglas M. Systems and methods for eliminating duplicate documents
US8296304B2 (en) * 2004-01-26 2012-10-23 International Business Machines Corporation Method, system, and program for handling redirects in a search engine
CA2574554A1 (en) * 2004-07-21 2006-01-26 Equivio Ltd. A method for determining near duplicate data objects
US7966327B2 (en) * 2004-11-08 2011-06-21 The Trustees Of Princeton University Similarity search system with compact data structures
US20060149820A1 (en) * 2005-01-04 2006-07-06 International Business Machines Corporation Detecting spam e-mail using similarity calculations
US7739314B2 (en) * 2005-08-15 2010-06-15 Google Inc. Scalable user clustering based on set similarity
US7747614B2 (en) * 2005-10-31 2010-06-29 Yahoo! Inc. Difference control for generating and displaying a difference result set from the result sets of a plurality of search engines
US7472121B2 (en) * 2005-12-15 2008-12-30 International Business Machines Corporation Document comparison using multiple similarity measures

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111367563A (zh) * 2020-03-06 2020-07-03 中国银行股份有限公司 主机版本合并方法及装置
CN111367563B (zh) * 2020-03-06 2024-02-23 中国银行股份有限公司 主机版本合并方法及装置

Also Published As

Publication number Publication date
US20120290597A1 (en) 2012-11-15
CA2660202C (en) 2013-03-12
CA2660202A1 (en) 2008-02-14
EP2054797A2 (en) 2009-05-06
CN102982053B (zh) 2016-08-10
WO2008019133A2 (en) 2008-02-14
US20080044016A1 (en) 2008-02-21
US8015162B2 (en) 2011-09-06
CN101523343B (zh) 2012-07-04
WO2008019133A9 (en) 2009-04-30
CN101523343A (zh) 2009-09-02
WO2008019133A3 (en) 2008-11-20
EP2054797A4 (en) 2013-09-04

Similar Documents

Publication Publication Date Title
CN101523343B (zh) 检测复制和近似复制的文件
US7747582B1 (en) Surrogate hashing
He et al. Crawling deep web entity pages
JP5727512B2 (ja) 検索提案のクラスタ化及び提示
EP2823410B1 (en) Entity augmentation service from latent relational data
Nie et al. Object-level Vertical Search.
Marinho et al. Social tagging recommender systems
Ma et al. Mining web graphs for recommendations
US20090089278A1 (en) Techniques for keyword extraction from urls using statistical analysis
Zhao et al. Ranking on heterogeneous manifolds for tag recommendation in social tagging services
Deng et al. Enhanced models for expertise retrieval using community-aware strategies
JP4796538B2 (ja) コメントデータを関連付ける方法
US20110022563A1 (en) Document display system, related document display method, and program
JP2007183954A (ja) ログコンテントに基づく洗練方法
Chen et al. TopBlend: An efficient implementation of HtmlDiff in Java
Upstill Document ranking using web evidence
Yamamoto et al. Imagealert: credibility analysis of text-image pairs on the web
Sharma et al. An improved online plagiarism detection approach for semantic analysis using custom search engine
Mutalikdesai et al. Co-citations as citation endorsements and co-links as link endorsements
Zeng et al. An evidence‐based iterative content trust algorithm for the credibility of online news
Kalpanadevi et al. Rule based method in entity resolution for efficient web search
Wang et al. Extracting web content by exploiting multi-category characteristics
Chen et al. PHAROS–Personalizing Users’ Experience in Audio-Visual Online Spaces
Hu Passage extraction and result combination for high performance biomedical information retrieval.
Grow et al. Semi-Automatic Detection and Repair of Clustering Errors

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
CP01 Change in the name or title of a patent holder

Address after: American California

Patentee after: Google limited liability company

Address before: American California

Patentee before: Google Inc.

CP01 Change in the name or title of a patent holder