如何解决实现局部敏感的哈希算法
我遇到了 D2HistoSketch ,这是一种用于LSH的算法,看来效果不错。 在实现它(在python中)方面,我将不胜感激。
以下是算法:
此here中描述了算法:
本文
Yang,D.,Li,B.,Rettig,L.,&Cudré-Mauroux,P.(2019年)。 D22HistoSketch:流式直方图的区分性和动态相似性保留草图。 IEEE Trans。知道数据工程,1898年1911年11月。
这是我想出的代码,但我不确定它是否有用:
import numpy as np
xV = np.array([7,8,20,16,12]) # the array (histogram...)
K = 3 # length of Sketch
i = 42 # seed
#precompute random values
np.random.seed(i)
xhash_values = -np.log(np.random.rand(K,xV.shape[0]))
print('hash values: \n',xhash_values)
# compute alpha values
xalpha_values = xhash_values / xV
print('alpha values: \n',xalpha_values )
# compute S and A
S = np.argmin(xhash_values,axis = 1) + 1
A = np.min(xhash_values,axis = 1)
print('S:',S)
print('A:',A )
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。