Speech Recognition API

1,851 views
1,687 views

Published on

Speech Recognition API based on HTK

Published in: Technology
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
1,851
On SlideShare
0
From Embeds
0
Number of Embeds
42
Actions
Shares
0
Downloads
90
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

Speech Recognition API

  1. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 27. ? 02/11/2013 Questions - Réponses Stage d'application Soft Centre 27

×