代码之家  ›  专栏  ›  技术社区  ›  Yijinsei

多探针局部敏感散列问题

  •  6
  • Yijinsei  · 技术社区  · 16 年前

    很抱歉问这样的noob问题,但是因为我真的需要一些关于如何使用多探针LSH的指导,所以我自己没有做太多的研究。我意识到有一个lib调用lshkit可以实现该算法,但是我很难找到如何使用它。 现在,我有几千个特征向量296维,每个维代表一个图像。向量用于查询用户输入的图像,以检索最相似的图像。我用来推导向量间距离的方法是欧几里得距离。

    我知道这可能是一个相当无趣的问题,但你们知道我应该如何实现多探针LSH吗?我真的非常感谢你的回答。

    --更新——

    尝试使用提供的工具fittata为我的数据创建一个模型,但是它似乎无法接受我的文件。我用于输入的格式是这种格式,float-size:4,data:20,dimension:297,以及我的297 dimenison float数组。但是它给了我这个错误

    gsl: init_source.c:29: ERROR: matrix dimension n1 must be positive integer
    Default GSL error handler invoked.
    Aborted
    

    你们知道如何为FitData创建输入吗?

    --更新——

    很抱歉,在尝试LSH之后更新得太晚了。可以使用text2bin为fitdata设置数据格式。文本文件包含图像或音频文件的特征向量,每行代表一个向量。之后,使用mplsh-tune获取m和w参数。 要构造索引,可以使用故障诊断仪对一组必需的查询进行采样,并且可以使用mplsh run获取索引。 现在,我试图弄清楚如何使用索引,以及如何将库链接到我的代码中。有人知道这个吗?

    2 回复  |  直到 10 年前
        1
  •  6
  •   bayer    16 年前

    我来给你指一下 spectral hashing 这让LSH大吃一惊。奖励:他们有matlab代码 on their website ,您可以使用或验证自己的实现。而且,它更容易实现。

        2
  •  0
  •   ekzhu    10 年前

    This implementation 多探针LSH比C++库更容易使用。它还实现了LSH森林。

    推荐文章