Your SlideShare is downloading. ×
  • Like
Speech Recognition API
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×

Now you can save presentations on your phone or tablet

Available for both IPhone and Android

Text the download link to your phone

Standard text messaging rates apply

Speech Recognition API

  • 706 views
Published

Speech Recognition API based on HTK

Speech Recognition API based on HTK

Published in Technology
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
    Be the first to like this
No Downloads

Views

Total Views
706
On SlideShare
0
From Embeds
0
Number of Embeds
1

Actions

Shares
Downloads
51
Comments
0
Likes
0

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. Soutenance du Stage d’application Mise en place d’une API de reconnaissance vocale Présenté par : Salma ES-SALMANI Encadré par : Abdelwahed El Mourabit 02/11/2013 Soutenu devant les membres de jury • Pr Mohammed Berrada • Pr Nour Houda Chaoui Mejhed Stage d'application Soft Centre
  • 2. Présentation de l’organisme d’accueil Contexte du projet et problématique Principe de la reconnaissance vocale Démarche de réalisation du projet Présentation de l’outil réalisé Conclusion 02/11/2013 Stage d'application Soft Centre 2
  • 3. Présentation de l’organisme d’accueil Contexte du projet La reconnaissance & Problématique vocale Démarche de réalisation du projet Présentation de l’outil Conclusion Centre de R&D spécialisé dans le développement logiciel Fondé en 2010 02/11/2013 Stage d'application Soft Centre 3
  • 4. Présentation de l’organisme d’accueil 02/11/2013 Contexte du projet Reconnaissance Démarche de & Problématique vocale réalisation du projet Stage d'application Soft Centre Présentation de l’outil Conclusion 4
  • 5. Présentation de l’organisme d’accueil Contexte du projet Reconnaissance Démarche de & Problématique vocale réalisation du projet Présentation de l’outil Conclusion Mode de fonctionnement 02/11/2013 Stage d'application Soft Centre 5
  • 6. Présentation de l’organisme d’accueil Contexte du projet & Problématique Reconnaissance Démarche de vocale réalisation du projet Présentation de l’outil Conclusion • 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. 02/11/2013 Stage d'application Soft Centre 6
  • 7. Présentation de l’organisme d’accueil Contexte du projet & Problématique Reconnaissance Démarche de vocale réalisation du projet Présentation de l’outil Conclusion Problématique • 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 ? 02/11/2013 Stage d'application Soft Centre 7
  • 8. Présentation de l’organisme d’accueil Contexte du projet & Problématique Reconnaissance Démarche de vocale réalisation du projet Présentation de l’outil Conclusion 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 02/11/2013 Stage d'application Soft Centre 8
  • 9. Présentation de l’organisme d’accueil Contexte du projet & Problématique Démarche de réalisation Présentation de l’outil La reconnaissance du projet vocale Conclusion • 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 : 02/11/2013 Stage d'application Soft Centre 9
  • 10. Présentation de l’organisme d’accueil Contexte du projet & Problématique Démarche de réalisation Présentation de l’outil La reconnaissance du projet vocale Conclusion Les modèles de Markov cachés • 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. 02/11/2013 Stage d'application Soft Centre 10
  • 11. Présentation de l’organisme d’accueil 02/11/2013 Contexte du projet & Problématique Démarche de réalisation Reconnaissance du projet vocale Stage d'application Soft Centre Présentation de l’outil Conclusion 11
  • 12. Présentation de l’organisme d’accueil Contexte du projet & Problématique Démarche de réalisation Reconnaissance du projet vocale Présentation de l’outil Conclusion 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. 02/11/2013 Stage d'application Soft Centre 12
  • 13. Présentation de l’organisme d’accueil Contexte du projet & Problématique Démarche de réalisation Reconnaissance du projet vocale Présentation de l’outil Conclusion 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. 02/11/2013 Stage d'application Soft Centre 13
  • 14. Présentation de l’organisme d’accueil Contexte du projet & Problématique Reconnaissance Présentation de Démarche de réalisation du vocale l’outil projet Conclusion 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. 02/11/2013 Stage d'application Soft Centre 14
  • 15. Présentation de l’organisme d’accueil Contexte du projet & Problématique Reconnaissance Présentation de Démarche de réalisation du vocale l’outil projet Conclusion 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 ... 02/11/2013 Stage d'application Soft Centre 15
  • 16. Présentation de l’organisme d’accueil Contexte du projet & Problématique Reconnaissance Présentation de Démarche de réalisation du vocale l’outil projet Conclusion 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. 02/11/2013 Stage d'application Soft Centre 16
  • 17. Présentation de l’organisme d’accueil Contexte du projet & Problématique Reconnaissance Présentation de Démarche de réalisation du vocale l’outil projet Conclusion 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 02/11/2013 Stage d'application Soft Centre 17
  • 18. Présentation de l’organisme d’accueil Contexte du projet & Problématique Reconnaissance Présentation de Démarche de réalisation du vocale l’outil projet Conclusion 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 02/11/2013 Stage d'application Soft Centre 18
  • 19. Présentation de Contexte du projet Reconnaissance Démarche de l’organisme d’accueil & Problématique vocale réalisation du projet 02/11/2013 Stage d'application Soft Centre Présentation de l’outil Conclusion 19
  • 20. Présentation de l’organisme d’accueil 02/11/2013 Contexte du projet & Problématique Reconnaissance vocale Présentation de l’application Stage d'application Soft Centre Présentation de l’outil Conclusion 20
  • 21. Présentation de l’organisme d’accueil 02/11/2013 Contexte du projet & Problématique Reconnaissance vocale Démarche de réalisation du projet Stage d'application Soft Centre Présentation de l’application Conclusion 21
  • 22. Présentation de l’organisme d’accueil 02/11/2013 Contexte du projet & Problématique Reconnaissance vocale Démarche de réalisation Présentation de du projet Stage d'application Soft Centre Conclusion l’application 22
  • 23. Présentation de l’organisme d’accueil Contexte du projet & Problématique Reconnaissance vocale Démarche de réalisation Présentation de du projet Conclusion l’application 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. 02/11/2013 Stage d'application Soft Centre 23
  • 24. Présentation de l’organisme d’accueil Contexte du projet & Problématique Reconnaissance vocale Démarche de réalisation Présentation de du projet Conclusion l’application • 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). 02/11/2013 Stage d'application Soft Centre 24
  • 25. Présentation de l’organisme d’accueil Contexte du projet & Problématique Reconnaissance Démarche de vocale réalisation du projet Présentation de l’application Conclusion Perspectives 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é 02/11/2013 Stage d'application Soft Centre 25
  • 26. Présentation de l’organisme d’accueil Contexte du projet & Problématique Reconnaissance Démarche de vocale réalisation du projet Présentation de l’application Conclusion Conclusion • 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 02/11/2013 Stage d'application Soft Centre 26
  • 27. ? 02/11/2013 Questions - Réponses Stage d'application Soft Centre 27