Agosto-Diciembre 2020
Instructor: Denis Parra, Profesor Asociado PUC Chile, Ph.D. University of Pittsburgh
Ayudantes:
Vladimir Araujo, Alumno de Doctorado en Ciencia de la Computación PUC Chile.
Manuel Cartagena, Alumno de Magister en Ciencia de la Computación PUC Chile.
Andrés Carvallo, Alumno de Doctorado en Ciencia de la Computación PUC Chile.
Francisca Cattan, Alumna de Doctorado en Ciencia de la Computación PUC Chile.
Andrés Villa, Alumno de Doctorado en Ciencia de la Computación PUC Chile.
Institución: Pontificia Universidad Católica de Chile
Horario: Martes y Jueves, Módulo 3 (11:30 a 12:50).
Programa IIC 3633, 2do Semestre 2020: pdf.
El curso de Sistemas Recomendadores cubre las principales tareas de recomendación, algoritmos, fuentes de datos y evaluación de estos sistemas. Al final de este curso serás capaz de decidir qué técnicas y fuentes de datos usar para implementar y evaluar sistemas recomendadores.
Software: pyRecLab.
La componente práctica de este curso se enseña a través del uso de pyRecLab desarrollado por Gabriel Sepúlveda (ex-alumno de este curso), biblioteca de software para desarrollo de sistemas recomendadores en Python.
Contenido:
Semana | Tema | link slide(s) | link video | comentario(s) |
---|---|---|---|---|
1 | Introducción | x | video | |
1 | Ranking no personalizado y Filtrado colaborativo (FC) | slides | video | |
1 | User-based FC con clustering | slides | video | |
1 | Pendiente Uno | slides | video | |
2 | Item-based FC | slides | video | |
2 | Factorización Matricial: FunkSVD | slides | video | |
3 | Implicit Feedback CF | slides | video1 video2 | |
3 | Bayesian Personalized Ranking (BPR) | slides | video | |
4 | Evaluación: metricas de error y ranking | slides | video | slides P Castells LARS 2019 |
4 | Evaluación II: Cobertura, diversidad, novedad | slides | video | |
4 | Evaluación III: Tests estadísticos | slides | video | |
5 | Recomendación basada en contenido 1 | slides | video | |
5 | Recomendación basada en contenido 2 | slides | video | |
6 | Recomendación híbrida | slides | video | |
6 | Recomendación por ensambles | slides | video | |
6 | Recomendación basada en contexto | slides | video1 video2 | |
6 | Máquinas de Factorización | slides | video | |
7 | Semana Break | Break | Break | |
8 | Ideas de Proyecto | slides | video1 video2 | |
9 | Evaluación centrada en usuarios | slides | video1 video2 | |
9 | Sistemas Justos, Explicables y Transparentes | slides | video | |
10 | Aprendizaje Activo (Active Learning) | slides | video | |
10 | Bandits: Invitada PhD(c) Andrea Barraza | slides | video1 video2 | Tutorial eng. RecSys 2020 video slides |
11 | Aprendizaje Profundo para RecSys (Intro y FC) | slides | video | |
11 | Aprendizaje Profundo para RecSys (Secuencias) | slides | video | |
12 | Aprendizaje Profundo para RecSys (Imágenes, Transformer, Grafos) | slides | video1 video2 | |
12 | 10 problemas en Sistemas de Recomendación | slides | video |
A partir de noviembre el curso toma modalidad seminario, los alumnos hacen presentaciones de los siguientes papers:
Semana | Tema | link slide(s) | link video | conferencia |
---|---|---|---|---|
13 | CTRec: A Long-Short Demands Evolution Model for Continuous-Time Recommendation | slides | video | SIGIR 2019 |
13 | Collaborative Similarity Embedding for Recommender Systems | slides | video | WWW 2019 |
13 | Personalized re-ranking for recommendation | slides | video | RecSys 2019 |
13 | Recommending what video to watch next: a multitask ranking system | slides | video | RecSys 2019 |
13 | Interactive Recommender System via Knowledge Graph-enhanced Reinforcement Learning | slides | video | SIGIR 2020 |
13 | The Impact of More Transparent Interfaces on Behavior in Personalized Recommendation | slides | video | SIGIR 2020 |
14 | Complete the Look: Scene-based Complementary Product Recommendation | slides | video | CVPR 2019 |
14 | Dynamic Online Conversation Recommendation | slides | video | ACL 2020 |
14 | Temporal-Contextual Recommendation in Real-Time | slides | video | KDD 2020 |
14 | What does BERT Know about Books, Movies and Music? Probing BERT for Conversational Recommendation | slides | video | RecSys 2020 |
14 | Fairness-Aware Explainable Recommendation over Knowledge Graphs | slides | video | SIGIR 2020 |
15 | Deep generative ranking for personalized recommendation | slides | video | RecSys 2019 |
15 | Revisiting Adversarially Learned Injection Attacks Against Recommender Systems | slides | video | RecSys 2020 |
15 | Neural Interactive Collaborative Filtering | slides | video | SIGIR 2020 |
15 | Explanation Mining: Post Hoc Interpretability of Latent Factor Models for Recommendation Systems | slides | video | KDD 2018 |
15 | Towards Conversational Recommendation over Multi-Type Dialogs | slides | video | ACL 2020 |
15 | Self-Supervised Reinforcement Learning for Recommender Systems | slides | video | SIGIR 2020 |
16 | Controlling Fairness and Bias in Dynamic Learning-to-Rank | slides | video | SIGIR 2020 |
16 | Are we really making much progress? A worrying analysis of recent neural recommendation approaches | slides | video | RecSys 2019 |
16 | KRED: Knowledge-aware Document Representation for News Recommendations | slides | video | RecSys 2020 |
16 | Improving Relevance Prediction with Transfer Learning in Large-scale Retrieval Systems | slides | video | Workshop ICML 2019 |
16 | BERT4Rec: Sequential Recommendation with Bidirectional Encoder Representations from Transformer | slides | video | CIKM 2019 |
L@s estudiantes trabajaron en grupo sobre proyectos finales de curso, produciendo un poster, paper y repositorio con código para cada uno:
Imagen de la sesión de posters en gather.town del 15 de diciembre de 2020.
Grupo | Proyecto | Poster | Paper |
---|---|---|---|
1 | Recomendación a conjuntos de usuarios en grupos heterogeneos Cartagena, Huerfano, Toscano |
poster | paper |
2 | Personality bias in music recommendation:Beyond accuracy Objectives Valencia, Gonzalez |
poster | paper |
3 | Attack learning: a method using GANs Castro, Casassus |
poster | paper |
4 | Metrica Beyond Accuracy: Personal Labarca, Fuentes |
poster | paper |
5 | Sequential Recommenders for MeLiDataChallenge 2020 Aguilera, Everke |
poster | paper |
6 | Exploración de recomendadores híbridos para música Suarez, Carreño, Alipanah |
poster | paper |
7 | Impacto del Sesgo de Popularidad en el tiempo, considerando multiples stakeholders Guiñez, Ruiz, Sanchez |
poster | paper |
8 | Recomendación de items basada en la secuencia de compras: Aplicación DotA Salinas |
poster | paper |
9 | Delay and preference based flight recommendation Waugh, Hanuch, Ricke |
poster | paper |
10 | Changing the way we predict game purchases Duarte, Lopez, Rodriguez |
poster | paper |
11 | MelAE: A content-based next track recommendation from Mel Sprectrograms Diaz, Vinay |
poster | paper |
12 | Optimizing Hyper-parameters un RecSys using rolling averages Alliende |
poster | paper |
13 | Ramos Perez on MeliChallenge 2020 Perez, Ramos |
poster | paper |
14 | RL Algorithms for video game recsys Tapia, Villagrán |
poster | paper |
15 | Matrix factorizacion and content-based recsysy for playlist continuation Biskupovic |
poster | paper |
16 | Topic Recommendation for Call Centers Andrade, Dominguez, Patillo |
poster | paper |
17 | Recomendacion a grupos: metrica de similaridad y modelos de agrupacion Olguin, Ibarra |
poster | paper |
18 | Recommendation of COVID-19 articles using Deep Knowledge-Aware Network Donoso-Guzmán |
poster | paper |
19 | RecGAN as anime recommender systems Codoceo, Escudero, Torres |
poster | paper |
20 | Sistema Recomendador de Lecciones Aprendidas en Cursos Capstone Contreras, Molina, Stambuk |
poster | paper |
21 | Finding Similar Users with Recommender Systems Ovalle, Valdes |
poster | paper |
MES 1 En las primeras semanas nos enfocaremos en métodos básicos para hacer recomendación usando y prediciendo ratings (filtrado colaborativo User-based & item-based, slope-one). Luego veremos métodos de factorización matricial para ratings y para feedback implícito. En la 3ra semana veremos formas adicionales de evaluar más alla de la métricas de error de predicción de rating (MAE, MSE, RMSE) e incorporaremos métricas para evaluar listas de ítems (precision, recall, MAP, P@n, nDCG). Veremos métodos basados en contenido y sistemas híbridos.
MES 2 Métodos basados en contexto, máquinas de factorización y modelos fundamentales de deep learning para recomendación. Recapitulación de las tareas de recomendacion (predecir rating, predecir una lista de items, recomendar una secuencia, recomendación TopN) y de su evaluacion considerando diversidad, novedad, coverage, y otras métricas.
MES 3 User-centric RecSys, FAT (Fairness, Accountability and Transparency), Aplicaciones de Deep learning para problemas más específicos: recomendación de ropa, multimedia, etc. Modelos profundos generativos para recomendación. Revisaremos problemas de recomendación aún no resueltos en el área.
MES 4 Principalmente presentaciones de alumnos.
Este curso adscribe el Código de Honor establecido por la Escuela de Ingeniería el que es vinculante. Todo trabajo evaluado en este curso debe ser propio. En caso de que exista colaboración permitida con otros estudiantes, el trabajo deberá referenciar y atribuir correctamente dicha contribución a quien corresponda. Como estudiante es su deber conocer la versión en línea del Código de Honor
Detalles de las evaluaciones en esta presentacion.
Tarea 1
Al final de las primeras 4 semanas, las(los) estudiantes implementarán mecanismos de recomendación para predecir ratings y para rankear items en un dataset que se entregará durante clases. Usarán la biblioteca pyreclab para los métodos básicos, pero si quieren optar a la nota máxima debe hacer un sistema híbrido o contextual que utilice información de contenido, como texto o imágenes. Para tener una idea de qué se trata la tarea, pueden revisar el enunciado de la tarea del año 2019
Lecturas: Blog y Presentación
Fecha de revisión de blogs: El post de la semana x, tiene fecha de entrega el lunes a las 12pm de la semana x+1. Ejemplo: Las lecturas de la semana 1 (del 10 al 14 de agosto) se entregan a más tardar el lunes 17 de agosto de 2020 a las 8pm.
Cada alumno tendrá un repositorio en github (debe indicarlo en este formulario) donde escribirá en markdown sus comentarios respecto de los papers indicados como obligatorios. No es necesario hacer un resumen largo del paper, sino indicar un resumen corto, puntos que pueden abrir discusión, mejoras o controversias: Evaluación inadecuada, parámetros importantes no considerados, potenciales mejoras de los algoritmos, fuentes de datos que podían mejorar los resultados, etc.
Adicionalmente, cada alumno presentará al menos una vez durante el semestre un paper sobre un tópico, con el objetivo de abrir una discusión sobre el tema durante la clase.
Proyecto Final
Durante septiembre, las(los) estudiantes enviarán una idea de proyecto final, la cual desarrollarán durante octubre y noviembre. Enviarán un informe de avance a fines de octubre, para hacer una presentación de su proyecto al final del curso en una sesión de posters.
(actualizada el 8 de octubre de 2020)
Obligatorias
Sarwar, B., Karypis, G., Konstan, J., & Riedl, J. (2001). Item-based collaborative filtering recommendation algorithms. In Proceedings of the 10th international conference on World Wide Web (pp. 285-295).
Sugeridas
Obligatorias
Sugeridas
Obligatorias
Sugeridas
Obligatorias
Sugeridas
*Obligatorias (esta semana se puede elegir una de las dos para entregar)**
Sugeridas
*No olvidar declarar en la crítica el título elegido.
Libre de lecturas (fiestas patrias)
Obligatorias con entrega lunes 5 de octubre
Obligatoria con entrega miércoles 7 de octubre
Obligatorias
Sugeridas
Obligatorias
Sugeridas
Obligatorias
Sugeridas