Projets
Du prototype à la livraison
5 projets techniques réels — pipelines RAG, architectures Transformer from scratch, compétition Kaggle, recherche sémantique et Computer Vision.
Chatbot IA d'orientation — RESIN (Métropole de Lyon)
Projet client réelPipeline RAG end-to-end pour orienter les usagers à partir des données du site RESIN — livré à la Métropole de Lyon.
Voir le détail du projet ▾
Projet client réel mené pour la Métropole de Lyon. L'objectif : construire un chatbot capable d'orienter les usagers à partir du corpus documentaire du site RESIN, avec des données amenées à évoluer fréquemment. Après une analyse comparative fine-tuning vs RAG, le choix s'est porté sur une architecture RAG pour sa capacité d'adaptation aux données évolutives sans réentraînement. Le pipeline complet intègre l'ingestion et la vectorisation des données RESIN (ChromaDB), la récupération sémantique, et la génération via OpenAI GPT-4 orchestrée avec LangChain. Interface utilisateur livrée avec Streamlit. Projet géré en mode Agile.
- Analyse comparative fine-tuning vs RAG — choix RAG pour adaptabilité aux données évolutives
- Architecture RAG complète : ingestion → vectorisation (ChromaDB) → récupération sémantique → génération (GPT-4)
- Orchestration LangChain, interface Streamlit — livraison en production à la Métropole de Lyon
- Gestion de projet Agile (Asana), coordination équipe
Mini-GPT — Transformer decoder from scratch
Deep LearningDécodeur GPT 4,8M paramètres entraîné sur les Œuvres de Molière — hallucination réduite de 81% à 3,6%, PPL ÷3,3 vs baseline.
Voir le détail du projet ▾
Implémentation complète d'un décodeur GPT from scratch sans librairie de haut niveau. Architecture : 6 couches, 8 têtes d'attention, 4,8M paramètres, entraîné sur 1,6M tokens (Œuvres de Molière). Tokenisation BPE via tiktoken GPT-2 (50K sous-mots, compression 2,33×). Sampling avec Nucleus sampling (p=0.95) — résultat : hallucination réduite de 81% à 3,6% et perplexité divisée par 3,3 par rapport à la baseline greedy. Entraîné sur Google Colab GPU T4.
- Architecture Transformer decoder complète from scratch (attention multi-têtes, positional encoding, layer norm)
- Tokenisation BPE (tiktoken GPT-2, 50K sous-mots) — compression 2,33×
- Nucleus sampling (p=0.95) — hallucination 81% → 3,6%, PPL ÷3,3 vs baseline
- 4,8M paramètres · 6 couches · 8 têtes · entraîné sur 1,6M tokens
Classification d'utilisateurs — Compétition Kaggle (Copilote / Infologic)
Compétition réelleIdentification automatique d'utilisateurs à partir de traces de navigation — compétition Kaggle pour un éditeur logiciel réel.
Voir le détail du projet ▾
Compétition Kaggle organisée par Infologic (éditeur du logiciel Copilote). Objectif : identifier automatiquement les utilisateurs à partir de leurs traces de navigation (actions, timing, navigateurs, patterns d'usage) — données séquentielles fortement structurées. Pipeline complet de feature engineering sur données temporelles, comparaison de modèles (XGBoost, LightGBM, Random Forest, SVM), optimisation des hyperparamètres avec Optuna (K-fold cross-validation). Explicabilité des prédictions avec SHAP pour restitution client. Classement soumis sur leaderboard Kaggle.
- Feature engineering avancé sur données séquentielles (actions, timing, navigateurs, patterns d'usage)
- Comparaison XGBoost · LightGBM · Random Forest · SVM — optimisation Optuna, K-fold
- Explicabilité SHAP pour restitution client
- Soumission et classement sur leaderboard Kaggle officiel
Moteur de recherche sémantique — 25 000 articles scientifiques
NLP · RAGPipeline de recherche hybride (dense + sparse + graphe) sur 25K articles scientifiques — évaluation rigoureuse précision/rappel/AUC.
Voir le détail du projet ▾
Moteur de recherche hybride sur un corpus de 25 000 articles scientifiques (projet Data Science BE — Centrale Lyon). Trois approches combinées : recherche dense avec sentence-transformers (all-MiniLM-L6-v2) + FAISS, recherche creuse TF-IDF + cosinus, approche graphe avec NetworkX (similarité par citations/co-auteurs), et modélisation thématique LDA. Évaluation rigoureuse : précision, rappel, F-mesure, AUC — comparaison des approches sur un jeu d'évaluation annoté.
- Approche dense : sentence-transformers (all-MiniLM-L6-v2) + FAISS
- Approche sparse : TF-IDF + cosinus
- Approche graphe : NetworkX (similarité structurelle par citations/co-auteurs)
- Modélisation thématique LDA · Évaluation : précision, rappel, F-mesure, AUC
Vision Transformer (ViT) — from scratch
Computer VisionImplémentation complète d'un Vision Transformer pour la classification d'images (MNIST → CIFAR-10) — export ONNX pour déploiement.
Voir le détail du projet ▾
Implémentation complète d'un Vision Transformer (ViT) from scratch pour la classification d'images, sans librairie de haut niveau. Pipeline complet : patchification des images, linear embedding, positional encoding (sines/cosines), Multi-Head Self-Attention (MSA), Layer Normalization, connexions résiduelles. Entraîné de MNIST (validation de l'architecture) à CIFAR-10 (montée en complexité). Export du modèle en ONNX pour déploiement cross-platform.
- Patchification + linear embedding + positional encoding from scratch
- Multi-Head Self-Attention (MSA) + Layer Norm + connexions résiduelles
- Entraîné MNIST → CIFAR-10 — validation progressive de l'architecture
- Export ONNX pour déploiement cross-platform