Predicción estructurada - Structured prediction

La predicción estructurada o el aprendizaje estructurado (de salida) es un término general para las técnicas de aprendizaje automático supervisado que implica la predicción de objetos estructurados, en lugar de valores escalares discretos o reales .

De manera similar a las técnicas de aprendizaje supervisado de uso común, los modelos de predicción estructurados se entrenan típicamente por medio de datos observados en los que el valor de predicción real se usa para ajustar los parámetros del modelo. Debido a la complejidad del modelo y las interrelaciones de las variables predichas, el proceso de predicción utilizando un modelo entrenado y el propio entrenamiento es a menudo computacionalmente inviable y se utilizan métodos de aprendizaje e inferencia aproximada .

Aplicaciones

Por ejemplo, el problema de traducir una oración en lenguaje natural a una representación sintáctica, como un árbol de análisis sintáctico, puede verse como un problema de predicción estructurado en el que el dominio de salida estructurado es el conjunto de todos los árboles de análisis sintáctico posibles. La predicción estructurada también se utiliza en una amplia variedad de dominios de aplicación, incluida la bioinformática , el procesamiento del lenguaje natural , el reconocimiento de voz y la visión por computadora .

Ejemplo: etiquetado de secuencia

El etiquetado de secuencias es una clase de problemas que prevalecen en el procesamiento del lenguaje natural , donde los datos de entrada son a menudo secuencias (por ejemplo, oraciones de texto). El problema del etiquetado de secuencia aparece de varias formas, por ejemplo, etiquetado de parte de la voz y reconocimiento de entidad nombrada . En el etiquetado POS, por ejemplo, cada palabra en una secuencia debe recibir una "etiqueta" (etiqueta de clase) que expresa su "tipo" de palabra:

Esta DT
es VBZ
a DT
etiquetado JJ
frase NN
. .

El principal desafío de este problema es resolver la ambigüedad : la palabra "oración" también puede ser un verbo en inglés y, por lo tanto, "etiquetado".

Si bien este problema puede resolverse simplemente realizando una clasificación de tokens individuales, ese enfoque no tiene en cuenta el hecho empírico de que las etiquetas no ocurren de forma independiente; en cambio, cada etiqueta muestra una fuerte dependencia condicional de la etiqueta de la palabra anterior. Este hecho se puede aprovechar en un modelo de secuencia, como un modelo de Markov oculto o un campo aleatorio condicional que predice la secuencia de etiquetas completa para una oración, en lugar de solo etiquetas individuales, mediante el algoritmo de Viterbi .

Técnicas

Los modelos gráficos probabilísticos forman una gran clase de modelos de predicción estructurados. En particular, las redes bayesianas y los campos aleatorios son populares. Otros algoritmos y modelos para la predicción estructurado incluyen programación inductiva lógica , razonamiento basado en casos , SVMs estructurados , redes lógicas de Markov , Probabilístico Soft lógica y modelos condicionales constreñidos . Técnicas principales:

Perceptrón estructurado

Una de las formas más fáciles de comprender los algoritmos para la predicción estructurada general es el perceptrón estructurado de Collins . Este algoritmo combina el algoritmo de perceptrón para aprender clasificadores lineales con un algoritmo de inferencia (clásicamente el algoritmo de Viterbi cuando se usa en datos de secuencia) y se puede describir de manera abstracta de la siguiente manera. En primer lugar definir una "función de la articulación característica" Φ ( x , y ) que mapea una muestra de entrenamiento x y una predicción de candidatas y a un vector de longitud n ( x y y puede tener cualquier estructura; n es dependiente de problema, pero debe fijarse para cada modelo). Sea GEN una función que genera predicciones candidatas. Luego:

Sea un vector de peso de longitud n
Para un número predeterminado de iteraciones:
Para cada muestra del conjunto de entrenamiento con salida real :
Haz una predicción
Actualización , a partir de : , es la tasa de aprendizaje

En la práctica, la búsqueda de argmax over se realizará mediante un algoritmo como Viterbi o un algoritmo como max-sum , en lugar de una búsqueda exhaustiva a través de un conjunto exponencialmente grande de candidatos.

La idea de aprendizaje es similar a la del perceptrón multiclase .

Referencias

  1. ^ Gökhan BakIr, Ben Taskar, Thomas Hofmann, Bernhard Schölkopf, Alex Smola y SVN Vishwanathan (2007), Predicción de datos estructurados , MIT Press.
  2. a b Lafferty, J., McCallum, A., Pereira, F. (2001). "Campos aleatorios condicionales: modelos probabilísticos para segmentar y etiquetar datos de secuencia" (PDF) . Proc. 18a Conf. Internacional sobre aprendizaje automático . págs. 282-289.Mantenimiento de CS1: utiliza el parámetro de autores ( enlace )
  3. ^ Collins, Michael (2002). Métodos de entrenamiento discriminativos para modelos ocultos de Markov: teoría y experimentos con algoritmos de perceptrón (PDF) . Proc. EMNLP. 10 .

enlaces externos