检测重复/非常相似的文本段落

时间:2018-01-10 10:52:32

标签: java lucene text-classification document-classification

我正在编写一个允许用户向数据库添加引号的应用程序,可以通过Lucene进行搜索。使用TF-IDF&余弦相似性以确定报价是否与另一个报价或Damerau-Levenshtein距离非常相似?

E.g。

  

两条道路在木头上分道扬and - 我拿走了一条较少走过的道路,这就完全不同了。

VS

  

两条道路在一条木头上分道扬and,而我走了一条较少的道路,这就完全不同了。

1 个答案:

答案 0 :(得分:0)

#I不认为你能真正回答这个......

...但您可以尝试以类似方式构建它们:

可能的方法:

    <击>
  • 将两个输入都设为lowerCase!
  • 检查其中一个是否包含另一个,反之亦然
  • 删除不是真正需要的字符。 (“ - ”或“;”)
  • 您也可以尝试找到一种方法来切换单词直到匹配,但我不会这样做

我发现了这个:

https://en.wikibooks.org/wiki/Algorithm_Implementation/Strings/Levenshtein_distance