Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
San Luis
Argentina
2012
Prefacio
Esta Tesis es presentada como parte de los requisitos para optar al grado acadmico
de Magister en Ingeniera de Software, de la Universidad Nacional de San Luis, y no ha
sido presentada previamente para la obtencin de otro ttulo en esta Universidad u otras.
La misma contiene los resultados obtenidos en investigaciones llevadas a cabo bajo la
direccin del Dr. Paolo Rosso y el Dr. Marcelo Errecalde.
Departamento de Informtica
Universidad Nacional de San Luis
San Luis.
Agradecimientos
La gratitud es una de las grandes bendiciones de la vida. Nos permite ver todo como
posibles dones de Dios.
A todas las personas que fueron y son dones que Dios ha puesto en mi camino durante mi
vida...a las que me alentaron, a las que me tuvieron paciencia, a las que estuvieron a mi
lado (a pesar de la distancia y del cielo que nos separa), a las que corrigieron mis errores,
a las que enriquecieron mi trabajo con su experiencia y sabidura, a las que fueron mi
gua y ejemplo, a las que compartieron horas de mate y cubrieron mi ausencia: MUCHAS
GRACIAS.
Dedico esta tesis con todo el amor a mi hermosa familia: Ariel, Martina y Bauti, a
mi mam, a JuanMa y Luci, a mis cuados, a mi Nono Herminio y a Santiago que me
acompa con su sonrisa espontnea y amplia estos ltimos meses. A mis amigos de toda
la vida y a los que comparten y disfrutan da a da las horas de docencia.
Agradezco a mi director y codirector, sin cuya ayuda, dedicacin y constancia no
hubiera podido alcanzar las metas propuestas para este trabajo y a los profesores de la
carrera que brindaron su conocimiento en aspectos importantes para el desarrollo nal de
mi proyecto.
Principalmente agradezco a Dios cada da que me regala y que me acompaa incondicionalmente en este camino, hacindose presente en cada una de las personas que estn
a mi lado.
ndice general
1. Introduccin
1.1.
Descripcin de la problemtica . . . . . . . . . . . . . . . . . . . . . . . . .
1.1.1.
. . . . . . . . . . . . . . .
1.1.2.
1.2.
Motivacin y objetivos
. . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.3.
1.4.
1.5.
Organizacin de la tesis
. . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . .
11
2.1.
. . . . . . . . . . . . . . . . . . . . . . . .
12
2.2.
PLN estadstico . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
15
2.3.
Aplicaciones de PLN
16
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.2.
19
Indexacin de documentos . . . . . . . . . . . . . . . . . . . . . . . . . . .
19
3.1.1.
Modelos de indexacin
20
3.1.2.
. . . . . . . . . . . . . . . . . . . . . .
22
. . . . . . . . . . . . . . . . . . . . . . . . . . . .
25
Aprendizaje de un clasicador . . . . . . . . . . . . . . . . . . . . .
27
Categorizacin de textos
3.2.1.
. . . . . . . . . . . . . . . . . . . . . . . . .
3.2.2.
Evaluacin de un clasicador
. . . . . . . . . . . . . . . . . . . . .
28
3.3.
Reduccin de dimensionalidad . . . . . . . . . . . . . . . . . . . . . . . . .
30
3.4.
32
. . . . . . . . . . . . . . . . . . .
35
4.1.
Indexacin conceptual
. . . . . . . . . . . . . . . . . . . . . . . . . . . . .
35
4.2.
Estrategias de desambiguacin . . . . . . . . . . . . . . . . . . . . . . . . .
36
4.3.
38
. . . . . . . . . . . . . . . . . . . . . .
47
5.1.
5.2.
Algoritmo de Lesk
5.2.1.
5.3.
. . . . . . . . . . . . . . . . .
48
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
49
51
Sistema CIAOSENSO
. . . . . . . . . . . . . . . . . . . . . . . . . . . . .
55
59
Conceptos introductorios . . . . . . . . . . . . . . . . . . . . . . . . . . . .
60
6.1.1.
61
6.1.2.
Reuso de componentes
. . . . . . . . . . . . . . . . . . . . . . . . .
63
6.1.3.
66
6.2.
. . . . . . . . . . . . . .
68
6.3.
70
6.4.
. . . . . . . . . . . . . . . . . . . . .
74
6.5.
. . . . . . . . . . . . . . . . . . . . . . . . .
75
6.5.1.
76
6.5.2.
78
81
7.1.
82
7.2.
Diseo experimental
84
7.3.
7.4.
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . .
86
7.3.1.
. . . . . . . . .
87
7.3.2.
90
7.3.3.
. . . . . . . . . . . . . .
92
. . . . . . . . . . . . . . . . .
93
Aportes realizados
8.2.
Trabajos futuros
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
99
99
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101
A. Acrnimos
103
105
B.1. Propsito
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105
C. Documentacin de Pre.Se.Do
109
Bibliografa
115
ndice de tablas
3.1.
Representacin binaria . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
23
3.2.
Representacin real . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
23
3.3.
. . . . . . . . . . . .
24
3.4.
Matriz de Decisin
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
26
3.5.
4.1.
4.2.
4.3.
4.4.
. . . . . . . . . . . . .
44
5.1.
50
5.2.
56
5.3.
58
7.1.
. . . . . . . . . . . . . . . . . . .
82
7.2.
. . . . . . . . . . . . . . . . . . .
83
7.3.
. . . . . . . . . . . . . . . . . . . . . . . . .
84
7.4.
7.5.
. . . . .
89
7.6.
90
7.7.
90
ci
. . . . . . . . . . . . . . . . . .
29
. . . . . . . . . . . . . . . . . . . . .
38
. . . . . . . . . .
41
. . . . . . . . . . . . . .
43
. . . . . . . . . . .
. . . . . . . . . . . . .
88
7.8.
7.9.
. . . . . . . . . . . . . . .
93
por coleccin. . . . . . . . . . . . . . . . . . .
98
ndice de guras
2.1.
13
4.1.
Relaciones para el synset pine, pine true, pine cone (adaptada de [76])
41
4.2.
43
4.3.
. . . . . . . . . . . . . . . . . . . . . . .
44
5.1.
54
5.2.
. . . . . . . . . . . . . . .
54
5.3.
. . . . . . . . . . . . . . . .
55
5.4.
. . . . . . . . . . . . . . . . . . . . . . .
57
5.5.
6.1.
6.2.
. . . . . . . . . . . . . . . . . .
74
6.3.
77
6.4.
79
6.5.
. . . . . . . . . . . . . .
79
7.1.
86
7.2.
. . . . . . . .
87
7.3.
. . . . . . . . .
91
7.4.
. . . . . . . .
92
. . . .
58
. . . . . . . . . . . . . . . . . . . . . . . . . . .
71
7.5.
?
El algoritmo PAntSA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
95
. . . . . . . . . . . . . . . . . . . 112
. . . . . . . . . . . . . . . . . . . . . 113
. . . . . . . . . . . . . . . . . . . . . . . . . 114
. . . . . . . . . . . . . . . . . . . . . . 115
Captulo 1
Introduccin
Este trabajo de tesis surge de la necesidad de brindar una solucin integradora a los
planteos originados en dos reas de estudios diferentes, como son el Procesamiento del
Lenguaje Natural (PLN) y la Ingeniera del Software (IS). Por lo tanto, el objetivo general
se plantea para dar una respuesta unicada a dos necesidades:
En la primera seccin del captulo se describen los aspectos principales asociados a las
dos reas de estudio y la problemtica que dio origen a este trabajo. Las motivaciones y los
objetivos planteados para el desarrollo de la tesis son enunciados en la segunda seccin.
En un apartado especial se enmarca el contexto de esta tesis dentro de la maestra en
Ingeniera de Software, haciendo mencin de las contribuciones en este mbito de investigacin y detallando las publicaciones presentadas. Finalmente, se expone la organizacin
de la tesis resumiendo los diferentes captulos que la componen.
Captulo 1. Introduccin
1.1.
Descripcin de la problemtica
Descripcin de la problemtica
cada texto. Hoy en da, la comunicacin escrita entre personas hace un uso constante de
este tipo de textos restringidos en tamao buscando optimizar el uso de palabras en interacciones ecientes, cortas y veloces, a travs de correo electrnico, mensajes de textos,
reportes internos, faxes, fragmentos de pginas Web, cables de noticias, opiniones en blogs
y redes sociales, entre otros. Con respecto a este punto, se puede decir que existe an un
nmero limitado de estudios realizados sobre la categorizacin de textos especialmente
cuando las caractersticas de los mismos es una acotada cantidad de palabras, por lo que
el desarrollo de mtodos efectivos para lograr mejoras en esta tarea, contina siendo un
tema abierto de investigacin que resulta interesante de ser profundizado.
Por lo planteado anteriormente, se deduce que la CT y concretamente en textos cortos
puede redundar en benecios para una variedad de mbitos. Por lo tanto, surge la necesidad de incorporar y plantear nuevas mejoras a dicho proceso, que faciliten y permitan
mayor exactitud al momento de seleccionar la categora a la que pertenece un determinado
documento.
Captulo 1. Introduccin
1.2.
Motivacin y objetivos
Un problema intrnseco del lenguaje natural, que es de gran inters en el mbito del
PLN, es el hecho de que una palabra pueda tener, dependiendo del contexto, distintos
sentidos o signicados, conocido como ambigedad semntica. La resolucin de este
tipo de ambigedad puede considerarse como una tarea intermedia necesaria y esencial
para diversas aplicaciones del PLN que son sensibles a la identicacin del sentido de
las palabras, tales como Recuperacin de la Informacin, Categorizacin de Textos y
Traduccin Automtica, entre otras. El procedimiento para decidir los signicados de las
palabras a partir del contexto que las rodea se conoce como desambiguacin del sentido
de las palabras (WSD las siglas en ingls para Word Sense Disambiguation ). La hiptesis
fundamental de la WSD es que existe un nico concepto (o sentido) para cada trmino
en una frase determinada.
Diferentes trabajos relacionados a tareas de CT como los presentados en [45, 112, 89]
han analizado las ventajas de enriquecer la representacin original de los documentos
con conceptos de una ontologa genrica para introducir generalidad al identicar tpicos
relacionados. Por ejemplo, si se tiene en un documento la frase: Luego de ir al
banco)
o la frase La
alegra
banco
banco
jbilo.
(relacin de
trminos ambiguos y/o relacionados es conveniente utilizar un mtodo de WSD para los
mismos, de modo tal de seleccionar el concepto ms apropiado para ser agregado a la
representacin.
Motivacin y objetivos
Captulo 1. Introduccin
1.3.
Esta tesis ha sido desarrollada como parte de los requisitos para obtener el ttulo de
la carrera de postgrado
Software. Finalmente, el diseo y creacin del framework descripto en este informe utiliza
los conceptos relacionados a modelos y mtodos formales orientados a la arquitectura
estudiados en el curso Arquitectura de sistemas de software.
Por otra parte, fueron esenciales para sentar las bases en lo que respecta a los conceptos relacionados al PLN y la CT, los cursos extracurriculares realizados, entre ellos
Aprendizaje Automtico y Minera de Datos que imparte los temas fundamentales vinculados al rea de la CT y Aplicaciones de la Lingstica Computacional en el cual se
abordan con mayor detalle tpicos referentes al PLN y WSD.
1.4.
Captulo 1. Introduccin
Un framework de Ingeniera del Lenguaje para el pre-procesado semntico de textos . Marcelo Errecalde, Mara V. Rosas y Paolo Rosso. Workshop Ingeniera de
Software - XVI Congreso Argentino de Ciencias de la Computacin (CACIC 2010),
pginas 587596, 2010.
Organizacin de la tesis
La publicacin anterior fue seleccionada para ser incorporada como artculo de la revista del Procesamiento del Lenguaje Natural de la Sociedad Espaola para el Procesamiento
del Lenguaje Natural (SEPLN), y ha sido recientemente publicada en
1.5.
Organizacin de la tesis
Las nociones principales que son tratadas en este trabajo referentes a la IS son conocidas por los investigadores en esta rea, no as los temas que conciernen al PLN por lo
que en los primeros captulos se realiza una descripcin ms detallada de aquellos temas
vinculados al PLN, que son necesarios para comprender los restantes captulos. De esta
forma los captulos que conforman esta tesis estn organizados de la siguiente manera:
Captulo 2: En este captulo se describen los principales aspectos del PLN y las tareas
que involucran dicho proceso. Finalmente, se incluyen algunos proyectos que se encuentran
en desarrollo en este mbito.
Captulo 3: Se explican los aspectos relacionados a los modelos utilizados para la indexacin de textos, en particular el sistema SMART. Luego, se presenta una visin general
de los principales conceptos sobre CT y el problema de ambigedad presente en la mayora
de las aplicaciones de PLN.
Captulo 4:
Captulo 5:
todo heurstico de mayor frecuencia, CIAOSENSO y Lesk Mejorado. Una seccin de este
4 Corresponde a la referencia [94] de la bibliografa.
Captulo 1. Introduccin
10
captulo est destinada a profundizar sobre mtodos para la reduccin de trminos que
pueden ser conveniente aplicar para optimizar los tiempos de procesamiento y el espacio
de memoria.
Captulo 7:
Captulo 2
Procesamiento del lenguaje natural
"Hasta el viaje ms largo comienza con un solo paso."
Proverbio chino.
El exceso de informacin disponible cada da, hace necesaria la tarea de procesar los
datos de manera efectiva. La mayor parte de esta informacin est expresada en lenguaje
natural. La computadora personal era, hasta hace un tiempo atrs, slo una herramienta
para la creacin y almacenamiento de documentos de texto, pero con limitaciones en el
procesamiento de los mismos. Uno de los grandes sueos inalcanzable en el pasado, era
contar con mecanismos ecaces que, desde el punto de vista computacional, permitan que
las personas puedan comunicarse directamente con las mquinas en lenguaje humano y
que stas sean capaces de extraer conocimiento a travs del mismo. La idea de dar a las
computadoras la habilidad de procesar el lenguaje natural ya es una realidad [17].
La utilizacin de la computadora para generar y comprender el lenguaje humano natural es el eje principal del PLN. Con el objetivo de modelar el lenguaje humano desde un
punto de vista computacional, en su estudio intervienen diferentes disciplinas (matemtica, psicolingstica y dialectologa, entre otras) pero la combinacin de la lingstica y la
informtica constituye la esencia del PLN. En este sentido, se estn obteniendo resultados
prometedores pero existen todava varias metas a alcanzar por lo que representa un tema
abierto de investigacin.
En este captulo se presenta una visin general de los principales conceptos del PLN. Se
analiza la necesidad de un estudio previo del lenguaje para el desarrollo de todo sistema
12
vinculado al PLN y cmo muchos de los componentes de dichos sistemas son modelos
estadsticos provenientes del campo de la Inteligencia Articial. Finalmente, se introducen
diversas aplicaciones desarrolladas en el mbito del PLN.
2.1.
Las aplicaciones vinculadas al procesamiento de lenguaje se distinguen de otros sistemas de procesamiento de datos por la necesidad de contar con un conocimiento sobre
lngstica general para su correcto desarrollo [51]. Para ejemplicar lo anteriormente
expresado consideremos las siguientes aplicaciones:
1.
WC:
WC
sugiere un
procesamiento de datos simple. Sin embargo, cuando es usado para contar palabras
en un archivo, se requiere conocimiento acerca de cmo distinguir una palabra en
el texto, por lo que esta aplicacin se interpreta como un sistema de procesamiento
del lenguaje.
2.
HAL: es un sistema que debe reconocer palabras desde una seal de audio y generar
una seal nueva desde una secuencia de palabras [51]. Estas tareas de reconocimiento
y sntesis del habla requiere conocimiento acerca de fontica y fonologa, es decir,
la forma en que las palabras son pronunciadas en trminos de secuencia de sonidos
y en que cada uno de estos sonidos es realizado acsticamente. Adems, produce y
reconoce de igual forma variaciones de palabras individuales, tales como singular y
plural, por lo tanto necesita tambin tener conocimiento sobre morfologa. Reconocer
el signicado exacto de una palabra, la composicin semntica y las relaciones de
palabras en la estructura sintctica es necesario para un buen sistema. Nuevamente
el procesamiento del lenguaje es parte de este sistema.
Nivel Morfolgico : dene la relacin que se establece entre las unidades mnimas
que forman una palabra, como puede ser el reconocimiento de sujos o prejos.
Este nivel mantiene una estrecha relacin con el lxico. En el nivel lxico se incluye la informacin morfolgica, la categora gramatical, irregularidades sintcticas y
13
representacin del signicado. Las palabras que forman parte del diccionario estn
representadas por una entrada lxica, y en caso de que sta tenga ms de un signicado o diferentes categoras gramaticales, tendr asignada diferentes entradas.
Normalmente el nivel lxico contempla la raz de las palabras con formas regulares.
Por ejemplo, la palabra preregistracin puede ser morfolgicamente analizado a
partir de tres morfemas: el prejo pre, la raz registra y el sujo cin, en otro
sentido si por ejemplo se agrega el sujo ado o ido a un verbo se puede suponer
que la accin del verbo ocurri en el pasado.
Nivel Sintctico : las palabras pueden unirse para formar oraciones, jando el papel
estructural que cada palabra juega en la oracin. A este nivel, se obtiene un conocimiento sobre la relacin estructural entre palabras. Por ejemplo, en las sentencias
El perro persigue al gato y El gato persigue al perro se plantea una diferencia a
nivel sintctico. Mientras que en la primera oracin el sujeto de la oracin es el perro y el gato es slo el objeto directo de la accin que se realiza (perseguir), en
14
Nivel Semntico : dene el signicado de cada palabra, lo cual no es una tarea sencilla y puede dar lugar a diversas interpretaciones. Es posible distinguir entre signicado independiente y signicado dependiente del contexto. El primero, tratado
a nivel semntico, hace referencia al signicado que las palabras tienen por s mismas ignorando el signicado adquirido segn el uso en un determinado contexto.
La semntica, por tanto, hace referencia a las condiciones de verdad de la frase,
ignorando la inuencia del contexto o las intenciones del hablante. Por ejemplo, si
la palabra granada tiene dos posibles acepciones: 1) una fruta comestible o 2) un
artefacto explosivo, es indiscutible que en la sentencia La granada est muy dulce
y sabrosa se est haciendo referencia al primer signicado.
Nivel Pragmtico : el signicado de una palabra est inuenciado por las circunstancias, intenciones o planes del sujeto que hace uso del lenguaje, denido como
signicado dependiente del contexto. Aade informacin adicional al anlisis del
signicado de la frase en funcin del contexto donde aparece. Incorpora informacin sobre las relaciones que se dan entre los hechos que forman el contexto y entre
diferentes entidades. Por ejemplo, si se tiene la frase Juan sustituy a Pedro dependiendo del sujeto que interprete esta sentencia pueden surgir dos signicados: 1)
Juan ocup el lugar de Pedro o 2) Juan busc otra persona para que ocupe el lugar
de Pedro.
nocimiento del mundo, referente al conocimiento general que las personas han de tener
sobre la estructura del mundo para mantener una conversacin.
Lo anteriormente expresado determina que todo sistema de PLN, para ser eciente,
debe presentar un conjunto de mdulos bsicos que se correspondan al anlisis de los
niveles de la lingustica que fueron denidos.
PLN estadstico
15
2.2.
PLN estadstico
16
logran el aprendizaje a partir de los datos, en este caso del lenguaje natural. El PLN
estadstico se basa, principalmente, en la lingstica, la teora probabilstica, la teora de
la informacin y la programacin, entre otras; utilizando la estocstica, probabilstica y
los mtodos estadsticos.
Las tcnicas de AA, a partir de las cuales deriva el PLN estadstico, pueden ser divididas en dos tipos: supervisadas y no supervisadas. El aprendizaje supervisado se ocupa
principalmente de la prediccin de la informacin que falta sobre la base de la informacin
observada. Por ejemplo, la prediccin de categora gramatical de una palabra basada en la
oracin completa. Emplea mtodos estadsticos para, a partir de datos de entrenamiento
etiquetados, construir una regla de prediccin para datos no etiquetados. En cambio, en
el aprendizaje no supervisado no se cuenta con informacin previa por lo que el objetivo
est puesto en la unin de datos en agrupaciones (clustering). Algunos algoritmos de
aprendizaje supervisado incluyen mquinas de soporte vectorial y mtodos bayesianos,
mientras que los algoritmos de maximizacin representan las principales tcnicas para el
caso del aprendizaje no supervisado. Debido a que profundizar en estos tpicos va ms
all de los prpositos de este trabajo, una descripcin ms detallada de cada algoritmo
de aprendizaje y de conceptos relacionados puede ser encontrada en [133, 52, 72].
2.3.
Aplicaciones de PLN
Las aplicaciones vinculadas al PLN pueden ser divididas principalmente en dos grupos:
Aplicaciones basadas en dilogo : algunos de los ejemplos tpicos de este tipo son sistemas que por medio del habla dan respuesta a alguna necesidad, como por ejemplo
servicios que dan informacin por telfono sin operador, mquinas controladas por
la voz, etc.
Aplicaciones de PLN
La
17
traduccin automtica
recuperacin de la informacin
describe el problema de
resmenes de documentos
reconocer y procesar sus errores, desarrollar habilidades en la resolucin de problemas y otras actividades del proceso enseanza-aprendizaje.
Como ya se plante anteriormente, el crecimiento de la disponibilidad de nuevos recursos computacionales, de fuentes de informacin y de usuarios de computadoras ha
llevado a un primer plano todo lo referente a la tecnologa y como una parte de ello a las
aplicaciones en el rea del PLN.
Los siguientes son ejemplos de aplicaciones del PLN que estn en proceso de produccin
o siendo evaluadas actualmente:
18
Captulo 3
Indexacin y categorizacin de textos
Aquel que quiera construir torres altas, deber permanecer largo tiempo en los
fundamentos.
Anton Bruckner. Compositor austraco.
En todo trabajo de PLN la primera etapa que se debe realizar es la de obtener una
representacin de los documentos para realizar experimentos, denominado proceso de in-
3.1.
Indexacin de documentos
20
en cuenta que est determinada generalmente por la aplicacin de PLN a desarrollar. Por
ejemplo, en ciertas aplicaciones de categorizacin por temas donde el signicado de las
palabras juega un papel preponderante, los artculos, las preposiciones y las conjunciones
son palabras casi vacas de contenido semntico, poco tiles para los nes de la tarea a
implementar. Sin embargo, en aplicaciones donde es importante capturar aspectos estilo-
grcos del autor (identicacin de autora, deteccin de plagio), este tipo de informacin
puede ser relevante para la tarea a realizar.
En todo proceso de indexacin el objetivo a alcanzar es encontrar aquellos trminos que
mejor representen a los documentos y que adems permitan diferenciar unos de otros. Por
todo lo descripto anteriormente, es necesaria la seleccin de un modelo de representacin
de documentos que sea conable y eciente.
1. la identicacin de qu es un trmino
2. el mtodo para computar el peso de un trmino
Para la representacin de documentos, se ha determinado que la utilizacin de palabras individuales es una de las mejores maneras de indexacin de documentos. sto es
a menudo llamado el enfoque del conjunto de palabras o bolsa de las palabras (en ingls,
bag of words) [105]. Varios modelos ms complejos para la indexacin de documentos
han surgido a partir de distintas aplicaciones del PLN, pero sin mejorar signicativamente
la versin ms simple.
Los modelos con fuerte base matemtica para determinar el peso de un trmino se
originaron en la rama de la recuperacin de la informacin. En este contexto se pueden
mencionar:
Indexacin de documentos
21
del modelo booleano se centran en su sencillez. Esto hace que sea muy intuitivo,
fcil de implementar y formalizar. Las principales desventajas de este modelo se
centran en su rigidez, al estar acotado a valores tales como 1(uno) o 0(cero), es decir
pertenece o no.
Son ejemplos de este tipo de enfoque el Modelo booleano estndar y el Modelo
booleano extendido [56, 35].
Modelo estadstico o algebraico : es un modelo que representa los documentos usualmente como vectores, matrices o tuplas de trminos. La similaridad entre vectores es
representada con un valor escalar. En este modelo, la forma ms simple de asignar
un peso a los trminos es a partir del modelo tf-idf que ser explicado en detalle en
la subseccin 3.1.2. El modelo vectorial tiene una mayor exibilidad en la valoracin
de los pesos (valores reales) y el orden de los resultados se basa en la frecuencia
de los trminos y la relevancia de los trminos, sin favorecer a los documentos ms
largos. Con respecto a sus desventajas se centran en la prdida de parte de la informacin sintctica y semntica del documento y que se basa en la independencia
de los trminos dentro de un documento, aseveracin que no siempre se mantiene.
En captulos posteriores se presentarn trabajos que solucionan en gran parte las
desventajas planteadas [45].
Son ejemplos de este tipo de enfoque el Modelo de espacio vectorial (representa una
variante al modelo introducido anteriormente y es el utilizado en este trabajo por
lo que se explica en detalle en 3.1.2), el Modelo de espacio vectorial generalizado,
el Modelo de espacio vectorial basado en tpico y el Modelo de espacio vectorial
basado en tpico mejorado [99, 10].
Modelo probabilstico : trata todo proceso como una inferencia probabilstica. Este
modelo postula que la mejor manera de representar los documentos es mediante la
teora de las probabilidades. Las similaridades son computadas como probabilidades
a partir de la relevancia o no de un documento dado. El modelo probabilstico se
basa en un proceso iterativo. Este proceso se inicia con un primer conjunto de documentos relevantes, que es paulatinamente recalculado en funcin de la informacin
que proporciona el usuario de aquellos documentos que considera relevantes y no
relevantes. El conjunto resultante proporciona un ordenamiento de los documentos
en base a su probabilidad de relevancia. Dentro de sus desventajas, cabe destacar la
necesidad de iniciar el modelo a partir de una primera estimacin del conjunto de
22
1. Los
trminos son representados con las palabras aisladas que conforman los docu-
mentos de una coleccin. A las palabras se les suelen aplicar dos procesos:
Eliminacin de palabras de paro : las palabras que son muy frecuentes entre los
documentos y no relevantes para una aplicacin determinada son eliminadas
ya que no son buenos discriminadores y resultan intiles para algunas tareas de
clasicacin o recuperacin de la informacin. Por ejemplo, las preposiciones y
los artculos pueden ser considerados palabras de paro (o stopword).
2. Cada
peso de un trmino
Indexacin de documentos
23
natural. ste puede ser un valor binario o uno real. Si es un valor binario simplemente
determina la presencia o no del trmino en el documento. Para el caso de valor no
binario, ste puede computarse con diversas tcnicas siendo el modelo tf-idf uno de
los aplicados con mayor frecuencia.
cielo
luna
como
ojos
el
azul
tus
mios
mar
mi
claro
la
cielo
luna
como
ojos
el
azul
tus
mios
mar
mi
claro
El modelo tf-idf, como fue planteado, es uno de los ms utilizados para obtener el
peso de vectores con valores reales de componentes a partir del clculo de Frecuencia de
del texto, ya que vara de un documento a otro, intentando medir la importancia del
Frecuencia de Documento (
IDF
documentos de la coleccin, su
1 En estos ejemplos, se asume que las palabras la, luna, mios y claro han sido utilizadas en otros
textos y que el pre-procesamiento no incluye ningn proceso de stemming o de eliminacin de palabras
de paro.
24
Es el
N:
Nmero de documentos.
T Fd,i :
DFi :
i-simo
Frecuencia del
Frecuencia del
i-simo
i-simo
d de
tamao
n.
trmino en el documento
d.
Denicin:
0
T Fd,i
IDFi
N ORM
n : none = T Fd,i
n : none = 1
n : none = 1
b : binary = 1
N
t : tf idf = log( DF
)
i
c : cosine =
1
qP
2
i (T Fd,i IDFi )
T Fd,i
maxi (T Fd,i )
TF
0,5 + 0,5 maxi (Td,iFd,i )
m : max norm =
a : aug norm =
Categorizacin de textos
Por ejemplo, una codicacin
para computar IDF y
del
i-simo
25
ntc (con n representando la frmula utilizada para TF, t
N
T Fd,i log( DF
)
i
A pesar de ser uno de los modelos ms utilizados, el VSM presenta las siguientes
limitaciones:
3.2.
Categorizacin de textos
Entre las distintas aplicaciones del PLN, la Categorizacin de Textos (CT ) ha despertado un notable inters debido a la necesidad urgente de organizar, mantener y procesar
la informacin textual disponible a partir de un conocimiento ms profundo del lenguaje
[106]. La CT consiste bsicamente en realizar la clasicacin de un conjunto de documentos (corpus) dentro de categoras predenidas tambin denominadas clases, por lo que
la tarea suele ser referenciada tambin como Clasicacin de Textos [105].
Sobre la denicin anterior es importante destacar dos aspectos. Lo primero a sealar
es que, cuando se reere a categora se est haciendo referencia a rtulos simblicos, ya
que su signicado no proporciona conocimiento adicional que pueda ser usado para la
tarea del clasicador. El contenido de cada documento es lo nico relevante al momento
de asociar cada uno a su correspondiente clase. La segunda cuestin, que deriva de la
primera, nos remite a la subjetividad presente en toda tarea de clasicacin de textos,
ya que es muy comn encontrar un desacuerdo de expertos al decidir clasicar un determinado documento bajo una categora especca. Por ejemplo, si se tiene un documento
para clasicar un discurso presidencial donde se expone ...la ingesta de cerdo mejora la
actividad sexual... , ste puede ser catalogado como un artculo de Poltica o de Medicina, o en su defecto como perteneciendo a otra categora diferente. La clase que se escoja
depende del juicio subjetivo del experto.
2 http://edant.clarin.com/diario/2010/01/28/elpais/p-02128743.htm
26
F}
d1
...
...
dj
...
...
dn
c1
a11
...
...
a1j
...
...
a1n
...
...
...
...
...
...
...
...
ci
ai1
...
...
aij
...
...
ain
...
...
...
...
...
...
...
...
cm
am1
...
...
ami
...
...
amn
Formalmente, si se dene a
categoras, a
{a11 ,...,
= {d1 , . . . ,
dn }
= { c1 , . . . ,
cm }
ci ,
tal que
(dj , ci )
de lo contrario si
es aproximar la funcin
(dj , ci )
,
T
=
: D C {T, F }.
luego
dj
mediante un clasicador
tal que
ci .
El objetivo
coincidan tanto
Simple rotulado, donde un elemento debe ser asignado a una nica categora (un
caso particular de este tipo es el clasicador binario).
Categorizacin de textos
27
la deteccin de plagios e identicacin de autores [86, 85, 110, 73], el anlisis de opinin
[68] y la organizacin de pginas Web en general [57, 129], entre otras.
La tarea de CT incluye a grandes rasgos los siguientes pasos:
ci
(dj , ci )
C,
es necesario un conjunto
hdj , ci i D
ci . Para construir un
de documentos tal
es generalmente dividido en
28
Tanto en la fase de validacin como en la de prueba, evaluar la efectividad signica ejecutar el clasicador con un conjunto de documentos preclasicados (Va o Te ) y controlar el
grado de correspondencia entre la salida de los clasicadores y de las clases preasignadas.
Diferentes aprendices pueden aplicarse a la CT. Algunos de estos mtodos generan
clasicadores de valores binarios de la forma
de valores reales de la forma
h:D C
T
h:D C
F },
una estrategia para convertir dicho valor a uno nal de tipo binario [124].
Diversas tcnicas de aprendizaje de clasicadores han sido desarrolladas para las tareas de CT, que incluyen mtodos de regresin [36, 125], rboles de decisin [64], redes
neuronales [122], algoritmos probabilsticos de Bayes [118, 64], algoritmos de aprendizaje
inductivo [19, 65], mtodo de los K vecinos ms cercanos [125, 72], mquinas con soporte
de vectores [113, 28] y ensamblaje de clasicadores [83, 101]. En el captulo 7 de este
trabajo se ha experimentado con varios de estos algoritmos.
ci
Categorizacin de textos
29
Categora
ci
TRUE
FALSE
TRUE
T Pi
F Pi
FALSE
F Ni
T Ni
T Pi
F Pi
ci ,
F Ni
ci ,
T Ni
ci
no perteneciendo a la categora ci y
(negativos falsos) que representa el nmero de documentos que han sido inco-
no perteneciendo a la categora ci .
Ni = T Pi + F Pi + T Ni + F Ni ,
las
P recisioni
Recalli
Accuracyi
Errori
T Pi
(T Pi +F Ni )
(F Pi +F Ni )
Ni
T Pi
(T Pi +F Pi )
(T Pi +T Ni )
Ni
= 1 Accuracyi
30
(0 1)
F =
En esta frmula puede verse a
a Precision y Recall: si
entonces
= 1,
1
P recision
1
1
+ (1 ) Recall
(3.1)
luego el valor de
atribuda
= 0,5
F1
= 0
da igual importancia a
[63].
TP, FP, TN
FN
calcular cada una de las mtricas planteadas. Los resultados obtenidos de esta forma son
llamados micro-promedio.
En [107, 123, 63] se da una explicacin ms detallada sobre las mtricas de evaluacin
descriptas y otras tcnicas alternativas a la efectividad, como por ejemplo eciencia y
utilidad.
3.3.
Reduccin de dimensionalidad
Reduccin de dimensionalidad
31
0
0
a |T | donde |T ||T |. La intencin es descartar atributos o caractersticas
irrelevantes,
T0
que es un subconjunto de
T.
Se
seleccionan los trminos que al ser usados para el indexado de documentos logren
mayor efectividad. En [126] se ha demostrado que la efectividad en CT al utilizar
este enfoque depende en gran medida del clasicador utilizado, de la agresividad de
la reduccin y de la tcnica utilizada para dicha reduccin. Dentro de este enfoque
se plantean varias alternativas. La tcnica de envoltura (en ingls, wrapper ) es una
alternativa que plantea determinar
T0
usado para construir el clasicador, con la desventaja que el costo computacional que
implica hace imposible aplicarla en algunas tcnicas estndar de CT [81, 49]. Una
alternativa computacionalmente ms sencilla es denominada ltrado (en ingls,
0
ltering ) que mantiene la diferencia |T ||T | y selecciona los trminos que reciben
el ms alto puntaje de acuerdo a una funcin que mide la importancia del trmino
para la tarea de CT. Diferentes funciones pueden ser utilizadas para calcular la
medida en que inuye un trmino en dicha tarea, como por ejemplo, Frecuencia de
documento [126], Ganancia de informacin [105], Punto de transicin [12, 5], Factor
de asociacin [36], Informacin mutua [28, 64] y la funcin
otras.
T,
de los trminos de
T0
no son un
3 Los datos de entrada de un clasicador y de un sistema de seleccin son denominados de esta forma
indistintamente, que representan una palabra o frase.
32
los trminos original pueden no ser los ms adecuados para la representacin de los
documentos. Estos mtodos resuelven el problema en dos pasos, primero extraen
los nuevos trminos desde los viejos utilizando algn mtodo de extraccin y luego
aplican un mtodo que convierta la representacin original a la nueva representacin
con los trminos elaborados. En CT se han realizado distintos experimentos con este
enfoque, destacndose los de Agrupamiento [66, 7] e Indexacin semntica latente
[26, 122].
3.4.
Ambigedad lxica
33
los prismticos para ver a su hermana o Juan vio que su hermana tena unos
prismticos?)
34
Captulo 4
Resolucin de la ambigedad
semntica
Ms vale una palabra con sentido que un centenar sin sentido...
Autor annimo.
Toda aplicacin de PLN tiene por objetivo fundamental la comprensin del lenguaje
natural. Una de las propiedades intrnsecas del lenguaje humano es contar con elementos ambiguos que inuye negativamente en el rendimiento de diversas tareas de
PLN. Con la incorporacin de informacin semntica en el indexado de documentos
se han obtenido benecios importantes frente al problema planteado.
En la primera seccin de este captulo se introduce una variante al modelo tradicional de representacin de los documentos que permite subsanar el problema de la
ambigedad semntica. A partir de los recursos utilizados por las diferentes tcnicas
de desambiguacin se presentan, en la segunda seccin, clasicaciones de las mismas
de acuerdo a caractersticas particulares. Finalmente, se presenta una de las bases
de datos ms importante en el rea de desambiguacin, la ontologa WordNet, que
es usada ampliamente en este trabajo.
4.1.
Indexacin conceptual
36
Por ejemplo, si se tiene un documento con la palabra vacuna y otro con la palabra
permitiendo una posible mejora en el Recall. En [40, 45] el uso de este tipo de
vectores mostr mejoras importantes en tareas de PLN y de RI.
4.2.
Estrategias de desambiguacin
Desde los primeros sistemas de WSD hasta la actualidad han surgido nuevas propuestas y distintos enfoques para resolver el problema de ambigedad descripto en la
seccin 3.4. Consistente con la cantidad de nuevos mtodos propuestos han surgido
tambin una variedad de formas de clasicar dichos mtodos.
Estrategias de desambiguacin
37
Una manera general y simple de clasicar los distintos mtodos utilizados para WSD
es diferenciando al grupo de las estrategias que necesitan corpus de entrenamiento
etiquetados semnticamente, denominado el grupo de los
sistemas supervisados
de aquellos que no necesitan esa anotacin para poder funcionar correctamente, los
sistemas no supervisados.
Otra forma de clasicar los sistemas de WSD es basndose en la principal fuente
de conocimiento utilizada para establecer los diferentes sentidos. En primer lugar,
tenemos los mtodos que utilizan diccionarios, tesauros y bases de conocimiento lxicas, sin utilizar ningn corpus, mtodos denominados
Basados en diccionario o
Basados en conocimiento. Las principales tcnicas en este contexto utilizan restricciones de seleccin, el solapamiento de textos y medidas de similitud semntica.
En el captulo 5, se estudian en mayor detalle estos mtodos, incluyendo una descripcin de los algoritmos utilizados en este trabajo. Por otra parte, tenemos aquellos
mtodos que evitan casi completamente la informacin externa y trabajan directamente con corpus sin etiquetar, son los denominados mtodos
No supervisados
Supervisados
Semi-supervisados,
semnticamente como entrenamiento [77]. A pesar de que son los mtodos que han
reportado los mejores resultados en gran cantidad de problemas, en muchos casos
no son factibles de ser aplicados debido a que generalmente no se cuenta con un
corpus etiquetado previamente.
Finalmente, los
38
Mtodos
Procedimiento
X
Basados en conocimiento
Mtodos hbridos
4.3.
39
synsets existen conexiones que expresan relaciones semnticas, conceptuales o lxicas. El resultado de este conjunto de conexiones es una extensa red que proporciona
un gran nmero de interrelaciones entre palabras convirtiendo a WordNet en una
red semntica u ontologa, ms que en el simple diccionario electrnico planteado
inicialmente.
WordNet contiene tanto palabras compuestas, frases verbales y colocaciones
como
frases idiomticas. Segn las diferentes reglas gramaticales, sustantivo (noun ), verbo
(verb ), adjetivo (adj ) y adverbio (adv ) se establecen cuatro categoras gramaticales para los trminos o palabras en un documento. De esta forma, como se dene
a continuacin las relaciones presentes en WordNet pueden variar dependiendo la
categora gramatical.
sinonimia
unas por otras dentro de un contexto determinado sin modicar su signicado siempre teniendo en cuenta que pertenezcan a la misma categora.
Por ejemplo, en la frase Si buscas un resultado distinto no hagas siempre
lo mismo puede ser cambiada por Si buscas una solucin distinta no hagas siempre lo mismo, donde resultado y solucin son sinnimos ya que
al reemplazar una por la otra no cambia el sentido de la oracin.
antonimia
1 Es una secuencia de palabras que juntas tienen un signicado concreto, por ejemplo en ingls dining
car referencia al vagn comedor de un tren.
hiponimia
40
meronimia
ES-PARTE-DE, que
representa que algn concepto es una parte de otro. Por ejemplo, un neu-
hiperonimia
holonimia
mina la relacin
trmino denotando una parte del todo, suele estar dedinida como . Por
ejemplo, casa es holnimo de dormitorio.
3. Para verbos
troponimia
hiperonimia
implicacin lgica
algo requiere hacer otra cosa tambin, es decir un trmino implica al otro.
Por ejemplo, comer implica masticar y roncar implica estar durmiendo.
causalidad
o acciona para que se ejecute otra. Por ejemplo, insultar causa la accin
de ofenderse, debido a que si se insulta a alguien seguramente la causa
inmediata es que la persona se ofenda.
4. Para adjetivos y adverbios
similaridad
41
En la Tabla 4.2 se muestra un resumen de las diferentes relaciones para las distintas
categoras.
Sustantivos
Verbos
Adjetivos
hiperonimia
troponimia
sinonimia
hiponimia
entailment
antonimia
meronimia
cause
similaridad
holonimia
hiperonimia
sinonimia
sinonimia
antonimia
antonimia
En la Figura 4.1 se muestra un ejemplo del synset pine, pine tree, true pine en
WordNet conectado a travs de las relaciones de hiponimia, hiperonimia, meronimia
y holonimia, donde los synset son representados por valos conteniendo los miembros
del synset y la glosa para dicho synset.
Figura 4.1: Relaciones para el synset pine, pine true, pine cone (adaptada de [76])
42
43
Denicin
todo aquello que se percibe, se sabe o se inere como de existencia
propia (vivo o no vivo)
psychological
feature
abstraction
state
event
act,
human action,
human activity
group, grouping
possession
phenomenon
Tamao (KBytes)
14643
data.verb
2673
data.adj
3154
data.adv
index.noun
507
4639
index.verb
507
index.adj
830
index.adv
162
index.sense
7127
noun.exc
27
verb.exc
30
adj.exc
19
adv.exc
sentidx.vrb
sents.vrb
cntlist
1
72
5
857
44
45
lxicas. Por ejemplo, en la Figura 4.3 se puede encontrar informacin correspondiente al archivo data.noun, el oset
02929975
46
Captulo 5
WSD basado en conocimiento
Uno no es lo que es por lo que escribe, sino por lo que ha ledo...
Jorge Luis Borges. Escritor argentino.
[120].
48
les, donde las cadenas lxicas son derivadas basndose en medidas de similitud
semntica. Un ejemplo de este enfoque es el sistema CIAOSENSO introducido
en [96].
5.1.
Una forma sencilla para intentar establecer el sentido correcto de las palabras en un
texto es utilizar heursticas basadas en propiedades lingsticas aprendidas a travs
de textos. Una de las heursticas ms utilizadas es la denominada del sentido ms
frecuente. Entre todos los posibles sentidos que puede tener una palabra, generalmente existe uno que ocurre ms a menudo que los otros sentidos. Por lo tanto,
un sistema muy simple de desambiguacin sera aquel que asigne a cada palabra su
sentido ms frecuente. El mtodo de desambiguacin que se basa en esta frecuencia
es referenciado en este trabajo como Mtodo del sentido ms frecuente (MFS, de sus
siglas en ingls para Most Frequent Sense). Este mtodo se utiliza a menudo como
Algoritmo de Lesk
49
1
5.2.
Algoritmo de Lesk
NW1
y
NW2
W1
W2 ,
W1i
de
W1
y cada sentido
(i, j),
W1
de
50
W2 .
W2 .
(i, j)
sea el mximo
Oxford, Webster y Collins entre otros. De este modo, se determina que la palabra
pine tiene dos sentidos o signicados:
1. kind of
evergreen tree
evergreen tree.
Cada uno de los dos signicados de la palabra pine es comparado con cada uno de
los tres sentidos de la palabra cone y de esta forma se encuentra que las palabras
evergreen tree ocurren en un sentido para cada una de las dos palabras (el sentido
1 para pine y el sentido 3 para cone ). Estos dos sentidos se consideran los ms
apropiados cuando se utiliza en conjunto las palabras pine cone teniendo en cuenta
el algoritmo Lesk original.
Al introducir variantes en el algoritmo original surgen nuevas versiones, como por
ejemplo:
Mtodos que tratan de resolver el problema de la explosin combinatoria cuando se consideran ms de dos palabras [115].
Mtodos donde se considera en forma aislada a cada palabra, esto es, cada
trmino es desambiguado individualmente midiendo el solapamiento entre cada
denicin del diccionario y el contexto en el cual aparece [119].
Algoritmo de Lesk
51
Mtodos que utilizan las relaciones semnticas de las palabras y sus correspondientes deniciones para ampliar el contexto [9]. En la siguiente subseccin
se detalla una variante mejorada del algoritmo de Lesk que se basa en esta
modicacin.
Tamao de la ventana de contexto : en [18] se plantea que el ser humano determina el signicado de una palabra a travs del contexto inmediato de dicha
palabra, lo que motiva a reducir a slo tres palabras la ventana de contexto. Por
otro lado, las limitaciones en los recursos computacionales tambin inuyen en
un
set
nico
con
synset,
con
gloss(word#pos#sense)
hype(word#pos#sense)
todos
los
la
glosa
hipernimos
de
un
del
syn-
synset
word#pos#sense, entonces la notacin gloss(hype(word#pos#sense)) denota la glosa de los hipernimos del synset identicado por word#pos#sense.
Si existen mltiples hipernimos para el synset word#pos#sense, entonces
gloss(hype(word#pos#sense)) se usa para denotar la concatenacin de las glosas de todos los hipernimos. Si no existen hipernimos para word#pos#sense
entonces hype(word#pos#sense) corresponde a la cadena vaca. Finalmente,
se pueden aplicar dos esquemas para analizar la superposicin de las glosas
52
Deteccin de superposicin entre glosas : un nuevo modelo para detectar el solapamiento entre glosas y su posterior mecanismo de clculo fueron introducidos
en [9]. ste se basa en encontrar la secuencia ms larga de palabras que sean
iguales, y darles un peso mayor comparado con las que se igualan en menor
cantidad de palabras.
42 = 16,
Algoritmo de Lesk
53
oender con las siguientes glosas para los diferentes signicados de cada palabra:
54
representada con un echa punteada. Por lo tanto, las tres glosas para sentence#n#2
(gloss(sentence#n#2), gloss(hype(sentence#n#2)) y gloss(hypo(sentence#n#2)) )
son comparadas con las dos glosas asociadas a bench#n#2 (notar que son slo dos
glosas porque no tiene hipnimos). De la misma manera, las glosas asociadas con
32 +12 = 10
Sistema CIAOSENSO
55
oender.
5.3.
Sistema CIAOSENSO
Un nuevo modelo de WSD basado en el concepto de densidad conceptual fue introducido por Rosso, Masulli y Buscaldi en [96]. En este caso, la Densidad Conceptual
(DC ) se determina como la medida de correlacin entre el sentido de una palabra
y su contexto, est basada en la distancia conceptual que constituye la longitud de
camino ms corto que conecta dos synsets en la taxonoma que utiliza WordNet.
El mtodo utiliza las relaciones jerrquicas de hiperonimia e hiponimia presentes
en WordNet, es automtico y no necesita proceso de entrenamiento. Cada jerarqua
conceptual en WordNet puede verse como un rbol donde cada nodo es un synset
56
Primera glosa
Segunda Glosa
Superposicin
Puntaje
hype(sentence#n#2)
bench#n#2
10
sentence#n#2
bench#n#2
cases
hype(sentence#n#2)
oender#n#1
law
sentence#n#2
hypo(oender#n#1)
criminal
hype(bench#n#2)
hype(oender#n#1)
person
hype(bench#n#2)
oender#n#1
person
hype(bench#n#2)
hypo(oender#n#1)
person
bench#n#2
hype(oender#n#1)
person
bench#n#2
oender#n#1
person, law
bench#n#2
hypo(oender#n#1)
person
20
Tabla 5.2: Puntajes para los pares en la guras 5.1, 5.2 y 5.3
diferente. Para una palabra que tiene varios sentidos (o signicados) cada uno de
estos cae en una diferente subjerarqua (o aglomeracin) cada una conteniendo uno
de los sentidos.
En [2] se dene la distancia conceptual con la siguiente frmula:
Pm1
DC(c, m) = Pi=0
h1
i=0
donde
nhypi
nhypi
(5.1)
a desambiguar,
por cada nodo (synset) de la subjeraqua. La Figura 5.4 representa una aglomeracin
destacando las palabras a desambiguar de las palabras del contexto. Los nodos
terminales se correponden a los synsets relevantes y aquellos para los cuales se
debe calcular la densidad. Lo planteado anteriormente se ejemplica con la Figura
5.5.
En [96] se introduce una variante de la ecuacin 5.1 que tiene en cuenta especialmente el nmero de synsets relevantes con respecto a los dems synsets en la
aglomeracin. La nueva frmula 5.2 mide la distancia conceptual entre el nmero
de synsets relevantes dividido el nmero total
nh
de synsets de la aglomeracin. En
Sistema CIAOSENSO
57
DC(M, nh) =
M
nh
(5.2)
(valor
DC(M, nh, f ) = M (
M logf
)
nh
(5.3)
but the man would have been hit if Phil hadn't called out to him a second before .
Los sustantivos del contexto son horn, man y second que estn gracados con lnea
punteada. Teniendo en cuenta la ecuacin 5.3 los clculos para cada subjerarqua son
mostrados en la Tabla 5.3, donde se puede observar que el signicado perteneciente
al synset 1 es el ms adecuado para brake segn el mtodo CIAOSENSO.
58
Synset (i)
Mi
nhi
21
Ecuacin (5.3)
90,1 * (9/21)log1 = 1.24
0,1
(1/5)log4 =
0.07
Captulo 6
Aspectos de Ingeniera de Software
aplicados a PLN
Los diseadores de autos no reinventan la rueda cada vez que planean un nuevo modelo,
pero los ingenieros de software se encuentran a menudo produciendo repetidamente ms
o menos la misma pieza de software en forma ligeramente diferente
Hamish Cunningham. PhD in Computer Science
60
de investigadores en el rea del PLN [61]. Finalmente, se presentan las APIs utilizadas en
esta tesis junto con una descripcin detallada de la propuesta implementada.
6.1.
Conceptos introductorios
Todo software est compuesto por programas, datos y documentos. El software diseado y construdo por los ingenieros de sistemas, tiene caractersticas propias que lo
distingue de los dems productos que el hombre pueda construir, debido a que:
Conceptos introductorios
61
Fase de denicin: se enfoca en determinar lo que debe hacer el sistema, la informacin a ser procesada, la funcin y desempeo deseado y el comportamiento que
se espera.
Fase de soporte: se evalan los diferentes cambios a realizar, ya sea, debido a errores
encontrados, adaptaciones a cambios en el entorno externo o mejoras requeridas por
el cliente.
software vinculados al PLN para algo ms que slo modelar el lenguaje en s mismo y que
sea til no slo a los lingistas. .
Un conjunto de factores fueron determinantes en dar origen a la IL:
62
los avances en el hardware tales como mayor la velocidad de procesamiento, capacidad de memoria y de almacenamiento.
la disponibilidad de recursos relacionados al lenguaje natural con un importante
tamao de datos (diccionarios, tesauros, ontologas, etc.).
los altos niveles de precisin logrados en los experimentos vinculados al PLN.
Exactitud : las tcnicas del PLN no pueden garantizar que se encontrarn todos y
nicamente los resultados correctos. El sistema debe tener esto en cuenta y tener
un plan alternativo (o un retroceso apropiado) en caso de ser necesario.
Robustez : en ingeniera, la robustez se determina como la habilidad de los dispositivos para trabajar aun bajo condiciones variantes. En el rea del lenguaje, los
trminos robustez y portabilidad tienen un signicado ms limitado, ya que ambos
son usados para describir la viabilidad de que un mtodo lingstico sea aplicado a
diferentes tipos de textos o dominios (en trminos de precision/recall vistos en el
Captulo 3).
Conceptos introductorios
63
Flexibilidad : como todo sistema, los desarrollos de PLN necesitan ser exibles. En el
caso de PLN, se debe tener en cuenta la variedad en los formatos de las colecciones
de datos para hacer a los sistemas lo ms exibles posible.
Mltiples lenguajes : en el mundo globalizado, los usarios necesitan sistemas capaces de reconocer y trabajar con mltiples lenguajes. Las aplicaciones de PLN son
complejas debido a que ellas se valen de modelos estadsticos y conjuntos de reglas
gramaticales y lxicas que son especcos de cada idioma. De esta manera, en la mayora de los sistemas PLN es necesario crear nuevos componentes para cada idioma
diferente.
Escalabilidad : frecuentemente las partes de un sistema PLN dependen de otros componentes y la demanda de recursos en general es bastante alta. Los recursos de
memoria y tiempo no son reportados en PLN con anticipacin, a diferencia de los
sistemas en general que planican con antelacin los recursos necesarios.
Algunas de las falencias en lo que respecta a sistemas de PLN, tales como robustez,
productividad (a travs del reuso de componentes) y exibilidad, han sido y son temas de
relevancia en el mbito ingenieril. Tanto es as que cada vez ms proyectos y programas
de investigacin estn abocados a buscar posibles soluciones a algunos de estos problemas
o por lo menos tratar de atenuarlos [61]. Por lo tanto, cuando se hace mencin al reuso
de componentes en PLN en realidad se est trabajando en un tpico problema de integracin [21, 121] que puede ser superado aplicando conceptos bsicos de la IS como son
las interfaces de programacin de aplicaciones (APIs ) o los marcos de trabajo (en ingls
frameworks ).
64
plataformas. El concepto de reutilizar en nuevos sistemas componentes desarrollados previamente no es nuevo en el rea de la IS [131]. Asimismo, ha comenzado a ser un tema a
discutir en IL [21] especialmente en sistemas de gran escala. En este contexto, podemos
distinguir: reutilizacin de datos para entrenamiento o como recursos internos de conocimiento y reutilizacin de cdigo (o algoritmos) usados en el procesamiento de dichos
datos.
En los ltimos aos ha surgido un gran inters en la reutilizacin de repositorios de
datos, algunos de los cuales estn disponibles pblicamente para investigacin, como por
ejemplo:
http://www.ldoceonline.com/
Wordnet,
http://wordnet.princeton.edu/
El diccionario EDR,
[76]
http://www2.nict.go.jp/r/r312/EDR/index.html
[130]
http://www.
ldc.upenn.edu/
La Asociacin Europea de Recursos del Lenguaje (ELRA por sus siglas en ingls),
http://www.elra.info/
A los recursos nombrados se deben agregar los innumerables sitios que cuentan con
colecciones de documentos para nes experimentales varios de las cuales han sido utilizadas en este trabajo [30, 59, 25]. Si bien el uso de colecciones estndar ha permitido hacer
comparable los resultados, en ocasiones el uso de sub-colecciones ha introducido problemas segn se muestra en [25]. En este sentido, a pesar de que existen an inconvenientes
para resolver el reuso de datos, los avances superan notoriamente a la reutilizacin de
cdigo. Una de las principales razones de que el porcentaje de reutilizacin algortmica
sea bajo es la gran dicultad que implica la integracin, ya que los desarrolladores usan
diferentes lenguajes de programacin, entornos obsoletos o diferentes paradigmas. Por lo
tanto, la reimplementacin e integracin causan la mayor prdida de productividad.
Las dos formas de reutilizacin (de datos y de cdigo) fueron tenidas en cuenta para
el desarrollo de este trabajo. En lo que respecta a la reutilizacin de fuentes de datos se
utiliz:
Conceptos introductorios
65
la ontologa WordNet que fue usada en diferentes tareas del procesamiento de textos
(ver Figura 6.2). Como se explic en la seccin 4.3 sta es una de las bases de datos
lxica ms utilizada en PLN.
los conjuntos de colecciones de textos que sern descriptos en la seccin 7.1 y son
ampliamente usados en el rea de PLN.
wordnet/related-projects/#local
http://wordnet.princeton.edu/
http://www.codeproject.com/KB/string/
semanticsimilaritywordnet.aspx.
Distintos algoritmos de etiquetado sintctico, que rotulan las palabras segn su categora gramatical (noun, verb, adjective y adverb ) para realizar la desambiguacin
66
tacin de dicha API . Al implementar una API se debe llegar a un cierto equilibrio entre
su potencia, simplicidad y prdida de exibilidad.
Como se menciona en la seccin 4.3, WordNet es una base de datos lxica compuesta
por un conjunto de archivos que contienen la jerarqua de synsets de esta ontologa.
Para acceder a estos archivos se necesita una interface denida en algn lenguaje de
programacin que permita recuperar datos de los mismos. Existen interfaces disponibles en lenguajes tale como: C#, Java, Haskell, Prolog, Perl, Python, entre otros [76].
A continuacin, se mencionan algunas de las ms importantes explicadas en detalle en [76]:
1.
NET/C#:
Franois-Rgis Chaumartin ha desarrollado un framework lingustico denominado Antelope .NET. ste usa y extiende WordNet incluyendo varios etiquetadores y parsers para su versin francesa. Antelope trabaja bajo Windows o
Linux, y es gratuito para investigacin y educacin.
Troy Simpson ha desarrollado una interface C# para WordNet usando la versin 3.0. Requiere el framework .NET y puede ser descargado en forma gratuita.
Derik Palacino ha desarrollado una interface C#. Este proyecto fue construido
sobre la base de datos para WordNet 3.0 sin embargo el cdigo fue traducido
Conceptos introductorios
67
desde la versin 2.1. Puede ser descargado como cdigo fuente o binario para
Windows.
2.
Java:
La API Java para bsqueda en WordNet (JAWS las siglas en ingls para Java
API for WordNet Searching) es una interface de alto rendimiento, escrita enteramente en Java que soporta WordNet 2.1 y 3.0. Fue escrito por Brett Spell
y es compatible con Java 1.4 y versiones posteriores.
Joris Van den Bogaert desarroll una interesante versin de interface Java/WAP que permite navegar WordNet desde el telfono celular.
Bernard Bou ha escrito WNJN (compatible con la librera nativa de Java)
la cual realiza la interface entre la base de datos WordNet (1.7.1 y 2.0) y
programas Java. Ofrece clases de Java con el cdigo binario (escrito en C++)
y dispone funcionalidad para la consulta y la bsqueda.
JWNL (las siglas en ingls para Java WordNet Library) escrita por John Didion, se trata de una API de Java que proporciona componentes de diferentes
niveles de acceso a datos de WordNet. Escrito totalmente en Java no utiliza
cdigo nativo, por lo que es totalmente porttil y todo su cdigo fuente est
disponible.
JWI (MIT Java Interface to Wordnet) fue desarrollado por Mark Finlayson,
soporta Wordnet 2.0, 2.1 y 3.0. La ltima versin de JWI dispone de una
API sencilla, gil y altamente extensible. Fue escrito enteramente en Java,
completamente portable y distribuido bajo licencia no comercial y con cdigo
fuente disponible.
A pesar de disponer de varias APIs Java de acceso a WordNet, uno de los principales
factores para que las mismas sean de gran utilidad depende de la documentacin que
las acompae. De las mencionadas anteriormente, la mayora carecen de sta, es muy
complicada o demasiado extensa. Con respecto a aquellas basadas en cdigo nativo y
accesibles a travs de JNI, una de las falencias es su baja portabilidad y dicultad de
instalacin.
Una de las APIs WordNet que tiene una documentacin til, con ejemplos de cmo se
debe usar y funcionalidades aadidas no incluidas en la distribucin WordNet es la desarrollada por Troy Simpson en C#. Se puede encontrar una documentacin extensa en
68
(donde
http://www.ebswift.com/Desktop/
WordNet/. Las funcionalidades de bsqueda aadidas en esta distribucin incluyen caracteres comodines, expresiones regulares y anagramas. Estas funcionalidades generalmente
se encuentran en productos comerciales, pero aqu estn disponibles en cdigo abierto. Por
lo mencionado anteriormente, y despus de investigar algunas de las APIs mencionadas,
se migr la versin desarrollada por Troy Simpson en .NET a Java.
6.2.
GATE (las siglas en ingls para General Architecture for Text Engineering ): esta
arquitectura desarrollada para la tarea de Extraccin de la Informacin permite
construir sistemas PLN a partir de componentes previamente implementados. Proporciona un ncleo con los mdulos bsicos de anlisis del lenguaje (morfolgico y
sintctico) permitiendo el acoplamiento de nuevos componentes. Est implementado en Java por lo que la integracin de componentes se realiza considerando a todo
recurso como una clase Java [22, 20] (en la seccin 6.5 se ver ms en detalle este
sistema).
ALEP (las siglas en ingls para The Advanced Language Engineering Platform ): es
un proyecto soportado por la Commission of the European Community que tiene
como objetivo proporcionar a la comunidad de investigadores en PLN de Europa un
69
entorno de desarrollo abierto, verstil y de uso general. El sistema ofrece un formalismo basado en la unicacin y una mquina lingstica con anlisis, generacin y
transferencia de componentes. Est implementado en su mayora en lenguaje Prolog
[132].
TEXTRACT (las siglas en ingls para The TALENT System ): es un trabajo similar
a GATE pero pensado para el procesamiento a gran escala de textos y con un enfoque
industrial. Desarrollado en C++ ofrece una serie de componentes (plugins) con las
funciones bsicas de PLN (tokenizer, PoSTagger, etc). Estos plugins comparten un
repositorio asociado a cada documento, a travs del cual se comunican [82].
En la actualidad, los nuevos sistemas de PLN continan implementando la misma arquitectura pero con mayor exibilidad y simplicidad para la integracin de nuevos mdulos
de anlisis.
Los experimentos previos al desarrollo del framework, fueron desarrollados por medio
de scripts que complicaban las tareas de llevar una documentacin de lo implementado,
determinar el orden de ejecucin o precisar cual era la versin correcta de cada mdulo.
Por lo tanto, la reproduccin exacta de un experimento anterior era muy difcil de obtener o casi imposible. Otro aspecto muy importante que surgi durante el desarrollo del
trabajo fue que, una integracin de caja negra
al campo de la lingstica resulta una tarea muy difcil debido a que si la tcnica interna
es desconocida, el componente puede fallar. Finalmente, otro problema a resolver es la
presencia de subtareas o algoritmos que estn desarrollados en diferentes paradigmas.
En este captulo se plantea la propuesta de un marco de trabajo de fcil uso y extensibilidad que permita unicar las diferentes tecnologas. El lenguaje Java fue escogido para
la implementacin del framework debido a su portabilidad y posibilidad de interaccin
con diferentes sistemas, no necesariamente desarrollados en este mismo lenguaje.
1 Concepto que referencia a los componentes lingsticos cuyo detalle de implementacin interna no es
conocido [61].
Descripcin del
framework
70
desarrollado
71
El framework desarrollado tiene un arquitectura simple y modular. La tarea de preprocesamiento de documentos para su posterior clasicacin fue dividida en un nmero de
subtareas ms pequeas implementadas como mdulos separados. La Figura 6.1 muestra
un diagrama general simplicado del sistema desarrollado mediante un diagrama de clases.
Se muestra un conjunto de clases bsicas que realizan distintas tareas de pre-procesado
de documentos, entre ellas hay clases abstractas tales como WSD que luego son implementadas de acuerdo al algoritmo especco utilizado en cada caso. Por ejemplo, para
implementar el algoritmo de desambiguacin llamado AdaptedLesk slo se debe heredar
de la clase abstracta WSD e implementar el mtodo disambiguate(String[] words) segn
la lgica propia de dicho algoritmo sin tener que preocuparse por cuestiones de entrada y
salida con la etapa anterior y posterior de este mdulo.
Para la API de Wordnet slo se detallan las clases principales Lexicon y WNDB con
algunos de sus mtodos ms importantes. Los componentes del diagrama de clases se
describen a continuacin obviando los detalles de sus atributos y mtodos:
72
InOutProcess, provee funcionalidad de entrada y salida de archivos para el procesamiento de los diferentes documentos de una coleccin.
WSD, representa la clase abstracta que realiza la tarea de desambiguacin del sentido
de las palabras.
TermsPlusConcepts, forma el vector de trminos ms conceptos, para la representacin trminos+conceptos usada en la seccin 7.2 para los experimentos.
MFS, que implementa la clase abstracta WSD con el algoritmo heurstico del sentido
ms frecuente (ver seccin 5.1).
73
La Figura 6.2 muestra las diferentes subtareas que conforman el proceso. Cada subtarea acepta datos de la etapa previa, aplica una transformacin a los datos y los pasa
procesados a la prxima etapa. En esta gura, se muestra cada subtarea vinculada a la
clase abstracta de la que hereda (esto ser explicado en detalle en la seccin 7.2).
El framework comprende un grupo de clases programadas en lenguaje Java. Los objetos de estas clases pueden ser instanciados en programas de usuario, los mtodos pueden
ser invocados sobre estos objetos e inclusive se pueden heredar las clases para brindar
una mayor funcionalidad a las ya existentes. Un usuario podra crear sus propios mdulos (algoritmos) para ejecutar cualquiera de las subtareas mencionadas anteriormente,
siempre y cuando los mdulos adhieran al protocolo especicado por la arquitectura. Por
ejemplo, para implementar el algoritmo de etiquetado sintctico (POS-tagging) llamado
Brill tagger [13] slo se debe heredar de la clase abstracta PosTagger e implementar
nicamente el mtodo posTag(String[] words) donde debe desarrollarse la lgica propia de
dicho algoritmo sin tener que preocuparse por cuestiones de entrada y salida con la etapa
anterior y posterior de este mdulo.
De esta manera, se podran incluir diversos algoritmos para las diferentes tareas pudiendo llegar a contar con un conjunto de mdulos que se pueden combinar de formas
variadas para la creacin y ejecucin de experimentos de forma ms sencilla sin tener que
desarrollar de cero muchas cuestiones que estaran ya solucionadas en el framework. El
framework brinda un acceso ms sencillo a los archivos que se utilizan en los experimentos,
un acceso unicado a la base de datos lxica WordNet, algoritmo de stemming (seleccin
de la raz o stem de la palabra) y de etiquetado sintctico (o pos-tagging ). En base a esta
experiencia se puede concluir que durante el desarrollo de los algoritmos particulares de
las subtareas del proceso, la parte bsica de acceso a recursos externos (como los archivos
de WordNet) ya estara solucionada mediante las clases superiores permitiendo concentrarse, exclusivamente, en la lgica de la solucin del problema sin tener que preocuparse
por lo dems.
Por otro lado, la posibilidad de combinar los diferentes algoritmos en las distintas
etapas es algo que hasta el momento se haca manualmente, por lo que se decidi extender
el trabajo implementando una interfaz grca que facilite al usuario la experimentacin
con el framework. En el Apndice C se describe en forma detallada la interfaz grca
desarrollada para tal n, denominado Pre.Se.Do., especicando la tecnologa usada para
su implementacin, las distintas tareas que incluye y los pasos para su uso.
74
6.4.
framework
cortos
los mtodos ms difundidos de categorizacin, provistos en este caso por el software libre
denominado Weka [39]. En este estudio, qued demostrada la importancia de contar con
un framework como el propuesto en este trabajo, facilitando de manera signicativa el desarrollo del trabajo experimental. Las razones de estas armaciones estn fundamentadas
en las caractersticas particulares que surgen al incorporar informacin semntica en tareas
de CT. En estos casos, al igual que en otros dominios de PLN que utilizan informacin
75
?
por el algoritmo iterativo ITSA [31], tambin se vericaba en aquellos casos donde se incorporaba informacin semntica a la representacin de los documentos. En este contexto,
los resultados obtenidos en los experimentos realizados en [94] son altamente prometedores respecto a la efectividad de este enfoque, obtenindose valores muy competitivos en
la mayora de las instancias experimentales, incluso en algunos casos, alcanzndose los
mejores resultados comparados a los reportados en la literatura especca del rea.
Si bien los estudios citados previamente se encuadran claramente como una investigacin cientca, varias de las colecciones utilizadas en estos casos corresponden a documentos originales del mundo real obtenidos de repositorios pblicos de empresas. Este es el
caso, por ejemplo, de las sub-colecciones del corpus de cables de noticias Reuters-21578,
donde el enfoque semntico utilizado report valores altamente prometedores. Estos resultados, sumados a la simplicidad en el uso del framework, sugiere que la utilizacin efectiva
del mismo en problemas empresariales concretos del mundo real (como la categorizacin
automtica de noticias) es una rea altamente factible a ser abordada.
6.5.
Teniendo en cuenta la cita de Cunningham con la cual comienza este captulo, se decidi incorporar uno de los mdulos semnticos desarrollados en este trabajo como recurso
de procesamiento en el GATE. Por otra parte, para continuar con la analoga y defendiendo la propuesta de este trabajo, es posible considerar al framework implementado como
un tipo de rueda especial fabricada y adaptada para un vehculo con caractersticas
particulares.
76
Objects for Language Engineering). Estos pueden ser de tres tipos principales:
Recursos de procesamiento : unidades de procesamiento de datos (POS taggers, tokenizadores, separadores de sentencias, etc.). Un componente con estas caractersticas
fue el anexado al GATE como nuevo recurso para la desambiguacin semntica y
ser referenciado en mayor detalle en la subseccin siguiente.
Aplicaciones : componentes (tambin conocidos en GATE como pipelines ) que permiten integrar varios recursos para realizar operaciones sobre textos.
Para crear un nuevo recurso CREOLE se deben seguir los siguientes pasos:
2 Un JavaBean o bean es un componente hecho en software que se puede reutilizar y que puede ser
manipulado visualmente por una herramienta de programacin en lenguaje Java.
77
lingusticos ).
78
Una vez que se ejecuta sobre un documento una aplicacin conteniendo el recurso
79
derecho en la Figura 6.5) para este recurso lingustico, se notar un cambio en la lista
80
a partir del componente ANNIE (las siglas en ingls para A Nearly-New Information
Captulo 7
Conjuntos de datos y detalle de los
experimentos
Si supiramos lo que estamos haciendo, no se llamara investigacin, verdad?.
Albert Einstein. Cientco alemn.
82
lo tanto, se puede pensar al enfoque basado en conocimiento como una opcin apropiada
para utilizar en aplicaciones vinculadas al PLN que trabajen sobre textos cortos.
En este captulo se describen las colecciones de textos cortos seleccionadas para los
trabajos experimentales, stas fueron elegidas por tener diferentes niveles de complejidad
para un mejor anlisis posterior. El diseo experimental, los resultados y el anlisis de la
tarea de CT estn detalladas en distintas secciones del captulo. Finalmente, se muestra
que la incorporacin de informacin semntica a la representacin de documentos puede
ser tambin beneciosa en otras tareas de PLN, como por ejemplo en clustering iterativo.
7.1.
Para los experimentos se seleccion un grupo representativo de colecciones de documentos cortos con diferentes niveles de complejidad con respecto al tamao de la coleccin,
longitud de los documentos y solapamiento de vocabulario. En [47, 71, 29, 30] se describen
en forma detallada cada una de las colecciones utilizadas y sus respectivos enlaces de
acceso. A continuacin se especican solamente algunas caractersticas principales de estos
corpus:
CICling-2002 (CIC ): es una coleccin de textos cortos muy popular que ha sido
reconocida en diferentes trabajos [3, 47, 71, 29] como una coleccin de complejidad alta debido a que sus documentos pertenecen a un dominio muy restringido.
Dichos textos son 48 resmenes de artculos cientcos presentados en la Conferencia CICling 2002 (Computational Linguistics ). Las caractersticas de este corpus se
muestran en la Tabla 7.1.
Categora
# docs
Linguistics
11
Ambiguity
15
Lexicon
11
Text Processing
11
Caracterstica
Valor
# categoras
# tot. docs
48
# tot. terms
3382
vocabulario
promedio de terms por abstract
953
70.45
83
Categora
# docs
Heuristics in Optimization
11
Machine Learning
15
Automated Reasoning
11
11
Caracterstica
# categoras
# tot. docs
# tot. terms
vocabulario
promedio de terms por documento
Valor
4
48
9261
2169
192.93
R8 : es un corpus compuesto de ocho categoras obtenidas de la coleccin Reuters21578. Esta coleccin, est compuesta por 21.578 cables de noticias divididos en
137 categoras. Los cables de noticias fueron publicados y clasicados manualmente
por la agencia Reuters en 1987 para ser usados en investigaciones. Es considerado
un corpus que presenta una complejidad entre baja y media. Tiene caractersticas
que la hacen muy interesante para utilizarla en tareas de CT ya que es una coleccin apta para clasicacin de mltiples rtulos, tiene algunos documentos que no
pertenecen a ninguna categora y no est balanceada en cuanto a la cantidad de
documentos por clases. Diferentes variantes de Reuters-21578 han sido obtenidas
con limitados rendimientos hasta que Debole y Sebastiani en [25] denen dos subconjuntos estndares que son frecuentemente usados, R10 (con las 10 categoras que
tienen ms instancias de entrenamiento asociadas) y R90 (con las 90 categoras que
tienen al menos una instancia de entrenamiento y al menos una instancia de prueba asociada). Si se busca realizar una clasicacin de nico rtulo, los documentos
que pertenecen a ms de una categora se deben eliminar quedando algunas clases
de R10 y de R90 sin documentos. Por lo tanto, si se quitan los documentos que
pertenecen a ms de una clase y se quitan las categoras que no tienen documentos, entonces de las 10 categoras de R10 quedan 8 y de las 90 categoras de R90
84
Categora # docs
trade
102
grain
34
monexfx
130
crude
140
interest
87
acq
707
ship
43
earn
1076
Caracterstica
# categoras
# tot. docs
# tot. terms
Valor
8
2319
150430
vocabulario
9315
64.87
R8-: es una coleccin obtenida mediante el mismo procedimiento que para R8+ pero
seleccionando en este caso los 20 documentos de menor longitud para cada categora.
7.2.
Diseo experimental
Diseo experimental
85
Multinomial Updateable (NBMU), Naive Bayes (NB), Naive Bayes Multinomial (NBM),
Complement Naive Bayes (CNB) y Support Vector Machine (SVM). Para el entrenamiento y prueba de los experimentos, se utiliz la validacin cruzada en k pliegues (k-fold
k = 10.
conjunto de entrenamiento en
las pruebas y
k1
subconjuntos de tamao
n/k
ejemplos del
veces y
luego se realiza un promedio de los resultados obtenidos para cada particin. Los parmetros utilizados para los experimentos fueron seleccionados de aquellos que reportaron
los mejores resultados en trabajos previos [48, 95].
86
7.3.
Los experimentos estuvieron dirigidos a mostrar distintas alternativas a la representacin original utilizando VSM de textos cortos que ayuden a mejorar la tarea de categorizacin. Se comienza con una estrategia que incorpora informacin semntica en la
representacin de documentos mediante mtodos de WSD basados en conocimiento. Debido a que esto involucra un aumento en la dimensionalidad de la representacin, una
segunda estrategia fue la aplicacin de mtodos de reduccin de vocabulario. Por ltimo,
a partir de lo planteado en [45] se experiment con el uso de hipernimos en la representacin de documentos cortos.
87
%precision
85
80
75
70
65
60
55
50
8p
8p
or
or
8+
sy
Ea
IC
colecciones
terminos
conceptos
terminos+conceptos
88
trminos
conceptos
trminos+conceptos
Corpus
codif
clasif
codif
clasif
W SD
codif
clasif
W SD
CIC
ntc
CNB
ltc
CNB
MFS
ntc
CNB
MFS
Easy
ntc
CNB
ntc
CNB
CIAO
ntc
CNB
CIAO
R8
ntc
CNB
ntc
CNB
LM
ntc
SVM
LM
R8+
ltc
CNB
ntc
CNB
LM
ltc
CNB
LM
R8
ltc
NBMU
ltc
NBMU
MFS
ntc
NB
MFS
R8porc+
ltc
CNB
ntc
CNB
LM
ltc
CNB
LM
R8porc
ltc
CNB
ntc
CNB
MFS
btc
CNB
MFS
De acuerdo a los resultados mostrados en la Figura 7.2 es claro que, independientemente de la complejidad de cada coleccin, la incorporacin de informacin semntica puede
lograr una mejora en la precisin, con respecto a los resultados obtenidos cuando slo los
trminos son considerados. En las colecciones con dicultad baja y media (Easy, R8+,
CICling-2002
89
EasyAbstracts
R8
LM
CIAO
MFS
LM
CIAO
MFS
LM
CIAO
MFS
btc
62.50
62.50
58.33
87.50
93.75
87.50
94.56
94.43
94.06
ltc
60.41
64.58
66.66
91.65
95.83
91.66
95.12
94.86
ntc
62.50
66.66
75.00
97.91
100
95.83
95.38
95.38
95.21
95.38
T+C
LM
CIAO
MFS
LM
CIAO
MFS
LM
CIAO
MFS
btc
60.41
58.33
60.41
93.75
91.66
89.58
95.38
95.34
95.77
ltc
58.33
66.66
70.83
93.75
93.75
93.75
95.55
95.64
95.25
ntc
66.66
70.83
72.91
100
100
97.91
95.81
95.60
95.68
R8+
90
R8-
LM
CIAO
MFS
LM
CIAO
MFS
btc
85.00
84.37
83.12
90.00
90.00
90.00
ltc
85.62
85.00
90.62
90.00
92.5
ntc
86.25
86.25
83.75
81.25
91.87
90.62
91.25
T+C
LM
CIAO
MFS
LM
CIAO
MFS
btc
86.25
85.62
84.37
90.62
90.62
ltc
86.87
92.50
85.00
85.62
91.87
91.25
90.62
ntc
81.87
83.12
82.50
92.50
92.12
92.50
R8porc+
R8porc-
LM
CIAO
MFS
LM
CIAO
MFS
btc
95.00
94.37
92.5
95.68
96.46
96.32
ltc
95.62
95.00
95.89
96.32
96.11
ntc
96.25
96.25
93.75
93.12
96.11
96.11
96.54
T+C
LM
CIAO
MFS
LM
CIAO
MFS
btc
96.25
95.62
94.37
97.84
97.19
ltc
96.87
97.89
95.00
95.62
97.62
97.19
97.19
ntc
91.87
93.12
91.87
97.40
97.19
96.32
R8, donde enfoques de este tipo pueden tener un impacto negativo en la ecien-
cia en tiempo y espacio de sistemas de categorizacin como los provistos por Weka. Un
aspecto interesante a analizar en estos casos, es en qu medida los enfoques semnticos
son robustos a los mtodos clsicos de reduccin de dimensionalidad como los descriptos
en la seccin 3.3, para poder obtener colecciones que se puedan procesar de manera ms
eciente.
Para la tarea de reduccin de dimensionalidad, Weka provee una variedad de ltros:
supervisados, no supervisados, de ltrado de instancias o de ltrado de atributos. En este
91
100
%precision
95
90
85
80
0
00
10
00
75
00
50
00
25
50
12
0
50
0
25
tamao de vocabulario
terminos
conceptos
terminos+conceptos
92
100
%precision
95
90
85
80
00
50
50
37
00
25
50
12
5
87
0
50
0
25
5
17
0
15
tamao de vocabulario
terminos
conceptos
terminos+conceptos
93
Sin hipernimos
N BM U
CN B
N BM
35.41
66.66
41.66
T +C
35.41
70.83
39.58
Con hipernimos
NB
SV M
50 60.41
47.91 54.16
N BM U
CN B
N BM
NB
SV M
54.16
56.25
72.00
75
60.41
64.58
50
45.83
43.75
52.08
en [45]. Los conceptos en este caso se obtuvieron mediante el mtodo CIAO. En la Tabla
7.8 se resumen los mejores valores obtenidos para CIC con los distintos algoritmos en el
caso de no usar hipernimos (izquierda) y con el uso de hipernimos (derecha). Observando
los mejores valores de precisin, tanto para la representacin de conceptos (C ) como
para la de trminos+conceptos (T
N BM U , CN B
N BM
el
uso de hipernimos muestra algunas mejoras sobre los resultados sin hipernimos, para los
algoritmos
NB
SV M
7.4.
tos cortos (blogs, mensajes de textos, y otros) lo que ha generado un inters creciente
en diversas aplicaciones del procesamiento automtico de documentos. El clustering
(agrupamiento) de textos cortos es un rea muy importante de investigacin, que puede
jugar un rol fundamental en organizar estos grandes volmenes de textos cortos, en un
nmero pequeo de grupos signicativos. Al usar el trmino clustering se hace referencia
a aquella forma de categorizacin no-supervisada la cual, a diferencia de la categorizacin
standard, no dispone de informacin sobre las clases correctas ni ejemplos de asignaciones de instancias a las diferentes clases. Recientemente, el uso de mtodos de clustering
94
bio-inspirados iterativos de textos cortos, ha producido resultados muy interesantes utilizando representaciones de vector de trminos clsicas [30, 31]. En esta seccin, se analiza,
mediante un estudio experimental, cul es el impacto que tiene en el desempeo de clustering iterativo utilizando representaciones de documentos enriquecidas con informacin
semntica obtenida con mtodos de desambiguacin basados en conocimiento [32, 94].
?
?
El algoritmo ITSA (cuyo nombre deriva de ITerative PAntSA ), es la versin iterativa
?
de PAntSA , un mtodo bio-inspirado diseado para mejorar los resultados obtenidos
?
con algoritmos de clustering arbitrarios. PAntSA es la versin particional del algoritmo
AntTree [6] que adems incorpora informacin sobre el Coeciente de Silueta (Silhouette
?
Coecient ) [97] y el concepto de atraccin de un cluster. En PAntSA , los datos (en este
caso documentos ) son representados por hormigas que se mueven sobre una estructura
de rbol de acuerdo a su similaridad con las otras hormigas ya conectadas al rbol. Cada
nodo en la estructura del rbol representa una nica hormiga y cada hormiga representa
un nico documento.
La coleccin completa de hormigas es representada inicialmente por una lista
hormigas que esperan ser conectadas. Comenzando desde un soporte articial
de
a0 , todas las
hormigas son conectadas de manera incremental ya sea en el soporte o bien a otra hormiga
ya conectada. Este proceso contina hasta que todas las hormigas estn conectadas a la
estructura.
?
Las dos componentes principales de PAntSA son: 1) la disposicin inicial de las hormigas en la lista
a+
ubicada sobre el
atraccin. Aqu, si
Ga+
Para
Ga+ = {a } Aa+
como la atraccin de
L.
sobre
ai
Ga+
y la hormiga
a+
conectada
ai
es referida
att(ai , Ga+ ).
?
PAntSA se diferencia de AntTree en otro aspecto importante: no construye estructuras
?
jerrquicas con races (hormigas) directamente conectadas al soporte. En PAntSA , cada
hormiga
aj
Gaj )
es considerado
ai
debe
a+
95
ai
al conjunto
Ga+ .
ai , este
paso
?
El algoritmo PAntSA
resultante es mostrado en la Figura 7.5, donde es posible observar que toma un clustering
arbitrario como entrada y lleva a cabo los siguientes tres pasos para obtener el nuevo
clustering: 1) Coneccin al soporte, 2) Generacin de la lista
hormigas en
y 3) Agrupamiento de las
L.
Cj C ).
Q0 = {q10 , . . . , qk0 }
el conjunto de las
qi0 Q0 .
Gai = {ai }
(conectar
ai
ai GF ,
al soporte
remover
ai
de
qi0
e inicia-
a0 ).
2. Generacin de la lista L
2.a. Sea Q00 = {q100 , . . . , qk00 } el conjunto de las resultante del proceso previo
de remocin de la primer hormiga de cada la en
Generar la lista
Q0 .
Q00 .
3. Proceso de Clustering
3.a. Repetir
3.a.1 Seleccionar la primer hormiga ai de la lista L.
3.a.2 Sea a+ la hormiga con el valor ms alto de att(ai , Ga
).
, . . . , Gak }
?
Figura 7.5: El algoritmo PAntSA .
a0 .
ai
Ci ,
96
Gai .
ai
en el grupo de
a+ (Ga+ ).
a+
ai 2
y entonces incorpora
?
?
ITSA , puede ser fcilmente lograda. ITSA slo deber proveer un agrupamiento inicial
?
?
a PAntSA , luego tomar la salida de PAntSA que servir como nueva entrada para el
mismo algoritmo en la siguiente iteracin, y repetir este proceso hasta que no se observen
cambios en el agrupamiento generado por PAntSA
?
?
Es importante notar que tanto PAntSA como ITSA son en realidad mtodos de
mejora que trabajan sobre un agrupamiento inicial generado por un algoritmo de cluste?
ring separado. Sin embargo, en trabajos recientes [31], se ha observado que ITSA puede
independizarse de este requerimiento y obtener resultados muy competitivos an cuando
es provisto con agrupamientos iniciales aleatorios. Esta variante, que ser la utilizada en
el trabajo experimental, permite obtener una versin totalmente autocontenida de ITSA
?
?
Los resultados of ITSA fueron comparados con los resultados de PAntSA y otros
cuatro algoritmos de clustering:
K -means, K -MajorClust
CLUDIPSO [29, 46]. Todos estos algoritmos han sido usados en estudios similares y en
particular, CLUDIPSO ha obtenido en trabajos previos [29, 46] los mejores resultados con
Ga+
ai
97
EasyAbstracts.
CICling-2002
F -measure
(descripta en la seccin 3.2) sobre los agrupamientos que cada algoritmo gener en 50
ejecuciones independendientes por coleccin. Los resultados reportados corresponden a
los valores de medida
resaltados en negrita en la tabla con los resultados indican los mejores resultados obtenidos
en cada caso.
Fmin , Fmax
Favg
que
K -means, K -MajorClust,
?
?
los resultados obtenidos con PAntSA e ITSA tomando como entrada los agrupamientos generados por un proceso simple (denotado
R-Clustering)
e ITSA
R-Clust?
utilizando
R-Clust??
res-
R-Clust?? -C mientras que aquellos que combinan trminos y conceptos son referenciados
como
R-Clust?? -T+C.
con
macin semntica en la representacin de los textos cortos. En este sentido, se debe notar
?
que ITSA obtiene los mejores valores de
Fmin , Fmax
Favg
utilizando representaciones
??
-C) en el caso de
otras dos colecciones ms pequeas, si bien no son tan categricos, son altamente competitivos con los obtenidos por los restantes algoritmos. En el caso de
CICling-2002 (una
?
coleccin que ha exhibido una alta complejidad en trabajos previos) ITSA obtiene los
mejores valores de
Fmax
Favg
Fmin
Fmin
??
que slo
).
Los resultados obtenidos en el trabajo experimental, son altamente prometedores respecto a la efectividad de este enfoque, obtenindose resultados muy competitivos en la
CICling-2002
Algoritmos
-Clust?
R-Clust??
R-Clust?? -C
R-Clust?? -T+C
K -Means
K -MajorClust
CHAMELEON
CLUDIPSO
R
Favg
0.54
0.6
0.62
0.59
0.45
0.39
0.46
0.6
Fmin
0.42
0.46
0.46
0.46
0.35
0.36
0.38
0.47
Fmax
0.71
0.75
0.77
0.72
0.6
0.48
0.52
0.73
EasyAbstracts
Favg
0.76
0.92
0.92
0.93
0.54
0.71
0.74
0.92
Fmin
0.54
0.67
0.72
0.71
0.31
0.48
0.39
0.85
Fmax
0.96
1
0.98
0.98
0.71
0.98
0.96
0.98
98
R8-
R8+
Favg
Fmin
Fmax
0.72
0.63
0.82
0.63
0.66
0.71
0.64
0.61
0.57
0.62
0.52
0.57
0.59
0.55
0.49
0.41
0.49
0.73
0.74
0.78
0.72
0.7
0.75
0.72
Favg
Fmin
Fmax
0.74
0.62
0.79
0.64
0.65
0.73
0.60
0.57
0.48
0.57
0.54
0.57
0.58
0.46
0.45
0.4
0.45
0.7
0.72
0.78
0.72
0.69
0.6
0.65
por coleccin.
Captulo 8
Conclusiones y trabajos futuros
Si buscas resultados distintos, no hagas siempre lo mismo.
Albert Einstein. Cientco alemn.
En este captulo se presentan las conclusiones del trabajo realizado y se plantean propuestas para investigaciones futuras. El principal aporte fue la elaboracin de un trabajo
interdisciplinario que realiza contribuciones en el mbito de IL usando como sustento
aspectos bsicos del PLN y la IS. La utilizacin de informacin semntica, mediante mtodos de WSD basados en conocimiento, es el eje principal de los experimentos realizados
en la CT cortos con los cuales se obtuvieron resultados prometedores. En este sentido, la
implementacin de un marco de trabajo para brindar robustez, conabilidad y calidad en
el pre-procesamiento semntico dio soporte sustentable a los trabajos experimentales. En
base a las conclusiones previas se pueden identicar dos reas denidas de estudios para
los trabajos futuros, desde el mbito de PLN y desde la IS.
8.1.
Aportes realizados
100
Trabajos futuros
101
En base a las conclusiones anteriores, donde se destaca el buen desempeo del preprocesamiento semntico no supervisado para tareas vinculadas al PLN, se implementa
un marco de trabajo que brinda soporte al investigador en la reproduccin exacta de
experimentos anteriores como as tambin, hacer ms sencilla la creacin de nuevos experimentos para la obtencin de los vectores que representan a los documentos de texto. El
framework desarrollado brinda un manejo sencillo de los documentos que se utilizan para
el pre-procesado semntico, un acceso unicado a los algoritmos de anlisis sintctico (o
pos-tagging) y de anlisis semntico (o WSD). Al tener una arquitectura simple y modular es posible extender fcilmente el framework, incorporando nuevos algoritmos como
procesos intermedios. En este contexto, se proveen interfaces y clases abstractas bsicas
para las tareas involucradas en la obtencin de los vectores. Por lo tanto, los mdulos
que pretendan hacer uso de los servicios que brinda el framework nicamente debern
implementar los componentes abstractos del mismo.
Si bien el uso del framework alivi la tarea de obtencin de los vectores para la representacin de documentos, la posibilidad de combinar los algoritmos disponibles en
las distintas etapas era una tarea engorrosa ya que se haca manualmente. El desarrollo
de una interfaz grca extendi los benecios del framework original, evitando que el
usuario tenga que conocer detalles subyacentes de la implementacin. De esta manera, la
seleccin y el posterior enlace de los diferentes algoritmos en las distintas etapas ya no
es un proceso complejo que exige codicacin, permitiendo a usuarios tanto del mbito
informtico como de otras reas de estudio tener acceso a un conjunto de funcionalidades
para el anlisis de textos. Pre.Se.Do. fue desarrollado para hacer factible la interaccin en
forma amigable, rpida y sencilla del usuario con el framework implementado.
Finalmente, se muestra lo sencillo que resulta la adaptacin de un mdulo del framework desarrollado para el acoplamiento al sistema GATE. De esta manera, se puede
generalizar armando que incorporar los dems componentes de nuestro framework a
sistemas mayores es una tarea simple y factible de ser realizada.
8.2.
Trabajos futuros
102
Apndice A
Acrnimos
AA. Aprendizaje Automtico
API. Interface de Programacin de Aplicaciones
C. conceptos
CIAO. CIAOSENSO
CIC. CICling-2002
CNB. Complement Naive Bayes
CT. Categorizacin de Textos
Easy. EasyAbstract
GATE. General Architecture for Text Engineering
GUI. Graphic User Interface
IL. Ingeniera del Lenguaje
IS. Ingeniera de Software
ITSA. ITerative PAntSA
LM. Lesk Mejorado
MD. Minera de Datos
MFS. Most Frequent Sense
NB. Naive Bayes
Apndice A. Acrnimos
NBM. Naive Bayes Multinomial
NBMU. Naive Bayes Multinomial Updateable
PLN. Procesamiento del Lenguaje Natural
Pre.Se.Do. Pre-procesamiento Semntico de Documentos
RI. Recuperacin de la Informacin
SVM. Support Vector Machine
T+C. trminos+conceptos
VSM. Vector Space Model
WN. WordNet
WSD. Word Sense Disambiguation
104
Apndice B
Documentacin del Framework
Es de sentido comn elegir un mtodo y probarlo. Si falla, admitirlo francamente y
probar con otro. Pero, sobre todo, intentar algo.
Franklin Roosevelt. Poltico estadounidense.
La documentacin del framework es esencial para que ste pueda ser reutilizable.
Una buena documentacin para las especicaciones de un framework debe detallar como
mnimo:
B.1.
Propsito
106
archivos de la base de datos lxica WordNet, uno de los recursos externo ms utilizado
para las tareas vinculadas a PLN. Esto ltimo se logr mediante la adaptacin de la API
WordNet .NET (mencionada en la seccin 6.1.3) a lenguaje Java por ser la nica que
satisfaca los requerimientos de diseo incial del framework.
B.2.
framework
package ar.edu.unsl.cs.wsd.postagger;
public class MFWNPOSTagger extends POSTagger {
public WordInfo[] posTag(String[] words) {
WordInfo[] wordInfos = ...
return wordInfos;
}
}
Figura B.1: Ejemplo clase POSTagging
Para un algoritmo de WSD se debe crear un nuevo subpaquete dentro del paquete
wsd que contendr los archivos Java necesarios para la implementacin del algoritmo a incluir. Adems debe incluirse una clase WSDhnbreAlgoritmoi que herede de
107
package ar.edu.unsl.cs.wsd;
public class WSDLesk extends WSD {
protected WordInfo[] disambiguate(String[] words) {
wordInfos = wsd.disambiguate(wordInfos);
return wordInfos;
}
}
Figura B.2: Ejemplo clase WSD
Una vez que el desarrollo anterior ha sido completado, para realizar una ejecucin con
una coleccin de documentos, se deben congurar los algoritmos de POSTagger y WSD
a ejecutar en el archivo, de la siguiente manera:
hnbreClaseWSDi
hDirectorioi
procesar.
108
identicador nico del synset para cada trmino desambiguado. Finalmente, se realiza
la transformacin de los dgitos del oset a letras (de la a a la j ) que formarn el vector
de conceptos que ser utilizado como datos de entrada a las herramientas que resuelven
distintas tareas vinculadas al PLN.
Apndice C
Documentacin de Pre.Se.Do
...se puede pensar a la ingeniera como la ciencia para la gente impaciente
Herb Simon. PhD in Computer Science
El desarrollo de una interfaz grca de usuario en lenguaje Java puede ser realizado
de varias maneras, las ms utilizadas son a travs de: Abstract Windows Toolkit (AWT ),
Swing proporciona GUIs que tienen apariencia elegante y sosticada. Es una tecnologa relativamente lenta debido a que los controles son realizados por el propio
Java.
SWT est compuesto por un conjunto de widgets y una biblioteca de grcos. Hace
posible el diseo de GUIs con apariencia muy similar a las aplicaciones de escritorio
tradicionales. Los controles son construidos por los archivos DLL nativos por lo que
es la opcin ms rpida de las tres.
Por otro lado, est disponible en forma gratuita un plugin (plug-in), denominado Ji-
gloo, que se aade a Eclipse para disear GUIs con AWT, Swing y SWT lo que facilita
110
gran parte del trabajo de desarrollo. Jigloo crea y administra el cdigo para todas las
partes de Swing, SWT y manejo de eventos, adems permite visualizar la GUI a medida
que se va construyendo. Jigloo es sencillo, rpido, potente, fcil de usar y totalmente integrado con Eclipse. Esto puede llevar a importantes ahorros de tiempo para el desarrollo de
una interfaz grca de usuario y sus tareas de mantenimiento. Jigloo ofrece las siguientes
caractersticas generales:
Construye clases Java para interfaces grcas de usuario en SWT o Swing, con un
simple editor WYSIWYG.
Edicin de dos vas (o de ida y vuelta), los cambios realizados en el editor de
formularios se recogen en el cdigo, y los cambios realizados al cdigo se reejan
tambin en el editor de formularios. Actualizacin en el momento de los cambios
realizados en ambos editores.
Puede reconocer y manipular el cdigo generado manualmente o por otros IDE (por
ejemplo, NetBeans, JBuilder, etc.).
Pueden agregarse componentes y modicar la conguracin de los diseos.
Fcil navegacin entre los editores de cdigo fuente y de formularios.
Multiseleccin de los componentes para el ajuste de las propiedades, los parmetros
de diseo, y acciones como copiar, cortar, pegar y borrar.
Manipula la mayora de las propiedades de los componentes de interfaz grca de
usuario, tales como colores, fuentes, imgenes, tamaos, etc..
Crea controladores para todos y cada uno de los eventos de los componentes.
El cdigo de Java y la forma interfaz grca de usuario se puede ver en un solo
editor (ya sea una fraccin de panel) o se puede seleccionar el diseo con solapas o
pestaas.
Por todos los motivos especicados anteriormente se decidi utilizar las facilidades de
Jigloo para el desarrollo de una interfaz grca que haga posible interactuar en forma
amigable, rpida y sencilla con el framework desarrollado y descripto detalladamente en
el Apndice B. Inicialmente, en el framework propuesto en este trabajo, la posibilidad de
111
combinar diferentes algoritmos en las distintas etapas era un proceso que se haca manualmente y codicando. Es decir, no exista un controlador del ujo ni entorno grco para
ejecutar los diferentes mdulos, sino que la salida del anterior deba ser provista y codicada como entrada al posterior. Como una posible extensin a este framework se decide
implementar dicho controlador grco. Pre.Se.Do. (las siglas para Pre-procesamiento
Figura C.2:
112
La Figura C.1 muestra la ventana inicial con dos opciones posibles: acceder a la aplicacin Pre.Se.Do o solicitar ayuda para el uso de la misma. En la Figura C.2 se muestra el
entorno que ofrece una interfaz grca para utilizar las distintas funcionalidades que ofrece
Pre.Se.Do.. Dentro del entorno principal existen 4 sub-entornos para realizar las distintas
tareas que involucra el pre-procesado semntico de documentos segn fue descripto en el
Captulo 6:
El primer paso para comenzar a trabajar con la aplicacin es denir el origen de los
datos. Por lo tanto, debe seleccionarse en primer lugar el corpus o coleccin con la que se va
a trabajar, la misma debe ser una carpeta conteniendo las diferentes subcategoras dentro
de las cuales se encontrarn los archivos de textos a analizar que tendrn extensin .txt.
Para seleccionar la carpeta corpus se puede realizar de dos maneras, ya sea escribiendo
directamente en el cuadro de texto Carpeta Corpus la ruta completa donde se encuentra
la coleccin a analizar o mediante el explorador mostrado en la Figura C.3 pulsando el
botn Explorar en la ventana principal de Pre.Se.Do.. Si la seleccin de un corpus no ha
sido realizado un aviso de error ser mostrado en una ventana de dilogo como el de la
113
Figura C.4. Finalmente, una vez seleccionado el origen de datos es posible comenzar a
realizar alguna de las tareas implementadas.
La primera solapa permite realizar el anlisis sintctico del corpus. Los archivos a
pre-procesar en esta tarea deben tener extensin .txt y a la salida se le anexar la
extensin .pos. En primer lugar se debe seleccionar el algoritmo con el cul se realizar
esta tarea. La descripcin de los algoritmos MFWN y Brill fue includa en el Captulo
6. Es importante destacar que, como se especic en el Captulo 6, el framework est
orientado a la extensibilidad por lo que aadir funcionalidades es una tarea sencilla,
que slo requiere incluir nuevos algoritmos de las distintas tareas que conforman el ujo
de ejecucin. Al pulsar el botn Get PosTagger comienza la ejecucin pudiendo ser
cancelada en cualquier momento durante el procesamiento, pulsando Cancelar. De esta
manera una ventana como la mostrada en la Figura C.5 se abrir para conrmar la
interrupcin o no de la ejecucin.
Para vericar que la tarea est en proceso y llevar un control de los archivos ejecutndose en cada momento, el cuadro de texto inferior de la pantalla fue agregado para ir
mostrando cual es el archivo que est actualmente procesandose. Esto puede verse en la
Figura C.6.
En la segunda solapa o pestaa, mostrada en la Figura C.7, se puede realizar el anlisis
semntico de los textos que ya han sido analizados sintcticamente. Para la tarea de
desambiguacin es posible optar por alguno de los tres algoritmos implementados: SMF
(most frequent sense), CIAO y Lesk (en su versin mejorada o adaptada). Tanto para
114
la tarea anterior como para las siguientes es posible interrumpir, en todo momento, la
ejecucin del procesamiento que para este caso comenz al pulsar el botn Get WSD.
En la Figura C.8 se muestra la solapa que permite realizar la tarea nal para la
obtencin de los vectores que sern utilizados (representando los documentos) como datos
de entrada en distintas aplicaciones vinculadas al PLN. De la misma manera que para las
tareas anteriores se deber optar por una alternativa entre varias, en este caso, vectores
de trminos (Terms ), conceptos (Concepts ) o trminos+conceptos (Terms+Concepts ).
115
116
Bibliografa
[1] Eneko Agirre and David Martnez. Exploring automatic word sense disambiguation
with decision lists and the web. Corpus Research Repository, cs.CL/0010024, 2000.
[2] Eneko Agirre and German Rigau.
A fra-
UCS, 3(8):10071021,
1997.
[5] David Pinto Avendao, Hctor Jimnez-Salazar, and Paolo Rosso. Clustering abstracts of scientic texts using the transition point technique.
In CICLing, pages
536546, 2006.
[6] Hanane Azzag, Nicols Monmarche, Mohamed Slimane, Gilles Venturini, and Christiane Guinot. AntTree: A new model for clustering with articial ants. In CEC,
pages 26422647, 2003.
[7] Douglas Baker and Andrew McCallum. Distributional clustering of words for text
classication. In SIGIR, pages 96103, 1998.
[8] Satanjeev Banerjee. Adapting the Lesk Algorithm for Word Sense Disambiguation to
BIBLIOGRAFA
118
[10] Jrg Becker and Dominik Kuropka. Topic-based vector space model. In BIS, pages
712, 2003.
[11] Steven Bird. Nltk: the natural language toolkit. In COLING/ACL, pages 6972,
2006.
[12] K. H. V. Booth. Machine aided translation with a post-editor. In Machine Trans-
1992.
[14] Ted Briscoe and Bran Boguraev. Computational lexicography for natural language
BIBLIOGRAFA
[23] Ido Dagan and Alon Itai.
119
Word sense disambiguation using a second language
BIBLIOGRAFA
120
Computing Research
BIBLIOGRAFA
121
[45] Andreas Hotho, Steen Staab, and Gerd Stumme. Ontologies improve text document clustering. In ICDM, pages 541544, 2003.
[46] Diego Ingaramo, Marcelo Errecalde, Leticia Cagnina, and Paolo Rosso.
Compu-
tion to Natural Language Processing, Computational Linguistics and Speech Recognition. Prentice-Hall, 2000.
[52] Paul Kantor.
Infomation
BIBLIOGRAFA
122
[57] Oh-Woog Kwon and Jong-Hyeok Lee. Web page classication based on k-nearest
neighbor approach. In IRAL, pages 915, 2000.
[58] John Laerty and ChengXiang Zhai. Probabilistic relevance models based on document and query generation, 2002.
[59] Ken
Lang.
Original
20
newsgroups
dataset,
1993.
http://kdd.ics.uci.edu/databases/20newsgroups/20newsgroups.html.
[60] Leah Larkey. A patent search and classication system. In ACM DL, pages 179187,
1999.
[61] Jochen Leidner. Current issues in software engineering for natural language processing. In SEALTS, pages 4550, 2003.
[62] Michael Lesk. Automatic sense disambiguation using machine readable dictionaries:
How to tell a pine cone from an ice cream cone. In 5th International Conference on
In
BIBLIOGRAFA
123
Computer-based
2007.
[71] Pavel Makagonov, Mikhail Alexandrov, and Alexander Gelbukh.
Clustering abs-
, 1996. http://wordnet.princeton.edu/wordnet/related-
projects/#local.
[77] Tom Mitchell. Machine learning meets natural language. In EPIA, page 391, 1997.
[78] Dunja Mladeni'c and Marko Grobelnik. Ecient text categorization, 1998.
[79] Dan Moldovan and Rada Mihalcea. Using wordnet and lexical operators to improve
internet searches. IEEE Internet Computing, 4(1):3443, 2000.
[80] David Monarchi, Brian Henderson-Sellers, Grady Booch, Ivar Jacobson, Stephen
Mellor, James Rumbaugh, and Rebecca Wirfs-Brock. Methodology standards: Help
or hindrance? OOPS Messenger, 5(4):5458, 1994.
[81] Isabelle Moulinier, Gaillius Raskinis, and Jean-Gabriel Ganascia. Text categorization : a symbolic approach. In SDAIR, pages 8799, 1996.
[82] Mary S. Ne, Roy J. Byrd, and Branimir K. Boguraev. B.k.: The talent system:
Textract architecture and data model. In JNLPBA, pages 307326, 2004.
[83] Nikunj Oza, Robi Polikar, Josef Kittler, and Fabio Roli, editors. Multiple Classier
BIBLIOGRAFA
124
Cross-
2011.
[86] Martin Potthast, Benno Stein, Alberto Barrn-Cedeo, and Paolo Rosso. An evaluation framework for plagiarism detection. In COLING (Posters), pages 9971005,
2010.
[87] Roger S. Pressman. Software Engineering: A Practitioner's Approach. McGraw-Hill
Higher Education, 2001.
[88] James Pustejovsky. The generative lexicon. Computational Linguistics, 17(4):409
441, 1991.
[89] Diego Reforgiato Recupero. A new unsupervised method for document clustering
by using wordnet lexical and conceptual relations. Information Retrievel, 10(6):563
579, 2007.
[90] Philip Resnik. Using information content to evaluate semantic similarity in a taxonomy. In IJCAI, pages 448453, 1995.
[91] Ellen Rilo. An empirical study of automated dictionary construction for information extraction in three domains. Artitial Intelligence, 85(1-2):101134, 1996.
[92] Thomas Roelleke, Jun Wang, and Stephen Robertson. Probabilistic retrieval models
and binary independence retrieval (bir) model. In Encyclopedia of Database Systems,
pages 21562160. Idea Group, 2009.
[93] Monica Rogati and Yiming Yang. High-performing feature selection for text classication. In CIKM, pages 659661, 2002.
[94] Mara V. Rosas, , Marcelo Errecalde Diego Ingaramo, and Paolo Rosso. Clustering
iterativo de textos cortos con representaciones basadas en conceptos.
Revista del
BIBLIOGRAFA
125
[95] Mara V. Rosas, Marcelo Errecalde, and Paolo Rosso. Un anlisis comparativo de
estrategias para la categorizacin semntica de textos cortos. Revista del Procesa-
miento del Lenguaje Natural, Sociedad Espaola para el Procesamiento del Lenguaje
Natural (SEPLN), 45:1118, 2010.
[96] Paolo Rosso, Francesco Masulli, Davide Buscaldi, Ferran Pla, and Antonio Molina.
Automatic noun sense disambiguation. In CICLing, pages 273276, 2003.
[97] Peter Rousseeuw. Silhouettes: a graphical aid to the interpretation and validation
of cluster analysis. Computational and Applied Mathematics, 20(1):5365, 1987.
[98] Yasubumi Sakakibara.
In ISMB,
document representations for the routing problem. In SIGIR, pages 229237, 1995.
[104] Sam Scott and Stan Matwin. Feature engineering for text classication. In ICML,
pages 379388, 1998.
[105] Fabrizio Sebastiani. Machine learning in automated text categorization. Compu-
Text categorization.
Intelligence, CRM and Knowledge Management, pages 109129. WIT Press, 2005.
BIBLIOGRAFA
126
[108] Shahin Shakeri and Paolo Rosso. Spam detection and email classicaion. Informa-
BIBLIOGRAFA
127
[121] Xia Wang. owsd: A tool for word sense disambiguation in its ontology context. In
Processing, Second Edition, pages 121. CRC Press, Taylor and Francis Group, 2010.