360 likes | 522 Views
Formalismos lógicos. Introducción Gramáticas lógicas Gramáticas de rasgos. Las Gramáticas Lógicas. Soporte a teorías lingüísticas concretas vs formalismo general aproximaciones lógicas o algebraicas descripciones lingüísticas con base diversa
E N D
Formalismos lógicos • Introducción • Gramáticas lógicas • Gramáticas de rasgos
Las Gramáticas Lógicas • Soporte a teorías lingüísticas concretas vs formalismo general • aproximaciones lógicas o algebraicas • descripciones lingüísticas con base diversa • nivel de abstracción alto vs lenguaje próximo al de implementación • descripción lingüística ligada a una forma o estrategia de funcionamiento vs utilización más flexible. • comprensión del LN vs generación o transferencia • descripción separada de la información sintáctica y semántica vs descripción uniforme. • paradigma lógico de programación (o de resolución de problemas) • gramática generativa
Idea básica • En las gramáticas de estructura sintagmática los vocabularios terminal y no terminal eran conjuntos finitos (simples colecciones de etiquetas) • A (V)* • En las gramáticas lógicas los elementos de V y pueden ser categorías complejas, con estructura interna y posiblemente infinitos • functores, términos Prolog, vectores y matrices de rasgos, etc.
Referencia Histórica 1 • Q-Systems Colmerauer 72 => Prolog. • Gramáticas de Metamorfosis Colmerauer • ATNs Woods 1970. • WFSTs M. Kay. • Charts M. Kay. • Gramáticas de Cláusulas Definidas Pereira, Warren, 80 • Gramáticas Léxico-Funcionales Kaplan Bresnan 82 • Gramáticas Funcionales Dik • Gramáticas de Unificación Kay • Gramáticas Funcionales de Unificación Kay,
Referencia Histórica 2 • GPSG Gazdar... 85 • HG Pollard • HPSG Pollard Sag 87 • Gramáticas Categoriales Steedman • Gramáticas Categoriales de Unificación Zeevat • Gramáticas de Extraposición Pereira • Slot Grammars Mc Cord • Gap Grammars Dahl • Discontinuous Grammars Dahl • Static Discontinuous Grammars Dahl Popowich 90
Referencia Histórica 3 • DISLOG P. St.Dizier • Modular Logic Grammars McCord • Definite Clause Translation Grammars Abramson • Restriction Grammar Hirshman • Gramáticas de Rasgos. • PATR-II Shieber,86 • ALE Carpenter,92 • ALEP Alshawi,92 • TFS Zajac,92 • CUF Dörre, Dorna,93
Gramáticas de cláusulas definidas (DCG) • Repasar el tema de la asignatura de TMIA • Notación, Ejemplos
Sistemas basados en rasgos 1 • Rasgos y categorías complejas • FS (Feature Structures) • Formalismos de unificación (Shieber) • Declarativos • Basados en categorías complejas (FS) • Ligados a la superficie (normalmente basados en CFG nucleares). • Basados en la unificación como mecanismo básico de combinación de FS. • Basados en restricciones sobre las FS como medio de representar las reglas de buena formación del Lenguaje.
Sistemas basados en rasgos 2 • Dos familias: • Sistemas de rasgos abiertos • Sistemas de rasgos con tipos (Typed Feature Structures) • Cada FS pertenece a un tipo • Los valores permitidos para asociar a un rasgo pertenecen a un tipo • Se deben definir restricciones que garanticen la utilización correcta de los tipos
Estructuras de rasgos 2 Las FS como DAG (Directed Acyclic Graphs)
Estructuras de rasgos 3 • Camino (Path): secuencia de atributos (una rama del árbol). • Las restricciones se pueden expresar como ecuaciones del tipo: • <camino_1> = <camino_2> (reentrancia) • <camino_1> = <valor> • <sin concordancia gen> = fem
Reentrancia g f h h a a f g h a
La relación básica entre FS es la Subsunción. • Decimos que FS1 subsume a FS2 (o que es más general, o que contiene menos información) si se cumple que: • Cualquier rasgo de FS1 existe en FS2. • Cualquier valor de un rasgo de FS1 subsume al valor correspondiente de FS2. • Si dos valores son reentrantes en FS1 también lo son en FS2.
cat: n sint: concord: num: sing Subsunción sint: cat: n cat: n sint: cat: n sint: concord: num: sing concord: gen: fem gen: fem
La operación básica es la unificación. • La operación básica es la unificación. Esta operación permite combinar la información de dos FSs bajo el supuesto de que sean compatibles (unificables). Podemos decir que la unificación de FS1 y FS2 es la FS más general subsumida por ambas
Análisis con gramáticas de rasgos abiertas 1 • Términos Prolog vs (untyped) Feature Structures (DAGs) • Los términos Prolog pueden considerarse Dags que permiten la reentrancia (subgraph sharing) únicamente para las hojas etiquetadas con variables. • Los dos formalismos pueden representar información parcial. • Los dos formalismos permiten que la información se incremente a medida que el contexto se extienda. • Los DAGs permiten la omisión de la información no esencial • Los DAGs permiten, al mismo nivel de anidado, que los rasgos se incluyan en cualquier orden • El sistema más conocido es PATR II (Shieber)
Análisis con gramáticas de rasgos abiertas 2 • Representación de términos vs representación de FS. • representación naive FS • Gazdar,Mellish, 1989 • Boyer, 1988 • P-Patr, Hirsh, 1988 • Schöter, 1993 • Unificación de términos vs unificación de FS. • La unificación de términos es lineal • La unificación de Dags es O(n2)
Análisis con gramáticas de rasgos abiertas 3 the fish cat(+,-,3,_,_,2) the fish are colourful cat(+,-,3,pl,nom,2)
Análisis con gramáticas de rasgos abiertas 4 the fish cat(+,-,3,_,_,2) X : head : cat : n <== '+' X : head : cat : v <== '-' X : head : agr : per <== 3 X : bar <== 2
Análisis con gramáticas de rasgos abiertas 5 La representación de las estructuras de rasgos listas Prolog abiertas (Gazdar, Mellish) [cat: v arg0: [cat: sn caso: nom num: sing|_]|_] [cat:v, arg0:[cat:sn, caso:nom, num:sing|_]|_]
Notación Patr II 1 word pepe: <sin cat> = n <sin concordancia gen> = masc <sin concordancia num> = sing <sin concordancia persona> = 3 <sem> = pepe ...
Notación Patr II 2 let nombre-masc-sing be: <sin cat> = n <sin concordancia gen> = masc <sin concordancia num> = sing <sin concordancia persona> = 3. word pepe: nombre-masc-sing <sem> = pepe.
Herencia en Patr II let verbo be: <sin cat> = v <sin suj cat> = gn <sin suj caso> = nominativo. let vt be: verbo <sin obj1 cat> = gn <sin obj1 caso> = acusativo. let vdat be: vt <sin obj2 cat> = gprep <sin obj2 prep> = a. word reir: verbo <sem pred> = reir <sem arg1> = humano. (alguien ríe) word dar: vdat <sem pred> = dar <sem arg1> = humano <sem arg2> = cosa <sem arg3> = humano. (alguien da algo a alguien).
REGLAS EN Patr II X0 --> X1 X2 <X0 cat> = GN <X1 cat> = det <X2 cat> = n <X1 concord> = <X2 concord> <X0 concord> = <X1 concord>. GN --> det n <det concord> = <n concord> <GN concord> = <n concord>.
Gramáticas de rasgos con tipos Ejemplos: ALE, CUF, TFS, ALEP cada FS tiene asociado un tipo cada rasgo tiene asociado un tipo para sus valores la estructura de tipos suele ser prescrita bot sub [list, atom] list sub [e-list ne-list] e-list sub [] ne-list sub [] intro [hd:bot, tl:list] atom sub [a, b] a sub [] b sub []
Ejemplo gramática GPSG (Alvey) 1 FEATURE N{+, -} FEATURE V{+, -} FEATURE BAR{0, 1, 2} ... ALIAS N = [N +, V -, BAR 0] ... SET VHEAD = {N, V, PER, PLU, PAST, VFORM, AUX, INV} SET NHEAD = {N, V, PER, PLU, NTYPE, CASE, PRD} ...
Ejemplo gramática GPSG (Alvey) 2 WORD laughs : V[SUBCAT INTRANS, PLU -, PER 3, PAST -, VFORM FIN, AUX -, INV -] : laugh1. WORD laugh : V[SUBCAT INTRANS, PLU -, PER 1, PAST -, VFORM FIN, AUX -, INV -] : laugh1, V[SUBCAT INTRANS, PLU -, PER 2, PAST -, VFORM FIN, AUX -, INV -] : laugh1, V[SUBCAT INTRANS, PLU +, PAST -, VFORM FIN, AUX -, INV -] : laugh1, V[SUBCAT INTRANS, VFORM BSE, AUX -, INV -] : laugh1. ... PSRULE VP1 : VP --> H0[SUBCAT INTRANS] : 1. PSRULE VP2 : VP --> H0[SUBCAT TRANS] NP[CASE ACC, PRD -] : (lambda (x) (2 (lambda (y) (1 x y)))). PSRULE VP8 : VP --> H0[SUBCAT DITRANS] NP[CASE ACC, PRD -] NP[CASE ACC, PRD -] : (lambda (x) (3 (lambda (y) (2 (lambda (z) (1 x y z)))))). ...
HPSG usando ALE bot sub [sign,synsem,loc,cat,head,list,nonloc,pform,bool,cont,context,para,index, psoa,con_struc,pers,num,gen,case,vform,ontologia,morfo,wh_str,marking,xbar]. sign sub [word,phrase] intro [phon:list,synsem:synsem]. phrase sub [] intro [dtrs:con_struc]. ... cat sub [cat_subst,cat_funct] intro [head:head,subj:list,comps:list,mark:list,fill:list,adj:list, marking:bool,xbar:xbar]. ... synsem sub [synsemsubst,synsemfunct] intro [loc:loc,nonloc:nonloc]. synsemsubst sub [synsemnoun,synsemverb,synsemadj,synsemprep] intro [loc:locsubst]. synsemfunct sub [synsemdet,synsemmark]. synsemnoun sub [synsempropi,synsemcomu] intro [loc:locnoun].
Extensiones de los formalismos lógicos • Gramáticas de Extraposición • Definite Clause Translation Grammars • Gramáticas lógicas modulares • ...
Gramáticas de Extraposición Pereira, 1981: Fenómeno de la Extraposición izquierda "el peix que el gat menja es mou” [frase el peix quei [frase el gat menja ti] es_mou] marca traza
Posibles soluciones 1 frase --> sintagma_nominal, sintagma_verbal. sintagma_nominal --> nom_propi. sintagma_nominal --> det, nom, relatiu. sintagma_nominal --> det, nom, sintagma_prep. sintagma_nominal --> traça. traça --> []. sintagma_verbal --> verb, sintagma_nominal. sintagma_verbal --> verb. relatiu --> []. relatiu --> pron_rel, frase. sintagma_prep --> prep, sintagma_nominal. PROBLEMA: NO ES UNA SOLUCION, PERMITE EL SINTAGMA NOMINAL ELIDIDO FUERA DE LA ORACION DE RELATIVO
Posibles soluciones 2 frase_completa --> frase(nil). frase(F0) --> sintagma_nominal(F0,F1), sintagma_verbal(F1). sintagma_nominal(F0,F0) --> nom_propi. sintagma_nominal(F0,F0) --> det, nom, relatiu. sintagma_nominal(F0,F1) --> det, nom, sintagma_prep(F0,F1). sintagma_nominal(traza, nil) --> traza. traza --> []. sintagma_verbal(F0) --> verb, sintagma_nominal(F0,nil). sintagma_verbal(nil) --> verb. relatiu --> []. relatiu --> pron_rel, frase(traza). sintagma_prep(F0,F1) --> prep, sintagma_nominal(F0,F1). PROBLEMA: MULTIPLICACION DE ARGUMENTOS
Posibles soluciones 3 frase --> sintagma_nominal, sintagma_verbal. sintagma_nominal --> nom_propi. sintagma_nominal --> det, nom, relatiu. sintagma_nominal --> det, nom, sintagma_prep. sintagma_nominal --> traça. traça --> []. sintagma_verbal --> verb, sintagma_nominal. sintagma_verbal --> verb. relatiu --> []. relatiu --> marca_rel, frase. sintagma_prep --> prep, sintagma_nominal. marca_rel ... traça --> pron_rel. Regla de extraposición