SAH: Shifting-aware Asymmetric Hashing for Reverse -Maximum Inner Product Search

This paper investigates a new yet challenging problem called Reverse -Maximum Inner Product Search (RMIPS). Given a query (item) vector, a set of item vectors, and a set of user vectors, the problem of RMIPS aims to find a set of user vectors whose inner products with the query vector are one of the largest among the query and item vectors. We propose the first subquadratic-time algorithm, i.e., Shifting-aware Asymmetric Hashing (SAH), to tackle the RMIPS problem. To speed up the Maximum Inner Product Search (MIPS) on item vectors, we design a shifting-invariant asymmetric transformation and develop a novel sublinear-time Shifting-Aware Asymmetric Locality Sensitive Hashing (SA-ALSH) scheme. Furthermore, we devise a new blocking strategy based on the Cone-Tree to effectively prune user vectors (in a batch). We prove that SAH achieves a theoretical guarantee for solving the RMIPS problem. Experimental results on five real-world datasets show that SAH runs 48 faster than the state-of-the-art methods for RMIPS while achieving F1-scores of over 90\%. The code is available at \url{https://github.com/HuangQiang/SAH}.
View on arXiv