Contexte du Projet
Un grand centre d'appels a contacté Elinext et a demandé de créer un logiciel de détection des émotions capable de reconnaître les émotions dans la parole. Le client voulait obtenir une application qui:
- Permettrait aux opérateurs de centres d'appels de détecter automatiquement les émotions des appelants et d'agir en conséquence. Par exemple, diriger les appels des clients en colère vers leurs collègues plus expérimentés.
- Permettrait de détecter les émotions de bonheur, de tristesse et de satisfaction des clients.
- Permettrait à la direction de savoir quand il est temps de remplacer un opérateur fatigué en détectant et en évaluant ses émotions.
Défi
Les équipes d'Elinext étaient confrontées au défi de développer une application d'analyse vocale qui permettrait au centre d'appels d'organiser le flux de travail de la manière la plus efficace, en comprenant ce que leurs clients et leurs employés ressentent et pensent vraiment.
Description du Projet
Le processus de développement a été organisé autour de la création et de la formation de réseaux de neurones. Les principales étapes que nos équipes ont franchies pour créer la solution comprenaient:
- Préparation des données
- Extraction des caractéristiques sonores
- Création de réseaux neuronaux
Processus de Développement
Chacune des étapes mentionnées ci-dessus est décrite plus en détail ci-dessous.
- Préparation des données
Pour préparer les données pour la formation et les tests des modèles, nos développeurs ont profité de Crowd-Sourced Emotional Multimodal Actors Dataset (CREMA-D) pour la formation des données, ainsi que des enregistrements du centre d'appels pour les tests.
- Extraction des caractéristiques sonores
En utilisant le package LebROSA, notre équipe a obtenu un vecteur de caractéristiques en 192 dimensions pour chaque fichier audio.
- Création de réseaux neuronaux
Sur la base de Keras et de Tensorflow, nos équipes ont créé des modèles de réseaux neuronaux à partir de zéro, ajoutant et élargissant leurs couches au cours du processus de développement. Nous avons testé différents modèles, y compris le Perceptron Multicouche (MLP) et le Réseau Neuronaux Convolutifs (CNN).
De plus, nos développeurs ont testé différentes architectures pour les modèles, parfois à partir de celles qui ont été utilisées dans des documents de recherche de projets similaires. Dans l'ensemble, la sélection de chaque modèle était basée sur la précision de la classification dans l'échantillon de validation.
En conséquence, notre développeur a décidé d'utiliser l'architecture CNN.
Résultats
L'équipe d'Elinext a créé avec succès une application Android qui reconnaît les émotions dans la parole et permet aux employés des centres d'appels et à leurs gestionnaires d'avoir une idée de ce que les gens ressentent vraiment.
Les mêmes systèmes pourraient être utilisés par des entreprises offrant des services de sécurité, de soutien et de sauvetage.