Articulo de referencia

Red de transición recursiva con filtrado y extracción

Una red de transición recursiva de extracción filtrada ( FPRTN ), [ 1 ] o simplemente red de extracción filtrada ( FPN ), es una red de transición recursiva ( RTN ) [ 2 ] extend...

Una red de transición recursiva de extracción filtrada ( FPRTN ), [ 1 ] o simplemente red de extracción filtrada ( FPN ), es una red de transición recursiva ( RTN ) [ 2 ] extendida con un mapa de estados a claves donde el retorno de un salto de subrutina requiere que los estados de aceptación y retorno se asignen a la misma clave. Las RTN son máquinas de estados finitos que pueden verse como autómatas de estados finitos extendidos con una pila de estados de retorno; así como transiciones de consumo yε{\displaystyle \varepsilon }Las transiciones RTN pueden definir transiciones de llamada. Estas transiciones realizan un salto de subrutina al insertar el estado de destino de la transición en la pila y llevar la máquina al estado llamado. Cada vez que se alcanza un estado de aceptación, se extrae el estado de retorno de la parte superior de la pila, siempre que esta no esté vacía, y la máquina pasa a dicho estado.

A lo largo de este artículo, nos referimos a las redes de transición recursivas con filtrado como FPN , aunque este acrónimo es ambiguo (por ejemplo, redes de Petri difusas ). Las redes con filtrado y las FPRTN son alternativas inequívocas.

Definición formal

Una FPN es una estructura(Q,K,Σ,δ,κ,QI,F){\displaystyle (Q,K,\Sigma ,\delta ,\kappa ,Q_{I},F)}dónde

  • Q{\displaystyle Q}es un conjunto finito de estados,
  • K{\displaystyle K}es un conjunto finito de claves,
  • Σ{\displaystyle \Sigma }es un alfabeto de entrada finito,
  • δ:Q×(Σ{ε}Q)Q{\displaystyle \delta :Q\times (\Sigma \cup \{\varepsilon \}\cup Q)\to Q}es una función de transición parcial,ε{\displaystyle \varepsilon }siendo el símbolo vacío,
  • κ:QK{\displaystyle \kappa :Q\to K}es un mapa de estados a claves,
  • QIQ{\displaystyle Q_{I}\subsetequ Q}es el conjunto de estados iniciales, y
  • FQ{\displaystyle F\subseteq Q}es el conjunto de estados de aceptación.

Transiciones

Las transiciones representan la posibilidad de llevar la FPN desde un estado fuente.qs{\displaystyle q_{s}}a un estado objetivoqt{\displaystyle q_{t}}posiblemente realizando una acción adicional. Dependiendo de esta acción, distinguimos los siguientes tipos de transiciones definidas explícitamente :

  • ε{\displaystyle \varepsilon }-Las transiciones son transiciones de la formaδ(qs,ε)qt{\displaystyle \delta (q_{s},\varepsilon )\to q_{t}}y no realizar ninguna acción adicional,
  • Las transiciones de consumo son transiciones de la formaδ(qs,σ)qt{\displaystyle \delta (q_{s},\sigma )\to q_{t}}y consumir un símbolo de entradaσ{\displaystyle \sigma }, y
  • Las transiciones de llamada son transiciones de la formaδ(qs,qdo)qt{\displaystyle \delta (q_{s},q_{c})\to q_{t}}y realizar un salto de subrutina al estado llamadoqdo{\displaystyle q_{c}}antes de llegarqt{\displaystyle q_{t}}.

El comportamiento de las transiciones de llamadas se rige por dos tipos de transiciones definidas implícitamente :

  • para cada transición de llamadaδ(qs,qdo)qt{\displaystyle \delta (q_{s},q_{c})\to q_{t}}La FPN define implícitamente una transición de empuje que lleva a la máquina desdeqs{\displaystyle q_{s}}aqdo{\displaystyle q_{c}}empujandoqt{\displaystyle q_{t}}en la pila y
  • para cada par de estados(qF,qr)F×Q{\displaystyle (q_{f},q_{r})\in F\times Q}La FPN define implícitamente una transición pop que lleva a la máquina desdeqF{\displaystyle q_{f}}aqr{\displaystyle q_{r}}al estallarqr{\displaystyle q_{r}}desde la pila siqr{\displaystyle q_{r}}es el estado en la parte superior de la pila yκ(qF)=κ(qr){\displaystyle \kappa (q_{f})=\kappa (q_{r})}.

