Descargar la presentación
La descarga está en progreso. Por favor, espere
Publicada porMaría Jesús Fuentes Cáceres Modificado hace 9 años
1
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
2
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)
3
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
4
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
5
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
6
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)
7
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)
8
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
9
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!!!!
10
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
11
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
12
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
13
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
14
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
15
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
16
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)
17
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
18
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
19
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
20
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
21
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
22
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
23
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)
Presentaciones similares
© 2025 SlidePlayer.es Inc.
All rights reserved.