- Speech to text
- Data Visualization
- Data Analytics
- Machine Learning
Notre client est une filiale d’une société publique ferroviaire européenne chargée de la gestion des gares voyageurs du réseau ferré national d’un pays européen. Elle permet d’assurer les services essentiels aux 10 millions de voyageurs et de visiteurs qui fréquentent chaque jour les gare de ce pays (sécurité, information, accessibilité, propreté et confort).
Dans ces gares, les voyageurs reçoivent beaucoup d’informations, notamment les annonces sonores, qui doivent être les plus claires possible.
L’équipe Data & Customer Platform de Gares & Connexions développe un outil innovant d’analyse de l’information voyageur, grâce à du Speech-To-Text (reconnaissance vocale) et des réseaux de neurones afin de s’assurer que les annonces sonores diffusées en gare sont compréhensibles et contiennent bien toutes les informations. Les chefs de gares responsables de ces annonces peuvent utiliser cet outil pour visualiser la qualité de ces annonces, et améliorer certains points.
Ce projet, c’est Echo : Ecoute à CHaud Opérationnelle
C’est dans cette optique que nous avons été sollicités afin de construire une solution complète, qui reçoit les annonces sonores diffusées en gare, les analyse, et exporte de données pour être visualisées dans un tableau de bord.
Challenges
- Nous avons dû travailler avec des fournisseurs de données différents, qui n’envoyaient pas des données de même type, ni de même qualité. Il a fallu construire une chaîne de traitement qui s’adapte à des données hétérogènes, et qui tire le meilleur parti de fichiers sonores de qualité moyenne ou basse.
- La chaîne de traitement est composée de plusieurs étapes successives utilisant du Machine Learning, il faut ainsi utiliser des modèles les plus performant possible. On a notamment une première brique de reconnaissance vocale qui produit du texte à partir de fichiers audios, puis un réseau de neurones analyse ces textes pour les catégoriser, et d’autres modèles analysent les textes d’une catégorie en particulier afin de déduire de nouvelles informations. Si la reconnaissance vocale n’est pas bonne, toute la chaîne va produire de l’information inutilisable. De même, si le réseau de neurones fournit des catégories peu précises, l’information finale sera noyée dans du bruit.
- Le Machine Learning est un outil puissant, mais complexe à maintenir, nous avons une dizaine de modèles, qui vont du simple arbre de décision au réseau de neurones profond, en passant par un pipeline complet d’analyse de traitement du langage. Nous avons dû être très rigoureux pour maintenir ces modèles, les entraîner, les déployer.
- Tout le projet repose sur une architecture dans le cloud, qui est puissante et très flexible, mais la moindre erreur de réseau sur une machine du cloud peut empêcher de lire des données ou d’en envoyer, il nous a fallu être persévérant pour écrire le code le plus robuste possible.
Technologies
Les annonces sonores et leurs métadonnées sont reçues dans des espaces de stockage (Data Lake) hébergés par Azure.
Du code Python est lancé toutes les heures par Azure Data Factory pour traiter les annonces au fur et à mesure de leur arrivée, ce code est exécuté sur des clusters Databricks, et bénéficie de la technologie Spark pour paralléliser les opérations.
La reconnaissance vocale est effectuée par le service Custom Speech d’Azure, qui nous permet d’avoir un modèle entraîné spécifiquement sur les données SNCF, ce modèle est ainsi plus performant qu’un modèle standard.
Nous utilisons ensuite une dizaine de modèles de Machine Learning, allant d’arbres de décisions à des réseaux de neurones profonds (Deep Learning) tels BERT, un réseau de neurones basé sur une architecture développée par Google en fin 2019. Ces modèles permettent de déduire beaucoup d’informations à partir du texte de l’annonce sonore. Ainsi à partir du texte de l’annonce on peut déduire si cette annonce concerne une situation normale, ou bien une situation perturbée, et le cas échéant, si cette annonce indique bien la cause du problème et une solution de contournement, ainsi qu’une heure de retour à la normale.
Les données produites sont ensuite exportées vers une base de données Azure, pour être visualisées dans un tableau de bord fait avec Power BI.
Bénéfices
Tout ce travail nous a ainsi permis d’analyser la qualité et le contenu des annonces sonores prononcées en gares. Il en a résulté des avantages déterminants pour notre client :
- Permettre à ses Chefs de gare de mieux analyser les annonces faites dans leurs stations
- Gagner du temps et de la réactivité pour les gestionnaires de gare grâce à des informations et des données plus détaillées leur permettant de proposer les annonces sonores adaptées aux attentes des passagers
- Des données précises pour faciliter le débriefing des situations de crise
- Mieux comprendre les annonces impliquant moins de stress pour les usagers, qui bénéficient d’un confort et d’une expérience client optimale dans la station.
Témoignage
« ECHO est un outil attractif, efficace, rapide et facile. »
Il va nous permettre d’être beaucoup plus réactifs dans l’analyse de la performance
D’un seul coup d’œil, là où avant il fallait écouter les annonces individuellement, là, on a directement l’information
C’est un réel gain de temps.”