Las transiciones push inicializan los saltos de subrutina y las transiciones pop son equivalentes a las instrucciones return .

Objetivo

Un texto ( en lenguaje natural ) puede enriquecerse con metainformación mediante la aplicación de una RTN con salida ; por ejemplo, una RTN que inserta etiquetas XML puede usarse para transformar un texto plano en un documento XML estructurado. Una RTN con salida que representa una gramática de lenguaje natural delimitaría y agregaría la estructura sintáctica de cada oración de texto (ver análisis ). Otras RTN con salida podrían simplemente marcar segmentos de texto que contienen información relevante (ver extracción de información ). La aplicación de una RTN con salida que representa una gramática ambigua da como resultado un conjunto de posibles traducciones o interpretaciones de la entrada. El cálculo de este conjunto tiene un costo exponencial en el peor de los casos , incluso para un analizador Earley para RTN con salida, [ 3 ] debido a casos en los que el número de traducciones aumenta exponencialmente con respecto a la longitud de la entrada; por ejemplo, el número de interpretaciones de una oración de lenguaje natural aumenta exponencialmente con respecto al número de adjuntos de frases preposicionales no resueltos : [ 4 ] [ 5 ]

  • En la oración la niña vio al mono con el telescopio , se desconoce si la niña usó el telescopio o si el mono lo sostenía (2 1 interpretaciones),
  • En la oración la niña vio al mono con el telescopio en el jardín , también se desconoce si el mono estaba en el jardín o si la acción tuvo lugar en el jardín (2 2 interpretaciones),
  • En la oración la niña vio al mono con el telescopio en el jardín debajo del árbol , también se desconoce si el mono estaba debajo del árbol o si la acción tuvo lugar debajo del árbol (2 3 interpretaciones),
  • etc.

Las FPN sirven como una representación compacta de este conjunto de traducciones, lo que permite calcularlo en tiempo cúbico mediante un analizador tipo Earley. [ 1 ] Los estados de la FPN corresponden a estados de ejecución (ver pasos de instrucción ) de un analizador Earley para RTN sin salida, y las transiciones de la FPN corresponden a posibles traducciones de símbolos de entrada.κ{\displaystyle \kappa }El mapa de la FPN resultante proporciona la correspondencia entre los segmentos de salida representados y los segmentos de entrada reconocidos: dada una secuencia de entrada reconocidaσ1σl{\displaystyle \sigma _{1}\ldots \sigma _{l}}y una ruta FPNpag{\displaystyle p}comenzando en un estadoq{\displaystyle q}y terminando en un estadoq{\displaystyle q^{\prime }},pag{\displaystyle p}representa una posible traducción del segmento de entradaσκ(q)+1σκ(q){\displaystyle \sigma _{\kappa (q)+1}\ldots \sigma _{\kappa (q^{\prime })}}La función de filtrado de salida es necesaria para evitar que las rutas FPN representen traducciones de segmentos de entrada desconectados o superpuestos : una llamada FPN puede contener varias rutas de traducción desde el estado llamado a un estado de aceptación, donde los segmentos de entrada a los que corresponden comparten el mismo punto de inicio, pero no necesariamente tienen la misma longitud. Solo los estados de retorno que corresponden al mismo punto de entrada que el estado de aceptación que finaliza la llamada son estados de retorno válidos .

Referencias

  1. 1 2 Javier M. Sastre, "Análisis sintáctico eficiente mediante redes de transición recursivas con filtrado y extracción" , Lecture Notes in Artificial Intelligence , 5642 :241-244, 2009
  2. William A. Woods, "Gramáticas de red de transición para el análisis del lenguaje natural" , Communications of the ACM , ACM Press , 13 :10:591-606, 1970
  3. Javier M. Sastre y Mikel L. Forcada, "Análisis sintáctico eficiente mediante redes de transición recursivas con salida" , Lecture Notes in Computer Science , 5603 :192-204, 2009
  4. Adwait Ratnaparkhi, " Modelos estadísticos para la adjunción de frases preposicionales no supervisada " , ACL-36: Actas de la 36.ª Reunión Anual de la Asociación de Lingüística Computacional y la 17.ª Conferencia Internacional sobre Lingüística Computacional, págs. 1079-1085, 1998
  5. Miriam Butt, " Análisis por fragmentos/análisis superficial " , apuntes de clase, 2002