Modelos Formales No Transformacionales MFNT Parsers tradicionales con Gramáticas Independientes de Contexto (Context Free Grammar CFG) : Top-down, bottom-up,

Slides:



Advertisements
Presentaciones similares
ÁRBOLES DE SINTAXIS ÁRBOL grafo dirigido acíclico.
Advertisements

Oraciones compuestas ORACIONES COORDINADAS
ORACIONES BIMEMBRES VERBALES Y SUJETO
Compiladores e intérpretes
Las 5 hipótesis de Stephen Krashen
Cuestión A: análisis sintáctico
sujeto, predicado y complementos de la oación
Gramáticas Libres de Contexto
El sintagma preposicional
¿Palabra o afijo?.
¿Cómo hacer para que una máquina comprenda el LN?
1.EL SUJETO El sujeto de una oración es la persona animal o cosa de la que hablamos. Es el tema de la conversación: Ej: El hombre corre ¿De quién hablamos.
Los sintagmas y sus clases
Predicado Integrantes - José Carlos Gutiérrez - Diego Reyes
Tipos de oraciones Rasgos estructurales.
1 Parsing Un parser podría ser definido como un programa que analiza una porción de texto para determinar su estructura lógica: la fase de parsing en un.
Ramas de la Lingüística
SINTAXIS EN ESQUEMAS Ana Mª López Pérez.
CAPITULO 2 La Representación del Conocimiento
2º curso Ingeniería Técnica en Informática de Sistemas UNED
El análisis sintáctico
La estructura de la oración Sintaxix Luis Villaseñor Pineda Laboratorio de Tecnologías del Lenguaje Coordinación de Ciencias Computacionales, Instituto.
ANALISIS SINTACTICO El análisis gramatical es la tarea de determinar la sintaxis, o estructura, de un programa. Por esta razón también se le conoce como.
Teoría de lenguajes y compiladores
ORACIÓN bimembres unimembres compuesta simple
El sintagma preposicional
Algoritmos para calcular el Conjunto Primero y el Conjunto Siguiente
Análisis Sintáctico (Parsing)
Trabajo presentado por: LUIS FERNANDO OBANDO ING
Problemas, algoritmos y programas: Modelar: Simular o programar su solución en un computador. Algoritmos: Es un conjunto finito, y no ambiguo de etapas.
Representación del conocimiento
Neurolingüística del español SPAN 4270 Harry Howard Tulane University
SPAN 595 – Morfosintaxis Verano 2011 Dr. Waltermire.
TIPOS DE DATOS ABSTRACTOS
Procesamiento Práctico del lenguaje Natural Capítulo XXIII.
Clasificación de Gramáticas y Manejo de Errores
Introducción al Análisis Sintáctico
Neurolingüística del español SPAN 4270 Harry Howard Tulane University
Tema 1. Introducción y Conceptos Básicos
Modelo de la Gramática Generativa Transformacional (1965)
Teoría de Autómatas y Lenguajes Formales Informática Técnica de Gestión ESCUELA SUPERIOR DE INFORMATICA Universidad de Castilla-La Mancha Tema 1. Introducción.
Programación de Sistemas FEI – 2008
Prof. Fraibet Aveledo Universidad Simón Bolívar
LA MORFOLOGÍA.
Comunicación Oral y Escrita I
Tipos de oraciones Rasgos estructurales.
ANÁLISIS SINTÁCTICO DE ORACIONES SIMPLES
Teoría de lenguajes y compiladores
Sintagmas y Oraciones: La GRAMATICA
I.- ESTUDIO DE LOS LENGUAJES DE PROGRAMACIÓN.
LA VOZ PASIVA pasivo, va. (Del latín passīvus).
Adverbio/ Preposición
2.3. Didáctica de la Sintaxis
Metodología de la programación
ESQUEMA. LA IMPERSONALIDAD
Algoritmos Programación
IV. GRAMÁTICAS DISTRIBUIDAS Y TABLAS DE SÍMBOLOS
Expresa transformación de un agente en su intención con el mundo.
Programación de Sistemas
PLN parsing charts1 Métodos basados en Charts Extensiones a partir de Charts Métodos Tabulares CKY Earley.
O 3-4 años o Abandono progresivo de lenguaje infantil y vocabulario especifico → construcciones más de lenguaje adulto. o Combinación de cláusulas en distintos.
República Bolivariana de Venezuela Ministerio del Poder Popular para la Educación Superior Universidad Valle del Momboy Carvajal, Trujillo Alumnas Luzmila.
Categorías gramaticales
Programación I Prof. Carolina Cols. Algoritmo es una lista bien definida, ordenada y finita de operaciones que permite hallar la solución a un problema.
El sintagma. Las funciones sintácticas
Modelos Formales No Transformacionales MFNT Clase 16. Gramáticas Estructuradas por Rasgos (Feature Structured Grammars) – Head-driven Phrase Structured.
1 MÁS QUE PALABRAS. 2 Más que palabras ¿Qué han de aprender a manipular mentalmente los niños para ser competentes gramaticalmente hablando?
EL SUJETO DEFINICIÓN: El sujeto es una función sintáctica desempeñada por un sintagma nominal*, cuyo núcleo concuerda en número y persona con el núcleo.
Niveles de la lengua: Sintáctico
Modelos Formales No Transformacionales MFNT
Transcripción de la presentación:

