MODELOS DE LENGUAJES Flashcards

1
Q

¿Qué son los n-gramas? ¿Para qué sirven?

A

Son una pieza fundamental de casi todas las aplicaciones de minería de textos.
• Normalmente, una aplicación de lenguaje natural funciona bien si su solución está construida en base a n-grams.
• No son muy caro de computar, si es necesario tener una buena cantidad de memoria para n muy grandes.
• Por convención: n=1 son unigramas; n=2 son bigramas; n=3 trigramas; n=4 tetragramas i cuadrigramas; n=5 pentagramas; etc.

• Los n-gramas nos proveen un método para, por ejemplo, predecir la palabra que sigue

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Idea base de los N-Grams

A

calcular la probabilidad de la próxima palabra puede ser aproximado mediante la probabilidad de la siguiente palabra.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

• La idea de los modelos del lenguaje es que:

A

– Los N-gramas pueden ser utilizados para estimar la probabilidad condicional de las “palabras que vienen”.
– Aplicando esto a toda la oración, podemos estimar la probabilidad conjunta de toda la frase.

• Ya sea estimando la probabilidad de “la palabra que viene” o la probabilidad de “una oración”, los N-gramas es una de las herramientas más importantes para procesar el lenguaje natural.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Ngrams discernir ruido y ambigüedad:

A

– Nos pueden ayudar a distinguir que hay traducciones más probables que otras: “briefed reporters” es más plausible que “briefed to reporters”, o que “main contents” es más factible que “chief contents”.
• También nos puede ayudar en la corrección de ortografía, aún cuando los errores corresponden a palabras que realmente existen en el idioma.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Probabilidades de los Ngramas

A

• Lasprobabilidadessebasanencontarlascosas, e.g., palabras.
• En NLP (PLN en español), el “contar” se basa en una colección de textos (a.k.a., corpus, pl. corpora).
– Normalmente, palabras.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

utterance

A

• En la jerga NLP, utilizamos la palabra en inglés “utterance” para referirnos a la frase hablada de una oración.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Ngrams- tokens

A
  • En resumen, contar palabras requiere llevar a cabo varios pasos: tokenización, normalización, etc.
  • Se le llama “tokens” al número de palabras en un corpus, considerando repeticiones.
  • Se le llama tipos, al vocabulario V, de todas las palabras sin considerar repeticiones.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

N-gramas Simples

A
  • Se le llama a n-gramas simples a los que se utilizan sin suavizamiento (en inglés “smoothing”).
  • La idea es calcular la probabilidad P(w|h) de una palabra w dado alguna historia h.
  • La regla de la cadena muestra el vínculo entre calcular la probabilidad conjunta de una secuencia y calcular la probabilidad condicional de una palabra dado las palabras previas.
  • Podemos obtener la probabilidad conjunta de una secuencia entera de palabras multiplicando un número de probabilidades condicionales.
  • Pero la regla de la cadena no nos ayuda mucho, no tenemos la forma exacta de calcular la probabilidad de una palabra dado una secuencia larga de palabras P(wn|wn-11).
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

• ¿Cómo se estiman esas probabilidades de Ngrams simples?

A

• Con los estimadores de máxima verosimilitud o MLE. Los cuales se obtienen contando desde el corpus, y normalizándolos para que queden entre 0 y 1.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

frecuencia relativa.

A

Es un ratio, Para el caso general tenemos:

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Evaluación de N-gramas: Perplexity

A

• La idea intuitiva detrás de Perplexity es que dado dos modelos probabilísticos, el mejor modelo es el cual que se ajusta mejor a los detalles de los datos de prueba.
• Podemos medir una mejor predicción mirando a la probabilidad que el modelo le otorga a los datos de prueba.
– Un mejor modelo va a asignar probabilidades más altas a los datos de prueba.

• La mejor forma de evaluar un modelo de n- gramas es “in vivo”, pero eso no es siempre posible.
– Hacer pruebas extensas es muy caro.
• Aunque una mejora en Perplexity no necesariamente involucra una mejora en el rendimiento, frecuentemente están correlacionadas.
– Normalmente, cuando se nota una mejora en Perplexity, se procede a una evaluación más exhaustiva.

