La segmentation de la parole
La parole est un flux de données (signal) continu (qui
peut être infini), la reconnaissance de la parole consiste
en la localisation des unités de base (phonèmes/
syllabes/ mots/ phrases …) puis l’étiquetage de ces
dernières (reconnaissance).
Ces 2 opérations peuvent soit être faites ensemble, ou
dans certaines pratiques séparément. La segmentation
de la parole consiste à trouver le début et la fin de
chaque unité à partir du signal de parole.
La segmentation de la parole
(Cas de parole isolée)
Dans le cas simple de parole isolée, c’est à dire de
présence de silence entre les mots/unités il est possible
d’utiliser l’énergie du signal ainsi qu’un seuil afin de
localiser le silence. Cependant plusieurs problèmes se
posent:
1. Comment déterminer le seuil?
2. Le seuil est il fixe ou variable?
3. La présence de silence à l’intérieur des mots
La segmentation de la parole
(Cas de parole isolée – seuil)
Dans un signal de parole, le bruit rond sa segmentation
difficile vu qu’on a plus un silence absolu (d’énergie 0)
mais plus un bruit de fond au lieu du silence (d’énergie
variable 𝛽𝑡 ).
La détermination de l’énergie du bruit de fond initiale
peut se faire facilement si le début du signal est
constitué de silence en calculant l’énergie moyenne de
cette partie (de t=0 jusqu’à t0).
La segmentation de la parole
(Cas de parole isolée - seuil)
𝑡<𝑡0
1
𝛽0 = 𝐸 𝑡
𝑡0
𝑡=0
𝐸 𝑡 : 𝑙 ′ é𝑛𝑒𝑟𝑔𝑖𝑒 𝑑𝑢 𝑠𝑖𝑔𝑛𝑎𝑙 à 𝑙 ′ 𝑖𝑛𝑠𝑡𝑎𝑛𝑡 𝑡
𝛽0 : 𝑙 ′ é𝑛𝑒𝑟𝑔𝑖𝑒 𝑑𝑢 𝑏𝑟𝑢𝑖𝑡 𝑑𝑒 𝑓𝑜𝑛𝑑 𝑖𝑛𝑖𝑡𝑖𝑎𝑙𝑒
La segmentation de la parole
(Cas de parole isolée - seuil)
Mise à jour de l’énergie du bruit
𝛽𝑡 = 𝛼𝛽𝑡−1 + 1 − α 𝐸(𝑡) 𝑠𝑖 𝐸 𝑡 < 𝑠𝑒𝑢𝑖𝑙
ቊ
𝛽𝑡 = 𝛽𝑡−1 𝑠𝑖𝑛𝑜𝑛
𝛼: typiquement dans [0.95,1] représente la vitesse de
variation de l’énergie du bruit.
𝛽𝑡 : 𝑙 ′ é𝑛𝑒𝑟𝑔𝑖𝑒 𝑑𝑢 𝑏𝑟𝑢𝑖𝑡 𝑑𝑒 𝑓𝑜𝑛𝑑 à 𝑙 ′ 𝑖𝑛𝑠𝑡𝑎𝑛𝑡 𝑡
𝐸 𝑡 : 𝑙 ′ é𝑛𝑒𝑟𝑔𝑖𝑒 𝑑𝑢 𝑠𝑖𝑔𝑛𝑎𝑙 à 𝑙 ′ 𝑖𝑛𝑠𝑡𝑎𝑛𝑡 𝑡
La segmentation de la parole
(Cas de parole isolée - seuil)
Détermination du seuil à l’instant t
𝑠𝑡 = (1 + 𝛾)𝛽𝑡
𝑠𝑡 = max(𝑠𝑡 , 𝑠𝑚𝑖𝑛 )
𝛾: typiquement 1 afin que le seuil soit le double de
l’énergie moyenne du bruit de fond.
𝑠𝑚𝑖𝑛 : est un seuil minimal à choisir
La segmentation de la parole
(Cas de parole isolée - seuil)
𝑡<𝑡0
1
𝛽= 𝐸 𝑡
𝑡0
𝑡=0
𝑡 =𝑡+1
𝛽 = 𝛼𝛽 + 1 − α 𝐸 𝑡
𝑠 = (1 + 𝛾)𝛽
Détection
𝑠 = max(𝑠, 𝑠𝑚𝑖𝑛 )
d’un mot
oui non
𝐸 𝑡 ≤𝑠 𝑡 =𝑡+1
La segmentation de la parole
(Cas de parole isolée)
⚫ Dans un signal de parole il est possible de trouver du
silence à l’intérieur des mots, dû au mode d’élocution
des occlusifs.
⚫ Cependant, ce silence est de très courte durée. Dans
un système de reconnaissance de mots isolés, on
impose un silence de longue durée entre les mots (1
seconde minimum) et on définit 3 constantes:
𝑡𝑠𝑖𝑙 : temps de silence minimal
𝑡𝑚𝑖𝑛 : temps de mot minimal
𝑡𝑚𝑎𝑥 : temps de mot maximal
La segmentation de la parole
(Cas de parole isolée)
La segmentation de la parole
(Cas de parole isolée)
𝑠 = 𝑖𝑛𝑖𝑡𝑖𝑎𝑙𝑖𝑠𝑒𝑟 𝑙𝑒 𝑠𝑒𝑢𝑖𝑙
t=t0
𝑹é𝒑é𝒕𝒆𝒓
𝑡 = 𝑡 + 1 #si t=fin du signal alors sortir
𝒔𝒊 𝐸 𝑡 ≤ 𝑠
𝑠 = 𝑚𝑖𝑠𝑒 à 𝑗𝑜𝑢𝑟 𝑑𝑢 𝑠𝑒𝑢𝑖𝑙
𝒔𝒊𝒏𝒐𝒏
𝑑𝑒𝑏𝑢𝑡_𝑚𝑜𝑡 = 𝑡
𝑹é𝒑é𝒕𝒆𝒓
𝒔𝒊 𝐸 𝑡 > 𝑠 𝒂𝒍𝒐𝒓𝒔 𝑐𝑜𝑚𝑝𝑡𝑠𝑖𝑙 = 0 𝒔𝒊𝒏𝒐𝒏 𝑐𝑜𝑚𝑝𝑡𝑠𝑖𝑙 += 1
𝑡 = 𝑡 + 1 #si t=fin du signal alors sortir
𝑱𝒖𝒔𝒒𝒖′ à 𝒄𝒆 𝒒𝒖𝒆 𝑐𝑜𝑚𝑝𝑡𝑠𝑖𝑙 ≥ 𝑡𝑠𝑖𝑙 ou fin du signal
𝑓𝑖𝑛_𝑚𝑜𝑡 = 𝑡 − 𝑡𝑠𝑖𝑙
𝑑𝑢𝑟𝑒𝑒_𝑚𝑜𝑡 = 𝑓𝑖𝑛_𝑚𝑜𝑡 − 𝑑𝑒𝑏𝑢𝑡_𝑚𝑜𝑡 + 1
𝒔𝒊 𝑡𝑚𝑖𝑛 ≤ 𝑑𝑢𝑟𝑒𝑒_𝑚𝑜𝑡 ≤ 𝑡𝑚𝑎𝑥 𝒂𝒍𝒐𝒓𝒔 𝑚𝑜𝑡_𝑑𝑒𝑡𝑒𝑐𝑡é 𝑑𝑒𝑏𝑢𝑡_𝑚𝑜𝑡, 𝑓𝑖𝑛_𝑚𝑜𝑡
𝒇𝒊𝒏 𝒔𝒊
𝒋𝒖𝒔𝒒𝒖′ à 𝒍𝒂 𝒇𝒊𝒏 𝒅𝒖 𝒔𝒊𝒈𝒏𝒂𝒍