The Wayback Machine - https://web.archive.org/web/20180611012026/https://github.com/salviati/slash
Skip to content
A locality-sensitive hashing library
C++ C
Switch branches/tags
Nothing to show
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
COPYING
Makefile
README.md
bitvector64.h
hash.cc
hash.h
lsh.h
lsh_test.cc
math.cc
math.h
querycontext.h
slsh.h
types.h
util.cc
util.h

README.md

Introduction

slash is a high-performance locality-sensitive hashing (LSH) [1] library, written in C++. It currently implements Spherical LSH (SLSH) [2] which is suitable for high dimensional feature-spaces.

Dependencies

gperftools, sparsehash.

Usage

Simply copy the files lsh.h, slsh.h, querycontext.h, math.h and math.cc into your source tree. To start using the library, you need to define a class satisfying an interface. (see BitVector64 class defined in bitvector64.h for a working example) and a hash function (see hash.*). The file lsh_test.cc contains a benchmark suite.

License

slash is released under GNU General Public License version 3.

References

[1] A. Gionis, P. Indyk and R. Motwani, ``Similarity Search in High Dimensions via Hashing'', Proc. 25th International Conference on Very Large Data Bases, VLDB1999, pp.518-529, 1999.

[2] `Terasawa, K., Tanaka, Y., 2007. Spherical LSH for Approximate Nearest-Neighbor Search on Unit Hypersphere. Springer. pp. 27–38''.

You can’t perform that action at this time.
You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session.
Press h to open a hovercard with more details.
Morty Proxy This is a proxified and sanitized view of the page, visit original site.