Reconnaissance automatique de la parole - PowerPoint PPT Presentation

1 / 42
About This Presentation
Title:

Reconnaissance automatique de la parole

Description:

Pr senter par : Mounir GRARI RAPPORT DE PROJET SOUS HTK Reconnaissance de mots isol s Et Reconnaissance de mots connect s Plan Introduction Construction de la base ... – PowerPoint PPT presentation

Number of Views:363
Avg rating:3.0/5.0
Slides: 43
Provided by: mou996
Category:

less

Transcript and Presenter's Notes

Title: Reconnaissance automatique de la parole


1
Présenter par Mounir GRARI
2
Plan
Reconnaissance de mots isolés Et Reconnaissance
de mots connectés
  • Introduction
  • Construction de la base de données
  • Construction de modèle de langage
  • Acquisition des fichiers sons
  • Étiquetage des fichiers sons
  • Représentation acoustique du signal
  • Description des modèles
  • Modèles de Markov
  • Fichiers gabarits
  • Apprentissage
  • Apprentissage avec lalgorithme Vitervi (HInit)
  • Apprentissage avec lalgorithme de Baum Welch
    (HRest)
  • Ré estimation avec lalgorithme de Baum Welch de
    tous les models a la fois (HERest)
  • Reconnaissance
  • HVite et Hresults
  • Etude dautres possibilités vocabulaire
    restreint, vocabulaire plus complexe, analyse par
    mots et analyse par phonème
  • Etude du cas multi locuteur
  • Synthèse des résultats trouvés

3
Introduction 
Reconnaissance de mots isolés Et Reconnaissance
de mots connectés
  • Le but est de construire un système de
    reconnaissance de mots isolés et ensuite de
    phrase qui suive une certaine syntaxe de
    plusieurs mots et de le valider sous
    l'environnement HTK (Hidden Markov Model Toolkit)

4
modèle de langage
Reconnaissance de mots isolés Et Reconnaissance
de mots connectés
5
Acquisition des fichiers sons 
Reconnaissance de mots isolés Et Reconnaissance
de mots connectés
6
Étiquetage des fichiers sons 
Reconnaissance de mots isolés Et Reconnaissance
de mots connectés
  • La santaxe de la Commande HSlab
  • HSlab F WAVE L labels/ihtif.lab
    Signal/ihtif.wav

7
Étiquetage des fichiers sons 
Reconnaissance de mots isolés Et Reconnaissance
de mots connectés
  • Le résultat de cette phase est une base de
    données des étiquettes des différents fichiers
    sons. (Les étiquettes sont dans le dossier labels)

8
Représentation acoustique du signal 
Reconnaissance de mots isolés Et Reconnaissance
de mots connectés
hcopyliste.conf signal/ihtif.wav
mfcc/ihtif.mfcc signal/kallime.wav
mfcc/kallime.mfcc signal/ala.wav
mfcc/ala.mfcc signal/mohamed.wav
mfcc/mohamed.mfcc . . . .
parametrisation.conf SOURCEFORMATWAVE TARGETKIND
MFCC_E_D WINDOWSSIZE250000.0 TARGETRATE10000.0 N
UMCEPS8 nb de coeff MFCC USEHAMMINGT PREEMCOE
F0.97 NUMCHANS26 CEPLIFTER22
9
Représentation acoustique du signal 
Reconnaissance de mots isolés Et Reconnaissance
de mots connectés
  • Le nombre de coefficients MFCC utilisé est 8
    lenergie les dérivés (donc 18)
  • Le résultat de cette phase est un ensemble de
    fichiers .mfcc dans le dossier mfcc contenant les
    coefficients.

10
Description des modèles 
Reconnaissance de mots isolés Et Reconnaissance
de mots connectés
  • Pour chaque entité lexicale, on définira le
    modèle associé. Pour cela, on donnera la
    topologie de chaque modèle, le nombre d'états et
    les probabilités de transition entre les états.
  • Exemple du model en phonétique représentant le
    mot du vocabulaire ihtif

