我正在尝试使用shingleprinting来衡量文档的相似度。该过程涉及以下步骤:Shingleprinting如何在实践中工作?
- 创建两个文件D1的5-shingling,D2
- 散列具有64位散列
- 各屋顶板拾取数字的随机置换从0到2^64-1,并适用于木瓦哈希
- 对于每个文件找到最小的结果值的
- 如果它们匹配指望它作为一个正面的例子,如果不把它作为一种反面教材
- 重复3〜5 。 一些倍
- 使用
positive_examples/total examples
作为相似性度量
步骤3包括产生非常长的序列的随机置换。使用Knuth-shuffle似乎是不可能的。有没有这个捷径?请注意,最终我们只需要得到的排列的单个元素。