270 likes | 517 Views
Reconnaissance Vocale. PFE – SCIA 2008. Julien Ass émat David Landais. Plan. Présentation générale Historique & Analyse M éthodes possibles, techniques… Notre démarche Structures HMM, algorithme N-grams… Développement Conclusion. Présentation générale (1/2). Nature du projet :
E N D
Reconnaissance Vocale PFE – SCIA 2008 Julien Assémat David Landais
Plan • Présentation générale • Historique & Analyse • Méthodes possibles, techniques… • Notre démarche • Structures HMM, algorithme N-grams… • Développement • Conclusion
Présentation générale (1/2) • Nature du projet : • Programme de reconnaissance vocale • Vocabulaire de grande taille • Orienté retranscription de fichiers audio • Technologies et notions utilisées : • Langage C++ • MFCC : FFT, DCT, … • HMM • N-grams
Présentation générale (2/2) • Librairies • HTK : librairie de traitement du signal sonore • FFTW : calcul de transformée de Fourier • Applications envisagées • Commandes vocales • Retranscription de fichiers audio • Conversations • Extraits radiophoniques • Indexation sonore • Dictée vocale
Historique (1/3) • Etapes de la reconnaissance vocale • Pour comprendre les problématiques • Pour comprendre le cheminement technique • Approche IA pure • Approche statistique • Pour choisir les techniques utiles à notre application • Taille du vocabulaire • Reconnaissance en temps réel ou non
Historique (2/3) • Premiers pas de la reconnaissance vocale • 1950 : reconnaissance de chiffres et voyelles • Vocabulaire limité • 1968 : reconnaissance de mots isolés • Modèle de langage statistique • 1980 : N-grams
Historique (3/3) • Commandes vocales • 1983 : domaine militaire (France) • Reconnaissance de parole continue • 1996 : première machine à dictée vocale (IBM)
Analyse (1/4) • Deux méthodes principalement utilisées • Méthode explicite • Méthode basée sur l’utilisation de connaissances explicites • Méthode implicite • Méthode basée sur une approche statistique
Analyse (2/4) • Méthode explicite • Première approche de la reconnaissance vocale • Basée sur l’utilisation de connaissances explicites : • Comparaison à des formes de référence (spectres…) • Utilisant des techniques d’IA pure • Systèmes multi-agents • Blackboards (Hearsay II) • Systèmes experts • Méthode peu performante à elle-seule à l’heure actuelle
Analyse (3/4) • Méthode implicite • Approche orientée statistique du problème à 2 niveaux • Niveau acoustique (modèle acoustique) • Niveau linguistique (modèle de langue) • Nécessite un apprentissage sur des corpus conséquents • Techniques utilisées : • Hidden Markov Models (HMM) • Algorithme N-grams • Réseaux de neurones • Méthode la plus performante à l’heure actuelle
Analyse (4/4) • Méthode implicite • Donne les meilleures performances (taux d’erreurs faible) • Reste la plus utilisée dans la reconnaissance vocale • Limites atteintes : gestion des accents, émotions, … • Dans le futur • Retour probable des techniques d’IA pure couplées avec les méthodes statistiques
Notre démarche • Pour notre projet : • Méthode implicite est retenue • Méthode implicite comprend : • Modèle acoustique • Modèle linguistique
Modèle acoustique (1/6) • Etapes : • Découpage du signal • Coefficients MFCC • Hidden Markov Models (HMM) • Résultat du modèle : • Donne la probabilité de correspondance à un phonème • Puis associer le phonème le plus probable à la tranche
Modèle acoustique (2/6) • Découpage du signal en tranche • Signal = suite d’amplitudes • Tranches de 10 à 20 ms • Pour chaque tranche, extraction d’un vecteur caractéristique • Coefficients MFCC • Vecteur de 12 coefficients
Modèle acoustique (3/6) • Coefficients MFCC(Mel Frequency Cepstral Coefficient) • Transformée de Fourier sur la tranche • On obtient le spectre du signal • Projection du spectre sur l’échelle de Mel • Bancs de filtres triangulaires • Approximation du système auditif humain • Application de la DCT (Discrete Cosinus Transform)
Modèle acoustique (4/6) • Hidden Markov Models (DAVEUD) • Automates • Un HMM par phonème • Etats = caractéristiques du vecteur extrait • Un HMM par mot • Etats = phonèmes • Calculer la probabilité d’une séquence de phonèmes
Modèle acoustique (5/6) • Hidden Markov Models (DAVEUD) • Automates • Un HMM par phonème • Etats = caractéristiques du vecteur extrait • Un HMM par mot • Etats = phonèmes • Calculer la probabilité d’une séquence de phonèmes
Modèle acoustique (6/6) • Hidden Markov Models (DAVEUD) • Automates • Un HMM par phonème • Etats = caractéristiques du vecteur extrait • Un HMM par mot • Etats = phonèmes • Calculer la probabilité d’une séquence de phonèmes
Modèle linguistique • Travail sur la syntaxe et la sémantique propre à la langue • Probabilité qu’une suite de mots existe dans la langue • Introduction de la notion d’approximation avec N-grams • Algorithme N-grams • Agrégation en 2 ou 3 mots avec une probabilité associée • Approximation de probabilités de séquences plus longues • Calcul des probabilités sur ces séquences plutôt que sur des mots • Probabilité d’obtenir un mot connaissant les mots précédents
Développement (1/2) • Implémentation du modèle acoustique • Analyse du signal • Découpage en tranches • Extraction des coefficients MFCC • Mise en pratique des HMM pour les phonèmes
Développement (2/2) • Problèmes rencontrés • Corpus gratuits dédiés à l’apprentissage vocal très rares • Nécessite beaucoup de travail pour les éditeurs • Complexité mathématique de certaines notions • Utilisation de librairies spécifiques
Conclusion • Nombreuses manières de voir le problème • Dépend de l’application : commandes, dictée vocale • Mise en pratique de concepts • Traitement du signal • FFT, DCT, MFCC • Traitement du langage naturel • N-grams • Permet une approche concrète de ces domaines