logo-polimi
Loading...
Risorse bibliografiche
Risorsa bibliografica obbligatoria
Risorsa bibliografica facoltativa
Scheda Riassuntiva
Anno Accademico 2020/2021
Scuola Scuola di Ingegneria Industriale e dell'Informazione
Insegnamento 052534 - RECOMMENDER SYSTEMS
Docente Cremonesi Paolo
Cfu 5.00 Tipo insegnamento Monodisciplinare
Didattica innovativa L'insegnamento prevede  2.0  CFU erogati con Didattica Innovativa come segue:
  • Blended Learning & Flipped Classroom
  • MOOC

Corso di Studi Codice Piano di Studio preventivamente approvato Da (compreso) A (escluso) Insegnamento
Ing Ind - Inf (Mag.)(ord. 270) - MI (263) MUSIC AND ACOUSTIC ENGINEERING*AZZZZ052534 - RECOMMENDER SYSTEMS
Ing Ind - Inf (Mag.)(ord. 270) - MI (474) TELECOMMUNICATION ENGINEERING - INGEGNERIA DELLE TELECOMUNICAZIONI*AZZZZ052534 - RECOMMENDER SYSTEMS
Ing Ind - Inf (Mag.)(ord. 270) - MI (481) COMPUTER SCIENCE AND ENGINEERING - INGEGNERIA INFORMATICA*AZZZZ052175 - RECOMMENDER SYTEMS AND PERSONALIZATION (EIT DSC)
052534 - RECOMMENDER SYSTEMS

Obiettivi dell'insegnamento

Recommender systems are algorithms that mimic the psychology and personality of humans, in order to predict their needs and desires. More formally, recommender systems adopt data-mining and machine-learning techniques to help users in finding attractive and useful products. Products can be almost anything: physical items (e.g., smartphones), places (e.g., restaurants), digital content (e.g., movies and music), and many more. Recommender systems produce recommendations based on different inputs: demographic information about users, ratings and comments on products, individual’s or community’s past preferences and choices, social networks, context of use.

During the last years, recommender systems have seen an increasing adoption in various services. The most famous success story of a recommender system is Netflix. The Netflix company launched a competition (www.netflixprize.com) offering a 1 million dollar prize to anyone able to create a better recommendation system than the one adopted by Netflix itself for its video-streaming service.

The technology behind recommender systems has evolved over the past years into a rich collection of tools that enable practitioners and researchers to develop effective recommenders. We will study the most important of those algorithms, including how they work, how to use them, how to evaluate them, and their strengths and weaknesses in practice. The algorithms we will study include content-based filtering, collaborative filtering, dimensionality reduction, hybrid techniques, cros-domain and context aware techniques. The approach will be hands-on, with the evaluation based on a competition similar to the Netflix prize, which will involve implementation and testing of algorithms. We will also explore the design space for recommender systems, including designing recommender and the surrounding social issues such as identity, privacy, and manipulation.


Risultati di apprendimento attesi

Students will understand:

- requirements and objectives of recommender systems based on different application domains

- benefits and limits of different recommendation techniques

- how recommender systems differ based on their input data, on their internal working mechanisms, and on their goals

- how recommender systems work, how to use them, how to evaluate them, and their strengths and weaknesses

 

Given a practical recommendation problem, students will be able to:

- explore the design space for recommender systems in search for the best design choice

- write one or more scalable algorithms able to target the recommendation problem

- test the algorithms against a number of quality requirements

 

Given a practical recommendation problem, students will be able to:

- analyze and understand the goals, assumptions and requirements associated with that problem

- identify and define the correct evaluation activities required to assess the quality of a recommender system

- analyze and comment on the trade-offs between accuracy, novelty, diversity and scalability of different recommender algorithms

- estimate the resources needed for the successful execution of a recommendation algorithm on a target problem

 

Students will learn to:

- translate high-level requirements into a requirement specification document

- present an executive summary and a detailed technical description of their work to both a technical and a non-technical audience

 

Students will be able to:

- incrementally improve quality of recommendations with the design of new algorithms

- to design recommender systems tailored for new application domains


Argomenti trattati
  1. Introduction to course and to recommender systems
  • Introduction to recommender systems
  • Course overview
  • Taxonomy of recommender systems
  • Description of the competition

  1. Non-personalized recommenders
  • Understanding ratings, predictions, and recommendations
  • Inferring preferences
  • Scales and normalization
  • Predictions and recommendations
  • Non-personalized recommenders (popularity, average rating)
  • Global effects
  1. Evaluation 
  • User and provider utility
  • Comparative evaluation: Dead data vs. Laboratory vs. Field study
  • User-centered metrics and evaluation: relevance, novelty, diversity
  • Relevance: error vs. accuracy metrics vs. rank metrics
  • Cold Start, New-Item and New-User problems
  • Experimental protocols: datasets and the fallacy of hidden data
  • More metrics
  • On-line evaluation: basic concepts 

  1. Content-Based Filtering (CBF) 
  • Introduction to content-based recommenders
  • Similarity between items
  • Similarity between users and items: building user profiles
  • Attributes and their normalization: TF-IDF 

  1. Collaborative Filtering (CF) 
  • Introduction to User-User Collaborative Filtering
  • Variations and enhancements (k-Nearest-Neighbour and others)
  • Introduction to Item-Item Collaborative Filtering
  • Strengths and weaknesses of Item-Item vs. User-User CF
  • Item-Item and Association Rules
  • Domain knowledge vs. Machine Learning approaches: CF as an optimization problem

  1. Dimensionality Reduction Recommenders
  • Introduction to dimensionality-reduction recommenders: matrix factorization
  • Concepts behind Latent Semantic Analysis and Singular Value Decomposition (SVD)
  • Training Matrix Factorization: FunkSVD, ALS and others
  • Extending Matrix Factorization: SVD++ and AsySVD
  • Probabilistic Matrix Factorization

  1. Hybrid Recommenders
  • Overview of hybridization techniques
  • Collaborative filtering with side information
  • Factorization Machines

  1. Advanced topics
  • Deep Learning algorithms
  • Context-aware recommenders
  • Learning to rank
  • Cross-domain recommenders
  • Interfaces for recommender systems: elicitation and explanation

 