11
Description des modèles 
Reconnaissance de mots isolés Et Reconnaissance
de mots connectés
  • Fichiers gabarits A chaque entité lexical (mot
    du vocabulaire) on va crée un fichier Gabarit
    (model) représentant lentité lexical dans la
    pratique.

ltBeginHMMgt ltNumStatesgt 4 ltVecSizegt 18
ltMFCC_D_Egt ltStategt 2 ltMeangt 18
0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0
0.0 0.0 0.0 0.0 0.0 0.0 0.0 ltVariancegt
18 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0
1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 ltStategt
3 ltMeangt 18 0.0 0.0 0.0 0.0 0.0
0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0
0.0 ltVariancegt 18 1.0 1.0 1.0
1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0
1.0 1.0 1.0 ltTransPgt 4 0.0 1.0 0.0
0.0 0.0 0.6 0.4 0.0 0.0 0.0 0.6 0.4
0.0 0.0 0.0 0.0 ltEndHMMgt
Exemple  fichier gabarits/ihtif
12
Apprentissage avec lalgorithme Vitervi (HInit)
Reconnaissance de mots isolés Et Reconnaissance
de mots connectés
  • Apprentissage avec lalgorithme Vitervi (HInit)
  • Chaque modèle doit être appris les moyennes,
    les variances et les probabilités de transition
    entre états sont ré estimées jusqu'à ce qu'un
    seuil de convergence ou qu'un nombre maximum
    d'itération soient atteint. Ceci est fait par
    l'algorithme de Viterbi.
  • Pour chaque phonème on applique la commande HInit

13
Apprentissage avec lalgorithme Vitervi (HInit)
Reconnaissance de mots isolés Et Reconnaissance
de mots connectés
  • Le fichier config/hinit.conf
  • Le fichier listes/mfcc.lst

Fichier de configuration pour linitialisation
des modèles de Markov par lalgorithme de
Viterbi TARGETKIND MFCC_E_D Le fichier
config/hinit.conf
mfcc/ihtif.mfcc mfcc/kallime.mfcc mfcc/ala.mfcc mf
cc/mohamed.mfcc mfcc/amine.mfcc mfcc/nadi.mfcc .
14
Apprentissage avec lalgorithme Vitervi (HInit)
Reconnaissance de mots isolés Et Reconnaissance
de mots connectés
15
Apprentissage avec lalgorithme Vitervi (HInit)
Reconnaissance de mots isolés Et Reconnaissance
de mots connectés
  • La syntaxe de la commande HInit
  • HInit -C config/hinit.conf -A -o hinit/cif -l cif
    -L labels/ -i 20 -T 1 -m 2 gabarits/0 -S
    listes/mfcc.lst

16
Apprentissage avec lalgorithme Vitervi (HInit)
Reconnaissance de mots isolés Et Reconnaissance
de mots connectés
  • Le fichier résultat de cette commande est
    hinit/ihtif qui contient 

