我试图在Spark中尽可能简单地实现chapter 3中描述的MinHash算法。
我到处搜索了很多。好吧,我决定遵循Bill {Dim提出的this博客的实施:https://blog.cluster-text.com/tag/minhash/
我只觉得我的实施有问题或者我误解了。
到目前为止我所做的是:
- document =>正克
(我使用书中所说的9克(字母),但可以改为Bill Dim提出的5字)
- n-gram => MurMurHash3(这就是为每篇文档设计的NGrams)
- HashedNGramsRDD =>查找每个文档的最小(NGram)
- HashedNGramsRDD ^(199个随机数)并取最小值= 199个最小的Xored HashedMurMurNGrams。
- 所以我总共有200微米。那就是我的MinHash签名。它是否正确?请帮忙!提前致谢。