Está en la página 1de 19

Curso sobre Tecnologías del Habla José B.

Mariño Acebal

Introducción al
reconocimiento de voz
José B. Mariño Acebal

Indice

!Perspectiva histórica del estado del


arte
!Reconocimiento de palabras aisladas
!Modelos de Markov
!Algoritmo de Viterbi.
!Entrenamiento discriminativo
!Verificación

1
Curso sobre Tecnologías del Habla José B. Mariño Acebal

Perspectiva histórica

!Ambiente/canal
!Conjunto de usuarios
Factores de dificultad !Modo de elocución
!Vocabulario
!Complejidad de la tarea

Perspectiva histórica

2
Curso sobre Tecnologías del Habla José B. Mariño Acebal

Perspectiva histórica

Reconocimiento de
palabras aisladas

Sésamo

3
Curso sobre Tecnologías del Habla José B. Mariño Acebal

Reconocimiento de
palabras aisladas

Hz Modelos
o patrones

voz Procesador Algoritmo


texto
acústico de reconocimiento
x f = popt

Reconocimiento de
palabras aisladas

Modelos
o patrones

voz Procesador Algoritmo


texto
acústico de reconocimiento
x f = popt

Regla de decisión MAP: popt = argmax { P( p / x ) }


p∈L

4
Curso sobre Tecnologías del Habla José B. Mariño Acebal

Modelos de Markov

!Modelo probabilístico de secuencias

1 2 3 4

Modelos de Markov

a22
a13 a33
a11 a12 a23
1 2 3
a21 a32

" " "


# % #
$ $ &

Observaciones: " " # $ $ " # " &


Estados: 1 1 1 2 2 2 3 3 3
1 2 1 1 2 1 1 1 3

5
Curso sobre Tecnologías del Habla José B. Mariño Acebal

Modelos de Markov

! Elementos de un modelo (I)


