试图通过示例python代码

时间:2015-06-22 06:07:19

标签: python similarity locality-sensitive-hash

我研究的简洁python代码是here

问题A @第8行

我真的不明白" res = res<< 1 "出于" get_signature"

的目的

问题B @第49行(由我自己通过另一个Q&A解决)

" xor = r1 ^ r2 "对我来说真的没有任何意义,作者后来尝试过这个问题" (d-nna(vor))"计算" hash_sim" - (参见第50行)

问题C @关于一般的hash_sim

这个问题更多地与LSH理解有关,什么变量" d " (第38行)正在进行示例代码----后来用于计算第50行中的 hash_sim

问题D @第20行和第24行 - "&"

的synatx

不仅在理解语法方面遇到问题" num = num& (num-1)",但也不确定什么功能" nnz"正在hash_similarlity的上下文中。当作者应用" xor"时,这个问题可能与我的问题(-b-)有关。进入" nnz "以及" xor "的等式(问题b)对我来说很奇怪。

P.S。

我的python和LSH理解都处于初学者水平,我有点为这个问题进入循环。感谢您抽出宝贵的时间来解决我的困惑以及代码

1 个答案:

答案 0 :(得分:1)

一个。这是一个左移:https://docs.python.org/2/reference/expressions.html#shifting-operations它将位移到左边。

湾请注意,^不是Python中的“权力”,而是“按位异或”。

℃。正如评论所述:它将“每个签名的位数”定义为2**101024

d。这些行计算numnum + 1的按位AND。    该功能的目的记录在上面的注释中:    “#得到二进制数'1'