Reverse Maximum Inner Product Search: How to efficiently find users who would like to buy my item?

The MIPS (maximum inner product search), which finds the item with the highest inner product with a given query user, is an essential problem in the recommendation field. It is usual that e-commerce companies face situations where they want to promote and sell new or discounted items. In these situations, we have to consider a question: who are interested in the items and how to find them? This paper answers this question by addressing a new problem called reverse maximum inner product search (reverse MIPS). Given a query vector and two sets of vectors (user vectors and item vectors), the problem of reverse MIPS finds a set of user vectors whose inner product with the query vector is the maximum among the query and item vectors. Although the importance of this problem is clear, its straightforward implementation incurs a computationally expensive cost. We therefore propose Simpfer, a simple, fast, and exact algorithm for reverse MIPS. In an offline phase, Simpfer builds a simple index that maintains a lower-bound of the maximum inner product. By exploiting this index, Simpfer judges whether the query vector can have the maximum inner product or not, for a given user vector, in a constant time. Besides, our index enables filtering user vectors, which cannot have the maximum inner product with the query vector, in a batch. We theoretically demonstrate that Simpfer outperforms baselines employing state-of-the-art MIPS techniques. Furthermore, our extensive experiments on real datasets show that Simpfer is about 500–8000 times faster than the baselines.

[1]  Christos Doulkeridis,et al.  Monochromatic and Bichromatic Reverse Top-k Queries , 2011, IEEE Transactions on Knowledge and Data Engineering.

[2]  Hui Li,et al.  FEXIPRO: Fast and Exact Inner Product Retrieval in Recommender Systems , 2017, SIGMOD Conference.

[3]  Parikshit Ram,et al.  Efficient retrieval of recommendations in a matrix factorization framework , 2012, CIKM.

[4]  Rainer Gemulla,et al.  LEMP: Fast Retrieval of Large Entries in a Matrix Product , 2015, SIGMOD Conference.

[5]  Nathan Srebro,et al.  On Symmetric and Asymmetric LSHs for Inner Product Search , 2014, ICML.

[6]  Parikshit Ram,et al.  Fast Exact Max-Kernel Search , 2012, SDM.

[7]  Xing Zhao,et al.  Improving the Estimation of Tail Ratings in Recommender System with Multi-Latent Representations , 2020, WSDM.

[8]  Roberto Turrin,et al.  Performance of recommender algorithms on top-n recommendation tasks , 2010, RecSys '10.

[9]  Edith Cohen,et al.  Approximating matrix multiplication for pattern recognition tasks , 1997, SODA '97.

[10]  Rainer Gemulla,et al.  Exact and Approximate Maximum Inner Product Search with LEMP , 2016, ACM Trans. Database Syst..

[11]  Takahiro Hara,et al.  Identifying the Most Interactive Object in Spatial Databases , 2019, 2019 IEEE 35th International Conference on Data Engineering (ICDE).

[12]  Zhao Zhang,et al.  Reverse k-Ranks Query , 2014, Proc. VLDB Endow..

[13]  Jinfeng Li,et al.  Norm-Ranging LSH for Maximum Inner Product Search , 2018, NeurIPS.

[14]  Benjamin Schrauwen,et al.  Deep content-based music recommendation , 2013, NIPS.

[15]  Ping Li,et al.  Asymmetric LSH (ALSH) for Sublinear Time Maximum Inner Product Search (MIPS) , 2014, NIPS.

[16]  Sanjiv Kumar,et al.  Accelerating Large-Scale Inference with Anisotropic Vector Quantization , 2019, ICML.

[17]  Muhammad Aamir Cheema,et al.  Reverse k Nearest Neighbors Query Processing: Experiments and Analysis , 2015, Proc. VLDB Endow..

[18]  Ulrich Paquet,et al.  Speeding up the Xbox recommender system using a euclidean transformation for inner-product spaces , 2014, RecSys '14.

[19]  Anthony K. H. Tung,et al.  Accurate and Fast Asymmetric Locality-Sensitive Hashing Scheme for Maximum Inner Product Search , 2018, KDD.

[20]  Ole Winther,et al.  Indexable Probabilistic Matrix Factorization for Maximum Inner Product Search , 2016, AAAI.

[21]  Xinyan Dai,et al.  Norm-Explicit Quantization: Improving Vector Quantization for Maximum Inner Product Search , 2019, AAAI.

[22]  Richard E. Korf,et al.  Multi-Way Number Partitioning , 2009, IJCAI.

[23]  Rui Liu,et al.  A Bandit Approach to Maximum Inner Product Search , 2018, AAAI.

[24]  Parikshit Ram,et al.  Maximum inner-product search using cone trees , 2012, KDD.

[25]  Peter Bailis,et al.  To Index or Not to Index: Optimizing Exact Maximum Inner Product Search , 2017, 2019 IEEE 35th International Conference on Data Engineering (ICDE).

[26]  Hamed Zamani,et al.  Learning a Joint Search and Recommendation Model from User-Item Interactions , 2020, WSDM.

[27]  Inderjit S. Dhillon,et al.  A Greedy Approach for Budgeted Maximum Inner Product Search , 2016, NIPS.

[28]  Xuemin Lin,et al.  Approximate Nearest Neighbor Search on High Dimensional Data — Experiments, Analyses, and Improvement , 2016, IEEE Transactions on Knowledge and Data Engineering.

[29]  Artem Babenko,et al.  Non-metric Similarity Graphs for Maximum Inner Product Search , 2018, NeurIPS.

[30]  Yiqun Liu,et al.  Efficient Heterogeneous Collaborative Filtering without Negative Sampling for Recommendation , 2020, AAAI.

[31]  James Cheng,et al.  Understanding and Improving Proximity Graph based Maximum Inner Product Search , 2020, AAAI.

[32]  Marcus Fontoura,et al.  Evaluation strategies for top-k queries over memory-resident inverted indexes , 2011, Proc. VLDB Endow..

[33]  Chih-Jen Lin,et al.  LIBMF: A Library for Parallel Matrix Factorization in Shared-memory Systems , 2016, J. Mach. Learn. Res..

[34]  Ping Li,et al.  Möbius Transformation for Fast Inner Product Search on Graph , 2019, NeurIPS.

[35]  Walid Krichene,et al.  Neural Collaborative Filtering vs. Matrix Factorization Revisited , 2020, RecSys.

[36]  Cho-Jui Hsieh,et al.  Clustering and Constructing User Coresets to Accelerate Large-scale Top-K Recommender Systems , 2020, WWW.

[37]  Torsten Suel,et al.  Faster top-k document retrieval using block-max indexes , 2011, SIGIR.