Académique Documents
Professionnel Documents
Culture Documents
Aplicaciones
Traduccin automtica Interfaces de usuario Acceso a bases de datos Bsqueda y filtrado de informacin, etctera
Semntica: Los nios compraron el libro de Peter Pan. Referencial: El jamn est en el armario. Scalo. Cirralo.
Requiere mucho conocimiento: objetivos del hablante, hiptesis, contexto... No es mera transmisin de palabras...
IAIC Curso 2005-06 Tema 4 - 2
Morfologa
Estructura de las palabras (morfemas): gnero, nmero...
Sintaxis
Combinacin de palabras que producen frases
Semntica
Significado de palabras + estructura de frase: significado de frase (normalmente, independiente del contexto)
Pragmtica
Significado de frase + contexto: significado ms profundo
Proceso de comprensin
Comprensin: proceso de correspondencia de una forma de entrada a otra representacin ms til para una cierta tarea Suele requerir 4 fases
Estas fases suelen tener lmites difusos No todos los sistemas trabajan con las 4 fases necesariamente Anlisis morfo-lxico
El texto se separa en unidades lxicas con significado (lexemas)
Se obtienen los lexemas y morfemas gramaticales Se les asignan una o varias categoras sintcticas (si ambigedad)
Anlisis sintctico
Se comprueba la correccin de una frase con respecto a las reglas del lenguaje (gramtica) Se convierte la secuencia (lineal) de unidades lxicas en estructuras sintcticas (no lineales)
IAIC Curso 2005-06 Tema 4 - 4
Proceso de comprensin
Anlisis semntico
Se asigna significado a una frase Correspondencia entre estructuras sintcticas y objetos del dominio representados en algn lenguaje de representacin del conocimiento
Se descartan las estructuras sintcticas para las que no pueda hacerse esta correspondencia
Anlisis pragmtico
Hasta esta fase el anlisis se hace a nivel de frase. Aqu, pasan a considerarse prrafos enteros o incluso textos de forma global La mayora de los sistemas reales no la incluyen Se resuelven las referencias relativas al contexto (ambigedades referenciales, como por ej. referentes de un pronombre) y se asigna significado global a un conjunto de frases
Tema 4 - 5
Proceso de comprensin
Dependiendo de las aplicaciones puede no ser necesario realizar todas las fases Tampoco es necesario el desarrollo secuencial de las fases
Puede ser necesario hacer alguna vuelta atrs Propagar de una fase a la siguiente todas las alternativas: algunas se descartarn Hay casos en los que se realiza un anlisis sintctico seguido de un anlisis semntico totalmente independientes En otros casos se realiza un anlisis sintctico semntico en una sola etapa, dirigido por la sintaxis En algunos sistemas se realiza un anlisis semntico y la sintaxis juega un papel secundario Tambin se utiliza una arquitectura de pizarra (memoria compartida entre los distintos mdulos). En cada momento acta sobre la pizarra el mdulo de anlisis ms conveniente
IAIC Curso 2005-06 Tema 4 - 6
Anlisis morfo-lxico
Se basa en
Diccionarios (lexicones) Reglas morfolgicas (derivaciones de palabras)
Dificultades
Polisemia: palabra con varios significados
Ej.: banco (dinero, sentarse, ro, peces)
Diccionarios
En los diccionarios se guardan distintos tipos de informacin:
Categora sintctica
Categoras cerradas (preposiciones, conjunciones, etc.) Categoras abiertas (nombre, adjetivo, verbo) Si una palabra tiene varias categoras, tiene que aparecer para cada una de ellas
Concordancia
Gnero, nmero, persona, caso
Preposiciones que admite un verbo, tipos de complementos, etc. Informacin morfolgica (patrn de formacin de la palabra) Informacin semntica
Concepto correspondiente, palabras sinnimas Comprensin:
Diccionarios
Los diccionarios se suelen organizar utilizando relaciones de herencia mltiple, tanto de tipo gramatical como conceptual La construccin se realiza de forma manual o semi-automtica a partir de una ontologa de conceptos bajo la cual se van colocando las palabras Se implementan con tablas hash, tries o rboles B
Tries: rboles para la recuperacin de palabras (re / trie / val)
Tema 4 - 9
Organizacin de palabras en una jerarqua de unos 12 niveles que permite la herencia (basada en ideas de redes semnticas)
Hay 4 categoras sintcticas: nombre, verbo, adjetivo y adverbio Hay palabras que estn repetidas en ms de una categora sintctica (homonimia) Una palabra puede tener varios significados (polisemia) y para cada uno de ellos se da una lista de sinnimos (synset)
IAIC Curso 2005-06 Tema 4 - 11
Tema 4 - 12
Tema 4 - 13
Tema 4 - 14
Tema 4 - 15
Anlisis sintctico
Deslinearizacin de una frase, determinando las funciones que realizan las palabras que la componen, para obtener as una estructura jerrquica que permita asignarle significado El significado de una frase depende en gran medida del orden de sus palabras Cada lenguaje natural tiene sus propias reglas en cuanto a la aceptabilidad de las posibles combinaciones de palabras como frases vlidas
Estas reglas se suelen representar en forma de gramticas
Gramticas
Una gramtica G se define como una cudrupla (VN, VT, P, S) donde
VN: vocabulario no terminal VT: vocabulario terminal (disjunto del anterior) P: conjunto finito de producciones (reglas de reescritura) S: smbolo inicial perteneciente a VN Cada produccin es de la forma X Y, siendo
X e Y cadenas de smbolos de V VN VT X cadena no vaca
Una gramtica describe las estructuras vlidas del lenguaje que denota
Se usan aqu para el anlisis sintctico de las frases El resultado puede ser uno o varios rboles sintcticos
Tema 4 - 17
Tipos de gramticas
Jerarqua de Chomsky (1957):
Gramticas tipo 0 (Recursivamente enumerables)
Sin restricciones en cuanto a la forma de las producciones Equivalentes en potencia expresiva a las mquinas de Turing
Tema 4 - 18
Existen muchos mecanismos eficientes de parsing para este tipo de gramticas (tipo 2 y 3) Lo ms habitual en el procesamiento del lenguaje natural es utilizar gramticas independientes del contexto con algn tipo de extensin
Estas caractersticas adicionales las dotan de mayor capacidad expresiva y cambian su lugar en la jerarqua
IAIC Curso 2005-06 Tema 4 - 19
Tema 4 - 20
Mtodo hbrido: ascendente con filtro descendente La salida puede no ser una nica estructura (si hay ambigedad sintctica y se quieren varias respuestas)
IAIC Curso 2005-06 Tema 4 - 21
Ambigedad sintctica
Ejemplo
Como todos los das... No se ha analizado toda la frase: conjuncin o verbo? Podra aclararse al seguir leyendo
Como todos los das llegas tarde / Como todos los das ensalada
Hay varias alternativas para lidiar con esto en la implementacin de los analizadores sintcticos
O se contempla el backtracking
Costoso tambin por cmputos duplicados
Ambigedad sintctica
F GN N Juan V come GV GN N arroz P con GP GN N palillos
Este anlisis es correcto desde el punto de vista sintctico. Adems es vlido semnticamente porque los palillos son un instrumento y no algo comestible
IAIC Curso 2005-06 Tema 4 - 23
Ambigedad sintctica
F GN N Juan V come N arroz P con GV GN GP GN N palillos
Este anlisis es correcto desde el punto de vista sintctico, pero no desde el punto de vista semntico. Lo sera para una frase como Juan come arroz con pimientos
IAIC Curso 2005-06 Tema 4 - 24
Anlisis sintctico
Tipos de analizadores sintcticos ms usados en sistemas de tratamiento del lenguaje natural
Gramticas aumentadas
Extensin de las GICs (p.ej. para concordancia) Formalismo Parte del anlisis Reconocimiento (encaje) Construccin de la estructura de frase
IAIC Curso 2005-06
ATNs (redes con transiciones aumentadas) Comprobacin categoras de palabras y tests asociados a los arcos Asignacin
Gramticas de unificacin
Unificacin
Unificacin
Tema 4 - 25
Gramticas de unificacin
Las gramticas de unificacin o gramticas lgicas utilizan el mecanismo de unificacin como base para el proceso de anlisis
Este mecanismo es mucho ms potente que los mecanismos de comparacin y asignacin utilizados en las ATNs y adems no requiere que el rbol de derivacin de una parte de la frase est completado antes de empezar a analizar la siguiente
Las gramticas de unificacin se utilizan, adems de en el anlisis sintctico, en otros anlisis como el morfolgico y el semntico Las gramticas de clusulas definidas (DCGs) son uno de los tipos de gramticas de unificacin ms utilizados
Forman parte del Prolog estndar Se concibieron como una generalizacin ejecutable de las GICs
Tema 4 - 27
Las DCGs incluyen una serie de extensiones que permiten representar caractersticas dependientes del contexto y que les confieren una potencia expresiva equivalente a las mquinas de Turing
IAIC Curso 2005-06 Tema 4 - 28
Tema 4 - 31
frase(A, B) :-
Tema 4 - 32
DCGs
El uso de DCGs no requiere conocer su traduccin a Prolog
Siempre podemos ver el resultado del proceso de traduccin automtico a clusulas Prolog usando el predicado listing/0 Lo importante es saber que para hacer consultas hemos de aadir 2 parmetros extra al final (de los cuales, el ltimo siempre es [ ]) En el ejemplo anterior, comprobamos si una frase es correcta: ?- frase([juan, come, manzanas], []). O generamos todas las frases correctas (derivables): ?- frase(X, []). X= [manzanas, come, manzanas] ; X= [manzanas, come, juan] ; X= [manzanas, come] ; X= [juan, come, manzanas] ; X= [juan, come, juan] ; X= [juan, come] ;
IAIC Curso 2005-06
No
Tema 4 - 33
Esto aumenta su utilidad y potencia expresiva, convirtiendo a las GICs en una nueva clase de gramticas ejecutables: las DCGs
Permiten representar restricciones de concordancia, obtener el rbol de anlisis y facilitar otras tareas relacionadas con el anlisis
Las ideas para la traduccin automtica a programas Prolog son las mismas
Los smbolos no terminales, que pueden tener ahora aridad n, se convierten en predicados n+2-arios
Los 2 parmetros extra son la lista diferencia y siempre son los ltimos
IAIC Curso 2005-06 Tema 4 - 34
Mismo uso:
IAIC Curso 2005-06
Tema 4 - 36
Tema 4 - 37
Llamadas a predicados
Otra extensin consiste en incorporar requisitos de satisfaccin de predicados Prolog en la parte derecha de las reglas Estos predicados actan como llamadas a procedimientos externos a la gramtica Deben distinguirse sintcticamente para evitar que sean considerados como categoras sintcticas por el preprocesador de DCGs
Si no, les aadira los dos argumentos habituales, y probablemente resultara en un error de ejecucin Por ello las llamadas a predicados Prolog se colocan entre llaves en las reglas Su traduccin a Prolog es directa: se mantienen tal cual (eliminando las llaves)
Tema 4 - 39
Llamadas a predicados
Ejemplo de uso en construccin de diccionarios:
En vez de nombre(n(manzanas)) --> [manzanas]. nombre(n(juan)) --> [juan]. Conviene poner nombre(n(P)) --> [P], {es_nombre(P)}. es_nombre(manzanas). es_nombre(juan).
De esta forma, la implementacin del diccionario se hace en forma de hechos y no mediante reglas que haran crecer innecesariamente el tamao de la gramtica
IAIC Curso 2005-06 Tema 4 - 40
Llamadas a predicados
Ejemplo de uso para comprobacin de preposiciones permitidas por verbos (sub-categorizacin de verbos)
frase --> nombre_propio, verbo(X), complemento(X). complemento([]) --> []. complemento([X]) --> preposicin(X), nombre_propio. verbo(C) --> [P], {es_verbo(P, C)}. nombre_propio --> [P], {es_nombre_p(P)}. preposicin(P) --> [P], {es_prepo(P)}.
es_prepo(en). es_prepo(con).
Tema 4 - 41
Llamadas a predicados
Si queremos que haya ms de un complemento:
complemento([]) --> []. complemento([X|Xs]) --> preposicin(X), nombre_propio, complemento(Xs). es_verbo(habla, [de, con]). es_prepo(de). Siempre: ... habla de ... con ... % cambio % se aade
Si se quiere que haya ms flexibilidad en el orden de los complementos y que algunos puedan ser opcionales, hay que recurrir a un tratamiento de listas ms elaborado, utilizando por ejemplo el predicado member/2
IAIC Curso 2005-06 Tema 4 - 42
Anlisis semntico
El rbol de anlisis sintctico de una frase es tan slo el primer paso hacia la comprensin de la frase Hay que producir una representacin de su significado
Comprensin del LN: proceso de correspondencia de una forma de entrada a otra representacin de salida til para una cierta tarea No existe El Lenguaje en el que representar todos los significados
Cualquiera de los sistemas de representacin vistos sera un candidato Y an nos faltara definir el vocabulario que se utilizar (los predicados concretos, los marcos o lo que corresponda...)
Su eleccin depende de lo que haya que hacer con los significados una vez construidos
Aplicacin de LN: lenguaje objeto diseado para procesar LN
Con primitivas como las de las DCs o CYC
Anlisis semntico
El objetivo de interpretacin semntica que se plantea depende totalmente de la aplicacin a desarrollar
Aplicacin Interfaz en LN a Base de Datos Interfaz Sistema Operativo Sistema de dilogo Analizador de noticias Sintetizador de textos Traductor Automtico Sistema de comprensin de texto
IAIC Curso 2005-06
Salida Lenguaje de consulta BD rdenes del SO Respuesta adecuada en LN Relleno de una plantilla Texto en LN Texto en LN Lenguaje de representacin de conocimiento
Tema 4 - 44
Anlisis semntico
Tipos de aplicaciones
Ms simples: salida producida directamente a partir de la entrada Ms complejas: se usa representacin intermedia del significado
Anlisis semntico
Procesamiento lxico: buscar las palabras en un diccionario y desambiguar (en lo posible) teniendo en cuenta el contexto local
Las conexiones estructurales entre la estructura sintctica y la semntica permiten seleccionar entre los distintos posibles resultados del anlisis sintctico: slo aquellos cuyo significado tenga sentido
peg_a Juan
IAIC Curso 2005-06
Miguel
Tema 4 - 46
Encaje de patrones
Es un mecanismo muy primitivo utilizado en sistemas como ELIZA que simulaba un psiclogo No se puede considerar una verdadera interpretacin semntica, ya que slo daba respuestas aparentemente adecuadas en funcin de los patrones que haba reconocido
No hay comprensin
Por ejemplo:
Patrn X always Y X you Y me I remember X Respuesta Can you think of a specific example? Why do you think I Y you? Why do you remember X just now?
Tema 4 - 47
Paciente: People always stare at me Eliza: Can you think of a specific example? Paciente: For instance you keep staring at me Eliza: Why do you think I keep staring at you? En ingls funciona mejor por el tipo de morfologa del idioma
IAIC Curso 2005-06 Tema 4 - 48
Gramticas semnticas
Incorporan conocimiento sintctico, semntico y pragmtico en un conjunto de reglas que constituye una gramtica
El resultado del anlisis es una descripcin semntica de la frase
Simplifican muchos aspectos (concordancias, ...) Se utilizan en interfaces a programas como bases de datos, sistemas expertos, sistemas operativos, etc. Por ejemplo, el sistema LIFER para acceso a una base de datos sobre barcos
En la pregunta hay que identificar por qu atributo me estn preguntando y por qu barco concreto
Tema 4 - 49
Sistema LIFER
Gramtica:
pregunta --> comienzo, [the], atributo, [of], barco. comienzo --> [what,is]; [tell,me]; [can,you,tell,me]. atributo --> [length]; [beam]; [class]. barco --> [the], nombrebarco; nombreclase, [class, ship]. nombrebarco --> [kennedy]; [enterprise]. nombreclase --> [kitty,hawk]; [lafayette]. atributo y barco es lo que interesa (no categoras sintcticas)
Tema 4 - 50
Sistema LIFER
En Prolog:
?- pregunta([what, is, the, length, of, the, kennedy], []).
Como lo que queremos es construir una interfaz a la base de datos, no basta con analizar la frase sino que hay que devolver (o producir) el nombre del barco y la caracterstica por la que se pregunta Supongamos que la base de datos tambin est implementada en Prolog
barco_atrib_val(kennedy, length, 1200). barco_atrib_val(kennedy, beam, 250). barco_atrib_val(kennedy, class, lafayette). barco_atrib_val(enterprise, length, 1100). ...
IAIC Curso 2005-06 Tema 4 - 51
Sistema LIFER
La gramtica quedara (con acciones semnticas):
pregunta(Nombre, Atributo) --> comienzo, [the], atributo(Atributo), [of], barco(Nombre). comienzo --> [what,is]; [tell,me]; [can,you,tell,me]. atributo(Atributo) --> [Atributo], {es_atributo(Atributo)}. barco(Nombre) --> [the], nombre_barco(Nombre); nombre_clase(Nombre), [class,ship]. nombre_barco(Nombre) --> [Nombre], {es_nombre_barco(Nombre)}. nombre_clase(Nombre) --> [Nombre], {es_nombre_clase(Nombre)}.
IAIC Curso 2005-06 Tema 4 - 52
Sistema LIFER
Y el diccionario as:
es_atributo(Atributo):- barco_atrib_val(_, Atributo, _), !. es_nombre_barco(Nombre):barco_atrib_val(Nombre, _, _), !. es_nombre_clase(Nombre):barco_atrib_val(_, class, Nombre), !.
Una vez analizada la pregunta hay que hacer la consulta a la B.D. barco_atrib_val(Nombre, Atributo, Val) y escribir Val Por ejemplo
procesa_pregunta(Xs) :pregunta(Nombre, Atributo, Xs, []), barco_atrib_val(Nombre, Atributo, Val), write(El valor del atributo es ), write(Val). ?- procesa_pregunta([what,is,the,length,of,the,kennedy]).
IAIC Curso 2005-06
Tema 4 - 53
Ventajas e inconvenientes
Mtodo eficiente para la interpretacin del LN en dominios reducidos, eliminando mucha ambigedad sintctica
El resultado del anlisis se puede usar inmediatamente
En el ejemplo, se han juntado todas las fases en una puesto que slo interesa el resultado del anlisis semntico Y se ha hecho la conexin con la B.D. inmediatamente
Carecen de abstracciones sintcticas, por lo que muchas construcciones similares se repiten en distintas categoras semnticas. Debido a ello, crecen demasiado rpidamente
Al poder necesitarse muchas reglas, el proceso de anlisis puede resultar muy costoso
Ventajas e inconvenientes
Tras muchos experimentos de uso de gramticas semnticas en una gran variedad de dominios, las conclusiones fundamentales parecen ser
Gran utilidad para producir interfaces restringidas para el LN muy rpidamente Pero no ofrecen una solucin global al problema de la comprensin del lenguaje natural
Imposibilidad de capturar generalizaciones lingsticas importantes
Tema 4 - 55
Gramticas de casos
Aproximacin alternativa a la combinacin de las interpretaciones sintctica y semntica
Se usan reglas para describir las regularidades sintcticas Las estructuras producidas por las reglas se corresponden con relaciones semnticas en lugar de sintcticas
Se realiza un anlisis de la frase para determinar los distintos casos gramaticales (papeles o roles) que juegan las palabras que la componen (agente, objeto, lugar, etc.). El significado de una frase suele representarse con un marco cuya cabeza es el verbo principal y cuyos slots se corresponden a los distintos casos
imprimi agente: Susana objeto: Archivo
IAIC Curso 2005-06 Tema 4 - 56
Gramticas de casos
El objetivo es que distintas frases que significan lo mismo (distintos rboles sintcticos, misma semntica) deberan representarse con un mismo marco
Susana imprimi el archivo El archivo fue impreso por Susana
imprimi agente: Susana objeto: Archivo
Gramticas de casos
Por ejemplo, la frase En el ro Juan pesc una trucha para Pedro con una caa podra dar como resultado del anlisis:
[PESCAR [frame de casos agente: JUAN objeto: TRUCHA instrumento: CAA lugar: RO beneficiario: PEDRO] [forma verbal tiempo: pasado voz: activa] ]
IAIC Curso 2005-06 Tema 4 - 58
Gramticas de casos
Se pueden considerar las dependencias conceptuales como un tipo particular de gramtica de casos con la restriccin de representar exclusivamente primitivas semnticas
A veces, se llama anlisis conceptual Guiado por un diccionario que describe los significados de las palabras como estructuras de dependencia conceptual
Por ejemplo:
Juan dio un libro a Mara
[ATRANS rel: POSESIN actor: JUAN objeto: LIBRO origen: JUAN receptor: MARA]
IAIC Curso 2005-06
Gramticas de casos
Se extrae el verbo principal y el sujeto
Se localiza el verbo en el diccionario: varias posibles entradas
Se analiza el resto de la frase buscando componentes para rellenar las ranuras vacas de la estructura verbal En los marcos de casos se suelen representar explcitamente ciertas heursticas (marcadores) sobre cmo localizar el caso en la frase junto con restricciones sobre sus posibles valores
Marcadores posicionales: sirven para establecer cul es la posicin habitual del caso dentro de la frase
Ejemplo: el objeto de la frase suele ser el complemento directo, el cual suele ser el primer nombre tras el verbo
Marcadores semnticos: establecen restricciones sobre los valores que puede tomar un caso
Ejemplo: un actor es un ser animado
IAIC Curso 2005-06 Tema 4 - 60
Tendencia actual
Utilizar un nico formalismo de representacin de gramticas, como DCGs, que permita representar todas las caractersticas lxicas, sintcticas y semnticas como restricciones
Tema 4 - 62
Anlisis pragmtico
Anlisis de los textos de forma global
La mayora de los sistemas reales no lo incluyen
Tema 4 - 63
Anlisis pragmtico
Tratamiento de las anforas
Tcnicas basadas en mantener el foco de atencin
Los pronombres sucesivos se sustituyen por el foco de atencin ms cercano que concuerde sintctica y semnticamente Se mantiene la lista de entidades del discurso que se han referenciado en las ltimas frases
Tema 4 - 64
Anlisis pragmtico
Ms clases de fenmenos del lenguaje
Elipsis: omitir partes de la frase que tienen que completarse a partir del contexto para determinar el significado
Por ejemplo, sujeto omitido Juan perdi su perro. Paco tambin.
Construcciones extra-gramaticales
No respetan la gramtica aunque podemos darle significado
Construcciones metalingsticas
Referencias a frases anteriores Aunque dije que iba a llover realmente no lo parece
Anlisis pragmtico
Se necesita un conocimiento del dominio muy profundo para entender las relaciones entre distintas frases. Los programas que lo consiguen
O bien cuentan con unas bases de conocimiento muy grandes O bien el dominio de discurso est tan restringido que basta con una base de conocimiento ms limitada
La forma en la que se organiza el conocimiento es crtica para que los sistemas tengan xito en esta fase
Tema 4 - 66
Dos componentes
Mdulo estratgico
Cubre la generacin profunda del lenguaje Se ocupa de qu decir Depende totalmente de la aplicacin
Mdulo tctico
Generacin superficial del lenguaje Se ocupa de cmo decirlo
IAIC Curso 2005-06 Tema 4 - 67
Modelos de usuario
La informacin que vamos a presentar depende del usuario Permiten tener en cuenta
Lo que sabe el usuario Para qu va a usar la informacin el usuario Los modelos de usuario estticos no cambian Los modelos dinmicos son aqullos en los que el conocimiento del usuario va cambiando.
Estticos o dinmicos
Tema 4 - 68
Seleccin sintctica
Elegir qu tipo de frases voy a usar Basada en el uso de DCGs
Tema 4 - 69
Tema 4 - 70
Ejemplo: Sesiones bilinges del parlamento canadiense Anotamos a mano varios significados El sistema estadsticamente determinar el ms probable en la siguiente aparicin
Desambiguacin lxica
Tema 4 - 71
Ej.: 50.000 frases del Wall Street Journal Gramticas probabilsticas independientes del contexto Creamos una plantilla con campos preestablecidos que se rellenarn automticamente a partir de un texto plano Fase de entrenamiento + fase de aprendizaje basada en los ejemplos previos (que deben ser similares)
Extraccin de informacin
Los sistemas que utilizan mtodos empricos necesitan una fase de entrenamiento en la que se les debe proporcionar un nmero suficiente de ejemplos No todos los enfoques empricos utilizan mtodos estadsticos
Algunos usan mtodos simblicos de aprendizaje inductivo
IAIC Curso 2005-06 Tema 4 - 72
Los documentos a analizar tienen que ser muy similares a los del corpus de entrenamiento Han prosperado mucho debido a las competiciones organizadas por el Ministerio de Defensa americano Si es necesario construir un corpus especfico para un dominio entonces suele ser pequeo no vlido estadsticamente
Tema 4 - 73
Tema 4 - 74