Projet final
Système de Recommandation de Livres
Contexte et Objectifs
● Durée : 3h30
● Travail : en binôme
● Dataset : Goodreads (interactions utilisateurs-livres : notes, commentaires, etc.)
[Link]
● Objectif : Concevoir, implémenter et évaluer un système de recommandation hybride
en utilisant au moins 3 algorithmes/outils différents vus dans le cours
Compétences évaluées :
● Maîtrise des concepts fondamentaux en recommandation
● Capacité à mettre en œuvre et combiner plusieurs approches
● Analyse critique des performances des modèles
● Créativité dans la résolution des problèmes spécifiques au domaine des livres
Partie 1 : Préparation des données et analyse exploratoire (45 min)
a. Consignes :
1. Chargez le dataset Goodreads
2. Nettoyez les données (valeurs manquantes, incohérences)
3. Filtrez les utilisateurs et items trop peu actifs (seuils à définir)
b. Analyse exploratoire :
1. Calculez et visualisez la distribution des notes
2. Définissez la matrice user-item
3. Analysez la sparsité de la matrice utilisateur-livre
4. Identifiez les livres les plus populaires et les utilisateurs les plus actifs
c. Feature engineering :
1. Extrayez les features pertinentes (auteur, genre, année de publication)
2. Préparez les données textuelles (titres, descriptions) pour les étapes à suivre
Partie 2 : Implémentation des algorithmes (1h30)
a. Consignes et contraintes:
Implémentez au moins 3 algorithmes parmi les méthodes ci-dessous.
Contraintes techniques :
● Utilisez au moins une méthode traditionnelle et une méthode avancée
● Optimisez les hyperparamètres pour chaque algorithme
● Documentez chaque étape avec des commentaires
1. Méthode basée contenu :
a. Utilisez TF-IDF sur les descriptions de livres
b. Implémentez un système de recommandation par similarité cosinus
2. Filtrage collaboratif :
a. k-NN user-based ou item-based
b. Factorisation de matrices (SVD, ALS ou SGD)
3. Approche deep learning :
a. Autoencodeur pour la complétion de matrice
b. Embeddings neuralisés avec TensorFlow/Keras
4. Méthode hybride :
● Combinez au moins deux approches différentes
● Ponderez les scores de recommandation
Partie 3 : Évaluation et comparaison (45 min)
a. Consignes :
1. Évaluation quantitative :
a. Calculez le RMSE, MAE pour les méthodes de prédiction de notes (quand
applicable)
b. Calculez Precision@K, Recall@K pour le ranking (quand applicable)
c. Utilisez une validation croisée pour robustesse (Optionnel)
2. Évaluation qualitative :
a. Sélectionnez 3 utilisateurs tests
b. Analysez la pertinence des recommandations générées
c. Comparez les résultats entre les différentes méthodes
3. Analyse des forces/faiblesses :
a. Pour chaque algorithme, identifiez les cas où il performe bien/mal
b. Analysez l'impact du cold start sur les différentes méthodes
Partie 4 :Synthèse et recommandations (30 min)
a. Consignes :
1. Analyse comparative :
a. Créez un tableau comparatif des performances
b. Identifiez l'algorithme le plus performant selon les métriques
c. Analysez les compromis performance/temps de calcul
2. Recommandations business :
a. Proposez une stratégie de déploiement
b. Suggérez des solutions pour le cold start
c. Recommandez des améliorations potentielles ( ce que vous aurez
implémenté si vous aviez plus de temps pour la réalisation du projet)
3. Conclusion :
a. Résumez les apprentissages clés
b. Identifiez les limitations de l'étude
Partie 5 : Bonus
1. Intégration de features contextuelles :
a. Utilisez les dates de lecture comme feature temporelle
b. Intégrez les informations de séries de livres
2. Approche avancée :
a. Implémentez un modèle séquentiel (LSTM)
b. Testez un transformer pour le traitement des textes
Rendu attendu :
Un notebook kaggle contenant :
1. Code commenté et organisé
2. Visualisations et analyses intermédiaires
3. Résultats détaillés pour chaque algorithme
Un fichier [Link] (en markdown):
1. Détail de la Méthodologie employée
2. Résultats principaux
3. Recommandations finales
Critères d'évaluation :
1. Implémentation technique (40%)
- Qualité du code (30%)
- Diversité des algorithmes (40%)
- Optimisation des hyperparamètres (30%)
2. Analyse des résultats (30%):
- Pertinence des métriques (40%)
- Profondeur de l'analyse (40%)
- Visualisations (20%)
3. Synthèse et recommandations (20%):
- Qualité des insights (50%)
- Pertinence des recommandations (50%)
4. Gestion de projet (10%) :
- Respect de la deadline (50%)
- Structure du fichier [Link] (50%)
5. Malus de 30%
- si utilisation excessive de l’IA, surtout pour les analyses