hashing-based approximate nearest neighbor search algorithms generally use one of two main categories of hashing methods: either data-independent methods, such as locality-sensitive hashing (lsh); or data-dependent methods, such as locality-preserving hashing (lph).