We present SimDex, a new technique for serving exact top-K recommendations on matrix factorization models that measures and optimizes for the similarity between users in the model. Previous serving techniques presume a high degree of similarity (e.g., L2 or cosine distance) among users and/or items in MF models; however, as we demonstrate, the most accurate models are not guaranteed to exhibit high similarity. As a result, brute-force matrix multiply outperforms recent proposals for top-K serving on several collaborative filtering tasks. Based on this observation, we develop SimDex, a new technique for serving matrix factorization models that automatically optimizes serving based on the degree of similarity between users, and outperforms existing methods in both the high-similarity and low-similarity regimes. SimDexfirst measures the degree of similarity among users via clustering and uses a cost-based optimizer to either construct an index on the model or defer to blocked matrix multiply. It leverages highly efficient linear algebra primitives in both cases to deliver predictions either from its index or from brute-force multiply. Overall, SimDex runs an averageof 2x and up to 6x faster than highly optimized baselines for the most accurate models on several popular collaborative filtering datasets .
Making top-K predictions for state-of-the-art Matrix Factorization models requires solving the Maximum Inner Product Search problem. Solving MIPS can be computationally expensive, thus spurring the recent development of several indexing techniques for this task. These techniques generally exploit similarity between user or item weights in the models to accelerate predictions. In this paper, we show that the current state of the art does not always outperform brute-force matrix multiplication: these models may have significantly less similarity than can be exploited by these techniques. To address this problem, we propose RecOpt, a system that uses an efficient, sampling-based estimation technique to automatically choose between indexing or brute force. In addition, we propose a new baseline indexing scheme, RecDex, that can leverage blocked linear algebra to improve indexing-based serving performance. Together, RecOpt and RecDex outperform state-of-the-art indexes by 3.2\times on average, and up to 10.9\times, on widely studied models for recommendations and MIPS .
R
We present SimDex, a new technique for serving exact
Making
R
recommendations on matrix factorization models that measures and optimizes for
predictions for state-of-the-art Matrix Factorization models requires solving the Maximum Inner Product Search problem. Solving MIPS can be computationally expensive, thus spurring the recent development of several indexing techniques for this task. These techniques generally exploit similarity between user or item weights in
R
similarity between users in the model. Previous serving techniques presume a high degree of similarity (e.g., L2 or cosine distance) among users and/or items in MF models; however, as we demonstrate, the most accurate models are not guaranteed to exhibit high similarity. As a result,
models to accelerate predictions. In this paper, we show that the current state of the art does not always outperform
R
multiply outperforms recent proposals for top-K serving on several collaborative filtering tasks. Based on this observation, we develop SimDex, a new technique for serving matrix factorization models that automatically optimizes serving based on the degree of similarity between users, and outperforms existing methods in both the high-similarity
multiplication: these models may have significantly less similarity than can be exploited by these techniques. To address this problem, we propose RecOpt, a system that uses an efficient, sampling-based estimation technique to automatically choose between indexing or brute force. In addition, we propose a new baseline indexing scheme, RecDex, that can leverage blocked linear algebra to improve indexing-based serving performance. Together, RecOpt and RecDex outperform state-of-the-art indexes by 3.2\times on average,
D
low-similarity regimes. SimDexfirst measures the degree of similarity among users via clustering and uses a cost-based optimizer to either construct an index on the model or defer to blocked matrix multiply. It leverages highly efficient linear algebra primitives in both cases to deliver predictions either from its index or from brute-force multiply. Overall, SimDex runs an averageof 2x and
R
6x faster than highly optimized baselines for the most accurate models on several popular collaborative filtering datasets
10.9\times, on widely studied models for recommendations and MIPS