readme updates
This commit is contained in:
parent
76e8a4f48f
commit
d99871993c
2 changed files with 43 additions and 42 deletions
42
README.fr.md
42
README.fr.md
|
|
@ -2,61 +2,61 @@
|
|||
|
||||
📘 Ce projet est également disponible en [anglais 🇬🇧](./README.md)
|
||||
|
||||
Ce dépôt contient les notebooks et le code source du projet d’analyse de sentiments sur des tweets, réalisé dans le cadre du programme OpenClassrooms **"Air Paradis"**.
|
||||
Ce dépôt contient les notebooks et le code source du projet d'analyse de sentiments sur des tweets, réalisé dans le cadre du programme OpenClassrooms **"Air Paradis"**.
|
||||
|
||||
---
|
||||
|
||||
## Contexte métier
|
||||
|
||||
L’objectif est de prédire si un tweet (ou une courte expression écrite) est perçu comme **positif ou négatif**, dans le contexte d’une compagnie aérienne.
|
||||
L'objectif est de prédire si un tweet (ou une courte expression écrite) est perçu comme **positif ou négatif**, dans le contexte d'une compagnie aérienne.
|
||||
Le projet repose sur le jeu de données public **Sentiment140**.
|
||||
|
||||
---
|
||||
|
||||
## Description du projet
|
||||
|
||||
Le projet vise à développer un système complet d’analyse de sentiments, comprenant :
|
||||
Le projet vise à développer un système complet d'analyse de sentiments, comprenant :
|
||||
|
||||
- Une analyse exploratoire des données textuelles,
|
||||
- Une comparaison de plusieurs modèles de classification (classiques, avancés et à l’état de l’art),
|
||||
- Le déploiement d’une API REST exposant un modèle avancé (embeddings + LSTM),
|
||||
- La mise en place d’un pipeline CI/CD pour automatiser les tests et le déploiement,
|
||||
- Un hébergement local sur un serveur NAS pour garantir la souveraineté des données.
|
||||
- Une comparaison rigoureuse de 10+ modèles de classification (classiques ML, LSTM + word embeddings, DistilBERT),
|
||||
- Le déploiement d'une API REST FastAPI exposant le meilleur modèle avancé (LSTM + Word2Vec),
|
||||
- La mise en place d'un pipeline MLOps complet : MLFlow, CI/CD (GitHub Actions), monitoring,
|
||||
- Un hébergement local sur serveur NAS pour garantir la souveraineté des données.
|
||||
|
||||
📖 **Pour des informations détaillées sur les expérimentations menées et les résultats obtenus, consultez [docs/blog.fr.md](./docs/blog.fr.md).**
|
||||
|
||||
---
|
||||
|
||||
## Structure du dépôt
|
||||
|
||||
- `notebooks/` : notebooks d’analyse et de modélisation,
|
||||
- `deployment/` : code de l’API, tests, Dockerfile et fichiers liés au déploiement,
|
||||
- `docs/` : documentation et ressources associées,
|
||||
- `../.github/workflows/` : pipelines CI/CD.
|
||||
- `notebooks/` : notebooks d'analyse exploratoire et de modélisation,
|
||||
- `deployment/` : code de l'API FastAPI, tests unitaires, Dockerfile et configuration déploiement,
|
||||
- `docs/` : documentation détaillée (blog.fr.md), diagrammes, captures d'écran,
|
||||
- `presentation/` : support de présentation du projet (PDF),
|
||||
- `../.github/workflows/` : pipelines CI/CD (tests automatisés, build Docker, push DockerHub).
|
||||
|
||||
---
|
||||
|
||||
## Entraînement des modèles
|
||||
|
||||
Les phases d’entraînement ont principalement été réalisées sur **Google Colab**, afin de bénéficier de ressources GPU nécessaires aux modèles de deep learning.
|
||||
Les phases d'entraînement ont principalement été réalisées sur **Google Colab**, afin de bénéficier de ressources GPU nécessaires aux modèles de deep learning.
|
||||
|
||||
---
|
||||
|
||||
## Utilisation
|
||||
|
||||
Les notebooks détaillent les étapes d’analyse et d’entraînement.
|
||||
L’API est disponible dans le dossier `deployment/api`.
|
||||
Les notebooks détaillent les étapes d'analyse et d'entraînement.
|
||||
L'API est disponible dans le dossier `deployment/api` avec interface Streamlit de test.
|
||||
|
||||
Pour tester l'API en production : https://sentiment-api.greg-madman-nas.duckdns.org
|
||||
|
||||
---
|
||||
|
||||
## Remarques
|
||||
|
||||
- Les fichiers `requirements.txt` dans `notebooks/` proviennent des environnements Google Colab et peuvent contenir des dépendances peu optimisées pour un usage local.
|
||||
- Le fichier `.env`, exclu du dépôt, contient les variables d’environnement nécessaires.
|
||||
- Le fichier `.env`, exclu du dépôt, contient les variables d'environnement nécessaires (configuration MLFlow, MinIO, alerting).
|
||||
|
||||
---
|
||||
|
||||
Ce README sera mis à jour progressivement au fur et à mesure de l’avancement du projet.
|
||||
Certains commentaires de code peuvent rester en français (ainsi que les cellules Markdown des notebooks). Tout sera traduit en anglais ultérieurement.
|
||||
|
||||
---
|
||||
|
||||
**Projet réalisé dans le cadre du parcours "Data Scientist – Projet 7" d’OpenClassrooms**
|
||||
**Projet réalisé dans le cadre du parcours "Data Scientist – Projet 7" d'OpenClassrooms**
|
||||
43
README.md
43
README.md
|
|
@ -2,13 +2,13 @@
|
|||
|
||||
📘 This project is also available in [French 🇫🇷](./README.fr.md)
|
||||
|
||||
This repository contains the notebooks and source code for the sentiment analysis project on tweets, carried out as part of the OpenClassrooms "Air Paradis" program.
|
||||
This repository contains the notebooks and source code for the sentiment analysis project on tweets, conducted as part of the OpenClassrooms **"Air Paradis"** program.
|
||||
|
||||
---
|
||||
|
||||
## Business Context
|
||||
|
||||
The goal is to predict whether a tweet, or a short written expression, is perceived as **positive or negative**, in the context of an airline company.
|
||||
The objective is to predict whether a tweet (or short written expression) is perceived as **positive or negative**, in the context of an airline company.
|
||||
The project is based on the public **Sentiment140** dataset.
|
||||
|
||||
---
|
||||
|
|
@ -17,45 +17,46 @@ The project is based on the public **Sentiment140** dataset.
|
|||
|
||||
The project aims to develop a complete sentiment analysis system, including:
|
||||
|
||||
- Exploratory data analysis of text data,
|
||||
- Comparison of several classification models (classical, advanced, and state-of-the-art),
|
||||
- Deployment of a REST API exposing an advanced model (based on embeddings and LSTM),
|
||||
- Implementation of a CI/CD pipeline to automate testing and deployment,
|
||||
- Local hosting on a NAS server to ensure data sovereignty.
|
||||
- Exploratory analysis of textual data,
|
||||
- Rigorous comparison of 10+ classification models (classical ML, LSTM + word embeddings, DistilBERT),
|
||||
- Deployment of a FastAPI REST API exposing the best advanced model (LSTM + Word2Vec),
|
||||
- Implementation of a complete MLOps pipeline: MLFlow, CI/CD (GitHub Actions), monitoring,
|
||||
- Local hosting on NAS server to ensure data sovereignty.
|
||||
|
||||
📖 **For detailed information on experiments conducted and results obtained, see [docs/blog.md](./docs/blog.md).**
|
||||
|
||||
---
|
||||
|
||||
## Repository Structure
|
||||
|
||||
- `notebooks/`: analysis and modeling notebooks,
|
||||
- `deployment/`: API code, tests, Dockerfile and deployment-related files,
|
||||
- `docs/`: documentation and related materials,
|
||||
- `../.github/workflows/`: CI/CD pipelines.
|
||||
- `notebooks/`: exploratory analysis and modeling notebooks,
|
||||
- `deployment/`: FastAPI API code, unit tests, Dockerfile and deployment configuration,
|
||||
- `docs/`: detailed documentation (blog.md), diagrams, screenshots,
|
||||
- `presentation/`: project presentation slides (PDF),
|
||||
- `../.github/workflows/`: CI/CD pipelines (automated tests, Docker build, DockerHub push).
|
||||
|
||||
---
|
||||
|
||||
## Model Training
|
||||
|
||||
Training phases were mainly conducted on Google Colab to leverage GPU resources required for deep learning models.
|
||||
Training phases were primarily conducted on **Google Colab** to leverage GPU resources required for deep learning models.
|
||||
|
||||
---
|
||||
|
||||
## Usage
|
||||
|
||||
The notebooks detail the analysis and training steps. The API is available in `deployment/api`.
|
||||
Notebooks detail the analysis and training steps.
|
||||
The API is available in the `deployment/api` folder with Streamlit testing interface.
|
||||
|
||||
To test the production API: https://sentiment-api.greg-madman-nas.duckdns.org
|
||||
|
||||
---
|
||||
|
||||
## Notes
|
||||
|
||||
- The `requirements.txt` files in `notebooks/` come from Google Colab environments and may contain dependencies that are not optimal for local use.
|
||||
- The `.env` file, excluded from the repository, contains the necessary environment variables.
|
||||
- The `requirements.txt` files in `notebooks/` come from Google Colab environments and may contain dependencies not optimized for local use.
|
||||
- The `.env` file, excluded from the repository, contains necessary environment variables (MLFlow, MinIO, alerting configuration).
|
||||
|
||||
---
|
||||
|
||||
This README will be updated progressively as the project advances.
|
||||
Some code comments can remain in French (as well as notebook markdowns). All will be translated into English later.
|
||||
|
||||
---
|
||||
|
||||
**Project completed as part of the OpenClassrooms "Data Scientist – Project 7" program**
|
||||
**Project completed as part of OpenClassrooms "Data Scientist – Project 7" program**
|
||||
Loading…
Add table
Reference in a new issue