我正在为文本文件构建一个抄袭检查程序。我做了预处理的所有事情(停止删除单词,阻止等)并构建我的索引。并过滤结果。系统差不多完成了。 我按句子对语料库和用户文档进行了分块(句子分隔符是。?!) 当我测试结果时,我注意到分块方法(通过句子)并不强大,因为用户可能会更改标点以欺骗我的服务。 我读了许多关于分块的文章,最好的方法是K字重叠,这意味着要分开单词的数量,重叠。 我的问题是,如何计算用户块和语料库块之间的相似性,因为重叠的单词将最大化相似性。
示例 :(忽略词干删除) 这里的单词数= 4,重叠= 1个单词(可能会改变)
用户句子 =如何在语料库中找到类似的句子。
chunks =我怎样才能找到,我能找到类似的,我找到类似的句子,在你的语料库中的句子中找到类似的句子。
现在当我针对语料库测试那些块时(让语料库有一个块说:我怎样才能找到) 你注意到用户块(我怎么找到,我能找到类似的)与语料库块有相似之处,但是两个用户块都是多余的。 那么如何才能消除这种冗余,对不起,需要长时间的解释。