Copyscape使用什么算法进行文本比较?

时间:2017-06-15 06:39:14

标签: algorithm similarity

所以我一直在寻找一种比较文本内容的算法,我发现这个名为Copyscape的网站有一个非常方便的工具用于比较文章(link)。它似乎在检测2个文本文档之间的相似性值(按百分比)方面做得很好。我想知道他们在该工具中使用了哪种算法,或者可能与它类似的东西?提前谢谢。

1 个答案:

答案 0 :(得分:1)

我不确定copyscape抄袭是如何运作的。但是如果你让我实施一个。

我将从 - 定义'抄袭&#39 ;?开始content-1和content-2几乎相似。我们说> 80%是相同的。即内容-1被取20%被改变以产生内容-2。

现在,让我们试着解决:将content-1转换为content-2会有什么代价(没有变化)?这是DP(动态编程世界)中众所周知的问题Levenshtein distanceEDIT Distance问题。标准问题涉及字符串距离,但您可以轻松地将其修改为单词而不是字符。此外,您可能需要跟踪所有更改@ line#,两个内容的单词位置。

现在,上述问题将为您提供内容-1的转换的最少更改。使用content-1的总长度,我们可以轻松地计算从content-1转到content-2的更改百分比。如果它低于固定阈值(比如说20%)那么就宣告抄袭。此外,使用#行上的辅助信息,两个内容上的单词位置 - 您可以显示所做的更改。