Modelos Formales No Transformacionales MFNT Parsers tradicionales con Gramáticas Independientes de Contexto (Context Free Grammar CFG) : Top-down, bottom-up, depth first, breadth first

MFNT - Parsers tradicionales con CFG 2 Definición formal de Gramática CFG Una cuádrupla G = ( V, T, S, P) Siendo: V = conjunto de símbolos no terminales o categoriales T = conjunto de símbolos terminales o lexicales S = símbolo inicial P = conjunto de reglas de producción de la forma X  y con único símbolo X  V y set y  (V  T) Una gramática CFG es un formalismo matemático para generar oraciones o bien para asignar estructura sintáctica a oraciones, procesos ambos conocidos como derivación. El mecanismo práctico que implementa una derivación se conoce como parser (analizador sintáctico)

MFNT - Parsers tradicionales con CFG 3 Gramáticas subtipo lineales Subtipo de gramáticas 2 y 3 a izquierda y derecha, ya que todavía pueden ser expresadas como autómatas de gramáticas regulares G = ( {X,Y}, {a,b}, S = X, P) Siendo: P 1 = X  aX X  aY Y  b Y  bY Siendo: P 2 = X  Xb X  Yb Y  a Y  Ya

MFNT - Parsers tradicionales con CFG 4 Definición formal de Gramática CFG (ejemplo) G = ( {X,Y}, {a,b}, S = X, P) Siendo: P = X  aXb X  ab Qué tipo de oraciones genera esta gramática? (centered-embedded clauses = “the mouse the cat chased ate the cheese” Podría ser “reducida” a una gramática regular o autómata? Hay alguna expresión regular que genere el mismo set de oraciones? Todas las gramáticas regulares pueden ser expresadas como CFG pero no toda CFG es regular

MFNT - Parsers tradicionales con CFG 5 Ejemplo de CFG con constituyentes sintácticos (1) G = ( {O,SN,SV,SP,N,V,P,D}, {Juan,el,globo,parque,en,compró,corrió, Ø}, S = O, P) Siendo: P = O  SN SV SN  N SN  D N SV  V SN SP SV  V SN SV  V SP SV  V SP  P SN P  en V  compró V  corrió N  Juan N  parque N  globo N  Ø D  el Qué oraciones genera esta gramática de 16 reglas. Cuántas gramaticales? Categorías sintácticas primitivas y derivadas vs. terminales

MFNT - Parsers tradicionales con CFG 6 Ejemplo de CFG con constituyentes sintácticos (1) notación simplificada G = ( {O,SN,SV,SP,N,V,P,D}, {Juan,el,globo,parque,en,compró,corrió, Ø}, S = O, P) Siendo: P = O  SN SV SN  (D) N SV  V (SN) (SP) SP  P SN P  en V  compró ¦ corrió N  Juan ¦ parque ¦ globo ¦ Ø D  el Ahora son sólo 8 reglas No distinguimos aquí entre Sintagmas o Frases Preposicionales como adjuntos (lo que obligaría a un nivel adicional N’ ) o complementos. En inglés es muy importante la diferencia entre The hunter of red deers vs. The hunter from Europe (Para los tests de adyacencia y substitucion por one en caso de complemento, véase Radford)

MFNT - Parsers tradicionales con CFG 7 Ejemplo de CFG con constituyentes sintácticos (2) recursividad por coordinación G = ( {O,SN,SV,SP,N,V,P,D, Adj, Conj}, {Juan,el,globo,parque,en,compró,corrió, Europa, y, rojo, alto, de, Ø}, S = O, P) Siendo: P = O  SN SV O  O Conj O SN  (D) N (Adj) (SP) SV  V (SN) (SP) SP  P SN Adj  Adj Conj Adj V  V Conj V V  compró ¦ corrió N  N Conj N N  Juan ¦ parque ¦ globo ¦ Ø ¦ Europa P  en ¦ de D  el Conj  y Adj  rojo ¦ alto Ahora? Cuantas oraciones (algunas muy gramaticales con apenas 14 reglas)

MFNT - Parsers tradicionales con CFG 8 Ejemplo de CFG con constituyentes sintácticos (2) recursividad por claúsula relativa G = ( {O,SN,SV,SP,N,V,P,D, Conj, Adj, O rel, PRO rel }, {Juan,el,globo,parque,en,compró,corrió, explotó, Ø, y, que, Europa, de, rojo, alto}, S = O, P) Siendo: P = O  SN SV O  O Conj O O rel  PRO rel O SN  (D) N (Adj) (SP) (Orel) SV  V (SN) (SP) SP  P SN Adj  Adj Conj Adj V  V Conj V V  compró ¦ corrió ¦ explotó N  N Conj N N  Juan ¦ parque ¦ globo ¦ Ø ¦ Europa P  en ¦ de D  el Conj  y Adj  rojo ¦ alto PRO rel  que

MFNT - Parsers tradicionales con CFG 9 Primeros problemas para CFG: concordancia O sing  SN sing SV sing O plu  SN plu SV plu SV sing  V sing SN sing ¦ V sing SN plu SV plu  V plu SN plu ¦ V plu SN sing SN plu  D plu N plu Adj plu SN sing  D sing N singu Adj sing V sing  inventó V plu  inventaron N plu  hombres ¦ corbatas N sing  hombre ¦ corbata Adj sing  blanco Adj plu  blancos D sing  el ¦ la D plu  los ¦ las Obviamente, la gran mayoría de las oraciones agramaticales se genera por no contemplar la concordancia externa S-V ni la interna a nivel de la Frase o Sintagma nominal. Las CFG podrían solucionar esto, pero a costa de una proliferación excesiva de reglas y duplicación de categorías (en el mejor de los casos). Algo muy engorroso para cubrir todas las concardancias del español (y qué hay del posesivo francés en concordancia además con la cosa poseída?). Sencillamente impensable!!!!

MFNT - Parsers tradicionales con CFG 10 Otros problemas para CFG: subcategorización verbal y casos raros Más allá de la distinción verbo transitivo vs. verbo intransitivo, en inglés (por ejemplo) existen: 1.los verbos DITRANSITIVOS = “I give John a ball” “ 2.estructuras de Ac+Inf =“I consider him [ Orac to be….]” 3. y verbos de tres argumentos obligatorios = “I bet John 5 dollars [ Orac that…]” El problema 1 se soluciona creando Verbal Dative Phrase (VD phrase) VIP  VI VTP  VT NP VDP  VD NP NP VP  VIP PP VP  VTP PP VP  VDP PP

MFNT - Parsers tradicionales con CFG 11 Y más problemas para CFG: Dependencias estructurales a larga distancia El español es bastante flexible en la sintaxis como para generar constituyentes discontinuos 1.“I think him his friend is gonna forgive” 2. “Las cosas que César creía que Cicerón dijo” (construcción trabada) Pero aún peor es el caso del Sánscrito o del Latín clásicos . Aunque, después de todo, a quién le interesa hacer parsers de lingüística computacional para esos dos malditos idiomas Veremos más adelante (clase 13) que la primera solución a algunos de estos problemas es la Gramática de Claúsulas Definidas (Definite Clause Grammar, DCG) que empieza a trabajar con lógica de primer orden (un antecedente para lo que luego serían los rasgos) para solucionar el tema de concordancia y subcategorización. Este tipo de gramáticas ya se consideran Gramáticas Sintagmáticas Aumentadas (estarían entre los tipos 1 y 2), aunque guardan una estrecha relación con las CFGs

MFNT - Parsers tradicionales con CFG 12 Ventajas de CFG respecto de Finite State Automata 1. Da cuenta de recursividad mucho mejor para claúsulas embebidas [ O El hombre [ O rel1 que está en la esquina [ O rel2 que queda a dos cuadras de la casa [ O rel3 que hoy se vendió] O rel3 es(?) Juan] O rel2 ] O rel1 ] O 2. Notación simplificada en reglas para símbolos terminales evita proliferacion de arcos y estados de transición 3. Entienden la lógica de constituyentes (salvo para constituyentes discontinuos) 4. De esta forma estamos codificando conocimiento sintáctico para la máquina El gran problema de las CFG es que escala (pero no resuelve) el problema de la dependencia del estado actual (categoría sintáctica) que tenían los autómatas a una dependencia del constituyente sintáctico actual. Por eso falla miserablemente en fenomneos de dependencia a larga distancia

MFNT - Parsers tradicionales con CFG 13 Qué es parsing? Reconocedores y Analizadores Un parser es un algoritmo computacional que procesa sintácticamente una oración en dos sentidos: o bien sólo decide si es o no gramatical (parser reconocedor), o bien asigna una estructura sintáctica mediante árboles o estructuras corcheteadas cuando es la oración es gramatical (parser analizador) Las implementaciones de parser implican, además del algoritmo en sí mismo, una gramática y un corpus de oraciones como input Los parsers ocupan un lugar en cualquier modelo integral de NLP, ya que la sintaxis sigue teniendo una gran preminencia en cómo procesamos lenguaje

MFNT - Parsers tradicionales con CFG 14 Estrategia de parsing y estrategias de procesamiento 2 estrategias de parsing: top-down y bottom-up 2 estrategias de procesamiento: depth first y breadth first combinables

MFNT - Parsers tradicionales con CFG 15 Estrategia de parsing y estrategias de procesamiento Top-Down: Empezás con el símbolo de inicio O y vas aplicando las reglas de escritura de frase hasta que logras una lista de símbolos idéntica a la oración input

MFNT - Parsers tradicionales con CFG 16 Estrategia de parsing y estrategias de procesamiento Bottom-up: Empezás con los símbolos de tu oración input y vas aplicando las reglas de rescritura de frase hasta que lográs el símbolo meta O. (Primero aplicás todas las reglas lexicales para evitar que constituyentes completos se eleven sin seguir la oración- tagging the input)

MFNT - Parsers tradicionales con CFG 17 Estrategia de parsing y estrategias de procesamiento Depth first: concentrarse al máximo en derivar una categoría antes de pasar a la siguiente O  SN SV SN  D N D  el N  hombre SV  V SN V  come SN  N N  pan

MFNT - Parsers tradicionales con CFG 18 Estrategia de parsing y estrategias de procesamiento Breadth first: Concentrarse en desarrollar todas las categorías de una misma línea de la derivación O  SN SV SN  D N SV  V SN D  el N  hombre V  come SN  N N  pan

MFNT - Parsers tradicionales con CFG 19 Parsers en acción: qué estrategia de parsing y cuál de procesamiento? SN V D N O SV SNN el hombre come pan

MFNT - Parsers tradicionales con CFG 20 Parsers en acción: qué estrategia de parsing y cuál de procesamiento? SN V D N O SV SNN el hombre come pan

MFNT - Parsers tradicionales con CFG 21 Parsers en acción: qué estrategia de parsing y cuál de procesamiento? V D N SV SN O N el hombre come pan

MFNT - Parsers tradicionales con CFG 22 Parsers en acción (laboratorio) El top-down es más psicolingüísticamente intuitivo pero el bottom-up parece ser más eficiente en cuanto a evitar falsos caminos TDAParser es depth first con agenda FIFO. Usa PSGparser.py y PSG1.txt

MFNT - Parsers tradicionales con CFG 23 Limitaciones de Parsers tradicionales No hay backtracking con inteligencia para saber en qué punto de la derivación se equivocó. La agenda es una lista con todas las REF para una misma categoría que no fueron usadas (to do list) NP->N NP->Art N Procesamiento no incremental sino exhaustivo(no genera hipótesis). Los humanos no parseamos en forma exhaustiva todos los caminos. Por ejemplo, si sabemos que nos queda un solo símbolo para SV podemos intuir que no es transitivo y no haría falta testear el camino SV -> V SN SP No dan cuenta de ambigüedad estructural “Juan vio al hombre con el telescopio” La solución a algunos problemas es Chart parser a.k.a. Earley Parser (lo veremos en clase 10)