Appendice C. Algoritmo token passing per il riconoscimento del parlato continuo
Algoritmo token passing per il riconoscimento del parlato
continuo
Il modello Token Passing (Passaggio del gettone)
L’ottimizzazione dei costi di un processo rappresentato dal grafo degli stati
può essere ottenuto con il Principio di Ottimalità (figura C.1). Per calcolare
il costo minimo e/o costruire il cammino ottimo è necessario memorizzare
per ogni stato lo stato di provenienza ottimo: ciò può essere fatto con un
vettore o una matrice a seconda del tipo di grafo degli stati oppure con un
record collegato ad ogni stato che può contenere anche il costo locale
accumulato.
E’ utile, per
generalizzare l’elaborazione, definire gettoni ( Token) che
permettono il trasferimento delle informazioni da uno stato a tutti i suoi
stati successivi (Token Passing Model). Ogni stato genera, dopo aver
effettuato la scelta locale ottima, un gettone che contiene il costo
accumulato incrementato del costo di transizione e che viene trasferito ad
ogni stato successivo. Il gettone può contenere altre informazioni come un
puntatore o lo stato di provenienza.
104
Appendice C. Algoritmo token passing per il riconoscimento del parlato continuo
Figura 1 Grafo degli stati e determinazione del cammino ottimo
con il principio di ottimalità e modello passaggio del gettone (Token
Passing Model)
Se interessa conoscere solo lo stato finale ottimo ed il suo costo il gettone
contiene il solo costo accumulato. Gli HMM (o la DTW)
per il
riconoscimento di parole singole sono bidimensionali: il tempo è sull’asse
orizzontale e su quello verticale vi sono gli stati delle singole parole. I nodi
sono definiti dall’intersezione delle corrispondenti coordinate. La parola più
verosimile è ottenuta alla fine dell’emissione (tempo T
discreto)
individuando quella il cui stato finale ha costo accumulato minimo.
Riconoscimento del parlato continuo
Per il riconoscimento del parlato continuo si devono concatenare gli HMM
delle singole parole.
105
Appendice C. Algoritmo token passing per il riconoscimento del parlato continuo
Figura. 2 Evoluzione dei diagrammi di stato per il riconoscimento
del parlato continuo
In Fig 2 è rappresentata l’evoluzione dei diagrammi di stato di parole
concatenate. La fine di una parola è stabilita dal confronto della probabilità
dello stato finale con quella degli altri stati (della stessa parola). La parola
è considerata riconosciuta quando la probabilità dello stato finale della sua
HMM supera una determianta soglia (dipendente anche dalle probabilità
degli altri stati con un opportuno criterio).
A riconoscimento avvenuto si passa ad un’altra parola con la probabilità
condizionata delle parole dei bigrammi (che assumiamo indipendente dalla
posizione nella frase).
Al termine della scansione temporale, il costo accumulato minimo permette
di costruire la sequenza ottima delle parole.
106
Appendice C. Algoritmo token passing per il riconoscimento del parlato continuo
Figura 3 Grafo degli stati per il riconoscimento del parlato continuo e
lista dei record di collegamento (Word Link Record: WLR)
Il grafo degli stati (figura C.3) è costituito dalla cascata di blocchi, costituiti
ciascuno da tutti gli HMM delle singole parole. Lo stato finale del modello
di ciascuna parola è collegato agli stati iniziali dei modelli HMM della
parole successive con archi il cui costo è la probabilità condizionata dei
bigrammi.
Il concatenamento può essere rappresentato da uno stato “virtuale” che
comprende gli stati terminali delle singole parole.
L’evoluzione è controllata dai gettoni che ora devono contenere, oltre al
costo accumulato corrente, il Path Identifier (identificatore di cammino) che
è
il puntatore a un record (WLR: Word Link Record) della lista di
collegamento delle parole (Fig. 3) che corrisponde al record collegato ad
ogni stato del metodo di Fig.1. WLR contiene:
il codice della parola
107
Appendice C. Algoritmo token passing per il riconoscimento del parlato continuo
riconosciuta, il costo accumulato, l’istante del termine del riconoscimento
parziale e il puntatore ricevuto dal gettone.
Il riconoscimento inizia con l’invio del gettone iniziale a tutte gli HMM del
primo blocco. I gettoni, ad ogni tempo discreto, si propagano nei rispettivi
HMM e al termine del riconoscimento contengono i rispettivi costi
accumulati e il puntatore che avevano all’ingresso.
Il gettone in uscita dal corrispondente HMM crea un record WLR; il suo
indirizzo del WLR è utilizzato per aggiornare il gettone che è distribuito a
tutti gli HMM del secondo blocco con costi che dipendono dalla probabilità
della parola del secondo blocco condizionata da quella del primo blocco.
Al termine dell’emissione
(tempo T) si individua il
WLR che ha costo
accumulato minimo e quindi, utilizzando il campo dei puntatori, si costruisce
all’indietro il cammino creato dai collegamenti per individuare la sequenza
ottima.
L’algoritmo di riconoscimento del parlato continuo è rappresentato più
sinteticamente da una struttura ad anello facilmente deducibile dalla Fig .2.
108
Appendice C. Algoritmo token passing per il riconoscimento del parlato continuo
si
id0
w3
i
ci
id0
j
s ij
i
id0
M
s kM
k
id0
cj
i
c0
X
wx
nx
cM
M
w3
n1
id0
cM
k
WLR
Costo accumulato
Id. stato finale parola terminata
Codice parola terminata
Istante fine parola
ID WLR parola precedente
idx
id0
cM
id1
ID WLR generato
cM
M
w3
n1
id0
id1
Fig. 4. Una sintesi del modello Token Passing
Riferimenti:
1) S.J. Joung, et al.: Token Passing: a Simple Conceptual Model for Connected
Speech Recognition Systems (1989)
http://www.citeseer.ist.psu.edu/young89toren.html
2) H. Ney, S. Ortmann: Dynamic Programming Search for Continous Speech
Recognition, IEEE Signal Processing Magazine (settembre 1999)
3) Per l’utilizzo del modello
passaggio del gettone (Token Passing) è utile il
Capitolo 1 di HTK Book che si può scaricare dal sito http://htk.eng.cam.ac.uk/ o
acquistare alla Copisteria Copia
109