o ltSTREAMINFOgt 1 18 ltVECSIZEgt 18ltNULLDgtltMFCC_E_Dgt
ltDIAGCgt h "hinit/ihtif" ltBEGINHMMgt ltNUMSTATESgt
4 ltSTATEgt 2 ltMEANgt 18 -6.005343e000
-1.046386e000 -7.661552e-001 8.069010e000
-8.266843e000 -5.747077e000 -3.216688e-001
-8.078197e000 8.653573e-001 1.482991e-002
-2.785692e-003 2.108349e-003 -1.385363e-003
-1.897629e-002 -1.652776e-002 -3.286432e-003
-2.792146e-002 2.159977e-004 ltVARIANCEgt 18
7.077799e001 4.468427e001 8.880889e001
4.942561e001 9.471810e001 7.407012e001
4.695766e001 7.936121e001 1.000000e-002
1.238934e-001 1.128693e-001 1.343194e-001
1.521769e-001 2.594025e-001 2.268354e-001
2.340412e-001 2.891582e-001 1.000000e-002 ltGCONSTgt
4.371070e001 ltSTATEgt 3 ltMEANgt 18
-4.115136e000 4.821393e000 2.416528e-001
4.906225e000 -2.838504e000 -3.414094e000
1.463784e000 -6.460936e000 8.129345e-001
-3.213571e-002 1.019199e-002 -5.698932e-003
3.618972e-003 4.414299e-002 3.562211e-002
6.894447e-003 6.707498e-002 -5.552998e-004 ltVARIAN
CEgt 18 1.517968e001 2.769409e001 1.666672e001
2.582353e001 4.500641e001 9.010397e001
2.904503e001 7.800780e001 1.000000e-002
2.547789e-002 5.287474e-002 7.262968e-002
9.334487e-002 1.291680e-001 1.512521e-001
1.913001e-001 1.906947e-001 1.000000e-002 ltGCONSTgt
3.316070e001 ltTRANSPgt 4 0.000000e000
1.000000e000 0.000000e000 0.000000e000
0.000000e000 9.977974e-001 2.202643e-003
0.000000e000 0.000000e000 0.000000e000
9.944401e-001 5.559846e-003 0.000000e000
0.000000e000 0.000000e000 0.000000e000 ltENDHMMgt
17
Apprentissage
Reconnaissance de mots isolés Et Reconnaissance
de mots connectés
  • Le résultat de cette phase est un ensemble de
    fichiers dans le dossiers hinit/

18
Apprentissage avec lalgo de Baum Welch (HRest)
Reconnaissance de mots isolés Et Reconnaissance
de mots connectés
  • Les modèles sont ensuite estimés de façon
    indépendante avec lalgorithme de Baum Welch en
    utilisant la commande HRest.
  • Pour chaque phonème on applique la commande HRest
  • Le fichier config/hrest.conf
  • Le fichier listes/mfcc.lst  deja utilisé avec la
    commande hinit

Fichier de configuration pour la re-estimation
des modèles de Markov par lalgorithme de
Viterbi TARGETKIND MFCC_E_D
19
Apprentissage avec lalgo de Baum Welch (HRest)
Reconnaissance de mots isolés Et Reconnaissance
de mots connectés
  • La syntaxe de la commande HRest 
  • HRest -C config/hrest.conf -A -l aaich -M hrest/
    -L labels/ -i 20 -T 1 -m 2 hinit/aaich -S
    listes/mfcc.lst

20
Apprentissage avec lalgo de Baum Welch (HRest)
Reconnaissance de mots isolés Et Reconnaissance
de mots connectés
  • Le fichier résultat de cette commande est
    hrest/aaich qui contient 

