Procesamiento del lenguaje natural: análisis sintáctico
El análisis sintáctico o el análisis sintáctico o sintáctico es la tercera fase de la PNL. El propósito de esta fase es extraer el significado exacto, o puede decir el significado del diccionario del texto. El análisis de sintaxis comprueba la significación del texto en comparación con las reglas de la gramática formal. Por ejemplo, el analizador semántico rechazaría una oración como "helado caliente".
En este sentido, el análisis sintáctico o el análisis sintáctico pueden definirse como el proceso de analizar las cadenas de símbolos en el lenguaje natural conforme a las reglas de la gramática formal. El origen de la palabra‘parsing’ es de la palabra latina ‘pars’ lo que significa ‘part’.
Concepto de analizador
Se utiliza para implementar la tarea de análisis. Puede definirse como el componente de software diseñado para tomar datos de entrada (texto) y proporcionar una representación estructural de la entrada después de verificar la sintaxis correcta según la gramática formal. También construye una estructura de datos generalmente en forma de árbol de análisis sintáctico o árbol de sintaxis abstracta u otra estructura jerárquica.
Los roles principales del análisis incluyen:
Para informar cualquier error de sintaxis.
Para recuperarse de errores que ocurren comúnmente para que el procesamiento del resto del programa pueda continuar.
Para crear un árbol de análisis.
Crear tabla de símbolos.
Producir representaciones intermedias (RI).
Tipos de análisis
La derivación divide el análisis sintáctico en los siguientes dos tipos:
Análisis de arriba hacia abajo
Análisis de abajo hacia arriba
Análisis de arriba hacia abajo
En este tipo de análisis, el analizador comienza a construir el árbol de análisis a partir del símbolo de inicio y luego intenta transformar el símbolo de inicio en la entrada. La forma más común de análisis de arriba hacia abajo utiliza un procedimiento recursivo para procesar la entrada. La principal desventaja del análisis de descenso recursivo es el retroceso.
Análisis de abajo hacia arriba
En este tipo de análisis, el analizador comienza con el símbolo de entrada e intenta construir el árbol del analizador hasta el símbolo de inicio.
Concepto de derivación
Para obtener la cadena de entrada, necesitamos una secuencia de reglas de producción. La derivación es un conjunto de reglas de producción. Durante el análisis, debemos decidir el no terminal, que se reemplazará junto con la decisión de la regla de producción con la ayuda de la cual se reemplazará el no terminal.
Tipos de derivación
En esta sección, aprenderemos sobre los dos tipos de derivaciones, que pueden usarse para decidir qué no terminal reemplazar con la regla de producción:
Derivación más a la izquierda
En la derivación más a la izquierda, la forma enunciada de una entrada se escanea y se reemplaza de izquierda a derecha. La forma de oración en este caso se llama la forma de oración de izquierda.
Derivación más a la derecha
En la derivación más a la izquierda, la forma enunciativa de una entrada se escanea y se reemplaza de derecha a izquierda. La forma de oración en este caso se llama la forma de oración derecha.
Concepto de Parse Tree
Puede definirse como la representación gráfica de una derivación. El símbolo de inicio de la derivación sirve como raíz del árbol de análisis. En cada árbol de análisis, los nodos hoja son terminales y los nodos interiores son no terminales. Una propiedad del árbol de análisis es que el recorrido en orden producirá la cadena de entrada original.
Concepto de gramática
La gramática es muy esencial e importante para describir la estructura sintáctica de programas bien formados. En el sentido literario, denotan reglas sintácticas para la conversación en lenguajes naturales. La lingüística ha intentado definir las gramáticas desde el inicio de los lenguajes naturales como el inglés, el hindi, etc.
La teoría de lenguajes formales también es aplicable en los campos de la informática principalmente en lenguajes de programación y estructura de datos. Por ejemplo, en lenguaje 'C', las reglas gramaticales precisas establecen cómo se hacen las funciones a partir de listas y declaraciones.
Un modelo matemático de gramática fue dado por Noam Chomsky en 1956, que es eficaz para escribir lenguajes informáticos.
Matemáticamente, una gramática G se puede escribir formalmente como una tupla de 4 (N, T, S, P) donde -
N o VN = conjunto de símbolos no terminales, es decir, variables.
T o ∑ = conjunto de símbolos terminales.
S = Símbolo de inicio donde S ∈ N
Pdenota las reglas de producción para terminales y no terminales. Tiene la forma α → β, donde α y β son cadenas en V N ∪ ∑ y al menos un símbolo de α pertenece a V N
Estructura de la frase o gramática constitutiva
La gramática de la estructura de la frase, introducida por Noam Chomsky, se basa en la relación de constituyentes. Por eso también se le llama gramática constitutiva. Es opuesto a la gramática de la dependencia.
Ejemplo
Antes de dar un ejemplo de gramática de circunscripciones, necesitamos conocer los puntos fundamentales sobre la gramática de las circunscripciones y la relación entre las circunscripciones.
Todos los marcos relacionados ven la estructura de la oración en términos de relación de electores.
La relación de circunscripción se deriva de la división sujeto-predicado de la gramática latina y griega.
La estructura básica de la cláusula se entiende en términos de noun phrase NP y verb phrase VP.
Podemos escribir la oración “This tree is illustrating the constituency relation” como sigue -
Gramática de dependencia
Es opuesta a la gramática de la circunscripción y se basa en la relación de dependencia. Fue presentado por Lucien Tesniere. La gramática de dependencia (DG) es opuesta a la gramática de circunscripción porque carece de nodos de frase.
Ejemplo
Antes de dar un ejemplo de gramática de dependencia, necesitamos conocer los puntos fundamentales sobre la gramática de dependencia y la relación de dependencia.
En DG, las unidades lingüísticas, es decir, las palabras están conectadas entre sí mediante enlaces dirigidos.
El verbo se convierte en el centro de la estructura de la oración.
Todas las demás unidades sintácticas están conectadas al verbo en términos de enlace dirigido. Estas unidades sintácticas se llamandependencies.
Podemos escribir la oración “This tree is illustrating the dependency relation” como sigue;
El árbol de análisis que utiliza la gramática de distritos se llama árbol de análisis basado en distritos; y los árboles de análisis sintáctico que utilizan la gramática de dependencia se denominan árbol de análisis sintáctico basado en dependencias.
Gramática libre de contexto
La gramática libre de contexto, también llamada CFG, es una notación para describir idiomas y un superconjunto de gramática regular. Se puede ver en el siguiente diagrama:
Definición de CFG
CFG consta de un conjunto finito de reglas gramaticales con los siguientes cuatro componentes:
Conjunto de no terminales
Se denota con V. Los no terminales son variables sintácticas que denotan los conjuntos de cadenas, que ayudan aún más a definir el lenguaje generado por la gramática.
Conjunto de terminales
También se llama tokens y se define por Σ. Las cadenas se forman con los símbolos básicos de terminales.
Conjunto de producciones
Se indica con P. El conjunto define cómo se pueden combinar los terminales y los no terminales. Cada producción (P) consta de no terminales, una flecha y terminales (la secuencia de terminales). Los no terminales se denominan lado izquierdo de la producción y los terminales se denominan lado derecho de la producción.
Símbolo de inicio
La producción comienza desde el símbolo de inicio. Se indica con el símbolo S. El símbolo no terminal siempre se designa como símbolo de inicio.