Le Projet en bref
Développement d’une plateforme d’ingénierie de données “end-to-end” capable de monitorer la ponctualité du réseau ferroviaire français en temps réel et d’anticiper les flux de trafic grâce au Machine Learning.
Le Défi
Traiter des flux de données massifs et hétérogènes (GTFS-RT, SIRI) pour offrir une visibilité immédiate sur l’état du réseau SNCF, tout en créant une brique d’intelligence capable de prédire les volumes de circulation futurs.
Stack Technologique
Orchestration : Apache Airflow (Automates ETL & ML Training).
Data Lake : MinIO (Stockage objet S3) pour les datasets d’entraînement.
Data Warehouse : PostgreSQL & PostGIS (Analyses spatiales des gares).
Machine Learning : Scikit-Learn (Random Forest Regression).
Infrastructure : Docker & Docker Compose (Micro-services).
Visualisation : Pentaho Server & Apache Superset
Points Clés & Réalisations
1. Pipeline de données Temps Réel
Mise en place de workflows automatisés récupérant les flux Trip Updates et Service Alerts. Transformation des données brutes en indicateurs métier (KPI) stockés dans des Materialized Views pour des performances de lecture optimales.
2. Brique MLOps & Prédiction
Conception d’une boucle d’apprentissage continu :
Extraction quotidienne de features vers un bucket MinIO.
Ré-entraînement automatique d’un modèle Random Forest pour ajuster les prédictions de volume de trains selon les tendances récentes.
Mise à disposition des prédictions pour comparer le trafic théorique vs réel.
Résultats
Visualisation complète : Un tableau de bord BI opérationnel affichant le taux de ponctualité et les retards moyens en direct.
Intelligence embarquée : Capacité de prédire avec précision le volume de trains actifs sur l’ensemble du territoire.
Infrastructure Scalable : Un environnement reproductible en une commande (
docker-compose up).
Ressources
Code Source : https://github.com/sojeba008/sncf-realtime-trips-monitoring
Stack : Airflow / Postgres / MinIO / Docker