We may earn an affiliate commission when you visit our partners.
Course image
Course image
Coursera logo

Advanced Recommender Systems

Paolo Cremonesi

In this course, you will see how to use advanced machine-learning techniques to build more sophisticated recommender systems. Machine Learning is able to provide recommendations and make better predictions, by taking advantage of historical opinions from users and building up the model automatically, without the need for you to think about all the details of the model.

Read more

In this course, you will see how to use advanced machine-learning techniques to build more sophisticated recommender systems. Machine Learning is able to provide recommendations and make better predictions, by taking advantage of historical opinions from users and building up the model automatically, without the need for you to think about all the details of the model.

At the end of the Advanced Recommender Systems, you will know how to manage hybrid information and how to combine different filtering techniques, taking the best from each approach. More, you will know how to use factorisation machines and represent the input data accordingly and be able to design more sophisticated recommender systems, which can solve the cross-domain recommendation problem.

The course leverages two important EIT Digital Overarching Learning Outcomes (OLOs), related to your creativity and innovation skills. In trying to design a new recommender system you need to think beyond boundaries and try to figure out how you can improve the quality of the outcomes. You should also be able to use knowledge, ideas and technology to create new or significantly improved recommendation tools to support choice-making processes and solve real-life problems in complex and innovative scenarios.

Enroll now

What's inside

Syllabus

ADVANCED COLLABORATIVE FILTERING
In this first module, we will see how to apply machine learning to collaborative filtering techniques. We will learn how to write an item-based collaborative algorithm which is able to automatically learn the best similarities between items, in order to provide improved recommendations that better match the user opinions predicted by the model with the true user opinions. We will also understand how to train collaborative filtering algorithms that minimize this gap. We will finally define a new error metric based on ranking comparisons, useful to design learning-to-rank algorithms.
Read more
SINGULAR VALUE DECOMPOSITION TECHNIQUES - SVD
In this second module, we will study a new family of collaborative filtering techniques based on dimensionality reduction and matrix factorization approaches, all inspired by SVD (Singular Value Decomposition). We will see the difference between memory-based and model-based recommender systems, discussing their limitations and advantages. In particular, we will learn how to turn basic matrix factorization algorithms from memory-based into model-based approaches. We will also analyse a new important parameter, the number of latent features. We will learn how to choose the correct number of latent features in order to provide personalised recommendations and to reduce the risk of overfitting historical data.
HYBRID AND CONTEXT AWARE RECOMMENDER SYSTEMS
In this third module, we will see how to combine two or more basic algorithms, such as collaborative filtering and content-based techniques, into a hybrid recommender system, in order improve the quality recommendations. We will study different hybridization approaches, from the simplest heuristic-based, to the more sophisticated machine learning-based. Thanks to hybrid techniques, we will be able to enrich the input of a collaborative recommender system with either content or contextual information.
FACTORIZATION MACHINES
In this fourth and last module, we will introduce a new advanced technique of collaborative filtering with side information, which is called Factorization Machine (FM), and we’ll see how the input data should be represented when using this technique. With only one mathematical model, based on how you build the input table, we will be able to create a simple matrix factorization algorithm or a sophisticated collaborative filtering algorithm with side information (context, attributes on items or attributes on users). We will also discuss benefits and critical issues of algorithms based on FMs. At the end of the module you will know how to use FMs to mix together different kinds of filtering techniques and how to balance different kinds of input information, playing with coefficients and weights, in order to make better and more sophisticated predictions.
Recsys Challenge (Honors)
The RecSys Challenge is the best way to train your competences: it's a practical exercise which provides a "hands-on" opportunity to put to good use and improve what you've been learning during this course (learning by doing). The application domain is an online store, the dataset we provide contains 4 months of transactions collected from an online supermarket. The main goal of the competition is to discover which item a user will interact with. The RecSys Challenge is optional and it is not required to pass the course. If you complete it, you will receive an Honors designation on your Course certificate.

Good to know

Know what's good
, what to watch for
, and possible dealbreakers
Develops advanced recommender systems, which are core skills for tech professionals
Examines factorization machines and cross-domain recommendations, which are highly relevant to industry
Taught by Paolo Cremonesi, who are recognized for their work in recommender systems
This course requires students to come in with extensive background knowledge first
Leverages EIT Digital Overarching Learning Outcomes (OLOs) related to creativity and innovation skills
Provides a hands-on RecSys Challenge to practice and improve skills

Save this course

Save Advanced Recommender Systems to your list so you can find it easily later:
Save

