Recommender systems have become indispensable for several Web sites, such as Amazon, Netflix and Google News, helping users navigate through the abundance of items. In general, recommender systems facilitate the selection of data items by users, by issuing recommendations for items they might like. Nowadays, there are numerous recommendation approaches, like neighborhood-based approaches and model-based ones, and a lot of work on specific aspects of recommendations, like the cold start problem, and the evaluation of the recommended items in terms of a variety of parameters, like relevance, surprise and diversity. Also, more recently, recommendations have more broad applications, beyond products, like news recommendations, friends recommendations, medicine recommendations, query recommendations, and others.
In this course, we will focus on algorithmic approaches for producing recommendations, such as collaborative and content-based filtering. We will also discuss how to measure the effectiveness of recommender systems. Finally, we will cover emerging topics, such as contextual recommendations, recommendations for groups, packages recommendations, and how we can achieve diversity in recommender systems.
Learning outcomes
After completing the course, the student is expected to: - know the basic concepts and techniques of recommender systems, including collaborative and content-based filtering techniques, and techniques for computing contextual recommendations, recommendations for groups, packages recommendations and diverse recommendations, - be able to handle contemporary research issues and problems on recommender systems, and - solve real-world problems.
Contents
Collaborative Filtering, Content-based Filtering, Knowledge-based Recommendations, Contextual Recommendations, Recommendations for Groups, Packages Recommendations, Explanations in Recommender Systems, Diversity in Recommender Systems.
Teaching methods
Teaching method
Contact
Online
Lectures
Tutorials
Independent work
Lectures, exercises, student presentations in class, programming project.