o ltSTREAMINFOgt 1 18 ltVECSIZEgt 18ltNULLDgtltMFCC_E_Dgt
ltDIAGCgt h "aaich" ltBEGINHMMgt ltNUMSTATESgt
4 ltSTATEgt 2 ltMEANgt 18 -4.522240e000
-5.880653e-001 8.032802e000 1.781352e001
-1.238021e001 -1.077035e001 -7.107430e000
-8.941146e000 7.310240e-001 5.426434e-003
7.549872e-002 1.450049e-001 6.228557e-002
-2.826517e-002 -1.814440e-001 -7.717894e-002
-2.151994e-001 1.169653e-003 ltVARIANCEgt 18
1.766042e001 6.102851e000 1.192767e001
2.540695e001 1.958749e001 5.041793e001
1.922638e001 3.833256e001 2.337085e-003
1.619523e-001 2.678286e-001 1.185456e-001
3.499088e-001 3.168113e-001 3.927653e-001
3.371374e-001 2.182082e-001 8.624458e-006 ltGCONSTgt
2.823985e001 ltSTATEgt 3 ltMEANgt 18
-1.939978e001 3.436779e000 8.813956e000
6.829864e000 1.483930e000 -5.005201e000
-6.350124e000 -7.545569e000 7.231323e-001
6.521484e-002 -5.791717e-002 -7.582700e-002
1.413276e-002 -3.901125e-002 6.619526e-003
-4.050380e-003 -9.888211e-002 1.033234e-003 ltVARIA
NCEgt 18 8.760622e001 6.642943e000
2.810736e001 2.752651e001 1.858868e001
3.854350e001 3.150053e001 6.762994e001
2.326111e-003 2.225343e-001 1.282824e-001
2.050075e-001 1.057131e-001 3.768567e-001
7.502362e-001 3.706125e-001 3.885895e-001
1.905958e-005 ltGCONSTgt 3.281725e001 ltTRANSPgt 4
0.000000e000 1.000000e000 0.000000e000
0.000000e000 0.000000e000 9.883134e-001
1.168664e-002 0.000000e000 0.000000e000
0.000000e000 9.933964e-001 6.603613e-003
0.000000e000 0.000000e000 0.000000e000
0.000000e000 ltENDHMMgt
21
Apprentissage avec lalgo de Baum Welch (HRest)
Reconnaissance de mots isolés Et Reconnaissance
de mots connectés
  • Le résultat de cette phase est un ensemble de
    fichiers dans le dossiers hrest/
  • On remarque que mon langage contient 50 syllabes.

22
Reconnaissance 
Reconnaissance de mots isolés Et Reconnaissance
de mots connectés
  • On doit définir le modèle de notre langage  la
    grammaire de notre langage est définie dans le
    fichier listes/modeleLangage.txt

chiff ciffr wahid itnan thalathah
arrbaaah khamsah sitah sabaah thamanniah
tisaah aacharah i7daaachar ithnaaachar
thalathataaachar arrbaaataaachar
khamsataaachar sitataaachar sabaataaachar
thamanniataaachar tisaataaachar aaichroun
thalatoun arrbaaaoun khamsoun sitoun
sabaaoun thamanoun tisaaoun sil sil
prenom mohamed sil amine mohamed
numerotel chiff sil chiff sil wa sil
chiff sil (SENT-START ( sil ihtif sil
li sil numerotel ) ( sil nadi sil ala sil
prenom sil ) ( sil kallime sil prenom sil
) chiff SENT-END)
23
Reconnaissance
Reconnaissance de mots isolés Et Reconnaissance
de mots connectés
  • On va appliquer la commande HParse à cette
    grammaire pour générer le modeleDeMots
  • La syntaxe de la commande HParse
  • HParse -T 1 listes/modelelangage.txt
    listes/modeledemots.txt
  • Le résultat est un fichier listes/modeledemots.txt
    qui contient tous les mots de notre langage

VERSION1.0 N151 L266 I0 W!NULL
I1 W!NULL I2
WSENT-START I3 Wsil
I4 Wihtif . . . .
24
Reconnaissance
Reconnaissance de mots isolés Et Reconnaissance
de mots connectés
  • Dictionnaire du langage 
  • Un fichier listes/dictionnaire.txt contient le
    dictionnaire de notre langage 