Reviews summary

Advanced recommender systems: overview

According to students, Advanced Recommender Systems provides a great overview of advanced techniques for building recommender systems. However, some students find that it lacks exercises, explanations, and content. Many students complain about the instructor and the sound quality during the lectures.
Provides a great overview of advanced recommender system techniques.
"Great course to overview advanced techniques to build recommender system."
Audio quality is poor.
"V​ery bad course. No deep understanding, bad instructor and terrible sound during learning, some crackles ​and missing audio."
Instructor is bad
"V​ery bad course. No deep understanding, bad instructor and terrible sound during learning, some crackles ​and missing audio."
Lacks exercises, explanations, and content
"This course is really not worth the money. It clearly lacks more exercises, more explanations and simply more content."

Activities

Be better prepared before your course. Deepen your understanding during and after it. Supplement your coursework and achieve mastery of the topics covered in Advanced Recommender Systems with these activities:
Organize Course Notes
Organize and review course notes, assignments, and materials to consolidate your understanding of advanced recommender systems concepts.
Show steps
  • Review lecture notes and identify key concepts.
  • Summarize key takeaways from each module.
  • Create a comprehensive study guide for future reference.
Review Machine Learning
Refresh your knowledge of machine learning concepts and techniques to strengthen your foundation for this course.
Browse courses on Machine Learning
Show steps
  • Review linear regression, logistic regression, and decision trees.
  • Practice implementing these algorithms in a programming language.
Review SVD Techniques
Review the concepts of Singular Value Decomposition to strengthen the understanding of matrix factorization approaches.
Show steps
  • Go over the basics of linear algebra
  • Define Singular Value Decomposition
  • Understand the relationship between SVD and matrix factorization
11 other activities
Expand to see all activities and additional details
Show all 14 activities
Review SVD techniques
Review Singular Value Decomposition (SVD) techniques to strengthen your understanding of dimensionality reduction and matrix factorization approaches used in collaborative filtering.
Show steps
  • Revisit the concept of SVD and its mathematical formulation.
  • Practice applying SVD to real-world datasets using programming tools.
  • Explore different variations of SVD, such as truncated SVD and randomized SVD.
Explore Advanced Recommender Systems Libraries
Explore open-source Python libraries for advanced recommender systems, such as Surprise, LightFM, or Recommenders, to enhance your practical skills in implementing these techniques.
Browse courses on Recommender Systems
Show steps
  • Install and familiarize yourself with a chosen library.
  • Follow tutorials and documentation to implement basic recommendation methods.
  • Experiment with different parameters and configurations to optimize results.
Matrix Factorization Algorithm Exercises
Improve understanding of matrix factorization algorithms through practice exercises.
Show steps
  • Solve matrix factorization problems manually
  • Implement matrix factorization algorithms in a programming language
  • Evaluate the performance of matrix factorization algorithms on different datasets
Follow Tutorials on Hybrid Recommender Systems
Follow tutorials to gain hands-on experience in building hybrid recommender systems.
Show steps
  • Identify different types of hybrid recommender systems
  • Follow tutorials to implement hybrid recommender systems
  • Experiment with different hybridization techniques
  • Evaluate the performance of hybrid recommender systems
Design a Hybrid Recommender System
Design and implement a hybrid recommender system that combines multiple techniques, such as collaborative filtering and content-based filtering, to improve recommendation accuracy and diversity.
Show steps
  • Identify the strengths and weaknesses of different recommendation techniques.
  • Select and integrate appropriate techniques to create a hybrid system.
  • Evaluate the performance of the hybrid system using relevant metrics.
Discuss Best Practices for Recommender Systems
Engage in discussions with peers to exchange ideas, share experiences, and collectively explore best practices in the field of advanced recommender systems.
Browse courses on Recommender Systems
Show steps
  • Identify a specific topic or challenge related to recommender systems.
  • Facilitate a discussion with peers, encouraging diverse perspectives.
  • Summarize key insights and takeaways from the discussion.
Solve Factorization Machine Problems
Practice solving problems involving Factorization Machines (FMs) to strengthen your understanding of side information incorporation and model optimization.
Show steps
  • Implement a basic FM algorithm using a programming library.
  • Experiment with different feature representations and regularization parameters.
  • Analyze the performance of FM-based models on real-world datasets.
Collaborative Filtering Item-Based Recommender System
Create a collaborative filtering item-based recommender system to apply the learning from the course.
Show steps
  • Gather user-item interaction data
  • Compute item-item similarity using cosine similarity
  • Predict user preferences for unrated items
  • Evaluate the recommender system using metrics like precision and recall
