Ingénieur IA formé à l'Université Bocconi, à l'École polytechnique et à HEC Paris.
AI engineer trained at Bocconi University, École Polytechnique and HEC Paris.
J'ai commencé par un bachelor en computer science à l'Université Bocconi de Milan, avant de rejoindre le MSc Data Science for Business de l'École polytechnique et HEC Paris. Les problèmes qui m'intéressent demandent autant de rigueur statistique que de code solide, et je veux savoir ce qu'un modèle vaut vraiment avant de le mettre en production.
I started with a bachelor's in computer science at Bocconi University in Milan, before joining the MSc Data Science for Business at École Polytechnique and HEC Paris. The problems I enjoy need as much statistical rigour as solid code, and I want to know what a model is really worth before it goes to production.
En parallèle, je mène des missions freelance d'automatisation et d'IA pour des startups et des PME.
Alongside that, I take on freelance automation and AI projects for startups and small companies.
Basé àBased in
Paris, France
Master
MSc Data Science for Business École polytechnique × HEC Paris · 2024 – 2026
Missions freelance, postes en IA appliquée et ML engineeringFreelance projects, applied AI and ML engineering roles
ProjetsProjects
Une sélection de ce que j'ai construit, du pipeline de recherche au produit. Le code public est en lien ; pour les projets privés, je fais volontiers une démo.
A selection of what I have built, from research pipelines to products. Public code is linked; for private projects, I am happy to give a demo.
2026Mémoire de masterMaster's thesisProjet individuelSolo project
Recherche ML · SantéML research · Health
Données de santé synthétiques et confidentialité différentielleDifferentially private synthetic health records
Quand on protège la vie privée des patients, quels groupes paient le prix en précision ? Mon mémoire mesure le trilemme confidentialité, utilité et équité des générateurs de données synthétiques.
When you protect patient privacy, which groups pay for it in accuracy? My thesis measures the privacy, utility and fairness trilemma of synthetic data generators.
Pipeline expérimental complet sur MIMIC-IV et UCI Diabetes 130-US : cinq familles de générateurs DP (AIM, MST, DP-CTGAN, PATE-CTGAN, DP-TVAE).
Évaluation sur quatre axes : utilité (TSTR contre TRTR), fidélité statistique, confidentialité empirique par attaques d'inférence d'appartenance, équité par sous-groupe.
Classement effet Robin des Bois / effet Matthieu, intervalles bootstrap et tests de Wilcoxon corrigés de Holm. DP-SGD implémenté de zéro avec comptabilité zCDP.
End-to-end experimental pipeline on MIMIC-IV and UCI Diabetes 130-US, covering five DP generator families (AIM, MST, DP-CTGAN, PATE-CTGAN, DP-TVAE).
Four evaluation axes: utility (TSTR vs TRTR), statistical fidelity, empirical privacy via membership-inference attacks, and per-subgroup fairness.
Robin Hood / Matthew effect classification, bootstrap intervals and Holm-corrected Wilcoxon tests. DP-SGD written from scratch with zCDP accounting.
Mécanisme gaussienGaussian mechanismx̃ = x + 𝒩(0, σ²)
plus de confidentialitémore privacyplus d'utilitémore utility
Le mécanisme gaussien ajoute à chaque point un bruit calibré. Plus ε est petit, plus la vie privée est protégée et plus le signal se brouille. C'est le compromis au cœur de mon mémoire. Δ = 1, δ = 10⁻⁵
The Gaussian mechanism adds calibrated noise to every point. The smaller ε, the stronger the privacy and the blurrier the signal. This trade-off is the core of my master's thesis. Δ = 1, δ = 10⁻⁵
2026Projet individuelSolo project
Agent LLM · IA générativeLLM agent · Generative AI
Agent créatif pour Reels et storiesCreative agent for Reels and stories
Un agent qui transforme un brief d'une ligne, comme « app de tricot, vibe cozy, cible débutante », en concepts publicitaires visuels prêts à publier.
An agent that turns a one-line brief, such as “knitting app, cozy vibe, beginner audience”, into ready-to-post visual ad concepts.
Un seul appel à Claude produit des prompts JSON structurés (sujet, photographie, décor), envoyés ensuite à Gemini, DALL·E, Replicate ou Sora.
Un mode « POV sans l'app » génère des visuels humoristiques. L'agent est utilisable en ligne de commande et via une API Flask.
Coût suivi par appel et par campagne, traces et benchmarks des backends avec LangSmith.
A single Claude call produces structured JSON prompts (subject, photography, background), then sent to Gemini, DALL·E, Replicate or Sora.
A “POV without the app” mode generates humorous visuals. The agent runs from the command line and behind a Flask API.
Cost tracked per call and per campaign, with LangSmith traces and backend benchmarks.
Python
Claude API
Gemini
LangSmith
Flask
Code privé · démo sur demandePrivate code · demo on request
Autres projetsMore projects
2024 – 2026
2026 · iOSProjet d'équipeTeam project
Ritualia
Application de suivi des compléments alimentaires, publiée sur l'App Store : routines et rappels, check-ins énergie, sommeil et humeur, journal lié aux prises, identification des produits par photo. Backend Supabase avec Row Level Security.
A supplement-tracking app published on the App Store: routines and reminders, energy, sleep and mood check-ins, a journal linked to intakes, and photo-based product identification. Supabase backend with Row Level Security.
Une app Gradio qui transforme la capture d'écran d'un site en page HTML fonctionnelle avec Gemini, avec aperçu en direct. Tests à 73 % de couverture, CI/CD GitHub Actions, images Docker multi-architecture.
A Gradio app that turns a website screenshot into a working HTML page with Gemini, with a live preview. 73% test coverage, GitHub Actions CI/CD, multi-architecture Docker images.
EMNIST altéré : détection et restaurationAltered EMNIST: detection and recovery
Détecter sans étiquettes les images corrompues d'un jeu EMNIST (autoencodeur convolutionnel, Isolation Forest, scores statistiques), puis restaurer le jeu par débruitage, reconstruction et PCA.
Detecting corrupted images in an EMNIST dataset without labels (convolutional autoencoder, Isolation Forest, statistical scores), then restoring the dataset through denoising, reconstruction and PCA.
Prévision du passage des vélos aux compteurs parisiens. Comparaison de CatBoost, LightGBM, XGBoost et forêts aléatoires sur une compétition Kaggle du master.
Forecasting bike counts at Paris counting stations. CatBoost, LightGBM, XGBoost and random forests compared on a master's Kaggle competition.