Prerequisiti

Students entering the class should be comfortable with probability and statistics, linear algebra, and vector calculus. 

Students should have a pre-existing knowledge of "Machne Learning" (097683) and "Data Mining and Text Mining" (089167). Students who are weak in these areas should either: take the course at a later date, when better prepared, or expect to put in substantially more effort to catch up. 

Students taking the competition should be strong in programming. 


Modalità di valutazione

Students can choose between two types of evaluation.

 

# Engaged. Students with programming experience, willing to understand both the theory of recommender systems and how to write recommendation algorithms, can chose the innovartive evaluation track, which provides a more practical hands-on learning experience. The evaluation is divided into two parts: competition (mandatory) and project (optional).

  • Competition (max 27 points - mandatory). Students participate to the recommender competition that will run at the end of the semester.
    Students can group into teams of up to 2 students for the competition.
    At the end of the competition, students will write a two-pages report of their activity and will present their solution in front of the class.
    The best teams of the competition will have the opportunity to participate to the International RecSys challenge. We will publish more details on the competition on the course web page.
  • Project (max 5 points - optional). During the semester, a number of projects will be published on the course web site. Projects typically consist in the high-level design of a recommender system. Projects will be assigned on a first-come-first-served basis.
    Students can group into teams of up to 4 students for the project.
    Projects have deadlines. Failing to complete the project within the deadline means failing the project.

 

# Traditional. Students who are primarily interested in understanding the theoretical concepts of recommender systems, can choose to focus on the conceptual and mathematical content. The exam is divided into two parts: a mandatory written exam and an optional oral exam.

  • Written exam (max 26 points - mandatory).
  • Oral exam (max 5 points - optional) on advanced topics.

Bibliografia
Risorsa bibliografica obbligatoriaBeep http://beep.metid.polimi.it/web/recommender-systems-paolo-cremonesi-/
Risorsa bibliografica obbligatoriaGroup website http://recsys.deib.polimi.it/
Risorsa bibliografica facoltativaAggarwal, Charu C., Recommender Systems: The Textbook, Editore: Springer, Anno edizione: 2016, ISBN: 978-3-319-29659-3 https://www.amazon.it/Recommender-Systems-Textbook-Charu-Aggarwal/dp/3319296574/ref=sr_1_1?ie=UTF8&qid=1474538865&sr=8-1&keywords=Recommender+Systems%3A+The+Textbook
Note:

Recommended

Risorsa bibliografica facoltativaJannach, D., Zanker, M., Felfernig, A., & Friedrich, G, Recommender systems: an introduction, Editore: Cambridge University Press., Anno edizione: 2010 http://www.amazon.it/Recommender-Systems-Introduction-Dietmar-Jannach/dp/0521493366
Note:

Basic concepts

Risorsa bibliografica facoltativaKantor, Paul B., Lior Rokach, Francesco Ricci, and Bracha Shapira, Recommender systems handbook, Editore: Springer, Anno edizione: 2011 http://www.amazon.it/Recommender-Systems-Handbook-Francesco-Ricci-ebook/dp/B00D8D1Y10/ref=sr_1_1?s=english-books&ie=UTF8&qid=1413366876&sr=1-1&keywords=Recommender+systems+handbook
Note:

Advanced book


Forme didattiche
Tipo Forma Didattica Ore di attività svolte in aula
(hh:mm)
Ore di studio autonome
(hh:mm)
Lezione
30:00
40:00
Esercitazione
20:00
0:00
Laboratorio Informatico
0:00
0:00
Laboratorio Sperimentale
0:00
0:00
Laboratorio Di Progetto
0:00
35:00
Totale 50:00 75:00

Informazioni in lingua inglese a supporto dell'internazionalizzazione
Insegnamento erogato in lingua Inglese
Disponibilità di materiale didattico/slides in lingua inglese
Disponibilità di libri di testo/bibliografia in lingua inglese
Possibilità di sostenere l'esame in lingua inglese
Disponibilità di supporto didattico in lingua inglese
schedaincarico v. 1.6.5 / 1.6.5
Area Servizi ICT
11/08/2020