PROBLEMAS ACTUALES DE LINGÜÍSTICA COMPUTACIONAL
GRIGORY SIDOROV
El artículo describe en términos muy generales los problemas que enfrenta la lingüística computacional. El enfoque del artículo es mostrar qué tipo de problemas existen en diferentes niveles del lenguaje natural (fonética/fonología, morfología, sintaxis, semántica y pragmática) y en procesamiento automático de textos, así como dar algunos ejemplos de aplicaciones en que se usa el conocimiento lingüyístico. Aquí describimos brevemente un sistema de clasificación de textos, un buscador inteligente y un sistema de análisis sintáctico (parser).
[English]
Artículo
1. INTRODUCCIÓN
Los seres humanos tenemos características que nos hacen ser lo que somos. Una de estas características más importantes, es el dominio del lenguaje natural. Es difícil imaginar algunas actividades intelectuales que no involucren frases en algún idioma.
La humanidad posee una gran cantidad de conocimientos. La mayor parte de ellos tiene una forma simbólica, es decir, la representación de textos. En la época moderna, la humanidad ha obtenido un instrumento muy importante: la computadora, la cual ha transformado totalmente nuestro mundo en sólo los últimos diez años. Tal vez este cambio no es tan obvio para nosotros, porque las conversiones pasan día tras día, pero si comparamos la vida de hoy con la de hace 10 años, tenemos que la intervención revolucionaria de las computadoras es obvia.
Aunque son ayudantes valiosos, las computadoras no pueden ser usadas todavía como una herramienta que sustituya a los seres humanos en áreas que requieren la aplicación de conocimientos. Si fuera posible dar a las computadoras la posibilidad de entender de alguna forma los textos, que es equivalente a darles el acceso a todo el conocimiento de la humanidad, se estaría dando un paso nuevo en el desarrollo de nuestra civilización.
La ciencia que se ocupa de la forma como usamos el lenguaje natural, es decir, entender las frases de otras personas, así como formular nuestros pensamientos y transmitirlos, se llama lingüística. Si hablamos de la ciencia que trata de los modelos computacionales del lenguaje natural y cómo hacer entender a las computadoras los idiomas humanos, nos referimos a la lingüística computacional. También el término Procesamiento del Lenguaje Natural (NLP en inglés, Natural Language Processing) es usado frecuentemente.
En este artículo hablamos sobre los problemas que, en general, ahora son actuales en las áreas distintas a la lingüística computacional, los cuales corresponden a los tradicionales niveles del lenguaje. También hablamos de los problemas más específicos y presentamos unas soluciones para ellos.
2. NIVELES DE LENGUAJE
Tradicionalmente, el lenguaje natural está constituido en cinco niveles:
Fonética/fonología
Morfología
Sintaxis
Semántica
Pragmática
Morfología
Sintaxis
Semántica
Pragmática
Las diferencias entre los niveles se basan en las distintas entidades Lingüísticass, de acuerdo al enfoque de análisis en cada nivel.
2.1. Fonética/fonología
La fonética es la parte de la Lingüística que se ocupa de la exploración de las características del sonido, factor esencial del lenguaje. Por esta razón los métodos de la fonéticaca son físicos en su mayoría. Gracias a esto, su posición en la lingüísticaa es bastante aislada.
Los problemas en fonética computacional están conectados al desarrollo de sistemas de análisis y síntesiss del habla. Aun cuando hay sistemas de reconocimiento de voz (la computadora puede reconocer palabras dichas en el micrófono), el porcentaje de palabras identificadas correctamente es todavía bastante bajo. Entre sistemas de generación de voz hay mucho más progreso: existen algunos que hablan bastante bien, sin "acento de robot", basados en síntesis compilativas, aunque su área de aplicación es bastante restringida.
A la fonología le interesa la posición del sonido en el sistema de sonidos del idioma, es decir, las relaciones con otros sonidos y sus implicaciones. Por ejemplo, los japoneses no pueden distinguir entre [l] y [r]; los extranjeros hablan el español con un acento fuerte al decir [rr] en lugar de [r]), y los españoles, usualmente, tienen un acento al hablar ciertos idiomas, pues no pueden pronunciar [l duro]. La respuesta es la misma: en sus idiomas nativos no existen oposiciones entre estos fonemas. Las diferencias que parecen muy grandes para quienes hablan otros idiomas, en realidad son insignificantes para ellos. En japonés no existe el fonema [l]. En la mayoría de los idiomas existe sólo un fonema para [r]-[rr] y, por lo tanto, no importa su duraciónn (en el español, al contrario). En español no existe el fonema [l duro], sólo [l suave].
2.2. Morfología
La morfología se ocupa de la estructura interna de las palabras (sufijos, prefijos, raíces y flexiones) y el sistema de categorías gramaticales de los idiomas (género, número, etcétera). Hay lenguajes que tienen bastantes diferencias con el español. Por ejemplo, enárabe, la raíz contiene tres consonantes. Asimismo, las variantes de una palabra se construyen con la inserción de vocales entre las consonantes (KiTaB - el libro, KaTiB - leyendo). En suahili hay una categoría de sustantivos, llamada "tipo de concordancia", en la que todas las palabras dependientes del sustantivo tienen el prefijo de éste. Los prefijos dependen del "tipo" de sustantivo. Aunque hay un parecido al género en español, hay más valores en esta categoría y la mayoría de sustantivos tiene su semántica correspondiente.
Los problemas de morfología computacional estánn relacionados con el desarrollo de los sistemas de análisis y síntesis automático morfológico. Aun el desarrollo de tales m´dulos es bastante difícil, porque hay que hacer grandes diccionarios de raíces (alrededor de 100 000). En general existe la metodología para tal desarrollo. Existen sistemas funcionando para muchos idiomas. Lo que falta aquí es un estándar. Por eso, frecuentemente, los investigadores crean de nuevo tales módulos, "reinventando la bicicleta".
2.3. Sintaxis
La sintaxis se ocupa de estudiar las relaciones entre las palabras de la frase. Existen dos modelos para representar tales relaciones: dependencias, en que las relaciones se marcan con las flechas (ver por ejemplo, Melchuk, 1988) y constituyentes, en que las relaciones existen en forma de árboll. El personaje principal, fundador de la "lingüística generativa", es N. Chomsky (ver por ejemplo, en españoll, Morales, 1974).
La sintaxis computacional debe tener métodos automáticos para análisis y síntesis, es decir, para construir la estructura de la frase por la frase, o generar la frase con base en su estructura. El desarrollo de los generadores es una tarea mucho más fácil, y está más o menos claro qué algoritmos son necesarios en estos sistemas. Al contrario, en el desarrollo de los analizadores sintácticos (se llama parser), todavía es un problema, especialmente para los idiomas que no tienen un orden de palabras fijo, como en el español (en ingléss, el orden de las palabras es fijo. Por eso las teorías basadas en inglés no son fáciles de adoptar al español). Vamos a ver un ejemplo de parser en las secciones siguientes.
2.4. Semántica
El propósitoo de la semántica es "entender" la frase: ¿Pero qué significa "entender"? Es obvio que hay que saber el sentido de todas las palabras y dar las interpretaciones a las relaciones sintácticas. Ahora los investigadores están más o menos de acuerdo en que los resultados del análisis semántico, deben ser las redes semánticas, donde se representan todos los conceptos y relaciones entre ellos. Entonces es necesario saber transformar el árbol sintáctico en la red semántica. Ese problema todavía no tiene una solución general.
Definir los sentidos de las palabras en sí ya es muy difícil, porque existe polisemia. Por ejemplo, "gato" es un felino y tambiénn un instrumento. Entonces, el problema es encontrar todos los sentidos y hacer separaciones entre ellos. A eso se dedica una parte de la semántica, que se llama lexicografía. Los resultados en este tipo de investigaciones, se encuentran en forma de diccionarios.
As, los problemas de semántica computacional son muy interesantes, pero todavía no tienen soluciones para la definiciónn de palabras y la construcción de redes semánticas. Mucho menos éxito hay si hablamos de representación de conocimientos en general.
2.5. Pragmática
Usualmente dicen que la pragmática trata de las relaciones entre la oración y el mundo externo. El ejemplo famoso es: si estamos comiendo juntos y yo le pregunto si usted puede pasarme la sal, usted contesta que sí y sigue comiendo. Seguramente la respuesta es formalmente correcta, porque usted de verdad puede pasarme la sal y esa fue la pregunta, pero la intención fue pedir la sal y no preguntar sobre la posibilidad de eso.
Otro ejemplo lo tenemos en una clase de oraciones que tienen una característica muy interesante. Ellas son las acciones por sí mismas (se llaman performativos). Por ejemplo, decir "prometo" es igual a prometer.
Como ya tenemos muchos problemas en la semántica, no podemos continuar el análisis en el nivel siguiente. Así que aún hay que tomar esto en cuenta.
3. PROCESAMIENTO DE TEXTOS
Suponemos que podemos hacer un procesamiento parcial de los cinco niveles de lenguaje. ¿Qué aplicaciones pueden tener los resultados en el procesamiento de textos? Los siguientes parecen ser los más importantes (aquí no hablamos de cosas que ya son una rutina, como correctores ortográficos, etcétera):
Generación automática de resúmenes
Clasificación automática de los documentos
Búsqueda inteligente en bases de datos (incluyendo Internet)
Traducción automática
Clasificación automática de los documentos
Búsqueda inteligente en bases de datos (incluyendo Internet)
Traducción automática
Es obvio que para hacer todo esto, el sistema debe entender el texto. En la época moderna existen sistemas que hacen ese tipo de funciones, pero usualmente usan unas heurísticas y no implementan toda la cadena de análisis.
En el procesamiento de textos hay un problema muy importante: la resoluciónn de correferencia. A veces las relaciones de correferencia se llaman anafóricas (ver Gelbukh and Sidorov, 1999; Mitkov, 1997 y Hirst, 1981).
Hay dos casos principales de relaciones de correferencia:
(1) la correferencia directa, como en el discurso: "he visto una nueva casa ayer. Su cocina era excepcionalmente grande" (su = de la casa), y
(2) la correferencia llamada indirecta, como en el discurso: "he visto una nueva casa ayer. La cocina era excepcionalmente grande" (la cocina = de la casa) (ver ejemplo de Chafe, 1974).
En el último caso, la relación de correferencia se sostiene conceptualmente entre las dos palabras diferentes, cocina y casa. Nótese que no hay ninguna correferencia explícita entre estas dos palabras. La correferencia se sostiene entre la palabra cocina en el texto y la palabra cocina, que está introducida implícitamente en el discurso por la palabra casa.
4. UN CLASIFICADOR DE TEXTOS
Vamos a describir brevemente un sistema desarrollado en el Centro de Investigacin en Computación del IPN.
En la Ilustración 1 se presenta el resultado del funcionamiento del sistema Classifier. El sistema determina los temas principales del documento y los muestra como una histograma. Se nota que para el texto de que se trata, de Rabin y Arafat, el tema principal es "soldados y vida militar". Para detectar esto se hace un análisis de frecuencias de palabras, con el uso del diccionario jerárquico de conceptos, que se puede ver en la Ilustración 2. Las palabras "votan" por algún tema. La estructura del diccionario, en forma del árboll, permite hacer propagaciones de temas para los nodos no-terminales. En la parte derecha de la Ilustración 2, están presentes las palabras que se asocian con el nodo terminal. En este caso están en inglés, pero el sistema por el momento soporta también el español y el francés. La descripción detallada se encuentra en Gelbukh, et. al., 1999). (Figura 1.)
5. UN BUSCADOR "INTELIGENTE"
Vamos a hablar sobre un sistema desarrollado en el Centro de Investigaciónn en Computación del IPN, para el Senado de la República Mexicana. El sistema permite enriquecer la petición del usuario, dependiendo del modo que el mismo elija. Entonces, la búsqueda con este sistema da la posibilidad de encontrar palabras, que son pertinentes, lo que con el buscador normal no seria posible. Entonces, cierto nivel de inteligencia del sistema se asegura con el uso de los diccionarios bastante grandes (de 10-20 megabytes cada uno). Por ejemplo, el diccionario de los sinónimos más lejanos contiene 65 378 entradas y 1 927 976 palabras en total. A cada modo (opción) del sistema le corresponde el uso de un diccionario.Vamos a hablar sobre un sistema desarrollado en el Centro de Investigación en Computación del IPN, para el Senado de la República Mexicana. El sistema permite enriquecer la petición del usuario, dependiendo del modo que el mismo elija. Entonces, la búsqueda con este sistema da la posibilidad de encontrar palabras, que son pertinentes, lo que con el buscador normal no seria posible. Entonces, cierto nivel de inteligencia del sistema se asegura con el uso de los diccionarios bastante grandes (de 10-20 megabytes cada uno). Por ejemplo, el diccionario de los sinónimos más lejanos contiene 65 378 entradas y 1 927 976 palabras en total. A cada modo (opción) del sistema le corresponde el uso de un diccionario.(Figura 2.)
Si se elige la opción Formas de palabras, se enriquecerá la petición con las formas morfológicas de las palabras. Por ejemplo, si se busca por la petición "pequeño", se encontrarán los documentos que contienen las formas pequeño, pequeña, pequños pequeñas.
Si se elige la opción Sinónimos, se enriquecerá la orden con los sinónimos de las palabras de la petición. Por ejemplo, si se busca por la petición "pequeño", se encontrarán los documentos que contienen las formas pequeño, chico.
Si se elige la opción Sinónimos más lejanos, se enriquecerá la solicitud con los sinónimos cercanos y lejanos de las palabras de la petición. Por ejemplo, si se busca por la petición "pequeño", se encontrarán los documentos que contienen las formas pequeño, chico, reducido.
Si se elige la opción Sinónimos y antónimos, se enriquecerá la petición con los sinónimos cercanos y lejanos de las palabras de la solicitud, así como sus antónimos. Por ejemplo, si se busca por la petición "pequeño", se encontrarán los documentos que contienen las formas pequeño, chico, reducido, grande.
Si se elige la opción Sinónimos y antónimos más lejanos, se verá enriquecida la petición con los sinónimos cercanos y lejanos de las palabras de la solicitud, así como sus antónimos cercanos y lejanos. Por ejemplo, si se busca por la petición "pequeño", se encontrarán los documentos que contienen las formas pequeño, chico, reducido, grande, amplio y sus formas morfológicas.
En la Ilustración 3 se muestran los resultados de la búsqueda para la palabra "coche". También fue encontrada la palabra "automóvil", porque el modo de sistema fue "búsqueda con sinónimos".
(Figura 3.)
(Figura 3.)
En un fragmento del diccionario de sinónimos más cercanos, con todas las formas morfológicas, tenemos:
zurruscarse zurruscábamos zurruscáis zurruscáramos zurruscáremos zurruscásemos zurruscó zurrusca zurruscaba zurruscabais zurruscaban zurruscabas zurruscad zurruscada zurruscadas zurruscado zurruscados zurruscamos zurruscan zurruscando zurruscará zurruscarán zurruscarás zurruscaré zurruscaréis zurruscaría zurruscaríais zurruscaríamos zurruscarían zurruscarías zurruscara zurruscarais zurruscaran zurruscaras zurruscare zurruscareis zurruscaremos zurruscaren zurruscares zurruscaron zurruscas zurruscase zurruscaseis zurruscasen zurruscases zurruscaste zurruscasteis zurrusco zurrusqué zurrusquéis zurrusque zurrusquemos zurrusquen zurrusques
zutano citano cualquiera desconocida desconocidas desconocido desconocidos fulqo mengano perengano
6. UN PARSER
Damos un ejemplo de un sistema que permite hacer un análisis sintáctico de español desarrollado del CIC-IPN. El parser es el programa, que, en general, no depende del idioma de la frase de entrada. Lo que depende del idioma es la gramática, un conjunto de reglas en la forma especial.
Los resultados del árbol sintáctico se muestra en la Ilustración 4. El programa hace un análisis morfológico, y despuéss trata de aplicar las reglas gramaticales para cubrir toda la frase. Si no está cubierta toda la frase, entonces no se puede construir el árbol.(Figura 4.)
Las reglas tienen la siguiente forma:
VP(nmb,pers,mean)
-> VP_DOBJ(nmb,pers,mean)
-> VP_OBJS(nmb,pers,mean)
-> VP_OBJS(nmb,pers,mean)
Esta regla significa que la frase verbal puede ser frase verbal con objeto directo o indirecto.
VP_DOBJ(nmb,pers,mean)
-> @:VP_OBJS(nmb,pers,mean) dobj_suj:SUJ_DOBJ [dobj_suj:SUJ_DOBJ]
# clavaban sus dardos
-> @:VP_DOBJ(nmb,pers,mean) obj:LIS_PP
# trasladó su fábrica a la frontera
-> @:VP_DOBJ(nmb,pers,mean) &mod:VP_MODS
# ordenó una fila moviendo las sillas
Esta regla dice qué formas puede tener el objeto directo. Las reglas automáticamente están compiladas en forma entendible para el parser.
Conclusiones
Nosotros hemos discutido algunos problemas a los que se enfrenta la lingüística computacional, en relación con los niveles de lenguaje natural y con las tareas prácticas de procesamiento de textos. Como ejemplo, hemos visto un clasificador de textos, un sistema de búsqueda "inteligente" (por contenido) y un parser. En general, la lingüística computacional es una ciencia que tiene por el momento más problemas que soluciones, pero es un campo de investigación muy interesante y prospectivo.
http://www.revista.unam.mx/vol.2/num1/art1/
Anyela Molina Rosales CI :19597827
sección 2
http://www.revista.unam.mx/vol.2/num1/art1/
Anyela Molina Rosales CI :19597827
sección 2
No hay comentarios:
Publicar un comentario