Post on 04-Jul-2015
description
Adaptacion de skip-gramas amodelos conexionistas del lenguaje
Adrian Palacios Corella
Universitat Politecnica de Valencia
26 de septiembre de 2014
1 de 34
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
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
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
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
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
Arquitectura de NN LMs
. . .
. . .. . .
0
0
1
0
.
.
.
0
0
10.
.
.
0
1
0
0
0
.
.
.. . .
. . .
. . .
7 de 34
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
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
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
Jerarquıa de clases
LMModel
HistoryBasedLM
BunchHashedLM
BunchHashedNgramLiraLM
HistoryBasedNgramLiraLM
FeatureBasedLM
NNLM
LMInterface
HistoryBasedLMInterface
BunchHashedLMInterface
BunchHashedNgramLiraLMInterface
HistoryBasedNgramLiraLMInterface
FeatureBasedLMInterface
NNLMInterface
11 de 34
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
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
Herramientas para la manipulacion de datos
Herramientas disponibles en APRIL para la representacion ymodificacion de datos:
• Dados.• Tokens.• Filtros.
14 de 34
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
Modificacion de patrones
Los patrones de entrada son modificados despues de pasar por unfiltro “skip”:
Skip
Input token Output token
16 de 34
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
Dudas?
Gracias por asistir a esta presentacion.
34 de 34
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