• Entre más alta la probabilidad de una secuencia de palabras, más baja es su Perplexity.
– Minimizar la Perplexity equivale a maximizar la probabilidad en el conjunto de prueba de acuerdo al LM.
• Nótese que esto involucra agregar los saltos de líneas respectivos.
• Una forma más intuitiva de pensar lo que es la Perplexity de un idioma sería el factor de ramificación promedio balanceado.
– Por ejemplo tenemos 10 dígitos, después de una secuencia de digitos, para el próximo número tenemos 10 alternativas. Por ende, la probabilidad es 1/10.
– Si imaginamos que uno de los números es más frecuentes que el resto, la perplexity va a ser más baja, dado que la mayoría de las veces el próximo número va a ser cero.

  • En general, Perplexity disminuye cuando se consideran n-gramas más largos.
  • Nótese que dos LMs pueden ser comparados en base a Perplexity si utilizan el mismo vocabulario.
  • El modelo debe ser construido sin información del conjunto de prueba.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

OOV

A

– Las palabras que aparecen en las oraciones de prueba y no en el conjunto de entrenamiento se llaman “desconocidas” o “fuera de vocabulario” (OOV del inglés “Out of Vocabulary”).
• El porcentaje de OOV que aparece en el conjunto de prueba se denomina la tasa OOV.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Vocabulario Cerrado

A

– Vocabulario cerrado es cuando sabemos el diccionario completo, es decir, sabemos que en las oraciones de prueba no van a venir palabras que no son vistas en el conjunto de entrenamiento.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Vocabulario Abierto

A

• Un vocabulario abierto es cuando modelamos estas potenciales palabras desconocidas. Con este objetivo agregamos la pseudo-palabra “”.
• Se puede entrenar un modelo de tres formas:
– Escoger un vocabulario fijo de ante-mano.
– Convertir cualquier palabra que no está en el vocabulario fijo a “”.
– Estimar los modelos como si “” fuera cualquier otra palabra.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Smoothing

A

• La tarea de analizar n-gramas de frecuencia cero o de muy baja frecuencia y asignarle un valor más conveniente se llama suavizamiento.
• Hay variados métodos:
– Laplace (Add-One) Smoothing – Good-Turing Discounting
– Witten-Bell Discounting

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

add-One Smoothing /LAPLACE

A

• Una manera simple de solucionar el problema es agregar 1 en todas las celdas que son ceros en la matriz de bigramas. Después normalizar.
• Para incorporar este método hay que ajustar las frecuencias:
– Agregar 1 a cada cuenta, y multiplicar por un factor de normalización N/(N+V).
– Dado que estamos agregando 1 por cada palabra, es necesario aumentar el número de tokens (N) por el tamaño del vocabulario V.
• Una forma alternativa de ver un algoritmo de suavizamiento es como el “descuento” de “masa de probabilidad” a los no-ceros, para repartirlos en los ceros.
– Por esto, se habla de factor de descuento dc en vez de cuenta de frecuencias ajustadas.

17
Q

Problema de smoothing lapalce

A

• El gran problema del suavizamiento de Laplace es que mucha “masa de probabilidad” es desplazada hacia los eventos que tienen frecuencia cero.

18
Q

Good-Turing Smoothing

A

• La idea es utilizar la cuenta de las cosas que has visto una vez para estimar la cuenta de las cosas que no has visto.
• Se estima la probabilidad asignada a los n-gramas que no han sido vistos mirando el número de n- gramas que han sido vistos una sola vez.
• Los eventos que ocurren una sola vez son llamados singleton o “hapax legomenon”.
• En otras palabras la idea es utilizar la frecuencia de los singletons para re-estimar los bigramas de ocurrencia zero.
• Esta estrategia asume que la distribución de cada bigrama es binomial, y asume que sabemos N0 (el número de bigramas que no hemos visto).
– Esto se sabe porque conocemos el tamaño del diccionario, por ende el número de bigramas es V2, por ende los que no se han visto con V2-los visto.

• Se tratan los n-gramas de baja frecuencia como si no hubieran sido vistos.

19
Q

Witten-Bell Smoothing

A
  • La idea es pensar: “los unigramas que no han sido vistos aún, cuando sean vistos por primeras vez, van a ser iguales que los que tienen frecuencia uno”.
  • Por ende, asumirlos todo como vistos una única vez.

