in computer science, locality-sensitive hashing (lsh) is an algorithmic technique that hashes similar input items into the same "buckets" with high probability. (the number of buckets are much smaller than the universe of possible input items.) since similar items end up in the same buckets, this technique can be used for data clustering and nearest neighbor search. it differs from conventional hashing techniques in that hash collisions are maximized, not minimized. alternatively, the technique can be seen as a way to reduce the dimensionality of high-dimensional data; high-dimensional input items can be reduced to low-dimensional versions while preserving relative distances between items.