SENT-START SENT-END ciffr cif fr wahid
wa hid itnan ith nan thalathah tha la thah
arrbaaah arr ba aah khamsah kham sah sitah si
tah sabaah sab aah thamanniah tha man niah
tisaah tis aah aacharah aa cha rah
25
Reconnaissance
Reconnaissance de mots isolés Et Reconnaissance
de mots connectés
  • La reconnaissance sera ensuite effectuée sur
    chaque fichier en utilisant successivement les
    modèles issus de HInit ceux issus de HRest et
    ceux de HERest afin dévalué lapport des divers
    apprentissage.
  • Pour cela nous allons utiliser la commande HVite.
  • La syntaxe de la commande HVite
  • HVite -T 1 -A -w listes/modeledemots.txt -d
    hinit/ -l resultat/hinit/ -S listes/mfcc.ar.lst
    listes/dictionnaire.txt listes/listemodeles.txt
  • Il utilise 
  • listes/modeledemots.txt générer avec HParse.
  • listes/dictionnaire.txt qui contient le
    dictionnaire du langage.
  • listes/listemodeles.txt qui contient les phonèmes
    du langage.
  • hrest/ le dossier contenant les estimations par
    hinit hrest ou herest.
  • resultat/hrest/ dans lequel les résultats de la
    commande serons mis.
  • listes/mfcc.ar.lst la listes des fichiers MFCC
    des fichiers à reconnaître.

26
Reconnaissance
Reconnaissance de mots isolés Et Reconnaissance
de mots connectés
  • les deux premières chaînes sont reconnues
    entièrement

27
Reconnaissance
Reconnaissance de mots isolés Et Reconnaissance
de mots connectés
  • Le résultat est un fichier  .rec  pour chaque
    fichier à reconnaître.
  • Par exemple pour ihtifli066ar.wav en utilisant
    les estimations par hinit le résultat est
    resultats/hinit/ihtifli066ar.rec

0 320000 sil -1088.285034 320000 4620000 ihtif
-9798.015625 4620000 5030000 sil
-1100.481689 5030000 8090000 li
-9363.433594 8090000 8250000 sil
-433.379944 8250000 10290000 ciffr
-4814.938965 10290000 12160000 sil
-4441.611328 12160000 16880000 sitah
-10271.931641 16880000 17600000 sil
-1854.313232 17600000 19780000 wa
-7324.110352 19780000 20510000 sil
-2059.960449 20510000 27070000 sitoun
-16285.652344 27070000 27260000 sil -438.454254
28
Lévaluation des performances
Reconnaissance de mots isolés Et Reconnaissance
de mots connectés
  • La syntaxe de la commande HResults
  • HResults -T 1 -L labels/ listes/listemodeles.txt
    resultat/hinit/ihtifli066ar.rec
  • On remarque que le taux de la reconnaissance est
    de 46.67 en utilisant les estimations de hinit,
    ou ceux de hrest.
  • Analyse des résultats 
  • H 7  Nombre d'éléments bien classés
  • D 2  Nombre d'éléments supprimés
  • S 6  Nombre d'éléments substitués
  • I 0  Nombre d'éléments insérés
  • N 15  Nombre total d'éléments

29
Langage restreint et reconnaissance par phonème
Reconnaissance de mots isolés Et Reconnaissance
de mots connectés
  • On utilise la grammaire suivante 
  • La reconnaissance donne ce qui suit 

chiff ciffr wahid sil sil prenom
mohamed (SENT-START ( sil kallime sil
prenom sil ) sil chiff sil SENT-END)
30
Langage restreint et reconnaissance par phonème
Reconnaissance de mots isolés Et Reconnaissance
de mots connectés
  • On affiche les résultats avec HResults.
  • Les résultats pour la reconnaissance de mots
    isolés 
  • Les résultats pour la reconnaissance de mots
    connectés 

31
Langage restreint et reconnaissance par mot
Reconnaissance de mots isolés Et Reconnaissance
de mots connectés
  • Nous allons utiliser un vocabulaire de 4mots.
  • Nous allons faire un étiquetage par mots (donc
    seulement 4 étiquette)
  • On utilise la grammaire suivante 

chiff ciffr wahid sil sil prenom
mohamed (SENT-START ( sil kallime sil
prenom sil ) sil chiff sil SENT-END)
32
Langage restreint et reconnaissance par mot
Reconnaissance de mots isolés Et Reconnaissance
de mots connectés
  • La reconnaissance donne ce qui suit 

