Upload
salma-es-salmani
View
918
Download
0
Tags:
Embed Size (px)
DESCRIPTION
Speech Recognition API based on HTK
Citation preview
Soutenance du Stage d’application
Mise en place d’une API de reconnaissance vocale
Soutenu devant les membres de jury
• Pr Mohammed Berrada• Pr Nour Houda Chaoui Mejhed
12/04/2023 Stage d'application Soft Centre
Présenté par :
Salma ES-SALMANI
Encadré par :
Abdelwahed El Mourabit
212/04/2023 Stage d'application Soft Centre
Présentation de l’organisme d’accueil
Principe de la reconnaissance vocale
Démarche de réalisation du projet
Contexte du projet et problématique
Présentation de l’outil réalisé
Conclusion
La reconnaissance vocale
3
Conclusion
12/04/2023 Stage d'application Soft Centre
Centre de R&D spécialisé dans le développement logiciel
Fondé en 2010
Présentation de l’organisme d’accueil
Contexte du projet & Problématique
Présentation de l’outil
Démarche de réalisation du projet
412/04/2023 Stage d'application Soft Centre
Reconnaissance vocale ConclusionPrésentation de
l’organisme d’accueil
Contexte du projet & Problématique Présentation de
l’outil Démarche de réalisation du projet
512/04/2023 Stage d'application Soft Centre
Mode de fonctionnement
Reconnaissance vocale ConclusionPrésentation de
l’organisme d’accueil
Contexte du projet & Problématique Présentation de
l’outil Démarche de réalisation du projet
612/04/2023 Stage d'application Soft Centre
• Les Interfaces Homme-Machine (IHM) évoluent vers une
communication plus large et pervasive
• La reconnaissance vocale permet de réaliser des interfaces vocales où
l’interaction se fait via la voix. L’interface devient alors plus intuitive et
moins encombrante pour l’utilisateur dans son quotidien.
Contexte du projet & Problématique
Présentation de l’organisme d’accueil
Reconnaissance vocale ConclusionPrésentation de
l’outil Démarche de réalisation du projet
712/04/2023 Stage d'application Soft Centre
• Comment offrir aux développeurs une API simple et robuste capable
de reconnaître des mots prononcés dans n’importe quelle langue ?
• Dans le cas d’une application mobile, comment reconnaître n’importe
quelle voix dans des conditions acoustiques variables et souvent
bruyantes ?
Problématique
Contexte du projet & Problématique
Présentation de l’organisme d’accueil
Reconnaissance vocale ConclusionPrésentation de
l’outil Démarche de réalisation du projet
812/04/2023 Stage d'application Soft Centre
Réalisation d’une API Java de reconnaissance vocale
Reconnaissance de plusieurs dictionnaires de mots (sélecteur de menus)
Optimisation des performances pour un niveau de qualité à la hauteur d’un déploiement industriel
Contexte du projet & Problématique
Présentation de l’organisme d’accueil
Reconnaissance vocale ConclusionPrésentation de
l’outil Démarche de réalisation du projet
912/04/2023 Stage d'application Soft Centre
Présentation de l’organisme d’accueil
ConclusionPrésentation de l’outil
Contexte du projet &
Problématique La reconnaissance vocale
Démarche de réalisation du projet
• Problème de base : identifier le sens d’un flux de paroles prononcées
souvent dans un bruit de fond plus ou moins important
• Approche probabiliste :
Les modèles de Markov cachés
1012/04/2023 Stage d'application Soft Centre
Présentation de l’organisme d’accueil
ConclusionPrésentation de l’outil
Contexte du projet &
Problématique La reconnaissance vocale
Démarche de réalisation du projet
• Les Modèles de Markov Discrets sont
basés sur une suite (ou boucle) d’états
dans lesquels on navigue par des
probabilités de transition et suivant des
observations
• Grâce à ces modèles, on peu connaître,
sachant l’observation passée quelle va
être la probabilité des observations
futures.
1112/04/2023 Stage d'application Soft Centre
Présentation de l’organisme d’accueil
ConclusionPrésentation de l’outil
Contexte du projet &
Problématique Reconnaissance vocale
Démarche de réalisation du projet
1212/04/2023 Stage d'application Soft Centre
Présentation de l’organisme d’accueil
ConclusionPrésentation de l’outil
Contexte du projet &
Problématique Reconnaissance vocale
Démarche de réalisation du projet
HTK
Hidden Markov Model Toolkit est un ensemble d’outils portables permettant la création et la manipulation des modèles de Markov cachés.
HTK est principalement utilisé dans le domaine de la recherche de la reconnaissance vocale bien qu’il soit tout à fait utilisable dans de nombreuses autres applications telles que la synthèse vocale, la reconnaissance de l’écriture ou la reconnaissance de séquences d’ADN.
1312/04/2023 Stage d'application Soft Centre
Présentation de l’organisme d’accueil
ConclusionPrésentation de l’outil
Contexte du projet &
Problématique Reconnaissance vocale
Démarche de réalisation du projet
Sphinx 4
Sphinx-4 est une librairie de reconnaissance vocale écrite entièrement en Java.
Sphinx-4 est hautement configurable. La reconnaissance de Sphinx-4 supporte notamment les mots isolés et les phrases (utilisation de grammaires). L’architecture de Sphinx-4 est modulable pour permettre de nouvelles recherches et pour tester de nouveaux algorithmes.
1412/04/2023 Stage d'application Soft Centre
Présentation de l’organisme d’accueil
ConclusionPrésentation de l’outil
Contexte du projet &
ProblématiqueDémarche de réalisation du projet
Reconnaissance vocale
Outil de reconnaissance
HTK a été choisi parmi les 2 logiciels grâce à son architecture flexible et sa
disponibilité en ligne de commande, ce qui lui permet de s’intégrer
facilement dans n’importe quelle architecture logicielle.
La documentation détaillée disponible ainsi que le support de Microsoft est
un autre plus pour justifier ce choix.
1512/04/2023 Stage d'application Soft Centre
Présentation de l’organisme d’accueil
ConclusionPrésentation de l’outil
Contexte du projet &
ProblématiqueDémarche de réalisation du projet
Reconnaissance vocale
Language de programmation
On a choisi le langage Java pour l’API alors que le C++ est plus naturel avec
l’outil HTK :
• Garbage Collector qui donne un meilleur time to market et moins de bugs
• Process de build dure en moyenne 7 minutes, par rapport à 20h pour C++
à cause des outils tels que Ant et Maven
• Portabilité du code source qui pourra s’exécuter aisément sur un poste
local équipé de Windows ou un serveur en Linux
• Meilleur support pour l’I/O, networking, XML/HTML, database
connectivity ...
1612/04/2023 Stage d'application Soft Centre
Présentation de l’organisme d’accueil
ConclusionPrésentation de l’outil
Contexte du projet &
ProblématiqueDémarche de réalisation du projet
Reconnaissance vocale
ORM
Hibernate est un ORM qui apporte une solution aux
problèmes d'adaptation entre le paradigme objet et
les SGBD en remplaçant les accès à la base de
données par des appels à des méthodes objet de
haut niveau.
La quantité de code ainsi épargnée est très
importante d'autant que ce code est généralement
fastidieux et redondant.
1712/04/2023 Stage d'application Soft Centre
Présentation de l’organisme d’accueil
ConclusionPrésentation de l’outil
Contexte du projet &
ProblématiqueDémarche de réalisation du projet
Reconnaissance vocale
Persistance
MySQL est un serveur de bases de données
relationnelles SQL développé dans un souci de
performances élevées en lecture. Il est multi-thread
et multi-utilisateur.
Le schéma simple des tables de la base de donnée
permet une transition éventuelle en format clé-valeur
(NoSQL) pour assurer une meilleure scalabilité du
service
1812/04/2023 Stage d'application Soft Centre
Présentation de l’organisme d’accueil
ConclusionPrésentation de l’outil
Contexte du projet &
ProblématiqueDémarche de réalisation du projet
Reconnaissance vocale
Audio Input
Audacity est un logiciel libre pour la manipulation de données audio numériques. Il
permet d'enregistrer du son numérique par le biais des entrées ligne/micro/cd des
cartes sons. Il permet d'éditer (copier, coller, sectionner…) les sons sur plusieurs
pistes, et il est accompagné de divers filtres et effets : pitch, tempo, réduction de
bruit, égaliseur, filtres de Fourier, …
Ce logiciel a été utilisé pour la capture et la préparation des samples à mettre dans
la base d’apprentissage et de test
1912/04/2023 Stage d'application Soft Centre
Présentation de l’organisme d’accueil
Reconnaissance vocale ConclusionDémarche de
réalisation du projetContexte du projet & Problématique Présentation de
l’outil
2012/04/2023 Stage d'application Soft Centre
Présentation de l’organisme d’accueil
ConclusionPrésentation de l’application
Contexte du projet &
Problématique
Reconnaissance vocale Présentation de l’outil
2112/04/2023 Stage d'application Soft Centre
Présentation de l’organisme d’accueil
ConclusionDémarche de réalisation du projet
Contexte du projet &
Problématique
Reconnaissance vocale Présentation de
l’application
2212/04/2023 Stage d'application Soft Centre
Présentation de l’organisme d’accueil
ConclusionDémarche de réalisation du projet
Contexte du projet &
Problématique
Reconnaissance vocale Présentation de
l’application
2312/04/2023 Stage d'application Soft Centre
Présentation de l’organisme d’accueil
ConclusionContexte du
projet & Problématique
Reconnaissance vocale
Pour satisfaire le seuil défini dans le cahier de charges, il a fallu optimiser les paramètres de traitement du signal sonore (échantillonnage, …) et les adapter aux spécifités du locuteur (origine ethnique, bruit de fond …)
On propose alors au développeur le choix entre 2 algorithmes pour améliorer le taux de reconnaissance :
• A* qui utilise l’évaluation heuristique pour estimer le meilleur chemin entre 2 nœuds.
Démarche de réalisation du projet Présentation de
l’application
2412/04/2023 Stage d'application Soft Centre
Présentation de l’organisme d’accueil
ConclusionContexte du
projet & Problématique
Reconnaissance vocale
• Un algorithme génétique
qui, grâce à un procédé
de sélection naturelle
appliqué à une population
de solutions potentielles,
approche la solution par
bonds successifs
(brassage).
Démarche de réalisation du projet Présentation de
l’application
Perspectives
2512/04/2023 Stage d'application Soft Centre
Conclusion
Présentation de l’organisme d’accueil
Contexte du projet &
Problématique
Reconnaissance vocale
Démarche de réalisation du projet
Présentation de l’application
Automatiser l’étape d’alimentation des bases de données d’apprentissage et de test, via une application mobile par exemple, pour un meilleur taux de reconnaissance
Héberger l’API dans le Cloud (IAAS/PAAS) pour une gestion transparente de la montée en charge, surtout dans un environnement distribué
Conclusion
2612/04/2023 Stage d'application Soft Centre
Conclusion
Présentation de l’organisme d’accueil
Contexte du projet &
Problématique
Reconnaissance vocale
Démarche de réalisation du projet
Présentation de l’application
• Bilan professionnel : interface entre la recherche académique et les
industriels du secteur TI pour produire du logiciel innovant
• Bilan personnel : expérience intéressante, rencontres enrichissantes
Questions - Réponses?
12/04/2023 27Stage d'application Soft Centre