Recommendation overview
Recommendation systems are one of the most successful and widespread applications of machine learning for businesses. You can use a recommendation system to help your users find compelling content in a large body of content. For example, Google Play Store offers millions of apps, while YouTube offers billions of videos, with more apps and videos added every day. Users can use search to find new content, but that is limited by the search terms they use. A recommendation system can suggest content that users might not have thought to search for on their own. For more information, see Recommendation Systems Overview.
Machine learning algorithms in recommendation systems are typically classified into the following categories:
- Content-based filtering: uses similarity between items to provide recommendations. For example, if a user watches two cute cat videos, then the recommendation system can recommend more cute animal videos to that user.
- Collaborative filtering: uses similarities between users (based on user queries) to provide recommendations. For example, if user A searches for similar things to user B, and user B likes video 1, then the recommendation system can recommend video 1 to user A, even if user A hasn't watched any videos similar to video 1.
Matrix factorization models are widely used as a
collaborative filtering method for recommendation systems. You can use a matrix
factorization model with the
ML.RECOMMEND
function
to make recommendations. For more information, see
Matrix Factorization.
To extend a collaborative filtering-based recommendation system beyond what is
possible with a matrix factorization model, you can use
deep neural network (DNN)
and
Wide-and-Deep
models with the
ML.PREDICT
function
to make recommendations. These models can incorporate query and item features to improve the
relevance of recommendations. For more information, see the following resources:
- Recommendation using Deep Neural Network Models
- Deep Neural Networks for YouTube Recommendations
- Wide & Deep Learning for Recommender Systems