Exploration Notebook added, readme updated

This commit is contained in:
Grégoire Mureau 2025-09-11 11:37:23 +02:00
parent 24e43386c6
commit 250af3ebf3
10 changed files with 25 additions and 1 deletions

View file

@ -2,6 +2,13 @@
Projet de développement d'un système de recommandation d'articles basé sur une architecture serverless Azure Functions avec interface utilisateur Streamlit. Projet de développement d'un système de recommandation d'articles basé sur une architecture serverless Azure Functions avec interface utilisateur Streamlit.
## Livrables du Projet
1. **Application fonctionnelle** : Streamlit + Azure Functions déployée
2. **Code source versionné** : Repository GitHub complet
3. **Présentation technique** : Support PDF (docs/presentation.pdf)
## Vue d'ensemble ## Vue d'ensemble
Ce projet implémente un système de recommandation de contenu utilisant des algorithmes de filtrage collaboratif et basé sur le contenu. L'architecture serverless permet une mise à l'échelle automatique et un coût optimisé. Ce projet implémente un système de recommandation de contenu utilisant des algorithmes de filtrage collaboratif et basé sur le contenu. L'architecture serverless permet une mise à l'échelle automatique et un coût optimisé.
@ -13,6 +20,17 @@ Ce projet implémente un système de recommandation de contenu utilisant des alg
- **Algorithmes implémentés** : Content-Based Filtering avec embeddings pré-calculés - **Algorithmes implémentés** : Content-Based Filtering avec embeddings pré-calculés
- **Architecture serverless** : Déploiement sur Azure Functions avec plan Consumption - **Architecture serverless** : Déploiement sur Azure Functions avec plan Consumption
## Analyse et Développement
### Notebook Jupyter
- **Exploration des données** : Analyse du dataset Kaggle Globo.com
- **Implémentation des algorithmes** : Content-Based et Collaborative Filtering
- **Comparaison des approches** : Évaluation et choix technique
- **Optimisation ACP** : Réduction dimensionnelle 250D → 50D
Localisation : `notebook/p10_notebook.ipynb`
## Architecture ## Architecture
### MVP Actuel ### MVP Actuel
@ -28,7 +46,7 @@ Ce projet implémente un système de recommandation de contenu utilisant des alg
- **Algorithme** : Content-Based Filtering avec similarité cosinus - **Algorithme** : Content-Based Filtering avec similarité cosinus
- **Données** : Embeddings articles (50D via PCA vs 250D embeddings originaux) + historique des clics - **Données** : Embeddings articles (50D via PCA vs 250D embeddings originaux) + historique des clics
## Structure du Projet ## Structure synthétique du Projet
``` ```
Project_10/ Project_10/
@ -43,6 +61,11 @@ Project_10/
│ └── utils/ │ └── utils/
│ ├── data_loader.py # Chargement et cache des données │ ├── data_loader.py # Chargement et cache des données
│ └── content_based.py # Algorithme de recommandation │ └── content_based.py # Algorithme de recommandation
├── notebook/
│ └── p10_notebook.ipynb # Analyse données + développement modèles
├── docs/
│ ├── presentation.pdf # Support de présentation (15-25 slides)
│ └── illustrations/ # Schémas d'architecture et captures
├── streamlit_app.py # Interface utilisateur ├── streamlit_app.py # Interface utilisateur
├── streamlit_requirements.txt # Dépendances Streamlit ├── streamlit_requirements.txt # Dépendances Streamlit
└── README.md └── README.md

View file

Before

Width:  |  Height:  |  Size: 56 KiB

After

Width:  |  Height:  |  Size: 56 KiB

View file

Before

Width:  |  Height:  |  Size: 41 KiB

After

Width:  |  Height:  |  Size: 41 KiB

View file

Before

Width:  |  Height:  |  Size: 1.2 MiB

After

Width:  |  Height:  |  Size: 1.2 MiB

View file

Before

Width:  |  Height:  |  Size: 1,008 KiB

After

Width:  |  Height:  |  Size: 1,008 KiB

View file

Before

Width:  |  Height:  |  Size: 287 KiB

After

Width:  |  Height:  |  Size: 287 KiB

View file

Before

Width:  |  Height:  |  Size: 1.4 MiB

After

Width:  |  Height:  |  Size: 1.4 MiB

File diff suppressed because one or more lines are too long