Adaptación de skip-gramas a modelos conexionistas del lenguaje

35
Adaptaci´ on de skip-gramas a modelos conexionistas del lenguaje Adri´ an Palacios Corella Universitat Polit` ecnica de Val` encia 26 de septiembre de 2014 1 de 34

description

The presentation for my Master's Degree Final Project.

Transcript of Adaptación de skip-gramas a modelos conexionistas del lenguaje

Page 1: Adaptación de skip-gramas a modelos conexionistas del lenguaje

Adaptacion de skip-gramas amodelos conexionistas del lenguaje

Adrian Palacios Corella

Universitat Politecnica de Valencia

26 de septiembre de 2014

1 de 34

Page 2: Adaptación de skip-gramas a modelos conexionistas del lenguaje

Motivacion

• El objetivo del Modelado de Lenguaje es estimar, a partir de datos,la probabilidad a priori de secuencias de palabras de un lenguajenatural.

• Los modelos de n-gramas estiman la probabilidad de una palabradadas la n − 1 anteriores. Estos modelos, estimados por conteo,obtienen unos resultados destacables, aunque requieren el uso detecnicas de suavizado para tratar con la dispersion de datos.

• Los modelos de n-gramas basados en redes neuronales (NN LMs)realizan el suavizado de manera inherente, aunque en la practicanecesitan otras mejoras para incrementar su eficiencia.

• Estos modelos pueden beneficiarse por el uso de tecnicas deskip-gramas, basadas en descartar partes de la historia de losn-gramas.

2 de 34

Page 3: Adaptación de skip-gramas a modelos conexionistas del lenguaje

Objetivos

Pretendemos adaptar las tecnicas de skip-gramas a los modelosconexionistas del lenguaje. Nuestros objetivos son:

• Elaborar un diseno eficiente.• Confeccionar un diseno extensible.• Estudiar el efecto del uso de las tecnicas de skip-gramas en

NN LMs sobre sus resultados.• Considerar otros beneficios del uso de estas tecnicas.

3 de 34

Page 4: Adaptación de skip-gramas a modelos conexionistas del lenguaje

El toolkit APRIL

La implementacion de las estructuras y algoritmos necesarios para esteestudio se realizara sobre APRIL [Zamora-Martınez et al., 2013], unaherramienta software desarrollada por nuestro grupo de investigacion.

APRIL utiliza los lenguajes de programacion C++ y Lua (un lenguajede scripting), e incorpora un conjunto de utilidades para diversasaplicaciones del reconocimiento de formas.

