Semaine 04 — Systèmes de recommandation
Module 4 : filtrage collaboratif, factorisation matricielle, modèles hybrides, écart entre les métriques hors ligne et les résultats des tests A/B en ligne.
Comment fonctionnent réellement les systèmes à la Netflix, et le problème d'évaluation honnête qu'ils créent.
Livrable de la semaine
Recommandeur hybride sur un jeu de données e-commerce réel, évalué sur trois métriques hors-ligne avec discussion explicite des raisons de leur désaccord.
| Échéance | Vendredi 18h00 (Africa/Lagos (UTC+1)) |
|---|---|
| Soumission | Déposer l'URL du dépôt dans le canal hebdomadaire de la cohorte. Le binôme de revue par les pairs est annoncé le lundi de la semaine suivante. |
| Grille | Validé / à reprendre. La validation exige une CI au vert, des tests couvrant l'API publique, et un README qu'un inconnu peut suivre pour installer et exécuter le code. |
Sessions en direct et ateliers
Cadence hebdomadaire par défaut ci-dessous. Les dates spécifiques à la cohorte et les liens Zoom sont ajoutés à l'inscription.
| Jour | Horaire | Bloc | Enregistrement |
|---|---|---|---|
| Mon | 09:00-12:00 | Cours en direct + code-along | (après la session) |
| Mon | 14:00-16:00 | Travail de lab en autonomie + permanences assistants | (après la session) |
| Tue | 09:00-12:00 | Cours en direct + code-along | (après la session) |
| Tue | 14:00-16:00 | Travail de lab en autonomie + permanences assistants | (après la session) |
| Wed | 09:00-12:00 | Cours en direct + code-along | (après la session) |
| Wed | 14:00-16:00 | Travail de lab en autonomie + permanences assistants | (après la session) |
| Thu | 09:00-12:00 | Cours en direct + code-along | (après la session) |
| Thu | 14:00-16:00 | Travail de lab en autonomie + permanences assistants | (après la session) |
| Fri | 10:00-11:00 | Intervenant de l'industrie | (après la session) |
| Fri | 11:30-12:30 | Revue de lab | (après la session) |
| Fri | 14:00-15:00 | Rétrospective de cohorte | (après la session) |
Objectifs d'apprentissage
À l'issue de la semaine, chaque participant saura :
- Implémenter le filtrage collaboratif (user-based, item-based, factorisation matricielle).
- Implémenter le filtrage basé contenu avec des plongements.
- Construire un recommandeur hybride et l’évaluer avec des métriques hors-ligne (precision@k, NDCG, MAP).
- Comprendre pourquoi les métriques hors-ligne désaccordent souvent avec les résultats A/B en ligne.
Sujets abordés
Le problème de la recommandation · feedback explicite vs implicite · filtrage collaboratif · factorisation matricielle (SVD, ALS, NMF) · filtrage basé contenu avec plongements · modèles hybrides · évaluation : precision@k, recall@k, NDCG, MAP, métriques en ligne vs hors-ligne · cold-start, biais de popularité, bulles de filtre · le problème you’ll never know until you A/B test.
Ateliers
Atelier 1 — Filtre collaboratif MovieLens
Construire une factorisation matricielle user-item sur MovieLens 1M, d’abord en SVD brute puis avec ALS. Comparer le RMSE sur des notes retenues.
Jeu de données : MovieLens 1M (GroupLens).
Atelier 2 — Recommandeur e-commerce hybride
Combiner des baselines collaborative + contenu + popularité sur un jeu de données e-commerce public. Ajuster les poids du mélange en optimisant precision@10.
Jeu de données : Jeu de données public e-commerce brésilien Olist (Kaggle).
Atelier 3 — Trois métriques, trois classements
Prendre trois recommandeurs candidats issus des Labs 1 et 2. Les évaluer sur precision@10, NDCG@10 et MAP@10. Rédiger une note de 400 mots expliquant pourquoi elles classent les modèles différemment.
Jeu de données : Mêmes que Labs 1 et 2.
Lectures
Obligatoires
- Avant Mardi. Aggarwal, *Recommender Systems Textbook*, chapitres 1-3 (méthodes de voisinage et basées sur modèle)
- Avant Mercredi. Koren, Bell, Volinsky, *Matrix Factorization Techniques for Recommender Systems* (IEEE Computer 2009)