Literature Review on Cross-Domain Recommendation
Conduct a literature review on cross-domain recommendation techniques to expand your knowledge and identify emerging trends and challenges in this area.
Browse courses on Recommender Systems
Show steps
  • Search and gather relevant research papers from reputable sources.
  • Summarize and synthesize the key findings and approaches presented in the literature.
  • Discuss the limitations and potential of current cross-domain recommendation methods.
Develop a Recommender System for a Specific Domain
Apply your knowledge by developing a recommender system for a specific domain, such as product recommendations, movie recommendations, or news article recommendations.
Browse courses on Recommender Systems
Show steps
  • Define the problem statement and identify the target audience.
  • Gather and prepare the necessary data.
  • Select and implement appropriate recommendation techniques.
  • Evaluate the performance of the recommender system and iterate to improve results.
Tutorial on Factorization Machines
Create a tutorial to explain the concepts and applications of Factorization Machines.
Show steps
  • Explain the intuition behind Factorization Machines
  • Discuss the mathematical formulation of Factorization Machines
  • Provide examples of using Factorization Machines for real-world problems
  • Publish the tutorial online

Career center

Learners who complete Advanced Recommender Systems will develop knowledge and skills that may be useful to these careers:
Market Researcher
Market Researchers study market trends and customer behavior. They use this information to help businesses develop new products and services. Advanced Recommender Systems can help Market Researchers understand customer preferences and make better recommendations. This course can also help Market Researchers learn how to use machine learning to build more sophisticated recommender systems. This can help them make better predictions and recommendations, which can lead to improved business outcomes.
Data Scientist
Data Scientists are responsible for collecting, analyzing, and interpreting大量的 data. They use this data to help businesses make better decisions. Advanced Recommender Systems can help Data Scientists develop new and innovative ways to collect and analyze data. This course can also help Data Scientists learn how to use machine learning to build more sophisticated recommender systems. This can help them make better predictions and recommendations, which can lead to improved business outcomes.
Business Analyst
Business Analysts help businesses solve problems and improve efficiency. They use data and analysis to identify opportunities and develop solutions. Advanced Recommender Systems can help Business Analysts improve their data analysis skills. This course can also help Business Analysts learn how to use machine learning to build more sophisticated recommender systems.
Product Manager
Product Managers are responsible for developing and managing products. They work with engineers, designers, and marketers to bring products to market. Advanced Recommender Systems can help Product Managers understand customer needs and develop better products. This course can also help Product Managers learn how to use machine learning to build more sophisticated recommender systems.
Data Engineer
Data Engineers design and build the infrastructure that stores and processes data. They work with data scientists and other engineers to ensure that data is available and accessible. Advanced Recommender Systems can help Data Engineers build more sophisticated recommender systems. This course can also help Data Engineers learn how to use machine learning to improve the performance of their data infrastructure.
Software Engineer
Software Engineers design, develop, and maintain software applications. They work with computers and other hardware to create software solutions. Advanced Recommender Systems can help Software Engineers build more sophisticated recommender systems. This course can also help Software Engineers learn how to use machine learning to improve the performance of their software applications.
Statistician
Statisticians collect, analyze, and interpret data. They work with businesses, governments, and other organizations to help them make better decisions. Advanced Recommender Systems can help Statisticians develop new and innovative ways to collect and analyze data. This course can also help Statisticians learn how to use machine learning to build more sophisticated recommender systems.
Machine Learning Engineer
Machine Learning Engineers design and build machine learning models. They work with data scientists and other engineers to develop and deploy machine learning solutions. Advanced Recommender Systems can help Machine Learning Engineers build more sophisticated recommender systems. This course can also help Machine Learning Engineers learn how to use machine learning to improve the performance of their machine learning models.
User Experience Researcher
User Experience Researchers study how users interact with products and services. They use this information to improve the user experience. Advanced Recommender Systems can help User Experience Researchers understand user preferences and make better recommendations. This course can also help User Experience Researchers learn how to use machine learning to build more sophisticated recommender systems.
Quantitative Analyst
Quantitative Analysts use mathematical and statistical models to analyze data. They work with businesses and governments to help them make better decisions. Advanced Recommender Systems can help Quantitative Analysts develop new and innovative ways to collect and analyze data. This course can also help Quantitative Analysts learn how to use machine learning to build more sophisticated recommender systems.
Actuary
Actuaries use mathematical and statistical models to assess risk. They work with insurance companies and other financial institutions to help them make better decisions. Advanced Recommender Systems can help Actuaries develop new and innovative ways to collect and analyze data. This course can also help Actuaries learn how to use machine learning to build more sophisticated recommender systems.
Operations Research Analyst
Operations Research Analysts use mathematical and statistical models to improve the efficiency of operations. They work with businesses and governments to help them make better decisions. Advanced Recommender Systems can help Operations Research Analysts develop new and innovative ways to collect and analyze data. This course can also help Operations Research Analysts learn how to use machine learning to build more sophisticated recommender systems.
Data Analyst
Data Analysts collect, analyze, and interpret data. They work with businesses and governments to help them make better decisions. Advanced Recommender Systems can help Data Analysts develop new and innovative ways to collect and analyze data. This course can also help Data Analysts learn how to use machine learning to build more sophisticated recommender systems.

