Mining Large Streams of User Data for Personalized Recommendations
Total Page:16
File Type:pdf, Size:1020Kb
Mining Large Streams of User Data for Personalized Recommendations Xavier Amatriain Netflix xamatriain@netflix.com ABSTRACT solutions - think, for example, of ranking metrics such as Normalized Discounted Cumulative Gain (NDCG) or other The Netflix Prize put the spotlight on the use of data min- information retrieval ones such as recall or area under the ing and machine learning methods for predicting user pref- curve (AUC). Beyond the optimization of a given offline met- erences. Many lessons came out of the competition. But ric, what we are really pursuing is the impact of a method on since then, Recommender Systems have evolved. This evo- the business. Is there a way to relate the goodness of an algo- lution has been driven by the greater availability of different rithm to more customer-facing metrics such as click-through kinds of user data in industry and the interest that the area rate (CTR) or retention? I will describe our approach to in- has drawn among the research community. The goal of this novation called \Consumer Data Science" in section 3.1. paper is to give an up-to-date overview of the use of data mining approaches for personalization and recommendation. But before we understand the reasons for all these effects, Using Netflix personalization as a motivating use case, I will and before we are ready to embrace the open research ques- describe the use of different kinds of data and machine learn- tions in the area of personalization described in Section 5, ing techniques. we need to understand some of the basic techniques that enable the different approaches. I will briefly describe them After introducing the traditional approaches to recommen- in the following paragraphs. dation, I highlight some of the main lessons learned from the Netflix Prize. I then describe the use of recommenda- tion and personalization techniques at Netflix. Finally, I 1.1 Approaches to the Recommendation pinpoint the most promising current research avenues and problem unsolved problems that deserve attention in this domain. The most common approach to build a Recommender Sys- tem is to use one of the many available Collaborative Fil- 1. INTRODUCTION tering (CF) algorithms [1]. The underlying assumption of Recommender Systems (RS) are a prime example of the these methods is captured by the principle of like minded- mainstream applicability of large scale data mining. Ap- ness: users who are measurably similar in their historical plications such as e-commerce, search, Internet music and preferences are likely to also share similar tastes in the fu- video, gaming or even online dating make use of similar ture. In other words, CF algorithms assume that, in order techniques to mine large volumes of data to better match to recommend content of any kind to users, information can their users' needs in a personalized fashion. be drawn from what they and other similar users have liked There is more to a good recommender system than the data in the past. Historically, the k-Nearest Neighbor (kNN) mining technique. Issues such as the user interaction design, algorithm was the most favored approach to CF, since it outside the scope of this paper, may have a deep impact transparently captured this assumption of like-mindedness: on the effectiveness of an approach. But given an existing it operates by finding, for each user (or item), a number application, an improvement in the algorithm can have a of similar users (items) whose profiles can then be used to value of millions of dollars, and can even be the factor that directly compute recommendations [55]. determines the success or failure of a business. On the other The main alternative to CF is the so-called content-based hand, given an existing method or algorithm, adding more approach [46], which identifies similarities between items features coming from different data sources can also result based on the features inherent in the items themselves. These in a significant improvement. I will describe the use of data, recommender systems require a way to extract content de- models, and other personalization techniques at Netflix in scriptions and a similarity measure between items. Auto- section 3. I will also discuss whether we should focus on matic content description is still only available for some more data or better models in section 4. kinds of content, and under some constraints. That is why Another important issue is how to measure the success of some systems need to rely on experts to manually input and a given personalization technique. Root mean squared er- categorize the content [56]. On the other hand, content- ror (RMSE) was the offline evaluation metric of choice in based approaches can deal with some of the shortcomings the Netflix Prize (see Section 2). But there are many other of CF such as item cold-start - i.e. the initialization of new relevant metrics that, if optimized, would lead to different items that the system has no previous user preference data for. CF and content-based methods can be combined in different ways using hybrid approaches [15]. Hybrid RS can combine SIGKDD Explorations Volume 14, Issue 2 Page 37 several different methods in a way that one method provides ensemble: Matrix Factorization (MF) [35] 1 and Restricted support whenever the other methods are lacking. In prac- Boltzmann Machines (RBM) [54]. Matrix Factorization by tice, most of the advanced recommendation systems used in itself provided a 0.8914 RMSE, while RBM alone provided a the industry are based on some sort of hybridation, and are competitive but slightly worse 0.8990 RMSE. A linear blend rarely purely CF or content-based. of these two reduced the error to 0.88. To put these algo- rithms to use, we had to work to overcome some limitations, 1.2 Data Mining methods in Recommender for instance that they were built to handle 100 million rat- Systems ings, instead of the more than 5 billion that we have, and that they were not built to adapt as members added more No matter which of the previous approaches is used, a rec- ratings. But once we overcame those challenges, we put the ommender system's engine can be seen as a particular in- two algorithms into production, where they are still used as stantiation of a traditional data mining task [4]. A data min- part of our recommendation engine. ing task typically consists of 3 steps, carried out in succes- The standard matrix factorization decomposition provides sion: Data Preprocessing, Data Modeling, and Result Anal- user factor vectors U 2 Rf and item-factors vector V 2 ysis. Traditional machine learning techniques such as di- u v Rf . In order to predict a rating, we first estimate a baseline mensionality reduction, classification, or clustering, can be b = µ+b +b as the user and item deviation from average. applied to the recommendation problem. In the following uv u v The prediction can then be obtained by adding the product paragraphs, I will describe some of the models that, beyond of user and item factors to the baseline as r0 = b +U T U . the classical kNN, can be used to build a recommender sys- uv uv u v tem. One of the most interesting findings during the Netflix Prize came out of a blog post. Simon Funk introduced an incre- Although current trends seem to indicate that other matrix mental, iterative, and approximate way to compute the SVD factorization techniques are preferred (see Section 2.1), ear- using gradient descent [22]. This provided a practical way lier works used Principal Component Analysis (PCA) to scale matrix factorization methods to large datasets. [24] . Decision Trees may be used in a content-based ap- proach for a RS. One possibility is to use content features to Another enhancement to matrix factorization methods was build a decision tree that models the variables involved in Koren et. al's SVD++ [33]. This asymmetric variation the user preferences [13]. Bayesian classifiers have been enables adding both implicit and explicit feedback, and re- used to derive a model for content-based RS [23]. Artifi- moves the need for parameterizing the users. cial Neural Networks (ANN) can be used in a similar The second model that proved successful in the Netflix Prize way as Bayesian Networks to construct content-based RS's was the Restricted Boltzmann Machine (RBM). RBM's can [47]. ANN can also be used to combine (or hybridize) the be understood as the fourth generation of Artificial Neural input from several recommendation modules or data sources Networks - the first being the Perceptron popularized in the [20]. Support Vector Machines (SVM) have also shown 60s; the second being the backpropagation algorithm in the promising recent results [30]. 80s; and the third being Belief Networks (BNs) from the Clustering approaches such as k-means can be used as a 90s. RBMs are BNs that restrict the connectivity to make pre-processing step to help in neighborhood formation [65]. learning easier. RBMs can be stacked to form Deep Belief Finally, association rules [3] can also be used[38]. Nets (DBN). For the Netflix Prize, Salakhutditnov et al. proposed an RBM structure with binary hidden units and softmax visible units with 5 biases only for the movies the 2. THE NETFLIX PRIZE user rated [54]. Many other learnings came out of the Prize. For exam- In 2006, Netflix announced the Netflix Prize, a machine ple, the matrix factorization methods mentioned above were learning and data mining competition for movie rating pre- combined with the traditional neighborhood approaches [33]. diction. We offered $1 million to whoever improved the ac- Also, early in the prize, it became clear that it was impor- curacy of our existing system called Cinematch by 10%.