33
Langage restreint et reconnaissance par mot
Reconnaissance de mots isolés Et Reconnaissance
de mots connectés
  • On affiche les résultats avec HResults.
  • Les résultats pour la reconnaissance de mots
    isolés 
  • Les résultats pour la reconnaissance de mots
    connectés 

34
Langage complexe et reconnaissance par mot
Reconnaissance de mots isolés Et Reconnaissance
de mots connectés
  • Nous allons utiliser un vocabulaire de 36 mots.
  • Nous allons faire un étiquetage par mots (donc
    seulement 37 étiquette)
  • On utilise la grammaire suivante 

chiff ciffr wahid sil sil prenom
mohamed (SENT-START ( sil kallime sil
prenom sil ) sil chiff sil SENT-END)
35
Langage complexe et reconnaissance par mot
Reconnaissance de mots isolés Et Reconnaissance
de mots connectés
  • La reconnaissance donne ce qui suit 

36
Langage complexe et reconnaissance par mot
Reconnaissance de mots isolés Et Reconnaissance
de mots connectés
  • On affiche les résultats avec HResults.
  • Les résultats pour la reconnaissance de mots
    isolés 
  • Les résultats pour la reconnaissance de mots
    connectés 

37
Synthèse des résultats trouvés 
Reconnaissance de mots isolés Et Reconnaissance
de mots connectés
Reconnaissance par phonème Reconnaissance par phonème Reconnaissance par mot Reconnaissance par mot
Mots isolé Mots connectés Mots isolé Mots connectés
Vocabulaire grand (36mots) 50 35 - 46 100 60
Vocabulaire petit (4 à 10 mots) 50 40 100 80
38
Etude du cas multi locuteur
Reconnaissance de mots isolés Et Reconnaissance
de mots connectés
  • Nous allons utiliser deux locuteurs  le résultat
    est
  • On remarque quil y reconnaissance totale des
    mots isolés.

39
Etude du cas multi locuteur
Reconnaissance de mots isolés Et Reconnaissance
de mots connectés
  • On affiche les résultats avec HResults.
  • Les résultats pour la reconnaissance de mots
    isolés du locuteur 1
  • Un taux de reconnaissance est de 100 en
    utilisant les estimations de hinit et ceux de
    hrest

40
Etude du cas multi locuteur
Reconnaissance de mots isolés Et Reconnaissance
de mots connectés
  • On affiche les résultats avec HResults.
  • Les résultats pour la reconnaissance de mots
    isolés du locuteur 2
  • Un taux de reconnaissance est de 100 en
    utilisant les estimations de hinit et ceux de
    hrest

41
Conclusion  
Reconnaissance de mots isolés Et Reconnaissance
de mots connectés
  • Le présent rapport vise à expliquer la
    construction dun système de reconnaissance de
    mots isolés et de phrase (mots connectés) qui
    suive une certaine syntaxe de plusieurs mots.
    Avec une reconnaissance par phonème et une
    grammaire de langage plus simple jai arrivée a
    des taux de reconnaissance jusqu'à 46.67 pour
    des phrase comme  ihtif li 066  ou même 50
    pour des mots isolé  ciffr  et ensuite avec un
    modèle de langage plus complexe (plus utile) le
    taux diminue jusqu'à 40 pour une phrase tel que
     ihtif li 0 66 58 11 69 , mais dans les deux
    cas les phrase sont souvent entièrement reconnue
    par le système Comme  kallime mohamed ,
    ensuite jai fait une reconnaissance par mots qui
    donne de bons résultats surtout pour des mots
    isolés avec des taux de reconnaissance de 100,
    et des taux entre 60 et 80 pour des mots
    connecté, et jai terminer avec un système multi
    locuteur qui fait une reconnaissance de 100 pour
    des mots isolés.

42
Merci ?
Write a Comment
User Comments (0)
About PowerShow.com