Cosa significa un "vettore" in un modello Markov nascosto?


8

So che un modello Markov nascosto (HMM) viene utilizzato nel riconoscimento vocale e lo capisco in una certa misura. Tuttavia, ciò che non so è come l'input (discorso) viene "trasformato" in un vettore che in seguito verrà utilizzato in HMM.

Come si ottiene un vettore da un ingresso audio? Questo vettore è leggibile da un essere umano?


9
Qualcuno potrebbe spiegare l'OP perché è stato sottoposto a downgrade? In questo modo può modificare la sua domanda in qualcosa che forse è più appropriato
Ivo Flipse il

2
A quanto ho capito, i matematici usano il termine "vettore" per ciò che la gente normale chiamerebbe "una stringa di numeri". Vedono il tuo file MP3 come una freccia che punta a un punto specifico in uno "spazio di Hilbert", che ha un numero infinito di dimensioni ...
endolith

Presumo che tu stia chiedendo informazioni su MFCC. È chiaramente indicato in questo link Wiki su MFCC. it.wikipedia.org/wiki/Mel-frequency_cepstral_coefficient
Rajesh Dachiraju

Bello girare, yoda! Il post originale aveva diverse carenze, ma penso che la forma attuale non meriti i voti negativi o voti stretti.
Kevin Vermeer,

@rajesh: perché non lo metti in una risposta ... finora non ce n'è una buona
Peer Stritzinger

Risposte:


8

Il modo in cui il riconoscimento vocale viene eseguito con HTK (o qualsiasi altro strumento) è in qualche modo simile al modo in cui il riconoscimento vocale viene eseguito nel cervello. Quando senti una parola, la scomponi istantaneamente nei suoi telefoni costitutivi e poi confronta i telefoni con un "modello" mentale interno dei telefoni . Questi "modelli" sono costruiti nel corso di anni di ascolto del parlato e ti danno la possibilità di distinguere frasi dal suono simile come "Come distruggere una bella spiaggia" e "Come riconoscere il discorso". Il riconoscimento vocale con HTK o qualsiasi altro schema basato su modelli funziona in modo simile. Ecco, in pochi passaggi, ecco come lo fai:

  1. Prendi il segnale vocale di input e lo converti in una rappresentazione vettoriale di funzionalità.
  2. Prendi un gran numero di frasi ed esegui il passaggio 1 su ciascuna di esse.
  3. Usa i vettori di funzionalità nel passaggio 2 per creare un modello statistico per ciascuno dei telefoni / parole nelle frasi (c'è un numero limitato di telefoni / parole rispetto a un numero infinito di modi per dirli - in modo da ridurre gli incogniti modellando ).
  4. Quando arriva una nuova parola, suddividila in telefoni e confrontala con ciascuno dei modelli noti. Vince la sequenza di telefoni con la più alta probabilità!

Tutti i passaggi precedenti sono fondamentali per il corretto completamento di qualsiasi attività di riconoscimento vocale. Decomponendo un suono nel suo vettore caratteristica, lo stai portando in uno spazio modello, dandogli una rappresentazione che lo rende più adatto a creare un modello fuori da altre rappresentazioni (ad esempio la rappresentazione dell'ampiezza del tempo). La maggior parte di tali rappresentazioni risiede nella frequenza, o nel dominio della frequenza temporale. Una delle rappresentazioni più popolari è l' MFCC (Mel Frequency Cepstral Coefficient). In un certo senso, questa tecnica imita la risposta dell'udito umano con una serie di filtri. Un segnale di ingresso viene decomposto con questo set di filtri che hanno una spaziatura logaritmica delle loro frequenze centrali. I coefficienti MFCC di una sola frase (diciamo) vengono quindi utilizzati per modellare ciascuno dei telefoni di cui è composta la frase. Ad esempio, considera,

Frase: HI. Descrizione fonetica: hh aa ey
Quando si alimentano i coefficienti MFCC in HTK, associano i coefficienti MFCC di una parte della frase con hh, un'altra con aa e così via. Quando questo si ripete più volte, iniziano a formarsi i modelli per i telefoni.

HTK utilizza lo strumento HCopyper convertire una frase di input nella sua rappresentazione vettoriale di caratteristiche. Ci sono molti "sapori" anche nelle rappresentazioni di MFCC (rappresentazioni E_D_A o E_D_A_Z). Sarebbe una buona idea leggere la documentazione HCopyall'interno di htkbook.

I coefficienti MFCC sono scritti in un file con estensione .mfcHTK. Non è possibile leggere quel file usando nessuno degli editor di testo perché (penso) i coefficienti sono scritti in binario. Puoi provare a leggere i file con Cperò.

HTH.


vuoi spiegare il voto negativo?
Sriram,

2
Ho votato in giù a causa di molteplici motivi. Manca di precisione. È altamente impreciso e pieno di mezze verità. Indicazione non necessaria di strumenti, gadget e metodi per utilizzarli, che non è rilevante per la domanda. Innanzitutto la domanda in sé non è ben composta e la tua risposta non sembra menzionarla. Di più c'è un bell'articolo di Wikipedia su MFCC che menziono il mio commento sulla domanda.
Rajesh Dachiraju,

@Rajesh: grazie per il feedback! Ho fornito all'OP un link alla pagina MFCC su Wikipedia se guardi attentamente. Se ritieni che questa risposta sia inaccurata, ti preghiamo di evidenziare le imprecisioni, quindi possiamo imparare. Il semplice voto negativo non equivale a critiche costruttive, quindi ti incoraggio a utilizzare gratuitamente il editpulsante sulla risposta o, meglio ancora, a fornirci una tua risposta. E sì, se la domanda stessa non è precisa, anche la risposta mancherà di precisione. Questo è stato discusso nella sezione commenti stessa.
Sriram,

1
@Peer: No. I telefoni sono modellati in un'attività di riconoscimento vocale, non i fonemi (IMHO).
Sriram,

2
Ah vedo ... sfortunata scelta di un termine tecnico (davvero difficile da google ;-) Ho aggiunto un link all'articolo di Wikipedia per i telefoni
Peer Stritzinger,

0

Ogni onda può essere scomposta nell'aggiunta di molte altre onde. Usando una trasformata di Fourier, puoi analizzare un'onda nei suoi componenti di frequenza. L'ampiezza di questi componenti di frequenza può quindi essere utilizzata come vettore. Ecco la documentazione sulla classe Sphinx che fa questo ed ecco una buona spiegazione visiva della trasformata di Fourier.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.