Systèmes de recommandation

Établissement de formation

Faculté d'informatique
Science des données et ingénierie

Enseignant(s) :

Arafat Md Easin

Date de début

9 septembre 2026

Date de fin

14 décembre 2026

Domaine d'étude

Champ prioritaire CHARM

Niveau d'études

Charge de travail, ECTS

6

Brève description

Ce cours de 6 crédits offre une introduction complète aux systèmes de recommandation, abordant à la fois les fondements théoriques et les applications concrètes. Les étudiants exploreront un large éventail de techniques de recommandation, allant des méthodes basées sur les connaissances et sur le contenu au filtrage collaboratif, en passant par les modèles hybrides et les approches tenant compte du contexte, ainsi que des thèmes clés tels que la modélisation des utilisateurs, la personnalisation, les recommandations de groupe, la confiance et l'évaluation des systèmes.

Ce cours allie des cours magistraux à des séances pratiques, offrant ainsi aux étudiants une expérience concrète dans la création et l'évaluation de systèmes de recommandation. Les questions d'éthique, de sécurité et de gestion des données sont abordées tout au long du cursus. À l'issue de ce cours, les étudiants seront en mesure de concevoir, de mettre en œuvre et d'évaluer de manière critique des systèmes de recommandation dans divers domaines d'application, notamment les médias, le commerce électronique, la santé et l'agriculture.

Description complète

Ce cours de 6 crédits (IPM-24ATRSEG) propose une introduction rigoureuse et complète aux systèmes de recommandation, couvrant à la fois les fondements théoriques, les méthodes algorithmiques et la mise en œuvre pratique. Dispensé en anglais à la Faculté d'informatique de l'ELTE, ce cours s'adresse aux étudiants en master de science des données et dans des filières connexes.

Contenu et structure
Le cours s'étend sur 13 semaines et aborde les thèmes suivants :
Semaine 1 : Introduction aux systèmes de recommandation, présentation générale du cours ; types de systèmes de recommandation ; applications concrètes ; défis
Semaine 2 : Fondamentaux, matrice d'utilité ; problème de la « longue traîne » ; bases de l'exploration de données ; Données d’interaction utilisateur-élément
Semaine 3 : Filtrage basé sur le contenu I, profils d’éléments ; similarité TF-IDF ; modélisation des préférences des utilisateurs
Semaine 4 : Filtrage basé sur le contenu II, système de recommandation de films utilisant TF-IDF ; séance de travaux pratiques.
Semaine 5 : Filtrage collaboratif I, filtrage collaboratif basé sur la mémoire ; approches utilisateur-utilisateur vs élément-élément ; séance de travaux pratiques.
Semaine 6 : Filtrage collaboratif II, similarité des éléments basée sur le KNN ; modèles de voisinage ; séance de travaux pratiques.
Semaine 7 : Modèles à facteurs latents I, factorisation matricielle ; SVD ; NMF ; séance de travaux pratiques.
Semaine 8 : Modèles à facteurs latents II, SVD++ ; réseau neuronal profond Softmax ; apprentissage profond pour la recommandation de ressources ; séance de travaux pratiques.
Semaine 9 : Systèmes de recommandation basés sur la connaissance et sur les contraintes, satisfaction de contraintes ; analyse critique ; séance de travaux pratiques.
Semaine 10 : Architectures hybrides et avancées, modèles hybrides ; systèmes de recommandation contextuels ; recommandations de groupe ; modèles sociaux ; confiance dans les systèmes de recommandation.
Semaine 11 : Évaluation des systèmes de recommandation, RMSE, MAE, Precision@K, Recall@K, NDCG, couverture ; séance de travaux pratiques.
Semaine 12 : Éthique, équité et biais ; biais algorithmiques ; bulles de filtrage ; cocons d’information ; techniques de suppression des biais ; IA responsable.
Semaine 13 : Tendances futures et présentations de projets ; réseaux neuronaux sur graphes (LightGCN) ; apprentissage fédéré ; synergie LLM-RS ; présentations des projets des étudiants

Acquis d'apprentissage

À l'issue de cette formation, le participant sera capable de :

LO1 : Expliquer les concepts fondamentaux, les architectures et les domaines d’application des systèmes de recommandation, notamment la matrice d’utilité, le problème de la « longue traîne » et les principales familles d’algorithmes
LO2 : Mettre en œuvre des techniques de filtrage basées sur le contenu à l’aide de mesures de similarité TF-IDF et de la modélisation des préférences des utilisateurs en Python
LO3 : Développer des systèmes de filtrage collaboratif en utilisant à la fois des approches basées sur la mémoire (utilisateur-utilisateur, élément-élément) et des approches basées sur des modèles (KNN, factorisation de matrice)
LO4 : Appliquer des modèles à facteurs latents, notamment SVD, SVD++, NMF et des méthodes d’apprentissage profond, afin de mettre au jour des modèles cachés dans les données d’interaction utilisateur-élément
LO5 : Concevoir des systèmes de recommandation hybrides, basés sur la connaissance et sur des contraintes, adaptés à des scénarios d’application complexes du monde réel
LO6 : Évaluer les performances des systèmes de recommandation à l'aide de métriques standard telles que RMSE, Precision@K, Recall@K et NDCG, et interpréter les résultats de manière critique
LO7 : Évaluer les enjeux éthiques liés aux systèmes de recommandation, notamment les biais algorithmiques, les bulles de filtrage, l'équité et les considérations relatives à la confidentialité des données
LO8 : Développer un projet original de système de recommandation basé sur l'IA, en utilisant l'apprentissage automatique, l'apprentissage profond ou l'apprentissage par renforcement, afin de résoudre un problème concret
LO9 : Utiliser des outils et des pratiques conformes aux normes de l’industrie, notamment Python, Jupyter Notebooks et le contrôle de version via GitHub, pour mettre en œuvre et documenter des pipelines de systèmes de recommandation reproductibles
L10 : Discuter des tendances émergentes dans le domaine, notamment les réseaux neuronaux sur graphes, l’apprentissage fédéré et l’intégration de grands modèles linguistiques dans les pipelines de recommandation