Reading list

We've selected 14 books that we think will supplement your learning. Use these to develop background knowledge, enrich your coursework, and gain a deeper understanding of the topics covered in Advanced Recommender Systems.
Practical guide to building recommender systems. It valuable resource for practitioners who want to learn how to build and deploy recommender systems.
Comprehensive textbook on recommender systems. It valuable resource for students, researchers, and practitioners who want to learn more about this important topic.
This paper provides a detailed overview of factorization machines for recommender systems. It valuable resource for researchers and practitioners who want to learn more about this important topic.
Offers an in-depth treatment of SVD and other dimensionality reduction methods, including their theoretical foundations, numerical implementation, and applications in various domains. Excellent reference for understanding the mathematical foundations of matrix factorization techniques.
Provides a comprehensive overview of probabilistic graphical models, including their theoretical foundations, numerical implementation, and applications in various domains. Offers a thorough treatment of advanced topics, such as deep learning.
Provides a comprehensive overview of machine learning, including its theoretical foundations, numerical implementation, and applications in various domains. Offers a thorough treatment of advanced topics, such as deep learning.
Provides a comprehensive overview of deep learning, including its theoretical foundations, numerical implementation, and applications in various domains. Offers a thorough treatment of advanced topics, such as deep reinforcement learning.
Provides a comprehensive overview of reinforcement learning, including its theoretical foundations, numerical implementation, and applications in various domains. Offers a thorough treatment of advanced topics, such as deep reinforcement learning.
Provides a comprehensive overview of information retrieval, including its theoretical foundations, numerical implementation, and applications in various domains. Offers a thorough treatment of advanced topics, such as deep learning.
Provides a comprehensive overview of natural language processing with Python, including its theoretical foundations, numerical implementation, and applications in various domains. Offers a thorough treatment of advanced topics, such as deep learning.
Provides a comprehensive overview of computer vision, including its theoretical foundations, numerical implementation, and applications in various domains. Offers a thorough treatment of advanced topics, such as deep learning.
Provides a comprehensive overview of speech and language processing, including its theoretical foundations, numerical implementation, and applications in various domains. Offers a thorough treatment of advanced topics, such as deep learning.
Provides a comprehensive overview of data mining, including its theoretical foundations, numerical implementation, and applications in various domains. Offers a thorough treatment of advanced topics, such as deep learning.

Share

Help others find this course page by sharing it with your friends and followers:

Similar courses

Here are nine courses similar to Advanced Recommender Systems.
Basic Recommender Systems
Most relevant
Machine Learning: Recommender Systems & Dimensionality...
Most relevant
Building Recommender Systems with Machine Learning and AI
Most relevant
Machine Learning Capstone: An Intelligent Application...
Most relevant
Literacy Essentials: Core Concepts Recommender Systems
Most relevant
Introduction to Recommender Systems: Non-Personalized...
Most relevant
Machine Learning Foundations: A Case Study Approach
Most relevant
Recommender Systems and Deep Learning in Python
Most relevant
Machine Learning Capstone
Our mission

OpenCourser helps millions of learners each year. People visit us to learn workspace skills, ace their exams, and nurture their curiosity.

Our extensive catalog contains over 50,000 courses and twice as many books. Browse by search, by topic, or even by career interests. We'll match you to the right resources quickly.

Find this site helpful? Tell a friend about us.

Affiliate disclosure

We're supported by our community of learners. When you purchase or subscribe to courses and programs or purchase books, we may earn a commission from our partners.

Your purchases help us maintain our catalog and keep our servers humming without ads.

Thank you for supporting OpenCourser.

© 2016 - 2024 OpenCourser