• Para el caso de bigramas: “En vez de preguntarnos cuál es la probabilidad de un nuevo bigrama, podemos preguntarnos cuál es la probabilidad de encontrar un nuevo bigrama que comienza con una palabra wk”
– T(wi-1) es el número de palabras diferentes que ocurren a la derecha de wi-1.
– N(wi-1) es el número de palabras que ocurren a la derecha de wi-1.
– Z(wi-1) es el número de bigramas en el set de datos que comienzan con wi-1 que no aparecen en el conjunto de entrenamiento Z(w)=V-T(w).
• Es decir los que deberían aparecer por combinaciones de palabras en el vocabulario V.

• Es más conservador al substraer “masa de probabilidad”.
• Provee mejor estimaciones. No funciona bien con conjuntos de entrenamiento pequeños.
• El problema que tiene es ¿Qué se hace cuando wi ni wi- 1 aparecen en los datos de entrenamiento?
– la probabilidad sigue siendo cero.

20
Q

Interpolación vs Backoff:

A

Interpolacion: siempre se mezcla la evidencia de n-gramas de diferentes largos.

Backoff:
Si tenemos una cuenta cero para un trigrama, se utiliza sólo otros trigramas para estimar la probabilidad. Sólo se “baja” en la jerarquía cuando hay cero evidencia para un n-grama.

  • En backoff, si el n-grama que necesitamos tiene cuenta cero, se aproxima utilizando como respaldo los N-1 gramas anteriores hasta que encontramos un respaldo.
  • Normalmente, backoff se asocia con el método de Katz:
21
Q

Interpolación Lineal

A

• Las probabilidades se combinan mediante un
factor lambda:
• Los s se calculan mediante un corpus de validación.
– No se utiliza ni para entrenar ni para probar, sino sólo para estimar parámetros.
• Se utiliza el algoritmo EM, que converge a un
óptimo local.

22
Q

Back-off

A

• En backoff, si el n-grama que necesitamos tiene cuenta cero, se aproxima utilizando como respaldo los N-1 gramas anteriores hasta que encontramos un respaldo.

  • Utiliza P*, es decir se usa la probabilidad suavizada cuando la no ajustada es diferente a cero.
  • Sino, se respalda recursivamente por la historia del N-1-grama. Es decir acorta la historia.

• El método de Katz asume que se está utilizando un método de suavizamiento, e.g., Good-Turing.
– Se cree que Katz backoff es mucho mejor que Good- Turing y los métodos anteriores.
• Nos entrega una mejor de distribuir la masa de probabilidad entre los trigramas no vistos confiando en la información de los bigramas y trigramas vistos.
• El suavizamiento nos ayuda a definir cuanta masa de probabilidad se deja a un lado para los eventos no-visto, y backoff nos dice como distribuirla.

23
Q

Absolute Discounting

A
  • Substrae una cantidad fija d de cada cuenta de frecuencia.
  • La idea es que ya se tiene buenas estimaciones para las palabras que ocurren frecuentemente, entonces, si se les quita un poco no les va a afectar.
  • Principalmente modifica las cuentas pequeñas.
  • Involucra la interpolación de modelos de alto y bajo orden mediante la substracción de una cantidad D a cada cuenta que no es cero.
24
Q

Interpolated Kneser-Ney

A
  • Es uno de los métodos más utilizados.
  • Extiende Absolute discounting.
  • Considere la siguiente oración, y que estamos respaldando (back-off) recursivamente a través de un modelo de unigrama.

• Lo que buscamos es una heurística que estime con más precisión el número de veces que esperamos ver la palabra w en un nuevo contexto no visto antes.
• La idea de Kneser-Ney se basa en el principio que esto se puede lograr mirando el número de diferentes contexto en los cuales la palabra ha aparecido.
– Palabras que han aparecido en muchos contextos están más susceptibles a aparecer en nuevos contextos.
• Esta probabilidad se llama “probabilidad de continuación”:

• En la práctica, se ha mostrado que la versión interpolada de Kneser-Ney tiene mejor desempeño que la versión backoff.

25
Q

N-gramas Basados en la Clase

A

• Es útil para lidiar con “data-sparseness”.
• Este tipo de estrategia se le llama IBM clustering,
• El modelo aproxima la probabilidad condicional de una palabra wi multiplicando dos factores:
– La probabilidad de la clase ci dado las clases de las palabras anteriores.
– La probabilidad de wi dado ci.

  • Categorías sintácticas no funcionan tan bien como las clases de entidades.
  • Las probabilidades se estiman, en el modelo simple,