Exigences du cours

Il n'y a pas de prérequis officiels pour ce cours. Toutefois, les étudiants doivent disposer :
– d'une expérience de base en programmation, de préférence en Python (variables, boucles, fonctions, bibliothèques)
– de connaissances fondamentales en analyse de données, notamment une bonne maîtrise des structures de données et des concepts statistiques de base (moyenne, variance, mesures de similarité)
– de notions de base en algèbre linéaire, notamment les vecteurs, les matrices et les opérations matricielles (utiles pour comprendre les modèles à facteurs latents)

Les étudiants doivent également :
– Assister à tous les cours magistraux (obligatoires) et ne pas manquer plus de quatre séances pratiques
– Disposer d’un compte GitHub et soumettre tous leurs travaux de laboratoire et le code de leurs projets via le dépôt du cours
– Choisir un sujet de projet de recherche individuel avant la date limite fixée (2e semaine du semestre)

Places disponibles

60

Ouvrages du cours (obligatoires ou recommandés) :

Lectures obligatoires
[1] Ricci, F., Rokach, L., Shapira, B. (dir.) Recommender Systems Handbook. Springer, 2e édition, 2015. ISBN : 978-1489976376. DOI : 10.1007/978-1-4899-7637-6
[2] Aggarwal, C. C. Recommender Systems: The Textbook. Springer, 2016. ISBN : 978-3319296579. DOI : 10.1007/978-3-319-29659-3
[3] Koren, Y., Bell, R., Volinsky, C. « Matrix Factorization Techniques for Recommender Systems ». IEEE Computer, vol. 42, n° 8, p. 30-37, 2009. DOI : 10.1109/MC.2009.263

Lectures recommandées
[1] Jannach, D., Zanker, M., Felfernig, A., Friedrich, G. Recommender Systems: An Introduction. Cambridge University Press, 2010. ISBN : 978-0521493369
[2] Wang, Z., Pu, C., Wang, F. Deep Learning Recommender Systems. Cambridge University Press, 2025. ISBN : 978-1009447508
[3] Leskovec, J., Rajaraman, A., Ullman, J. L'exploration de vastes ensembles de données (chapitre 9 : Systèmes de recommandation). Cambridge University Press, 3e édition. Disponible en libre accès à l'adresse : http://www.mmds.org/

Articles de synthèse recommandés
[1] Zhang, S., Yao, L., Sun, A., Tay, Y. « Deep Learning Based Recommender System: A Survey and New Perspectives ». ACM Computing Surveys, vol. 52, n° 1, article 5, 2019. DOI : 10.1145/3285029
[2] Gao, C., Zheng, Y., Li, N., Li, Y., Qin, Y., Peng, J., Han, S., Chen, J., Ma, D., Jin, D., Li, Y. Étude des réseaux neuronaux sur graphes pour les systèmes de recommandation : défis, méthodes et orientations. ACM Transactions on Recommender Systems, vol. 1, n° 1, article 1, janvier 2023. DOI : 10.1145/3568022
[3] Zhang, Y., Chen, X. « Recommandations explicables : état des lieux et nouvelles perspectives ». Foundations and Trends in Information Retrieval, vol. 14, n° 1, p. 1–101, 2020. DOI : 10.1561/1500000066
[4] Wu, L., Zheng, Z., Qiu, Z., Wang, H., Gu, H., Shen, T., Qin, C., Zhu, C., Zhu, H., Liu, Q., Xiong, H., Chen, E.
Une étude sur les grands modèles linguistiques pour la recommandation.
Prépublication arXiv, 2023, dernière révision en juin 2024.

Répertoire des ressources du cours (cahiers de laboratoire, ensembles de données, modèles de projets)

Activités pédagogiques prévues et méthodes d'enseignement :

Ce cours associe des cours magistraux hebdomadaires à des séances pratiques en laboratoire, au cours desquelles les étudiants mettent en œuvre des algorithmes de systèmes de recommandation en Python à l'aide de Jupyter Notebooks et de Google Colab. Tous les supports de laboratoire sont accessibles via le dépôt GitHub du cours.

Tout au long du semestre, les étudiants se consacrent à la lecture autonome d’articles de recherche et de chapitres d’ouvrages qui leur sont assignés, ce qui leur permet de développer leur esprit critique et de se familiariser avec l’état actuel des connaissances. Ce travail alimente directement l’examen oral final, qui allie les connaissances théoriques à une discussion sur les travaux personnels de l’étudiant.

L'activité pratique principale consiste en un projet de recherche individuel, dans le cadre duquel chaque étudiant conçoit et met en œuvre un système de recommandation original basé sur l'intelligence artificielle, destiné à résoudre un problème concret, et qu'il présente officiellement à la fin du semestre.

Code du cours

IPM-24ATRSEG

Langue

Méthode d'évaluation

Défense

Certification finale

Relevé de notes

N/A

Date d'évaluation

15 décembre 2026

Modalité

Système de gestion de l'apprentissage actuellement utilisé

ELTE Canvas (plateforme principale pour les supports de cours, les annonces et les devoirs) ; outils complémentaires : Google Colab et GitHub Classroom pour les exercices de programmation.

Nombre d'heures de cours par semaine pour l'étudiant :

4

Jour et heure précis de cours hebdomadaires

Les mercredis, de 10 h à 12 h (cours magistral) / Les vendredis, de 10 h à 12 h (travaux pratiques)

Fuseau horaire