Download - Modelo del Lenguaje. N-gramas
Modelo del Lenguaje. N-gramas.
Introducción a las Tecnologías del Habla
2o cuatrimestre 2014 – Agustín Gravano
Predicción de palabras
Las acciones se ...
Predicción de palabras
Las acciones se derrumbaron esta ...
Predicción de palabras
Las acciones se derrumbaron esta mañana, pese a la baja en las tasas de ...
Predicción de palabras
Las acciones se derrumbaron esta mañana, pese a la baja en las tasas de interés por parte de la Reserva ...
Predicción de palabras
Las acciones se derrumbaron esta mañana, pese a la baja en las tasas de interés por parte de la Reserva Federal, mientras Wall ...
Predicción de palabras
Las acciones se derrumbaron esta mañana, pese a la baja en las tasas de interés por parte de la Reserva Federal, mientras Wall Street volvió a operar por primera ...
Predicción de palabras
Las acciones se derrumbaron esta mañana, pese a la baja en las tasas de interés por parte de la Reserva Federal, mientras Wall Street volvió a operar por primera vez desde los ataques ...
Predicción de palabras
Las acciones se derrumbaron esta mañana, pese a la baja en las tasas de interés por parte de la Reserva Federal, mientras Wall Street volvió a operar por primera vez desde los ataques terroristas del ...
Predicción de palabras
Las acciones se derrumbaron esta mañana, pese a la baja en las tasas de interés por parte de la Reserva Federal, mientras Wall Street volvió a operar por primera vez desde los ataques terroristas del martes pasado.
Predicción de palabras
● En alguna medida, es posible predecir palabras futuras en una oración.
● ¿Cómo?
– Conocimiento del dominio.● baja en las tasas de interés
– Conocimiento sintáctico.● el <sustantivo>, se <verbo>
– Conocimiento léxico.● ataques terroristas, Reserva Federal
Predicción de palabras
● Parte del conocimiento necesario para predecir las palabras puede ser capturado usando técnicas estadísticas simples.
● En particular, nos interesa la noción de probabilidad de una secuencia de palabras.
Aplicaciones
● ¿Para qué queremos saber la probabilidad de una palabra, dadas las anteriores?
● Estimar la probabilidad de una solución candidata.
– Reconocimiento del habla:● el banco central anunció la emisión de nuevas
monedas de cincuenta centauros
– Traducción automática:● the doctor recommended a cat scan● el doctor recomendó una exploración del gato
● Usar las N–1 palabras anteriores para predecir la siguiente palabra.
● Modelo del Lenguaje (LM)– Unigramas, bigramas, trigramas,…
● ¿Cómo se entrenan estos modelos?– Cuerpos de datos muy grandes: diarios, blogs, etc.
N-gramas
● Ejemplo:
– P(interés | baja en las tasas de) =
#(baja en las tasas de interés)
#(baja en las tasas de)
– Podríamos usar Google para estimar las cantidades...
– P(interés | baja en las tasas de) = 296.000 / 323.000
= 0,9164
N-gramas
N-gramas
● ¿Cómo estimamos la probabilidad de una oración?
– P(baja en las tasas de interés) =
#(baja en las tasas de interés) #(oraciones de 6 palabras)
– Problema #1● Cuanto más larga la oración, menores las chances de
que aparezca en el corpus. (# = 0)
– Problema #2● ¿Cómo estimar #(oraciones de 6 palabras)?
??
N-gramas
● ¿Cómo estimamos la probabilidad de una oración?
P(A ∧ B) = P(A | B) • P(B) (regla de la cadena)
– Ejemplo:
P(baja en las tasas de interés) =P(baja) • P(en | baja) • P(las | baja en) • P(las | baja en las) • … • P(interés | baja en las tasas de)
P (w1m)=P (w1)P (w2∣w1)P (w3∣w1
2) ...P (wm∣w1m−1)
=∏k=1
m
P (w k∣w1k−1)
● Suposición de Markov:
– La probabilidad de una palabra depende solamente de las N – 1 palabras anteriores (N-grama).
– N=2: bigrama
P(interés | baja en las tasas de) ≈ P(interés | de)
– N=3: trigrama
P(interés | baja en las tasas de) ≈ P(interés | tasas de)
N-gramas
P (wm∣w1m−1)≈P (wm∣wm−N+ 1
m−1 )
P (wm∣w1m−1)≈P (wm∣wm−1)
P (wm∣w1m−1)≈P (wm∣wm−2
m−1)
N-gramas
● Estimar la probabilidad de la oración:
– I want to eat Chinese food.● P(I want to eat Chinese food) =
P(I | <start>) P(want | I) P(to | want) P(eat | to) P(Chinese | eat) P(food | Chinese) P(<end>|food)
● ¿Qué necesitamos para estos cálculos?
– Probabilidad P(wm|w m-1) para cada par de palabras.
– Pre-calculadas de un corpus grande.
Bigramas del BERP Corpus
● BERP (Berkeley Restaurant Project)– Consultas de usuarios a un sistema de diálogo hablado.
– P(want | I) = #(I want) / #(I) = 1087 / 3437 = 0.32
0100004lunch
000017019food
112000002Chinese
522190200eat
12038601003to
686078603want
00013010878I
lunchfoodChineseeattowantI
Bigramas del BERP Corpus
¿Qué cosas captura este modelo?
● P(want | I) = .32 ● P(to | want) = .65● P(eat | to) = .26 ● P(food | Chinese) = .56● P(lunch | eat) = .055● P(I | I) = .0023 I I I I want ● P(I | want) = .0025 I want I want● P(I | food) = .013 the kind of food I want is...
Smoothing (suavizado)
0100004Lunch
000017019Food
112000002Chinese
522190200Eat
12038601003To
686078603Want
00013010878I
lunchFoodChineseEatToWantI
Todo corpus es limitado. Es inevitable que N-gramas válidos (aunque improbables) queden con probabilidad 0 en nuestro modelo del lenguaje.
Técnicas de smoothing: Laplace Smoothing, Good-Turing Discounting
Backoff
● Otro enfoque para evitar el problema de N-gramas con baja frecuencia.
●
● No tenemos instancias de
● En lugar de concluir Prob = 0, hacemos backoff a (N–1)-gramas:
P wn∣wn−2wn−1=?
wn−2wn−1wn
P wn∣wn−2wn−1≈P wn∣wn−1
Resumen de N-gramas
● Es posible capturar las probabilidades de secuencias de palabras mediante técnicas estadísticas simples.
● Suposición de Markov:
–
● Técnicas de smoothing y backoff para lidiar con problemas de N-gramas con baja frecuencia.
● Modelos del lenguaje para elegir las soluciones candidatas más probables en múltiples aplicaciones.– Reconocimiento del habla, traducción automática.
– Front-end TTS: tokenización, expansión de abreviaturas.
P wn∣w1n−1≈P wn∣wn−N1
n−1