'el número de estados: N
'el alfabeto de observaciones en los estados
(finito (M): modelos discretos
(infinito: modelos continuos
'las probabilidades de transición entre estados

aij = P[qt+1 = Sj / qt = Si] 1 ≤ i,j ≤ N

Modelos de Markov

!Elementos de un modelo (II)


'...
'probabilidades de los símbolos en cada estado
bj (k) = P[vk a t / qt = Sj] 1≤j≤N 1≤k≤M

'la probabilidad de los estados iniciales


πi = P[q1 = Si] 1≤i≤N

6
Curso sobre Tecnologías del Habla José B. Mariño Acebal

Modelos de Markov

!Los tres problemas básicos


Dada la secuencia de observaciones O = O1 O2 ... OT
y el modelo λ = (A, B, π):
( calcular eficientemente P(O/λ)
( determinar la secuencia de estados Q = q1 q2 ... qT
óptima en algún sentido
( ajustar los parámetros del modelo de forma que se
maximice P(O/λ)

Modelos de Markov

!Cálculo de P(O/λ)
Coste computacional

(2T-1) NT

P(O/ Q, λ) = πq1 bq1 (O1)aq1q2 bq2 (O2 )...aqT−1qT bqT (OT )


P(O/ λ) = ∑ πq bq (O1)aq q bq (O2 )...aq
1 1 1 2 2 T−1qT
bqT (OT )
todoQ

7
Curso sobre Tecnologías del Habla José B. Mariño Acebal

Algoritmo “adelante / atrás”

!Probabilidades hacia adelante


S1 αt(i) = P(O1 O2 ... Ot , qt = Si / λ )
S2
Inicio: α1 (i ) = πi b i (O1 )
Sj
.. Inducción:
.
Coste computacional
αt+1 ( j) = ∑ αt (i)a ij b j (Ot +1 )
N

 i=1 
SN
t N2 T t+1
N
αt(i) αt+1(j) Final: P(O / λ ) = ∑ α T (i )
i =1

Algoritmo “adelante / atrás”

!Probabilidades hacia atrás


S1
βt(i) = P(Ot+1 Ot+2 ... OT / qt = Si , λ )
S2
Si
.. Inicio: β T (i ) = 1
. Inducción:
SN N
βt (i) = ∑ a ijb j (Ot+1 )βt+1 ( j)
t t+1 j=1
βt(i) βt+1(j)

8
Curso sobre Tecnologías del Habla José B. Mariño Acebal

Algoritmo de Baum-Welch

!Estimación de los parámetros (I)

ξt(i,j) = P(qt = Si, qt+1 = Sj / O, λ ) =


Si Sj = P(qt = Si, qt+1 = Sj, O / λ ) /
.. ..
. P(O/λ) =
. = αt(i) aij bj(Ot+1) βt+1(j) / P(O/λ)
αt(i) βt+1(j)
N
t-1 t t+1 t+2 γ t (i ) = P(q t = Si / O, λ ) = ∑ ξ t (i, j)
j=1

Algoritmo de Baum-Welch

!Estimación de los parámetros (II)


probabilidad de comenzar γ1 (i )
πi
en el estado i-ésimo T −1
∑ ξ t (i, j)
aij transiciones del estado Si al Sj / t =1
T −1
transiciones desde el estado Si ∑ γ t (i )
t =1
T

observaciones de vk en el estado Sj / ∑ γ t (Ot =vk ) ( j)


t =1
bj(k) permanencias en el estado Sj T
∑ γ t ( j)
t =1

9
Curso sobre Tecnologías del Habla José B. Mariño Acebal

Algoritmo de Baum-Welch

!Estimación de los parámetros (III)


x, p, hmm0

• Determinación de Cálculo α y β
un modelo inicial
• Escalado de las Estimación HMM
probabilidades
NO SI
? hmm

Algoritmo de Viterbi

Estado
3
2
1
1 2 T trama

Inicialización δ1(i) = πi bi(O1)


ψ1(i) = 0 1≤i≤N

10
Curso sobre Tecnologías del Habla José B. Mariño Acebal

Algoritmo de Viterbi

Estado
3
aij δ (j)
t
2
1
1 2 δt-1(i) T trama

Recursión δt(j) = max [δt-1(i) aij] bj(Ot) 2 ≤ t ≤ T


1≤i≤N

ψt(j) = arg max [δt-1(i) aij] 1≤j≤N


1≤i≤N

Algoritmo de Viterbi

Estado
3
2
1
1 2 T trama
Secuencia P* = max [δT(i)]
1≤i≤N

qT*=arg max [δT(i)]


1≤i≤N

qt* = ψt+1( qt+1*) t = T-1, T-2, ...1

11
Curso sobre Tecnologías del Habla José B. Mariño Acebal

Algoritmo de Viterbi

Inicialización δ1(i) = πi bi(O1)


ψ1(i) = 0 1≤i≤N

Recursión δt(j) = max [δt-1(i) aij] bj(Ot) 2 ≤ t ≤ T


1≤i≤N

ψt(j) = arg max [δt-1(i) aij] 1≤j≤N


1≤i≤N

Secuencia P* = max [δT(i)]


1≤i≤N

qT*=arg max [δT(i)]


1≤i≤N

qt* = ψt+1( qt+1*) t = T-1, T-2, ...1

Algoritmo de Viterbi

!Estimación de los modelos x, f, hmm0

Segmentación

Estimación HMM

NO hmm
?
SI

[l] [a] [T] [e] [r] [a]


< La > < cera >

12
Curso sobre Tecnologías del Habla José B. Mariño Acebal

Tipos de modelos

'Discretos: Las observaciones han pasado por


un VQ
bj(Ot) = Pj(Et) Pj(Ct) Pj(∆Ct)
'Semicontinuos: Cada observación es una
combinación de gaussianas
bj(Ot) = ΣcjkN(O,µk,Σk)
'Continuos: Idem dependiente del estado
bj(Ot) = ΣcjkN(O,µjk,Σjk)

Entrenamiento discriminativo

!Motivación
'El entrenamiento que optimiza la verosimilitud
no está orientado directamente a realizar la
mejor clasificación.
'Interesa un entrenamiento que minimice los
errores de reconocimiento.

13
Curso sobre Tecnologías del Habla José B. Mariño Acebal

Entrenamiento discriminativo

!Entrenamiento correctivo
wj
On Palabras wk
aisladas p(On/wk) > max p(On/wi)
i≠k

• Se produce un error si k ≠ j
Corrección:
• En este caso
p(Osen/w
corrigen
j,Θj
n+1) =las
p(Oprobabilidades
n/w ,Θ n) + ∆
j j
de
emisión dep(O
n /wk,Θk ) = p(O /wk,Θk ) - ∆
símbolo
n+1 n n

Entrenamiento discriminativo

!Entrenamiento correctivo

Ilustración del funcionamiento


+∆ +∆ +∆ +∆
a reconocer p e l o
reconocido p e s o
-∆ -∆ -∆ -∆

14
Curso sobre Tecnologías del Habla José B. Mariño Acebal

Entrenamiento discriminativo

!Entrenamiento correctivo
'Su eficacia depende de la medida en que el
entrenamiento sea significativo del test.
'No está garantizada la convergencia.
'Dado de que aprende de los errores de
reconocimiento, requiere mayores bases de
datos que el entrenamiento que optimiza la
verosimilitud.

Entrenamiento discriminativo

!Minimización del error de clasificación


wj
On Palabras wk p(On/wk) > max p(On/wi)
i≠k
aisladas
error si j ≠ k

• Se minimiza
U =laΣΣfunción
e (On) que
1(Oda
n ∈cuenta
wk) de los
n k k
errores de clasificación. n
0 si p(O /wk) > max p(On/wi)
ek(O ) =
n i≠k
1 en otro caso

15
Curso sobre Tecnologías del Habla José B. Mariño Acebal

Entrenamiento discriminativo

!Minimización mediante el gradiente


U = ΣΣ ek(On) 1(On ∈ wk)
n k

U Búsqueda del gradiente


1
dk(On) = -log p(On/wk ) + log
V-1
Σ p(On/wi )η 1/η
CC ≠=k=CCnn--αα ∇U
i
n+1
n+1
nn n
1 ∇U
ek(On) = nn
- γ dk(O )
1+e
C

Verificación

!Medición de la confianza en la certeza de


un reconocimiento
Ha de basarse en parámetros cuyo valor esté
fuertemente correlado con la corrección (H0) o
incorrección (H1) del reconocimiento.
p test:
- +
x>U H0
H1 H0
x<U H1
x

16
Curso sobre Tecnologías del Habla José B. Mariño Acebal

Verificación

!Medidas de confianza
'probabilidad
Pd del reconocimiento
“word spotting”
'probabilidad a Probabilidad
posteriori
a posteriori
voz p(w,O)
Reconocedor
voz p(w,O) p(w/O)
Reconocedor
O /
Probabilidad
Alternativa: del reconocimientop(w/O)
O /
red de fonemas p(O)
Alternativa:
red de fonemas p(O) fa

Verificación

!Medidas de confianza
'Verosimilitud: H0 es representada por el reconocedor
H1 es representada por antimodelos

voz p(O/w) antimodelo


Reconocedor Modelo entrenado
v(w) con señal que
O, w / el modelo ha
Alternativa: reconocido
antimodelos p(O/w) erróneamente

17
Curso sobre Tecnologías del Habla José B. Mariño Acebal

Verificación

!Medidas de confianza
'Fiabilidad del entrenamiento
'Coincidencia entre el reconocedor y la
alternativa
'La persistencia en las N mejores hipótesis
'La probabilidad del modelo del lenguaje
'Composición de medidas sencillas

Verificación

!Aplicación de la verificación
'postprocesado de la salida de un reconocedor
de palabras aisladas o del “word spotting” para
eliminar falsas alarmas.
'en sistemas de comprensión del habla (para
diálogo, por ejemplo) para basar la
interpretación en aquellas palabras cuyo
reconocimiento sea más fiable o solicitar
confirmación.

18
Curso sobre Tecnologías del Habla José B. Mariño Acebal

Lecturas

!L.R. Rabiner, “A tutorial on hidden


Markov models and selected applications
in speech recognition”, Proc. IEEE (feb.
89).

19

También podría gustarte