Ademas, APRIL es un software de codigo abierto, cuyo repositorio seencuentra en GitHub (https://github.com/pakozm/april-ann) yesta en activo desarrollo.

4 de 34

Page 5: Adaptación de skip-gramas a modelos conexionistas del lenguaje

Queremos predecir la probabilidad de la palabra “pizza” en lasiguiente frase con diferentes modelos:

The little boy likes pizza

Modelo de n-gramas:

The little boy likes ?

Modelo de skip-gramas:

The X boy likes ?

Modelo de Skipping NN LMs:

The 〈none〉 boy likes ?

5 de 34

Page 6: Adaptación de skip-gramas a modelos conexionistas del lenguaje

Modelos de n-gramas y skip-gramas

Estimacion de n-gramas por conteo:

P(wi | wi−n+1, . . . , wi−1) =C(wi−n+1, . . . , wi−1, wi)

C(wi−n+1, . . . , wi−1)

En skip-gramas, se omiten una o mas palabras del contexto al realizarel conteo, para estimar distribuciones como P(wi | wi−4, wi−3, wi−1) oP(wi | wi−4, wi−2, wi−1).

Ejemplo:• Contexto: “The little boy likes”• Mascara de skips: 0101 (10).• Resultado: “The 〈none〉 boy 〈none〉”

6 de 34

Page 7: Adaptación de skip-gramas a modelos conexionistas del lenguaje

Arquitectura de NN LMs

. . .

. . .. . .

0

0

1

0

.

.

.

0

0

10.

.

.

0

1

0

0

0

.

.

.. . .

. . .

. . .

7 de 34

Page 8: Adaptación de skip-gramas a modelos conexionistas del lenguaje

Ventajas e inconvenientes de los NN LMs

El impacto de la dispersion de datos se reduce drasticamente en losNN LMs por dos razones:• La codificacion distribuida de las palabras, consecuencia de la

proyeccion de palabras en un espacio continuo.• La interpolacion que las redes neuronales realizan ante secuencias

de entrada desconocidas.

No obstante, la funcion de activacion softmax en la ultima capa de lared obliga a calcular todas las salidas de la red para obtener eltermino de normalizacion de la funcion.

Las tablas de constantes de normalizacion softmax evitan quetengamos que calcularlas en fase de evaluacion.

8 de 34

Page 9: Adaptación de skip-gramas a modelos conexionistas del lenguaje

Diseno orientado a consultas masivas

Nuestro diseno esta orientado a la realizacion de consultas en modo“bunch” (varias consultas de forma simultanea).

Dos clases para representar los modelos de lenguaje: Modelo eInterfaz. En este diseno:

• El Modelo representa las propiedades del modelo de lenguaje.• La Interfaz se compone de los metodos y estructuras para realizar

consultas.• Ambas clases se coordinan para la ejecucion de consultas de forma

eficiente.

9 de 34

Page 10: Adaptación de skip-gramas a modelos conexionistas del lenguaje

Estructuras de datos para modelos de lenguaje

Estructuras, formatos y clases para modelos de lenguaje:

• Estructura KeyScoreBurdenTuple.• Estructura KeyScoreMultipleBurdenTuple.• Trie de palabras.• El formato Lira.• Tabla hash.• La clase Token.• La clase FunctionInterface.

10 de 34

Page 11: Adaptación de skip-gramas a modelos conexionistas del lenguaje

Jerarquıa de clases

LMModel

HistoryBasedLM

BunchHashedLM

BunchHashedNgramLiraLM

HistoryBasedNgramLiraLM

FeatureBasedLM

NNLM

LMInterface

HistoryBasedLMInterface

BunchHashedLMInterface

BunchHashedNgramLiraLMInterface

HistoryBasedNgramLiraLMInterface

FeatureBasedLMInterface

NNLMInterface

11 de 34

Page 12: Adaptación de skip-gramas a modelos conexionistas del lenguaje

La clase HistoryBasedLMInterfaceLa clase HistoryBasedLMInterface representa la interfaz de unmodelo de lenguaje basado en la historia reciente.Esta clase utiliza un trie de palabras como estructura auxiliar:

Figure : Trie de palabras creado a partir de los n-gramas {a,gc,ga,d}[Zamora-Martınez, 2012].

12 de 34

Page 13: Adaptación de skip-gramas a modelos conexionistas del lenguaje

La clase BunchHashedLMInterfaceLa clase BunchHashedLMInterface representa la interfaz de unmodelo de lenguaje capaz de realizar consultas en modo “bunch”.Esta clase utiliza tablas hash como estructura auxiliar:

Claves de contexto Palabras

Palabras

Palabras

Estructura KeyScoreMultipleBurdenTuple

Clavedestino Score Lista Burdens

Datos conocidos despuésde ejecutar las consultas

Datos conocidos antes de ejecutar las consultas

The little boy

A really nice

Roses are not

likes

serves

goes

does

blue

red

view

dinner

bass

13 de 34

Page 14: Adaptación de skip-gramas a modelos conexionistas del lenguaje

Herramientas para la manipulacion de datos

Herramientas disponibles en APRIL para la representacion ymodificacion de datos:

• Dados.• Tokens.• Filtros.

14 de 34

Page 15: Adaptación de skip-gramas a modelos conexionistas del lenguaje

Adaptacion para los algoritmos de NN LMs

La adaptacion tiene lugar en tres pasos del algoritmo:

• Modificacion probabilıstica de patrones.• Generacion de tablas de constantes softmax.• Skipping NN LMs en jerarquıas de modelos.

15 de 34

Page 16: Adaptación de skip-gramas a modelos conexionistas del lenguaje

Modificacion de patrones

Los patrones de entrada son modificados despues de pasar por unfiltro “skip”:

Skip

Input token Output token

16 de 34

Page 17: Adaptación de skip-gramas a modelos conexionistas del lenguaje

Generacion de tablas softmax

Las tablas de constantes de normalizacion softmax evitan quetengamos que calcularlas en fase de evaluacion.

Si no se encuentra una constante en la tabla, dos alternativas:• Calcular la constante al vuelo (on-the-fly).• Retroceder a un modelo de menor orden (back-off ).

17 de 34

Page 18: Adaptación de skip-gramas a modelos conexionistas del lenguaje

Jerarquıas de NN LMs

En las jerarquıas de NN LMs:• Se entrena un NN LM por cada orden.• Se genera una tabla de constantes para cada

NN LM.• Se retrocede a modelos de menor orden si las

constantes no se encuentran.• El modelo de bigramas calcula las constantes

al vuelo si no las encuentra en su tabla.

NNLMOrder=5

NNLMOrder=4

NNLMOrder=3

NNLMOrder=2on-the-fly=true

Pattern

Smoothed NNLM

18 de 34

Page 19: Adaptación de skip-gramas a modelos conexionistas del lenguaje

Jerarquıas de Skipping NN LMs

En las jerarquıas de Skipping NN LMs:• Se entrena un unico NN LM de orden

maximo.• Se generan varias tablas de constantes, tantas

como NN LMs queramos emular.• Se retrocede insertando 〈none〉 por la

izquierda del contexto, usando el SkippingNN LMs con la tabla correspondiente.

SNNLMOrder=5

Order=5

Order=5

Order=5

Pattern

Smoothed NNLM

Skip mask=0

Skip mask=1

Skip mask=3

Skip mask=7

SNNLM

SNNLM

SNNLM

19 de 34

Page 20: Adaptación de skip-gramas a modelos conexionistas del lenguaje

Experimentacion

Las medidas de evaluacion para la experimentacion:• Perplejidad (PPL).• BLEU.• TER.

En total, tres fases de experimentacion:• 1a fase: Variacion de la PPL en Skipping NN LMs.• 2a fase: Emulacion de modelos de orden inferior con Skipping

NN LMs.• 3a fase: Rescoring de listas nbest.

20 de 34

Page 21: Adaptación de skip-gramas a modelos conexionistas del lenguaje

1a fase: Variacion de la PPL en Skipping NN LMsEl corpus LIBW, compuesto por los corpus:• El corpus LOB.• El corpus IAM-DB.• El corpus Brown.• El corpus Wellington.

Corpora # lines # words % OOV wordsLOB + IAM training 174K 2.3M –Brown 114K 1.1M –Wellington 114K 1.1M –Total 402K 4.5M –IAM Validation 920 8762 3.18 %IAM Test 2781 25424 2.86 %

21 de 34

Page 22: Adaptación de skip-gramas a modelos conexionistas del lenguaje

1a fase: Variacion de la PPL en Skipping NN LMs• Entrenamiento de NN LMs y Skipping NN LMs con:◦ Algoritmo Backpropagation.◦ Funcion de red: Entropıa cruzada con regularizacion L2.◦ Capa de proyeccion de 256 neuronas y capa oculta de 200 neuronas.

• La entrada de los Skipping NN LMs se altera siguiendo ladistribucion:

# skips bigram trigram 4-gram 5-gram0 50% 50% 50% 50%1 50% 33% 27% 24%2 – 16% 13% 12%3 – – 9% 8%4 – – – 6%

• Evaluacion de la PPL en Skipping NN LMs para cada una de las2n−1 combinaciones de mascaras de skips.

22 de 34

Page 23: Adaptación de skip-gramas a modelos conexionistas del lenguaje

1a fase: Variacion de la PPL en Skipping NN LMs

300

400

500

600

700

800 900

1000

0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15

Perp

lexit

y

Skipping mask

Skipping modelNon-skipping model

300

400

500

600

700

800 900

1000

0 1 2 3 4 5 6 7

Perp

lexit

y

300

400

500

600

700

800 900

1000

0 1 2 3

300

400

500

600

700

800 900

1000

0 1

23 de 34

Page 24: Adaptación de skip-gramas a modelos conexionistas del lenguaje

1a fase: Variacion de la PPL en Skipping NN LMs

Ngram orderModel 1 2 3 4 5

5gr No skip – – – – 2674gr No skip – – – 272 –3gr No skip – – 280 – –2gr No skip – 330 – – –

5gr skip 946 334 286 272 2694gr skip 955 337 284 273 –3gr skip 990 333 287 – –2gr skip 963 336 – – –

Ngram orderModel 1 2 3 4 5

5gr No skip – – – – 3094gr No skip – – – 313 –3gr No skip – – 319 – –2gr No skip – 376 – – –

5gr skip 1019 378 326 311 3094gr skip 1025 383 324 313 –3gr skip 1045 377 327 – –2gr skip 1026 381 – – –

Table : PPL para los validacion (izquierda) y test (derecha).

24 de 34

Page 25: Adaptación de skip-gramas a modelos conexionistas del lenguaje

2a fase: Emulacion de modelos de orden inferior

Corpus News-Commentary:• Training y test de News-Commentary 2010.• Validacion de News-Commentary 2008.

Corpora # lines # wordsNC10 training 125.8K 2.9MNC08 validation 2.0K 49.7KNC10 test 2.5K 61.9K

25 de 34

Page 26: Adaptación de skip-gramas a modelos conexionistas del lenguaje

2a fase: Emulacion de modelos de orden inferior• Entrenamiento de NN LMs y Skipping NN LMs con:◦ Algoritmo Backpropagation.◦ Funcion de red: Entropıa cruzada con regularizacion L2.◦ Capas de proyeccion de 128, 160 y 208 neuronas, y capa oculta de

200 neuronas.• La entrada de los Skipping NN LMs se altera siguiendo la

distribucion:mask bigram trigram 4-gram 5-gram

0 50% 33% 25% 20%1 50% 33% 25% 20%3 – 33% 25% 20%7 – – 25% 20%

15 – – – 20%• Se generan varias tablas de constantes de normalizacion softmax

para emular NN LMs de menor orden con Skipping NN LMs.26 de 34

Page 27: Adaptación de skip-gramas a modelos conexionistas del lenguaje

2a fase: Emulacion de modelos de orden inferior

Hierarchical modelMax order Normal With skips

2 252 2523 235 2404 231 2365 230 234

Hierarchical modelMax order Normal With skips

2 245 2453 228 2334 224 2285 223 227

Table : PPL para los validacion (izquierda) y test (derecha).

27 de 34

Page 28: Adaptación de skip-gramas a modelos conexionistas del lenguaje

3a fase: Rescoring de listas nbest

Corpus News en ingles y espanol:• Ficheros News 2008.• Ficheros News 2009.• Ficheros News 2010.

Spanish EnglishCorpora # lines # words # lines # wordsNews2008 2.0K 52.6K 2.0K 49.7KNews2009 2.5K 68.0K 2.5K 65.6KNews2010 2.5K 65.5K 2.5K 61.9K

28 de 34

Page 29: Adaptación de skip-gramas a modelos conexionistas del lenguaje

3a fase: Rescoring de listas nbest

Tarea de traduccion del ingles al espanol:

• Decodificador de traduccion APRIL, usando modelos basados ensegmentos entrenados con Moses (APRIL-PB).

• Las jerarquıas de modelos de la anterior fase se usan pararepuntuar las hipotesis del sistema.

• Calculamos el BLEU y TER a partir de los ficheros de referencia eningles.

Los resultados tambien se comparan con las lıneas base establecidaspor los decodificadores Moses y APRIL-PB.

29 de 34

Page 30: Adaptación de skip-gramas a modelos conexionistas del lenguaje

3a fase: Rescoring de listas nbest

2009 2010BLEU TER BLEU TER

n N S N S N S N S2 20.7 20.7 60.0 60.1 22.9 22.9 57.5 57.53 21.2 21.0 59.8 59.9 23.2 23.0 57.4 57.54 21.1 21.1 59.8 59.8 23.3 23.2 57.3 57.35 21.0 21.0 59.8 59.8 23.2 23.1 57.4 57.4

2009 2010System BLEU TER BLEU TERMoses 20.4 60.3 22.6 57.8April-PB 20.6 60.3 22.7 57.8

30 de 34

Page 31: Adaptación de skip-gramas a modelos conexionistas del lenguaje

Conclusiones

Hemos logrado nuestros objetivos iniciales:

• Se ha elaborado un diseno eficiente y extensible.• Se ha estudiado el efecto del uso de las tecnicas de skip-gramas en

NN LMs sobre la PPL de los modelos y sus resultados en tareas detraduccion automatica.

• Se ha considerado el uso de estas tecnicas para ahorrar tiempo enla estimacion de los NN LMs para jerarquıas.

31 de 34

Page 32: Adaptación de skip-gramas a modelos conexionistas del lenguaje

Ampliaciones futuras

Ampliaciones posibles sobre este trabajo:

• Jerarquıas de Skipping NN LMs en otras tareas.• Estudio sobre la PPL segun frecuencia de las palabras.• Modelos con cache orientados a consultas masivas.• Alternativas a la funcion softmax en la capa de salida.

32 de 34

Page 33: Adaptación de skip-gramas a modelos conexionistas del lenguaje

Publicaciones

El artıculo First steps towards Skipping NN LMs describe brevementeel planteamiento de los Skipping NN LMs y la 1a fase deexperimentacion.

Este artıculo fue enviado al congreso internacional IberSPEECH 2014y ha sido ACEPTADO.

Los resultados de las otras fases experimentales seran enviados aalguna revista o congreso del area.

33 de 34

Page 34: Adaptación de skip-gramas a modelos conexionistas del lenguaje

Dudas?

Gracias por asistir a esta presentacion.

34 de 34

Page 35: Adaptación de skip-gramas a modelos conexionistas del lenguaje

Zamora-Martınez, F. (2012).Aportaciones al modelado conexionista de lenguaje y su aplicacional reconocimiento de secuencias y traduccion automatica.Tesis doctoral en informatica, Departamento de SistemasInformaticos y Computacion, Universidad Politecnica de Valencia.

Zamora-Martınez, F., Espana-Boquera, S., Gorbe-Moya, J.,Pastor-Pellicer, J., and Palacios-Corella, A. (2013).April-ANN toolkit, A Pattern Recognizer In Lua with ArtificialNeural Networks.https://github.com/pakozm/april-ann.

34 de 34