Recommendation deployment
The way of implementing the machine learning results for this project as required by the customer is to use them to make new movie recommendations when new movies come in or new users come in. One example of this typical use is to make movie recommendations for new users, which is what we will discuss in this section.
To make recommendations for a new user, we need to learn this new user's taste by asking the user to rate a few movies, for which we need to select a small set of movies that received the most ratings from users in our movie dataset.
Once we have the data of new users, then we can apply the trained model for new predictions, which can be obtained via the following code:
class MatrixFactorizationModel(object): def predictAll(self, usersProducts): # ... return RDD(self._java_model.predict(usersProductsJRDD._jrdd), self._context, RatingDeserializer())
After we get all the predictions, we can list the top recommendations...