Universidad Nacional de San Luis Tesis de Maestría en...

141

Transcript of Universidad Nacional de San Luis Tesis de Maestría en...

Page 1: Universidad Nacional de San Luis Tesis de Maestría en ...personales.upv.es/prosso/resources/RosasMSc.pdf · SEMÁNTICO DE TEXTOS Lic. María Verónica Rosas Director: Dr. Paolo Rosso,

Universidad Nacional de San Luis

Tesis de Maestría en Ingeniería de Software

UN FRAMEWORK DE INGENIERÍA DELLENGUAJE PARA EL PRE-PROCESADO

SEMÁNTICO DE TEXTOS

Lic. María Verónica Rosas

Director: Dr. Paolo Rosso, Universitat Politècnica de València.

Codirector: Dr. Marcelo Errecalde, Universidad Nacional de San Luis.

San Luis Argentina

2012

Page 2: Universidad Nacional de San Luis Tesis de Maestría en ...personales.upv.es/prosso/resources/RosasMSc.pdf · SEMÁNTICO DE TEXTOS Lic. María Verónica Rosas Director: Dr. Paolo Rosso,
Page 3: Universidad Nacional de San Luis Tesis de Maestría en ...personales.upv.es/prosso/resources/RosasMSc.pdf · SEMÁNTICO DE TEXTOS Lic. María Verónica Rosas Director: Dr. Paolo Rosso,

Prefacio

Esta Tesis es presentada como parte de los requisitos para optar al grado académico

de Magister en Ingeniería de Software, de la Universidad Nacional de San Luis, y no ha

sido presentada previamente para la obtención de otro título en esta Universidad u otras.

La misma contiene los resultados obtenidos en investigaciones llevadas a cabo bajo la

dirección del Dr. Paolo Rosso y el Dr. Marcelo Errecalde.

Lic. María Verónica Rosas

[email protected]

Departamento de Informática

Universidad Nacional de San Luis

San Luis.

Page 4: Universidad Nacional de San Luis Tesis de Maestría en ...personales.upv.es/prosso/resources/RosasMSc.pdf · SEMÁNTICO DE TEXTOS Lic. María Verónica Rosas Director: Dr. Paolo Rosso,
Page 5: Universidad Nacional de San Luis Tesis de Maestría en ...personales.upv.es/prosso/resources/RosasMSc.pdf · SEMÁNTICO DE TEXTOS Lic. María Verónica Rosas Director: Dr. Paolo Rosso,

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 sabiduría, a las que fueron mi

guía 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 cuñados, a mi Nono Herminio y a Santiago que me

acompañó con su sonrisa espontánea y amplia estos últimos meses. A mis amigos de toda

la vida y a los que comparten y disfrutan día a día las horas de docencia.

Agradezco a mi director y codirector, sin cuya ayuda, dedicación 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 día que me regala y que me acompaña incon-

dicionalmente en este camino, haciéndose presente en cada una de las personas que están

a mi lado.

Page 6: Universidad Nacional de San Luis Tesis de Maestría en ...personales.upv.es/prosso/resources/RosasMSc.pdf · SEMÁNTICO DE TEXTOS Lic. María Verónica Rosas Director: Dr. Paolo Rosso,
Page 7: Universidad Nacional de San Luis Tesis de Maestría en ...personales.upv.es/prosso/resources/RosasMSc.pdf · SEMÁNTICO DE TEXTOS Lic. María Verónica Rosas Director: Dr. Paolo Rosso,

Índice general

1. Introducción 1

1.1. Descripción de la problemática . . . . . . . . . . . . . . . . . . . . . . . . . 2

1.1.1. Aspectos surgidos desde el área del PLN . . . . . . . . . . . . . . . 2

1.1.2. Aspectos surgidos desde el área de la IS . . . . . . . . . . . . . . . . 3

1.2. Motivación y objetivos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4

1.3. Contexto de la tesis en el marco de la Maestría . . . . . . . . . . . . . . . 6

1.4. Principales contribuciones y publicaciones . . . . . . . . . . . . . . . . . . 7

1.5. Organización de la tesis . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9

2. Procesamiento del lenguaje natural 11

2.1. Niveles de la linguística general . . . . . . . . . . . . . . . . . . . . . . . . 12

2.2. PLN estadístico . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15

2.3. Aplicaciones de PLN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16

3. Indexación y categorización de textos 19

3.1. Indexación de documentos . . . . . . . . . . . . . . . . . . . . . . . . . . . 19

3.1.1. Modelos de indexación . . . . . . . . . . . . . . . . . . . . . . . . . 20

3.1.2. Modelo de espacio vectorial . . . . . . . . . . . . . . . . . . . . . . 22

3.2. Categorización de textos . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25

3.2.1. Aprendizaje de un clasi�cador . . . . . . . . . . . . . . . . . . . . . 27

Page 8: Universidad Nacional de San Luis Tesis de Maestría en ...personales.upv.es/prosso/resources/RosasMSc.pdf · SEMÁNTICO DE TEXTOS Lic. María Verónica Rosas Director: Dr. Paolo Rosso,

3.2.2. Evaluación de un clasi�cador . . . . . . . . . . . . . . . . . . . . . 28

3.3. Reducción de dimensionalidad . . . . . . . . . . . . . . . . . . . . . . . . . 30

3.4. Semántica en la categorización de textos . . . . . . . . . . . . . . . . . . . 32

4. Resolución de la ambigüedad semántica 35

4.1. Indexación conceptual . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35

4.2. Estrategias de desambiguación . . . . . . . . . . . . . . . . . . . . . . . . . 36

4.3. WordNet: una base de datos léxica . . . . . . . . . . . . . . . . . . . . . . 38

5. WSD basado en conocimiento 47

5.1. Método heurístico del sentido más frecuente . . . . . . . . . . . . . . . . . 48

5.2. Algoritmo de Lesk . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49

5.2.1. Algoritmo de Lesk Mejorado . . . . . . . . . . . . . . . . . . . . . . 51

5.3. Sistema CIAOSENSO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55

6. Aspectos de Ingeniería de Software aplicados a PLN 59

6.1. Conceptos introductorios . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60

6.1.1. Ingeniería del Lenguaje Natural . . . . . . . . . . . . . . . . . . . . 61

6.1.2. Reuso de componentes . . . . . . . . . . . . . . . . . . . . . . . . . 63

6.1.3. APIs para WordNet . . . . . . . . . . . . . . . . . . . . . . . . . . . 66

6.2. Trabajos Relacionados en Ingeniería del Lenguaje . . . . . . . . . . . . . . 68

6.3. Descripción del framework desarrollado . . . . . . . . . . . . . . . . . . . . 70

6.4. Experiencias en el uso del framework . . . . . . . . . . . . . . . . . . . . . 74

6.5. Plugin semántico para GATE . . . . . . . . . . . . . . . . . . . . . . . . . 75

6.5.1. Modelo de componentes de GATE . . . . . . . . . . . . . . . . . . . 76

6.5.2. Descripción del recurso de procesamiento semántico . . . . . . . . . 78

Page 9: Universidad Nacional de San Luis Tesis de Maestría en ...personales.upv.es/prosso/resources/RosasMSc.pdf · SEMÁNTICO DE TEXTOS Lic. María Verónica Rosas Director: Dr. Paolo Rosso,

7. Conjuntos de datos y detalle de los experimentos 81

7.1. Descripción de los conjuntos de datos . . . . . . . . . . . . . . . . . . . . . 82

7.2. Diseño experimental . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84

7.3. Resultado y análisis de los experimentos . . . . . . . . . . . . . . . . . . . 86

7.3.1. Enfoque I: incorporación de información semántica . . . . . . . . . 87

7.3.2. Enfoque II: reducción de dimensionalidad . . . . . . . . . . . . . . . 90

7.3.3. Enfoque III: incorporación de hiperónimos . . . . . . . . . . . . . . 92

7.4. Clustering utilizando información semántica . . . . . . . . . . . . . . . . . 93

8. Conclusiones y trabajos futuros 99

8.1. Aportes realizados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99

8.2. Trabajos futuros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101

A. Acrónimos 103

B. Documentación del Framework 105

B.1. Propósito . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105

B.2. Utilización y ejecución del framework . . . . . . . . . . . . . . . . . . . . . 106

C. Documentación de Pre.Se.Do 109

Bibliografía 115

Page 10: Universidad Nacional de San Luis Tesis de Maestría en ...personales.upv.es/prosso/resources/RosasMSc.pdf · SEMÁNTICO DE TEXTOS Lic. María Verónica Rosas Director: Dr. Paolo Rosso,
Page 11: Universidad Nacional de San Luis Tesis de Maestría en ...personales.upv.es/prosso/resources/RosasMSc.pdf · SEMÁNTICO DE TEXTOS Lic. María Verónica Rosas Director: Dr. Paolo Rosso,

Índice de tablas

3.1. Representación binaria . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23

3.2. Representación real . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23

3.3. Nomenclatura SMART para la codi�cación de textos . . . . . . . . . . . . 24

3.4. Matriz de Decisión . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26

3.5. Matríz de contingencia para la categoría ci . . . . . . . . . . . . . . . . . . 29

4.1. Clasi�cación de los métodos de WSD . . . . . . . . . . . . . . . . . . . . . 38

4.2. Relaciones en WordNet según las categorías gramaticales . . . . . . . . . . 41

4.3. Conceptos en la cima de la jerarquía de WordNet . . . . . . . . . . . . . . 43

4.4. Archivos de la base de datos WordNet (versión 2.1) . . . . . . . . . . . . . 44

5.1. Algoritmo de Lesk (adaptado desde [9]) . . . . . . . . . . . . . . . . . . . . 50

5.2. Puntajes para los pares en la �guras 5.1, 5.2 y 5.3 . . . . . . . . . . . . . . 56

5.3. Cálculos para la Figura 5.5 . . . . . . . . . . . . . . . . . . . . . . . . . . . 58

7.1. Características del corpus CICling-2002 . . . . . . . . . . . . . . . . . . . 82

7.2. Características del corpus EasyAbstracts . . . . . . . . . . . . . . . . . . . 83

7.3. Características del corpus R8 . . . . . . . . . . . . . . . . . . . . . . . . . 84

7.4. Mejores valores para �codi�cación#clasi�cador#WSD� . . . . . . . . . . . 88

7.5. Mejores valores de precisión de CICling-2002, EasyAbstract y R8 . . . . . 89

7.6. Mejores valores de precisión de R8+ y R8- . . . . . . . . . . . . . . . . . . 90

7.7. Mejores valores de precisión de R8porc+ y R8porc- . . . . . . . . . . . . . 90

Page 12: Universidad Nacional de San Luis Tesis de Maestría en ...personales.upv.es/prosso/resources/RosasMSc.pdf · SEMÁNTICO DE TEXTOS Lic. María Verónica Rosas Director: Dr. Paolo Rosso,

7.8. Resultados sin hiperónimos vs con hiperónimos . . . . . . . . . . . . . . . 93

7.9. Mejores valores de medida F por colección. . . . . . . . . . . . . . . . . . . 98

Page 13: Universidad Nacional de San Luis Tesis de Maestría en ...personales.upv.es/prosso/resources/RosasMSc.pdf · SEMÁNTICO DE TEXTOS Lic. María Verónica Rosas Director: Dr. Paolo Rosso,

Índice de �guras

2.1. Estructura de un sistema PLN . . . . . . . . . . . . . . . . . . . . . . . . . 13

4.1. Relaciones para el synset �pine, pine true, pine cone� (adaptada de [76]) . 41

4.2. Fragmento del archivo index.noun . . . . . . . . . . . . . . . . . . . . . . . 43

4.3. Fragmento del archivo data.noun . . . . . . . . . . . . . . . . . . . . . . . 44

5.1. Comparación del primer par (adaptado de [8]) . . . . . . . . . . . . . . . . 54

5.2. Comparación del segundo par (adaptado de [8]) . . . . . . . . . . . . . . . 54

5.3. Comparación del tercer par (adaptado de [8]) . . . . . . . . . . . . . . . . 55

5.4. Subjerarquía y synsets relevantes . . . . . . . . . . . . . . . . . . . . . . . 57

5.5. Subjerarquías para la desambiguación de �brake� con CIAOSENSO . . . . 58

6.1. Estructura del framework . . . . . . . . . . . . . . . . . . . . . . . . . . . 71

6.2. Diagrama de tareas e interacción de clases . . . . . . . . . . . . . . . . . . 74

6.3. Interfaz grá�ca de GATE . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77

6.4. Archivo creole.xml del módulo SMF . . . . . . . . . . . . . . . . . . . . . . 79

6.5. Plugin semántico instalado y ejecutado en GATE . . . . . . . . . . . . . . 79

7.1. Diagrama de actividades para generar los distintos vectores . . . . . . . . . 86

7.2. Sin Información Semántica vs. Con Información Semántica . . . . . . . . 87

7.3. Reducción del tamaño de vocabulario para la colección R8 . . . . . . . . . 91

7.4. Reducción del tamaño de vocabulario para la colección R8+ . . . . . . . . 92

Page 14: Universidad Nacional de San Luis Tesis de Maestría en ...personales.upv.es/prosso/resources/RosasMSc.pdf · SEMÁNTICO DE TEXTOS Lic. María Verónica Rosas Director: Dr. Paolo Rosso,

7.5. El algoritmo PAntSA?. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95

B.1. Ejemplo clase POSTagging . . . . . . . . . . . . . . . . . . . . . . . . . . . 106

B.2. Ejemplo clase WSD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107

C.1. Ventana inicial de Pre.Se.Do . . . . . . . . . . . . . . . . . . . . . . . . . . 111

C.2. Ventana principal de Pre.Se.Do. . . . . . . . . . . . . . . . . . . . . . . . . 111

C.3. Explorador para seleccionar la colección . . . . . . . . . . . . . . . . . . . 112

C.4. Ventana de diálogo de aviso de error . . . . . . . . . . . . . . . . . . . . . 113

C.5. Ventana de diálogo para Cancelar el proceso . . . . . . . . . . . . . . . . . 113

C.6. Ventana procesando una tarea . . . . . . . . . . . . . . . . . . . . . . . . . 114

C.7. Solapa para la tarea de WSD . . . . . . . . . . . . . . . . . . . . . . . . . 114

C.8. Solapa para la tarea de Vectores . . . . . . . . . . . . . . . . . . . . . . . . 115

C.9. Solapa para la tarea de Relaciones . . . . . . . . . . . . . . . . . . . . . . 115

Page 15: Universidad Nacional de San Luis Tesis de Maestría en ...personales.upv.es/prosso/resources/RosasMSc.pdf · SEMÁNTICO DE TEXTOS Lic. María Verónica Rosas Director: Dr. Paolo Rosso,

Capítulo 1

Introducción

Este trabajo de tesis surge de la necesidad de brindar una solución integradora a los

planteos originados en dos áreas de estudios diferentes, como son el Procesamiento del

Lenguaje Natural (PLN) y la Ingeniería del Software (IS). Por lo tanto, el objetivo general

se plantea para dar una respuesta uni�cada a dos necesidades:

Determinar la efectividad de la categorización de textos, concretamente en textos

cortos, cuando se utiliza información semántica obtenida mediante la aplicación de

diferentes métodos de desambiguación del sentido de las palabras.

Disponer de una herramienta en Ingeniería del Lenguaje (IL) que sea especí�ca y

sencilla para el desarrollo de los experimentos necesarios para el análisis anterior.

En la primera sección del capítulo se describen los aspectos principales asociados a las

dos áreas de estudio y la problemática que dio origen a este trabajo. Las motivaciones y los

objetivos planteados para el desarrollo de la tesis son enunciados en la segunda sección.

En un apartado especial se enmarca el contexto de esta tesis dentro de la maestría en

Ingeniería de Software, haciendo mención de las contribuciones en este ámbito de investi-

gación y detallando las publicaciones presentadas. Finalmente, se expone la organización

de la tesis resumiendo los diferentes capítulos que la componen.

Page 16: Universidad Nacional de San Luis Tesis de Maestría en ...personales.upv.es/prosso/resources/RosasMSc.pdf · SEMÁNTICO DE TEXTOS Lic. María Verónica Rosas Director: Dr. Paolo Rosso,

Capítulo 1. Introducción 2

1.1. Descripción de la problemática

Las tecnologías de la información y la comunicación han hecho posible el acceso a gran

cantidad de información de manera sencilla. Gran parte de dicha información es de tipo

textual, razón por la cual, las aplicaciones vinculadas al PLN (como la Categorización

de Textos) adquieren, día a día, una mayor relevancia. En este sentido, es importante

y necesario obtener mejoras en estas tareas, tanto desde el ámbito del PLN como en la

aplicación de conceptos provenientes del dominio ingenieril.

Teniendo en cuenta la problemática que surge de las distintas áreas de investigación

involucradas en esta tesis, es conveniente para una mejor descripción considerar las falen-

cias existentes en las mismas en forma separada. Posteriormente, se mostrará la necesidad

de llevar a cabo un enfoque integrado que compense las di�cultades expuestas.

1.1.1. Aspectos surgidos desde el área del PLN

El exceso de información a la que una persona está expuesta hoy en día, generalmente

ocasiona la imposibilidad de identi�car, seleccionar y procesar lo que realmente se nece-

sita. Debido al hecho de que generalmente se recibe más información de la que se desea o

es posible procesar, las aplicaciones y técnicas vinculadas al procesamiento y organización

automática de documentos (recuperación, categorización, agrupamiento, etc.) juegan un

papel relevante. Una de las aplicaciones del PLN es la Categorización de Textos (tam-

bién referenciada como CT supervisada) que consiste en asignar documentos a clases o

categorías existentes. La CT ha despertado un notable interés ya que permite abordar,

a partir de un conocimiento más profundo del lenguaje, los problemas de organizar y

clasi�car el cúmulo de información que se recibe habitualmente en categorías prede�nidas

[106]. En este sentido, numerosas aplicaciones de la categorización de documentos han

realizado valiosos aportes en diversas áreas como la detección de �spam� [41], el �ltrado

de noticias [4], la detección de plagios e identi�cación de autores [85, 86, 70, 55, 110], el

análisis de opinión [27], la organización de patentes en categorías [60], y la clasi�cación y

organización de páginas Web [57, 127], entre otras.

Un aspecto importante a ser observado en este contexto, es que a pesar de que la

información textual en lenguaje natural con el que trabajamos tiende a aumentar expo-

nencialmente, ésta tiene la particularidad de tener un número reducido de palabras en

Page 17: Universidad Nacional de San Luis Tesis de Maestría en ...personales.upv.es/prosso/resources/RosasMSc.pdf · SEMÁNTICO DE TEXTOS Lic. María Verónica Rosas Director: Dr. Paolo Rosso,

Descripción de la problemática 3

cada texto. Hoy en día, la comunicación escrita entre personas hace un uso constante de

este tipo de textos restringidos en tamaño buscando optimizar el uso de palabras en in-

teracciones e�cientes, cortas y veloces, a través de correo electrónico, mensajes de textos,

reportes internos, faxes, fragmentos de páginas Web, cables de noticias, opiniones en blogs

y redes sociales, entre otros. Con respecto a este punto, se puede decir que existe aún un

número limitado de estudios realizados sobre la categorización de textos especialmente

cuando las características de los mismos es una acotada cantidad de palabras, por lo que

el desarrollo de métodos efectivos para lograr mejoras en esta tarea, continúa siendo un

tema abierto de investigación que resulta interesante de ser profundizado.

Por lo planteado anteriormente, se deduce que la CT y concretamente en textos cortos

puede redundar en bene�cios para una variedad de ámbitos. Por lo tanto, surge la nece-

sidad de incorporar y plantear nuevas mejoras a dicho proceso, que faciliten y permitan

mayor exactitud al momento de seleccionar la categoría a la que pertenece un determinado

documento.

1.1.2. Aspectos surgidos desde el área de la IS

La IS ha realizado aportes signi�cativos al PLN a partir del área denominada IL, consi-

derada en muchos casos como la intersección entre ambas disciplinas. Sin embargo, si bien

la IL provee de métodos y herramientas especí�cos para abordar algunos de los proble-

mas citados en la sección anterior [9, 15, 106], ciertos aspectos ingenieriles de relevancia,

tales como robustez, productividad (a través del reuso de componentes) y �exibilidad, no

han recibido la necesaria atención. Por ejemplo, la baja reutilización de componentes en

aplicaciones de PLN sigue siendo uno de los problemas más complejos a solucionar. Esto

se debe a que la reutilización en este caso presenta una doble limitación, necesitando no

sólo intercambiar datos usando el mismo formato e interpretación, sino que también se

necesita realizar la comunicación entre componentes que pueden estar escritos en distintos

lenguaje e incluso ejecutar en diferentes plataformas. Por todo esto, generalmente cuando

se hace mención al reuso de componentes en PLN en realidad se está trabajando en un

típico problema de integración. Claramente, el obstáculo mencionado previamente puede

ser superado aplicando conceptos básicos de la IS como son las Interfaces de Programación

de Aplicaciones (APIs) o los marcos de trabajo (en inglés, Frameworks).

Page 18: Universidad Nacional de San Luis Tesis de Maestría en ...personales.upv.es/prosso/resources/RosasMSc.pdf · SEMÁNTICO DE TEXTOS Lic. María Verónica Rosas Director: Dr. Paolo Rosso,

Capítulo 1. Introducción 4

Distintos trabajos en IL, han realizado aportes interesantes al tratar de solucionar el

problema de la baja tasa de reuso e integración de componentes que en general se puede

observar en los desarrollos de PLN [22, 21]. Sin embargo, estos trabajos suelen presentar

como problema un alto costo de entendimiento y uso de sus abstracciones que en muchos

casos supera el costo estimado por el programador en desarrollarlo nuevamente desde cero.

En estos casos, un problema adicional es el hecho de que muchas de las arquitecturas

introducidas se han concentrado en modelos muy generales y poco �exibles para ciertos

problemas particulares de PLN.

1.2. Motivación y objetivos

Un problema intrínseco del lenguaje natural, que es de gran interés en el ámbito del

PLN, es el hecho de que una palabra pueda tener, dependiendo del contexto, distintos

sentidos o signi�cados, conocido como �ambigüedad semántica�. La resolución de este

tipo de ambigüedad puede considerarse como una �tarea intermedia� necesaria y esencial

para diversas aplicaciones del PLN que son sensibles a la identi�cación del sentido de

las palabras, tales como Recuperación de la Información, Categorización de Textos y

Traducción Automática, entre otras. El procedimiento para decidir los signi�cados de las

palabras a partir del contexto que las rodea se conoce como desambiguación del sentido

de las palabras (WSD las siglas en inglés para Word Sense Disambiguation). La hipótesis

fundamental de la WSD es que existe un �único concepto� (o sentido) para cada término

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 representación original de los documentos

con conceptos de una ontología genérica para introducir generalidad al identi�car tópicos

relacionados. Por ejemplo, si se tiene en un documento la frase: �Luego de ir al banco

a cobrar el cheque me senté en el banco de la plaza.� (relación de polisemia del término

banco) o la frase �La alegría que me da verte me embarga de júbilo.� (relación de

sinonimia entre los términos alegría y júbilo). En este sentido, si en los documentos hay

términos ambiguos y/o relacionados es conveniente utilizar un método de WSD para los

mismos, de modo tal de seleccionar el �concepto� más apropiado para ser agregado a la

representación.

Page 19: Universidad Nacional de San Luis Tesis de Maestría en ...personales.upv.es/prosso/resources/RosasMSc.pdf · SEMÁNTICO DE TEXTOS Lic. María Verónica Rosas Director: Dr. Paolo Rosso,

Motivación y objetivos 5

Generalmente dichos estudios están enfocados a documentos donde es factible, en la

mayoría de los casos, disponer de una colección de entrenamiento para la tarea de WSD.

Este enfoque basado en corpus (también conocido como supervisado) no siempre es viable

de ser aplicado en todos los dominios en los cuales estamos interesados. Por ejemplo,

cuando se trabaja con determinados tipos de documentos cortos, no siempre se dispone

de colecciones de entrenamiento para la tarea de WSD que re�ejen las particularidades de

los mismos. Una alternativa para abordar el problema anterior, es el uso de métodos de

WSD basados en conocimiento que obtienen información desde recursos léxicos externos.

Si bien este tipo de métodos suelen mostrar resultados de menor calidad que los obtenidos

con métodos basados en corpus, constituyen en muchos casos la única alternativa realista

si se desea hacer uso de información semántica en la representación de documentos [120].

Teniendo en cuenta esto, se puede pensar al enfoque basado en conocimiento como una

opción apropiada para la tarea en la que decidimos enfocarnos, la CT cortos.

Es importante destacar que, para que un conjunto de documentos pueda ser evaluado

por un clasi�cador, es necesario obtener una representación de los mismos. Una de las

formas más simple de identi�car a los documentos es utilizar un vector de atributos o

descriptores índice. Es común que cada elemento de este vector represente una palabra de

la colección, donde el valor de cada componente pueda ser binario, lo que indica presencia

o ausencia del término en el documento, o pueda ser un número (entero o real) calculado

en base a la frecuencia de aparición de la palabra en el texto y en la colección completa de

documentos. Dependiendo del sistema de CT utilizado y especialmente de la dimensión

de los vectores utilizados para representar a los documentos de una colección, pueden

surgir otros problemas vinculados al tiempo y espacio de memoria requeridos para la

tarea de categorización. Un aspecto interesante a analizar en estos casos es el uso de

métodos clásicos de reducción de la dimensionalidad de los vectores de términos. El proceso

consiste en descartar los términos (también denominados atributos o características) que

son irrelevantes, redundantes o que brinden mínima información al clasi�cador.

Por otra parte, la �nalidad de las aplicaciones de PLN es obtener un �resultado efec-

tivo� para la tarea particular que se realiza. En el caso de la CT sería clasi�car todos los

documentos pertenecientes a una colección lo más correctamente posible. En la mayoría

de los casos, la e�ciencia y calidad del desarrollo de un sistema vinculado al PLN, son

relegadas a un segundo plano sin tener en cuenta que esto ocasiona, algunas veces, de-

moras en el diseño de los experimentos y en la obtención de resultados, la inviabilidad de

Page 20: Universidad Nacional de San Luis Tesis de Maestría en ...personales.upv.es/prosso/resources/RosasMSc.pdf · SEMÁNTICO DE TEXTOS Lic. María Verónica Rosas Director: Dr. Paolo Rosso,

Capítulo 1. Introducción 6

poder comparar o reproducir exhaustivamente experimentos previos y la imposibilidad de

reutilizar código. Todos estos aspectos plantean la necesidad de indagar en técnicas de

Ingeniería de Software para buscar posibles soluciones a algunos de estos problemas.

Tomando en cuenta las consideraciones previas, en este trabajo buscamos responder

los siguientes interrogantes:

1. ¾En qué medida la incorporación de información semántica en la representación de

los textos puede bene�ciar la categorización de textos cortos? ¾Qué rol juega en

estos casos la reducción de vocabulario?

2. ¾Qué ventajas aporta en el desarrollo del estudio anterior, la implementación de un

prototipo de marco de trabajo (framework) especí�camente adaptado a esta tarea?

1.3. Contexto de la tesis en el marco de la Maestría

Esta tesis ha sido desarrollada como parte de los requisitos para obtener el título de

la carrera de postgrado Maestría en Ingeniería de Software. A tal �n, se han empleado

conceptos de la IS en aplicaciones del PLN, con el propósito de realizar aportes en la

IL. Para abordar los tópicos relacionados a la IS fueron fundamentales los conceptos

impartidos por cursos que forman parte de la currícula de la maestría. En el desarrollo de

este trabajo, fue un importante aporte el estudio comparativo de los distintos enfoques

y herramientas de modelado de sistemas (incluyendo la evaluación de sus ventajas y

desventajas) realizado en el curso Modelos de sistemas de software. De la misma manera,

los conceptos introducidos en el curso Estudio Comparativo de Metodologías facilitaron el

planteo adecuado de los requerimientos de las tareas de PLN para ser implementados en un

sistema concreto aplicando un método apropiado. La selección de herramientas adecuadas

para la generación de código, lenguajes y ambientes de programación fue posible gracias a

los temas vertidos en Métodos Formales y Análisis de Herramientas para la Producción de

Software. Finalmente, el diseño y creación del framework descripto en este informe utiliza

los conceptos relacionados a modelos y métodos 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 con-

ceptos relacionados al PLN y la CT, los cursos extracurriculares realizados, entre ellos

Page 21: Universidad Nacional de San Luis Tesis de Maestría en ...personales.upv.es/prosso/resources/RosasMSc.pdf · SEMÁNTICO DE TEXTOS Lic. María Verónica Rosas Director: Dr. Paolo Rosso,

Principales contribuciones y publicaciones 7

Aprendizaje Automático y Minería de Datos que imparte los temas fundamentales vin-

culados al área de la CT y Aplicaciones de la Lingüística Computacional en el cual se

abordan con mayor detalle tópicos referentes al PLN y WSD.

1.4. Principales contribuciones y publicaciones

En esta tesis se ha realizado, en primera instancia, el estudio exhaustivo de tópicos

relacionados al PLN, sus fundamentos y aplicaciones, analizando con mayor detalle los

contenidos vinculados a la indexación de documentos y la CT. Diferentes estrategias

de desambiguación fueron comparadas y analizadas, profundizando sobre los algoritmos

basados en conocimiento que en muchos casos constituyen la única alternativa realista

si se desea hacer uso de información semántica en la representación de documentos. La

investigación realizada sobre estos temas está incluida en los primeros capítulos de esta

tesis.

La literatura vinculada a la IL analizada en este trabajo, nos brinda ejemplos intere-

santes de sistemas, prototipos y propuestas de entornos de integración y herramientas

vinculadas a PLN. La elaboración de un relevamiento de las diferentes arquitecturas exis-

tentes orientadas al desarrollo de componentes y su integración para la creación de sis-

temas PLN fue una de las tareas más importantes. Los principales aspectos surgidos de

este estudio están incluidos en el capítulo 6.

Los resultados prometedores que se obtuvieron al incorporar información semántica

en la representación de documentos mediante la aplicación de métodos de WSD basados

en conocimiento, fueron la motivación para continuar en esta línea de investigación. Estas

primeras conclusiones fueron plasmadas en los artículos1

�Un análisis comparativo de estrategias para la categorización semántica de textos

cortos�. María V. Rosas, Marcelo Errecalde y Paolo Rosso. Revista del Procesamien-

to del Lenguaje Natural, Sociedad Española para el Procesamiento del Lenguaje

Natural (SEPLN 45), páginas 11�18, 2010.

�Tópicos avanzados en categorización de textos�. Diego Ingaramo, María V. Rosas,

Amparito Asensio y Marcelo Errecalde. Anales del XI Workshop de Investigadores

en Ciencias de la Computación (WICC 2009), páginas 75�79, 2009.

1Corresponden a las referencias [48, 95] de la bibliografía.

Page 22: Universidad Nacional de San Luis Tesis de Maestría en ...personales.upv.es/prosso/resources/RosasMSc.pdf · SEMÁNTICO DE TEXTOS Lic. María Verónica Rosas Director: Dr. Paolo Rosso,

Capítulo 1. Introducción 8

Las tareas involucradas en el pre-procesamiento semántico de documentos constituyen

una parte importante en la ejecución de los experimentos. Con el propósito de favorecer

la ejecución de dichas tareas, se implementó un prototipo de marco de trabajo que sea

sencillo de aplicar, brindando interfaces y clases abstractas básicas. Uno de los bene�-

cios principales del framework desarrollado es la reusabilidad de código, generando un

ahorro de tiempo importante en la implementación de experimentos. Estos desarrollos se

describen en el siguiente trabajo2

�Un framework de Ingeniería del Lenguaje para el pre-procesado semántico de tex-

tos�. Marcelo Errecalde, María V. Rosas y Paolo Rosso. Workshop Ingeniería de

Software - XVI Congreso Argentino de Ciencias de la Computación (CACIC 2010),

páginas 587�596, 2010.

El agrupamiento de textos (�clustering�) es un área muy importante de investigación,

que puede jugar un rol fundamental en organizar grandes volúmenes de documentos, en

un número pequeño de grupos signi�cativos. El clustering de documentos, también refe-

renciado como CT no supervisada, consiste en la asignación de documentos a categorías

desconocidas. Esta tarea es más difícil que la CT supervisada debido a que la información

acerca de las categorías y los documentos correctamente clasi�cados no se proporciona

con anterioridad. Como anexo a los trabajos realizados en CT, se realizaron experimentos

que permitieron concluir que los enfoques de clustering iterativo pueden también verse

bene�ciados signi�cativamente con la incorporación de información semántica en la repre-

sentación de los documentos. La descripción de esta propuesta y los resultados obtenidos

de dichos experimentos fueron publicados en3

�Clustering Iterativo de Textos cortos con representaciones basadas en conceptos�.

Marcelo Errecalde, María V. Rosas, Diego Ingaramo y Paolo Rosso. Proc. Works-

hop on Natural Language Processing and Web-based Technologies, 12th edition of

the Ibero-American Conference on Arti�tial Intelligence, IBERAMIA-2010, Bahía

Blanca, Argentina, páginas 80�89, 2010.

2Corresponde a la referencia [33] de la bibliografía.3Corresponde a la referencia [32] de la bibliografía.

Page 23: Universidad Nacional de San Luis Tesis de Maestría en ...personales.upv.es/prosso/resources/RosasMSc.pdf · SEMÁNTICO DE TEXTOS Lic. María Verónica Rosas Director: Dr. Paolo Rosso,

Organización de la tesis 9

La publicación anterior fue seleccionada para ser incorporada como artículo de la revis-

ta del Procesamiento del Lenguaje Natural de la Sociedad Española para el Procesamiento

del Lenguaje Natural (SEPLN), y ha sido recientemente publicada en4

�Clustering Iterativo de textos cortos con representaciones basadas en conceptos�.

María V. Rosas, Marcelo Errecalde, Diego Ingaramo y Paolo Rosso. Revista del

Procesamiento del Lenguaje Natural, Sociedad Española para el Procesamiento del

Lenguaje Natural (SEPLN 46), páginas 19�26, 2011.

1.5. Organización de la tesis

Las nociones principales que son tratadas en este trabajo referentes a la IS son cono-

cidas por los investigadores en esta área, no así los temas que conciernen al PLN por lo

que en los primeros capítulos se realiza una descripción más detallada de aquellos temas

vinculados al PLN, que son necesarios para comprender los restantes capítulos. De esta

forma los capítulos que conforman esta tesis están organizados de la siguiente manera:

Capítulo 2: En este capítulo 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.

Capítulo 3: Se explican los aspectos relacionados a los modelos utilizados para la inde-

xación de textos, en particular el sistema SMART. Luego, se presenta una visión general

de los principales conceptos sobre CT y el problema de ambigüedad presente en la mayoría

de las aplicaciones de PLN.

Capítulo 4: Se introduce una variante al modelo tradicional de representación de los

documentos que permita subsanar el problema de la ambigüedad semántica. Se analizan

diferentes estrategias de desambiguación, dedicando una sección al �nal del capítulo a

presentar uno de los recursos externos más utilizado en las tareas de desambiguación: la

ontología WordNet.

Capítulo 5: En este capítulo se describen los algoritmos basados en conocimiento son

utilizados en el proceso de desambiguación de los distintos experimentos realizados: Mé-

todo heurístico de mayor frecuencia, CIAOSENSO y Lesk Mejorado. Una sección de este

4Corresponde a la referencia [94] de la bibliografía.

Page 24: Universidad Nacional de San Luis Tesis de Maestría en ...personales.upv.es/prosso/resources/RosasMSc.pdf · SEMÁNTICO DE TEXTOS Lic. María Verónica Rosas Director: Dr. Paolo Rosso,

Capítulo 1. Introducción 10

capítulo está destinada a profundizar sobre métodos para la reducción de términos que

pueden ser conveniente aplicar para optimizar los tiempos de procesamiento y el espacio

de memoria.

Capítulo 6: Usando el concepto de marco de trabajo (framework) de IS, en este capítulo

se muestra un prototipo para mejorar la productividad y reusabilidad de componentes en

el preprocesado semántico de documentos para la CT. Como complemento al capítulo se

incluye el acoplamiento de un módulo del framework desarrollado a un sistema mayor,

denominado GATE.

Capítulo 7: Se presenta el trabajo experimental realizado, con una descripción de los

conjuntos de datos utilizados y la explicación de cada experimento. Finalmente, se realiza

el análisis y evaluación de los resultados obtenidos.

Capítulo 8: Finalmente se describen las conclusiones obtenidas y las posibles extensiones

al trabajo presentado.

Page 25: Universidad Nacional de San Luis Tesis de Maestría en ...personales.upv.es/prosso/resources/RosasMSc.pdf · SEMÁNTICO DE TEXTOS Lic. María Verónica Rosas Director: Dr. Paolo Rosso,

Capítulo 2

Procesamiento del lenguaje natural

"Hasta el viaje más largo comienza con un solo paso."

Proverbio chino.

El exceso de información disponible cada día, hace necesaria la tarea de procesar los

datos de manera efectiva. La mayor parte de esta información está expresada en lenguaje

natural. La computadora personal era, hasta hace un tiempo atrás, sólo una herramienta

para la creación y almacenamiento de documentos de texto, pero con limitaciones en el

procesamiento de los mismos. Uno de los grandes sueños inalcanzable en el pasado, era

contar con mecanismos e�caces que, desde el punto de vista computacional, permitan que

las personas puedan comunicarse directamente con las máquinas en lenguaje humano y

que éstas sean capaces de extraer conocimiento a través del mismo. La idea de dar a las

computadoras la habilidad de procesar el lenguaje natural ya es una realidad [17].

La utilización de la computadora para generar y comprender el lenguaje humano na-

tural 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 (matemáti-

ca, psicolingüística y dialectología, entre otras) pero la combinación de la lingüística y la

informática constituye la esencia del PLN. En este sentido, se están obteniendo resultados

prometedores pero existen todavía varias metas a alcanzar por lo que representa un tema

abierto de investigación.

En este capítulo se presenta una visión general de los principales conceptos del PLN. Se

analiza la necesidad de un estudio previo del lenguaje para el desarrollo de todo sistema

Page 26: Universidad Nacional de San Luis Tesis de Maestría en ...personales.upv.es/prosso/resources/RosasMSc.pdf · SEMÁNTICO DE TEXTOS Lic. María Verónica Rosas Director: Dr. Paolo Rosso,

Capítulo 2. Procesamiento del lenguaje natural 12

vinculado al PLN y cómo muchos de los componentes de dichos sistemas son modelos

estadísticos provenientes del campo de la Inteligencia Arti�cial. Finalmente, se introducen

diversas aplicaciones desarrolladas en el ámbito del PLN.

2.1. Niveles de la linguística general

Las aplicaciones vinculadas al procesamiento de lenguaje se distinguen de otros sis-

temas de procesamiento de datos por la necesidad de contar con un conocimiento sobre

língüística general para su correcto desarrollo [51]. Para ejempli�car lo anteriormente

expresado consideremos las siguientes aplicaciones:

1. WC: es un sistema que cuenta el total de número de bytes, palabras, y líneas en

un archivo de texto. Al usarla como contador de bytes y líneas, WC sugiere un

procesamiento de datos simple. Sin embargo, cuando es usado para contar palabras

en un archivo, se requiere conocimiento acerca de cómo distinguir una palabra en

el texto, por lo que esta aplicación se interpreta como un sistema de procesamiento

del lenguaje.

2. HAL: es un sistema que debe reconocer palabras desde una señal de audio y generar

una señal nueva desde una secuencia de palabras [51]. Estas tareas de reconocimiento

y síntesis del habla requiere conocimiento acerca de fonética y fonología, es decir,

la forma en que las palabras son pronunciadas en términos de secuencia de sonidos

y en que cada uno de estos sonidos es realizado acústicamente. Además, produce y

reconoce de igual forma variaciones de palabras individuales, tales como singular y

plural, por lo tanto necesita también tener conocimiento sobremorfología. Reconocer

el signi�cado exacto de una palabra, la composición semántica y las relaciones de

palabras en la estructura sintáctica es necesario para un buen sistema. Nuevamente

el procesamiento del lenguaje es parte de este sistema.

La lingüística general se estructura normalmente en cuatro niveles:

Nivel Morfológico: de�ne la relación que se establece entre las unidades mínimas

que forman una palabra, como puede ser el reconocimiento de su�jos o pre�jos.

Este nivel mantiene una estrecha relación con el léxico. En el nivel léxico se inclu-

ye la información morfológica, la categoría gramatical, irregularidades sintácticas y

Page 27: Universidad Nacional de San Luis Tesis de Maestría en ...personales.upv.es/prosso/resources/RosasMSc.pdf · SEMÁNTICO DE TEXTOS Lic. María Verónica Rosas Director: Dr. Paolo Rosso,

Niveles de la linguística general 13

Figura 2.1: Estructura de un sistema PLN

representación del signi�cado. Las palabras que forman parte del diccionario están

representadas por una entrada léxica, y en caso de que ésta tenga más de un sig-

ni�cado o diferentes categorías gramaticales, tendrá asignada diferentes entradas.

Normalmente el nivel léxico contempla la raíz de las palabras con formas regulares.

Por ejemplo, la palabra �preregistración� puede ser morfológicamente analizado a

partir de tres morfemas: el pre�jo �pre�, la raíz �registra� y el su�jo �ción�, en otro

sentido si por ejemplo se agrega el su�jo �ado� o �ido� a un verbo se puede suponer

que la acción del verbo ocurrió en el pasado.

Nivel Sintáctico: las palabras pueden unirse para formar oraciones, �jando el papel

estructural que cada palabra juega en la oración. A este nivel, se obtiene un cono-

cimiento sobre la relación 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 sintáctico. Mientras que en la primera oración el sujeto de la oración es el �pe-

rro� y el �gato� es sólo el objeto directo de la acción que se realiza (�perseguir�), en

Page 28: Universidad Nacional de San Luis Tesis de Maestría en ...personales.upv.es/prosso/resources/RosasMSc.pdf · SEMÁNTICO DE TEXTOS Lic. María Verónica Rosas Director: Dr. Paolo Rosso,

Capítulo 2. Procesamiento del lenguaje natural 14

la segunda oración ocurre lo inverso cambiando el papel estructural de las palabras

�perro� y �gato�.

Nivel Semántico: de�ne el signi�cado de cada palabra, lo cual no es una tarea sen-

cilla y puede dar lugar a diversas interpretaciones. Es posible distinguir entre sig-

ni�cado independiente y signi�cado dependiente del contexto. El primero, tratado

a nivel semántico, hace referencia al signi�cado que las palabras tienen por sí mis-

mas ignorando el signi�cado adquirido según el uso en un determinado contexto.

La semántica, por tanto, hace referencia a las condiciones de verdad de la frase,

ignorando la in�uencia 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 signi�cado.

Nivel Pragmático: el signi�cado de una palabra está in�uenciado por las circuns-

tancias, intenciones o planes del sujeto que hace uso del lenguaje, de�nido como

signi�cado dependiente del contexto. Añade información adicional al análisis del

signi�cado de la frase en función del contexto donde aparece. Incorpora informa-

ción 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� de-

pendiendo del sujeto que interprete esta sentencia pueden surgir dos signi�cados: 1)

Juan ocupó el lugar de Pedro o 2) Juan buscó otra persona para que ocupe el lugar

de Pedro.

La lingüística estudia el lenguaje humano en sus dos ramas principales: el habla y la

escritura. Debido a esto, otros niveles de conocimiento pueden ser incluídos, como es la

información fonológica, referente a la relación de las palabras con el sonido asociado a

su pronunciación o el análisis del discurso, que estudia cómo la información precedente

puede ser relevante para la comprensión de otra información; o lo que se denomina co-

nocimiento del mundo, referente al conocimiento general que las personas han de tener

sobre la estructura del mundo para mantener una conversación.

Lo anteriormente expresado determina que todo sistema de PLN, para ser e�ciente,

debe presentar un conjunto de módulos básicos que se correspondan al análisis de los

niveles de la linguística que fueron de�nidos.

Page 29: Universidad Nacional de San Luis Tesis de Maestría en ...personales.upv.es/prosso/resources/RosasMSc.pdf · SEMÁNTICO DE TEXTOS Lic. María Verónica Rosas Director: Dr. Paolo Rosso,

PLN estadístico 15

En la Figura 2.1 [120] se muestra un ejemplo de un sistema de procesamiento de texto

donde se pueden distinguir tres módulos principales:

1. Módulo de análisis léxico: identi�ca las diferentes palabras. Es necesario detectar

además de las palabras simples, las palabras compuestas, frases hechas, siglas, etc.

Además también es necesario diferenciar entre la forma (la palabra tal como apa-

rece) y el lema (la forma canónica de la palabra). El objetivo �nal de este módulo

es asociar a cada palabra su lema correspondiente, etiquetar cada palabra con su

posible categoría léxica (sustantivo, verbo, adjetivo o adverbio) y añadir algunos

rasgos gramaticales (género, número, tiempo verbal).

2. Módulo de análisis sintáctico: divide el texto en segmentos para luego seleccionar la

etiqueta gramatical más apropiada para cada palabra, divide el texto en segmentos

analizables formando un árbol sintáctico (sujeto, predicado, sustantivo, adjetivo,

etc.).

3. Módulo de análisis semántico: se ocupa de asignar el sentido correspondiente a cada

palabra, resolviendo la ambigüedad semántica cuando sea apropiado. Este módulo

puede funcionar en paralelo con el módulo de análisis sintáctico o posteriormente.

Los diferentes módulos de un sistema de PLN necesitan recursos léxicos externos

tales como diccionarios, gramáticas u ontologías, que sean adecuados para el idioma o

para el dominio de los textos a procesar. Estas bases externas de conocimiento proveen

información para poder establecer la salida para cada módulo con la mayor precisión

posible. En la sección 4.3 se describe la ontología WordNet que se emplea en este trabajo.

2.2. PLN estadístico

La aplicación de métodos estadísticos para el PLN es uno de los modelos clásicos

utilizado actualmente. Muchos de los componentes de sistemas complejos de PLN (tales

como, analizadores morfológicos o etiquetadores sintácticos) son modelos estadísticos que

hacen posible el uso de modernas técnicas de aprendizaje.

La tecnología del PLN estadístico proviene principalmente del Aprendizaje Automático

(AA) y de la Minería de Datos (MD), que son los campos de la Inteligencia Arti�cial que

Page 30: Universidad Nacional de San Luis Tesis de Maestría en ...personales.upv.es/prosso/resources/RosasMSc.pdf · SEMÁNTICO DE TEXTOS Lic. María Verónica Rosas Director: Dr. Paolo Rosso,

Capítulo 2. Procesamiento del lenguaje natural 16

logran el aprendizaje a partir de los datos, en este caso del lenguaje natural. El PLN

estadístico se basa, principalmente, en la lingüística, la teoría probabilística, la teoría de

la información y la programación, entre otras; utilizando la estocástica, probabilística y

los métodos estadísticos.

Las técnicas de AA, a partir de las cuales deriva el PLN estadístico, pueden ser divi-

didas en dos tipos: supervisadas y no supervisadas. El aprendizaje supervisado se ocupa

principalmente de la predicción de la información que falta sobre la base de la información

observada. Por ejemplo, la predicción de categoría gramatical de una palabra basada en la

oración completa. Emplea métodos estadísticos para, a partir de datos de entrenamiento

etiquetados, construir una regla de predicción para datos no etiquetados. En cambio, en

el aprendizaje no supervisado no se cuenta con información previa por lo que el objetivo

está puesto en la unión de datos en agrupaciones (�clustering�). Algunos algoritmos de

aprendizaje supervisado incluyen máquinas de soporte vectorial y métodos bayesianos,

mientras que los algoritmos de maximización representan las principales técnicas para el

caso del aprendizaje no supervisado. Debido a que profundizar en estos tópicos va más

allá de los própositos de este trabajo, una descripción más 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 texto: involucra tareas que se valen de la escritura, como

la búsqueda por un cierto tópico o por una palabra clave en una base de datos,

extracción de información desde documentos escritos o la confección de resúmenes

de texto para diferentes propósitos, etc.

Aplicaciones basadas en diálogo: algunos de los ejemplos típicos de este tipo son sis-

temas que por medio del habla dan respuesta a alguna necesidad, como por ejemplo

servicios que dan información por teléfono sin operador, máquinas controladas por

la voz, etc.

EL PLN proporciona tanto la teoría como las herramientas de implementación para

una gama variada de aplicaciones. Las más frecuentes son:

Page 31: Universidad Nacional de San Luis Tesis de Maestría en ...personales.upv.es/prosso/resources/RosasMSc.pdf · SEMÁNTICO DE TEXTOS Lic. María Verónica Rosas Director: Dr. Paolo Rosso,

Aplicaciones de PLN 17

La corrección de textos que permite la detección y corrección de errores ortográ-

�cos y gramaticales. La computadora necesita entender en cierto grado el sentido

del texto para detectar estos errores. Los correctores de gramática detectan las es-

tructuras incorrectas en las oraciones aunque todas las palabras en la oración estén

bien escritas. El problema de detectar los errores de este tipo es complejo debido a

la existencia de gran variedad de estructuras permitidas. Para describir las estruc-

turas de las oraciones en el idioma, se usan las llamadas gramáticas formales, o sea

conjuntos de reglas de combinación de palabras y su orden relativo en las oraciones.

La traducción automática se re�ere a la traducción correcta de un lenguaje a

otro, tomando en cuenta lo que se quiere expresar en cada oración.

En el campo de la recuperación de la información se han desarrollado siste-

mas que permiten obtener información sobre estadísticas deportivas, información

turística, geográ�ca, etc.

La tarea de clasi�cación o categorización de textos describe el problema de

asignar automáticamente un conjunto de documentos a un conjunto prede�nido de

categorías o clases. Esta tarea puede resultar complicada ya que suele ser ambigua

aún para los humanos.

Se han desarrollado sistemas con la capacidad de crear resúmenes de documentos

a partir de datos suministrados. Estos sistemas son capaces de realizar un análisis

detallado del contenido del texto y elaborar un resumen.

Los tutores inteligentes que permiten modelar el comportamiento del estudiante,

reconocer y procesar sus errores, desarrollar habilidades en la resolución de proble-

mas y otras actividades del proceso enseñanza-aprendizaje.

Como ya se planteó anteriormente, el crecimiento de la disponibilidad de nuevos re-

cursos computacionales, de fuentes de información y de usuarios de computadoras ha

llevado a un primer plano todo lo referente a la tecnología y como una parte de ello a las

aplicaciones en el área del PLN.

Los siguientes son ejemplos de aplicaciones del PLN que están en proceso de producción

o siendo evaluadas actualmente:

Page 32: Universidad Nacional de San Luis Tesis de Maestría en ...personales.upv.es/prosso/resources/RosasMSc.pdf · SEMÁNTICO DE TEXTOS Lic. María Verónica Rosas Director: Dr. Paolo Rosso,

Capítulo 2. Procesamiento del lenguaje natural 18

Aerolíneas de renombre y otros proveedores de viajes utilizan agentes arti�ciales que

guían a los usuarios a través del proceso de hacer la reserva y obtener información

de llegada y salida de vuelos, simulando la conversación humana.

En la actualidad podemos encontrar los primeros autos con facilidades de recono-

cimiento de voz y sistemas que permiten a los conductores llevar el control de su

medio ambiente, entretenimiento y navegación por medio de sistemas de voz. El

mismo sistema de diálogo hablado se ha desarrollado para los astronautas en el

espacio.

Google proporciona tareas de recuperación de la información y servicios de tra-

ducción en el cuál los usuarios pueden proporcionar consultas en su idioma nativo

a buscadores en otro idioma. Google traduce la consulta, considera la mayoría de

las páginas correspondientes y luego los traduce automáticamente de nuevo a los

usuarios en su idioma nativo.

Las grandes editoriales educativas usan sistemas automatizados para el análisis de

ensayos de estudiantes, su clasi�cación y evaluación, ya que resulta una tarea muy

compleja para realizar manualmente.

Algunas empresas emplean mecanismos de análisis de textos a partir de mediciones

automatizadas realizada de opiniones, preferencias, actitudes y modos de expresarse

en weblogs de diferentes usuarios.

Page 33: Universidad Nacional de San Luis Tesis de Maestría en ...personales.upv.es/prosso/resources/RosasMSc.pdf · SEMÁNTICO DE TEXTOS Lic. María Verónica Rosas Director: Dr. Paolo Rosso,

Capítulo 3

Indexación y categorización de textos

�Aquel que quiera construir torres altas, deberá permanecer largo tiempo en los

fundamentos.�

� Anton Bruckner. Compositor austríaco.

En todo trabajo de PLN la primera etapa que se debe realizar es la de obtener una

representación de los documentos para realizar experimentos, denominado proceso de in-

dexación. Esta tarea supone la utilización de un conjunto de términos o descriptores índice

que identi�quen a los documentos. La elección de dichos términos es uno de los procesos

más complicados pero a la vez el más importante.

En este capítulo se analizan diferentes modelos de representación de documentos y

se de�ne uno en particular que es el más utilizado en aplicaciones vinculadas al PLN.

Finalmente, se enumeran y describen los pasos que incluyen la tarea de CT y se plantea el

problema de la ambigüedad del lenguaje natural como una de sus principales limitaciones.

3.1. Indexación de documentos

La opción más simple para el proceso de indexación de documentos es representar a

cada documento por todas sus palabras. Esto no es conveniente si se considera que no

todos los términos son igualmente importantes para describir el contenido de un docu-

mento y que implicaría un coste computacional muy alto para colecciones de documentos

de tamaño grande. La tarea de decidir la relevancia de cada término no es fácil si se tiene

Page 34: Universidad Nacional de San Luis Tesis de Maestría en ...personales.upv.es/prosso/resources/RosasMSc.pdf · SEMÁNTICO DE TEXTOS Lic. María Verónica Rosas Director: Dr. Paolo Rosso,

Capítulo 3. Indexación y categorización de textos 20

en cuenta que está determinada generalmente por la aplicación de PLN a desarrollar. Por

ejemplo, en ciertas aplicaciones de categorización por temas donde el signi�cado de las

palabras juega un papel preponderante, los artículos, las preposiciones y las conjunciones

son palabras casi vacías de contenido semántico, poco útiles para los �nes de la tarea a

implementar. Sin embargo, en aplicaciones donde es importante capturar aspectos estilo-

grá�cos del autor (identi�cación de autoría, detección de plagio), este tipo de información

puede ser relevante para la tarea a realizar.

En todo proceso de indexación el objetivo a alcanzar es encontrar aquellos términos que

mejor representen a los documentos y que además permitan diferenciar unos de otros. Por

todo lo descripto anteriormente, es necesaria la selección de un modelo de representación

de documentos que sea con�able y e�ciente.

3.1.1. Modelos de indexación

En general, todo modelo de indexación puede ser de�nido por:

1. la identi�cación de qué es un término

2. el método para computar el peso de un término

Para la representación de documentos, se ha determinado que la utilización de pala-

bras individuales es una de las mejores maneras de indexación de documentos. Ésto es

a menudo llamado el enfoque del conjunto de palabras o bolsa de las palabras (en inglés,

�bag of words�) [105]. Varios modelos más complejos para la indexación de documentos

han surgido a partir de distintas aplicaciones del PLN, pero sin mejorar signi�cativamente

la versión más simple.

Los modelos con fuerte base matemática para determinar el peso de un término se

originaron en la rama de la recuperación de la información. En este contexto se pueden

mencionar:

Modelo booleano o teórico: es un modelo simple basado en el álgebra booleana.

Un documento se representa como un conjunto de términos, de tal forma que un

término estará presente o ausente en un determinado documento, sin contemplar la

posibilidad de establecer diferentes grados de pertenencia. Las principales ventajas

Page 35: Universidad Nacional de San Luis Tesis de Maestría en ...personales.upv.es/prosso/resources/RosasMSc.pdf · SEMÁNTICO DE TEXTOS Lic. María Verónica Rosas Director: Dr. Paolo Rosso,

Indexación de documentos 21

del modelo booleano se centran en su sencillez. Esto hace que sea muy intuitivo,

fácil 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 estándar� y el �Modelo

booleano extendido� [56, 35].

Modelo estadístico o algebraico: es un modelo que representa los documentos usual-

mente como vectores, matrices o tuplas de términos. La similaridad entre vectores es

representada con un valor escalar. En este modelo, la forma más simple de asignar

un peso a los términos es a partir del modelo tf-idf que será explicado en detalle en

la subsección 3.1.2. El modelo vectorial tiene una mayor �exibilidad en la valoración

de los pesos (valores reales) y el orden de los resultados se basa en la frecuencia

de los términos y la relevancia de los términos, sin favorecer a los documentos más

largos. Con respecto a sus desventajas se centran en la pérdida de parte de la in-

formación sintáctica y semántica del documento y que se basa en la independencia

de los términos dentro de un documento, aseveración que no siempre se mantiene.

En capítulos posteriores se presentarán 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 tópico� y el �Modelo de espacio vectorial

basado en tópico mejorado� [99, 10].

Modelo probabilístico: trata todo proceso como una inferencia probabilística. Este

modelo postula que la mejor manera de representar los documentos es mediante la

teoría de las probabilidades. Las similaridades son computadas como probabilidades

a partir de la relevancia o no de un documento dado. El modelo probabilístico se

basa en un proceso iterativo. Este proceso se inicia con un primer conjunto de docu-

mentos relevantes, que es paulatinamente recalculado en función de la información

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 estimación del conjunto de

Page 36: Universidad Nacional de San Luis Tesis de Maestría en ...personales.upv.es/prosso/resources/RosasMSc.pdf · SEMÁNTICO DE TEXTOS Lic. María Verónica Rosas Director: Dr. Paolo Rosso,

Capítulo 3. Indexación y categorización de textos 22

documentos relevantes, y el hecho de que no se tiene en cuenta el número de veces

que cada término aparece en un documento a la hora de estimar su probabilidad de

relevancia.

Son ejemplos de este tipo de enfoque, �Bayes' Theorem�, �Binary Independence

Retrieval�, �Probabilistic Relevance Model�, entre otros [92, 58].

3.1.2. Modelo de espacio vectorial

Este modelo estadístico denominado Modelo de Espacio Vectorial (VSM, las siglas en

inglés para Vector Space Model [99]) representa a los documentos en lenguaje natural de

una manera formal mediante el uso de vectores en un espacio lineal multidimensional.

Este modelo es usado en múltiples aplicaciones de �ltrado, recuperación e indexado de

información. A pesar de que el VSM ha sido ampliamente utilizado en CT [43], éste debe

su origen al área de Recuperación de la Información [66, 99, 100] como gran parte de los

modelos presentados anteriormente.

En VSM cada documento será representado por un vector de pesos de tamaño n donde

n es el número de términos que pertenecen al conjunto de documentos. De este modo, si

se toma como base lo mencionado en 3.1.1 se puede describir al VSM como:

1. Los términos son representados con las palabras aisladas que conforman los docu-

mentos de una colección. A las palabras se les suelen aplicar dos procesos:

Eliminación de palabras de paro: las palabras que son muy frecuentes entre los

documentos y no relevantes para una aplicación determinada son eliminadas

ya que no son buenos discriminadores y resultan inútiles para algunas tareas de

clasi�cación o recuperación de la información. Por ejemplo, las preposiciones y

los artículos pueden ser considerados palabras de paro (o �stopword�).

Stemming : el objetivo es reducir las palabras a su raíz gramatical. Un �stem�

es la parte de la palabra que queda luego de remover sus a�jos (pre�jos y

su�jos). Por ejemplo, la palabra �conec� es el stem de conectado, conectando y

conecciones, entre otras.

2. Cada peso de un término en el vector representa la relevancia del término co-

rrespondiente en relación con un determinado sentido en la expresión del lenguaje

Page 37: Universidad Nacional de San Luis Tesis de Maestría en ...personales.upv.es/prosso/resources/RosasMSc.pdf · SEMÁNTICO DE TEXTOS Lic. María Verónica Rosas Director: Dr. Paolo Rosso,

Indexación 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 término en el documento. Para el caso de valor no

binario, éste puede computarse con diversas técnicas siendo el modelo tf-idf uno de

los aplicados con mayor frecuencia.

Ejempli�cando lo anteriormente expresado, en las Tablas 3.1 y 3.2 se muestran las

representaciones binaria y real para la frase1:

�Azul, como el cielo azul, como el mar azul, como tus ojos, mi cielo y mar azul...�

la cielo luna como ojos el azul tus mios mar mi claro y

0 1 0 1 1 1 1 1 0 1 1 0 1

Tabla 3.1: Representación binaria

la cielo luna como ojos el azul tus mios mar mi claro y

0 2 0 3 1 2 4 1 0 2 1 0 1

Tabla 3.2: Representación real

El modelo tf-idf, como fue planteado, es uno de los más utilizados para obtener el

peso de vectores con valores reales de componentes a partir del cálculo de Frecuencia de

Términos * Frecuencia de Documento Inversa (TF*IDF). La TFd,i es la frecuencia de

ocurrencia del i-ésimo término dentro del documento d. TF es una estadística especí�ca

del texto, ya que varía de un documento a otro, intentando medir la importancia del

término dentro de un documento dado. Por otro lado, la IDF es una estadística global

y caracteriza un término dentro de la colección entera de N documentos. Es decir, la

Frecuencia de Documento (DFi) del i-ésimo término representa el número de documentos

de la colección en los cuáles aparece dicho término. El propósito es subestimar aquellos

términos que ocurren en muchos de los documentos de la colección y por lo tanto, cuales

no son relevantes (cuando un término ocurre en los N documentos de la colección, su

valor IDF es igual a 0). Para permitir la variación en el tamaño de los documentos, el

peso es usualmente normalizado. El objetivo y efecto de la normalización del peso, es que

el peso de un término en un documento dependa sobre su frecuencia de ocurrencia con

respecto a los otros términos del mismo documento, no sobre su frecuencia absoluta de

1En 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 ningún proceso de stemming o de eliminación de palabras

de paro.

Page 38: Universidad Nacional de San Luis Tesis de Maestría en ...personales.upv.es/prosso/resources/RosasMSc.pdf · SEMÁNTICO DE TEXTOS Lic. María Verónica Rosas Director: Dr. Paolo Rosso,

Capítulo 3. Indexación y categorización de textos 24

ocurrencia. Obtener el peso de un término por su frecuencia absoluta puede favorecer a

los documentos largos sobre los cortos. Una técnica para computar el peso que ha sido

ampliamente usada en CT y surgió en el área de la Recuperación de la Información es la

nomenclatura SMART [99] que se describe en la Tabla 3.3.

Nomenclatura SMART para la codi�cación de textos

di: Es el i-ésimo componente del vector d̄ de tamaño n.

N : Número de documentos.

TFd,i: Frecuencia del i-ésimo término en el documento d.

DFi: Frecuencia del i-ésimo término del documento sobre la colección.

De�nición:

wi = TF′

d,i.IDF′i .NORM

TF′

d,i IDF′

i NORM

n : none = TFd,i n : none = 1 n : none = 1

b : binary = 1 t : tfidf = log( NDFi

) c : cosine = 1√∑i(TF

′d,iIDF

′i )

2

m : max− norm =TFd,i

maxi(TFd,i)

a : aug − norm = 0,5 + 0,5TFd,i

maxi(TFd,i)

l : log = 1 + log(TFd,i)

Tabla 3.3: Nomenclatura SMART para la codi�cación de textos

Lo anteriormente expuesto determina que en el sistema SMART, cada codi�cación

estará compuesta por 3 letras: un valor para TF (Ocurrencia del Término), uno para

IDF (Frecuencia Inversa del Documento) y el último para determinar si la operación

de normalización es empleada o no. Con este esquema de representación se generan 20

diferentes codi�caciones a partir de las posibles combinaciones de las 3 letras componentes.

Page 39: Universidad Nacional de San Luis Tesis de Maestría en ...personales.upv.es/prosso/resources/RosasMSc.pdf · SEMÁNTICO DE TEXTOS Lic. María Verónica Rosas Director: Dr. Paolo Rosso,

Categorización de textos 25

Por ejemplo, una codi�cación ntc (con n representando la fórmula utilizada para TF, t

para computar IDF y c para determinar si se aplica normalización) para computar el peso

del i-ésimo componente del vector para el documento d se obtiene calculando la fórmula

TFd,i log( NDFi

) y luego realizando la normalización coseno.

A pesar de ser uno de los modelos más utilizados, el VSM presenta las siguientes

limitaciones:

se pierde parte de la información sintáctica y semántica de los documentos.

el orden en el que aparecen los términos no es representado en los vectores.

3.2. Categorización de textos

Entre las distintas aplicaciones del PLN, la Categorización de Textos (CT ) ha desper-

tado un notable interés debido a la necesidad urgente de organizar, mantener y procesar

la información textual disponible a partir de un conocimiento más profundo del lenguaje

[106]. La CT consiste básicamente en realizar la clasi�cación de un conjunto de documen-

tos (�corpus�) dentro de categorías prede�nidas también denominadas �clases�, por lo que

la tarea suele ser referenciada también como Clasi�cación de Textos [105].

Sobre la de�nición anterior es importante destacar dos aspectos. Lo primero a señalar

es que, cuando se re�ere a categoría se está haciendo referencia a rótulos simbólicos, ya

que su signi�cado no proporciona conocimiento adicional que pueda ser usado para la

tarea del clasi�cador. El contenido de cada documento es lo único relevante al momento

de asociar cada uno a su correspondiente clase. La segunda cuestión, que deriva de la

primera, nos remite a la �subjetividad� presente en toda tarea de clasi�cación de textos,

ya que es muy común encontrar un desacuerdo de expertos al decidir clasi�car un deter-

minado documento bajo una categoría especí�ca. Por ejemplo, si se tiene un documento

para clasi�car un discurso presidencial donde se expone �...la ingesta de cerdo mejora la

actividad sexual...�2, éste puede ser catalogado como un artículo de Política o de Medici-

na, o en su defecto como perteneciendo a otra categoría diferente. La clase que se escoja

depende del juicio subjetivo del experto.

2http://edant.clarin.com/diario/2010/01/28/elpais/p-02128743.htm

Page 40: Universidad Nacional de San Luis Tesis de Maestría en ...personales.upv.es/prosso/resources/RosasMSc.pdf · SEMÁNTICO DE TEXTOS Lic. María Verónica Rosas Director: Dr. Paolo Rosso,

Capítulo 3. Indexación y categorización de textos 26

Aunque es posible construir un sistema de CT creando conjuntos de reglas de forma

manual, el enfoque más utilizado consiste en usar técnicas de Recuperación de la Infor-

mación (RI) y AA para inducir un modelo de clasi�cación. Si las técnicas de AA apuntan

a reproducir las clasi�caciones previas realizadas manualmente por un experto el enfoque

de categorización se denomina supervisado, ya que se realiza el aprendizaje a partir del

conocimiento de datos preclasi�cados. Por el contrario, si las categorías no se conocen con

anterioridad ni se disponen de ejemplos previos de asignaciones correctas a las mismas, la

categorización automática se conoce como no supervisada o agrupamiento.

Se puede de�nir a la CT como la tarea de determinar un valor del conjunto {T , F}

(denotados �True� y �False� respectivamente) para cada entrada de la matriz de decisión

de la Tabla 3.4.

d1 ... ... dj ... ... dn

c1 a11 ... ... a1j ... ... a1n

... ... ... ... ... ... ... ...

ci ai1 ... ... aij ... ... ain

... ... ... ... ... ... ... ...

cm am1 ... ... ami ... ... amn

Tabla 3.4: Matriz de Decisión

Formalmente, si se de�ne a C = {c1, . . . , cm} como el conjunto prede�nido de

categorías, a D = {d1, . . . , dn} como el conjunto de documentos y a cada valor en

{a11,..., amn} como representando la estimación realizada por el experto de la pertenencia

(o no) de un documento a una categoría, entonces se podría especi�car la tarea de CT

por medio de una función Φ, tal que Φ : D × C → {T, F}.

De esta manera, si Φ(dj, ci) = T luego dj es llamado un ejemplo positivo (o miembro)

de ci, de lo contrario si Φ(dj, ci) = F es llamado un ejemplo negativo de ci. El objetivo

es aproximar la función Φ, mediante un �clasi�cador� Φ′ tal que Φ y Φ′ coincidan tanto

como sea posible.

Teniendo en cuenta la aplicación de la CT, ésta puede considerarse como tarea de:

Simple rotulado, donde un elemento debe ser asignado a una única categoría (un

caso particular de este tipo es el clasi�cador binario).

Múltiple rotulado, donde un elemento puede ser asignado a más de una categoría o

clase.

Page 41: Universidad Nacional de San Luis Tesis de Maestría en ...personales.upv.es/prosso/resources/RosasMSc.pdf · SEMÁNTICO DE TEXTOS Lic. María Verónica Rosas Director: Dr. Paolo Rosso,

Categorización de textos 27

La CT automática ha sido aplicada con éxito en muchos problemas de categorización

de la vida real pudiéndose mencionar como ejemplo a la clasi�cación de páginas Web

en directorios temáticos [78], la detección y �ltrado de páginas Web pornográ�cas [44] y

mensajes de correo masivo no solicitado (spam) [108, 42, 98], el �ltrado de noticias [4],

la detección de plagios e identi�cación de autores [86, 85, 110, 73], el análisis de opinión

[68] y la organización de páginas Web en general [57, 129], entre otras.

La tarea de CT incluye a grandes rasgos los siguientes pasos:

1. Representar o indexar un conjunto de documentos.

2. Seleccionar y aplicar un clasi�cador de textos.

3. Evaluar el clasi�cador utilizado.

Con respecto al primer punto, es importante destacar que los documentos en la CT

son generalmente representados como vectores de pesos de términos (ver sección 3.1).

Dependiendo del sistema de CT utilizado y de la dimensión de los vectores, puede ser

necesario seleccionar un subconjunto de los términos índices originales para mejorar los

resultados del clasi�cador. En la sección 3.3 se presentan las diferentes maneras de llevar

a cabo la reducción de dimensionalidad del espacio de términos.

3.2.1. Aprendizaje de un clasi�cador

Un clasi�cador de texto para una clase ci se genera automáticamente a través de un

proceso inductivo general, llamado aprendiz (o learner). A partir de las particularidades de

un conjunto de documentos preclasi�cado en la categoría ci, se deducen las características

que deben tener los documentos aún no clasi�cados para pertenecer a ci. Para construir un

clasi�cador para un conjunto de clases C, es necesario un conjunto D de documentos tal

que el valor de Φ(dj, ci) sea conocido para cada 〈dj, ci〉 ∈ D ÖC. En una de las primeras

etapas del clasi�cador el conjunto original de documentos D es generalmente dividido en

tres conjuntos disjuntos, no necesariamente del mismo tamaño:

Un conjunto de entrenamiento Tr (training set): es el conjunto de documentos

usados por el aprendiz para construir el clasi�cador.

Page 42: Universidad Nacional de San Luis Tesis de Maestría en ...personales.upv.es/prosso/resources/RosasMSc.pdf · SEMÁNTICO DE TEXTOS Lic. María Verónica Rosas Director: Dr. Paolo Rosso,

Capítulo 3. Indexación y categorización de textos 28

Un conjunto de validación Va (validation set): es el conjunto de documentos con

los cuales se ajustan las con�guraciones del clasi�cador. Por ejemplo, para un pará-

metro p del cual depende el clasi�cador, seleccionar el valor que produce la mayor

efectividad cuando es evaluado con Va.

Un conjunto de prueba Te (test set): es el conjunto de documentos con el cual se

evalúa �nalmente la efectividad del clasi�cador.

Tanto en la fase de validación como en la de prueba, �evaluar la efectividad� signi�ca ejecu-

tar el clasi�cador con un conjunto de documentos preclasi�cados (Va o Te) y controlar el

grado de correspondencia entre la salida de los clasi�cadores y de las clases preasignadas.

Diferentes aprendices pueden aplicarse a la CT. Algunos de estos métodos generan

clasi�cadores de valores binarios de la forma h : DÖC�{T , F}, otros generan funciones

de valores reales de la forma h : DÖC�[0, 1]. En este último caso, es necesario utilizar

una estrategia para convertir dicho valor a uno �nal de tipo binario [124].

Diversas técnicas de aprendizaje de clasi�cadores han sido desarrolladas para las ta-

reas de CT, que incluyen métodos de regresión [36, 125], árboles de decisión [64], redes

neuronales [122], algoritmos probabilísticos de Bayes [118, 64], algoritmos de aprendizaje

inductivo [19, 65], método de los K vecinos más cercanos [125, 72], máquinas con soporte

de vectores [113, 28] y ensamblaje de clasi�cadores [83, 101]. En el capítulo 7 de este

trabajo se ha experimentado con varios de estos algoritmos.

3.2.2. Evaluación de un clasi�cador

La evaluación experimental de un clasi�cador se mide en la mayoría de los casos por

su efectividad, es decir, su habilidad para tomar las decisiones correctas al clasi�car. Las

métricas para la evaluación de la efectividad provienen usualmente del área de la RI y

adaptadas a CT para su uso. Las más utilizadas incluyen: recall, precision, accuracy, error

y F-measure.

A �n de aplicar la métrica seleccionada para evaluar la clasi�cación, se debe obtener

en primer lugar la matriz de contingencia (o matriz de confusión) para cada categoría ci

como la mostrada en la Tabla 3.5.

Donde los valores para cada celda representan:

Page 43: Universidad Nacional de San Luis Tesis de Maestría en ...personales.upv.es/prosso/resources/RosasMSc.pdf · SEMÁNTICO DE TEXTOS Lic. María Verónica Rosas Director: Dr. Paolo Rosso,

Categorización de textos 29

Categoría ci Decisión del experto

Decisión del clasi�cador TRUE FALSE

TRUE TPi FPi

FALSE FNi TNi

Tabla 3.5: Matríz de contingencia para la categoría ci

TPi (positivos verdaderos) representa el número de documentos que han sido co-

rrectamente clasi�cados bajo la categoría ci,

FPi (positivos falsos) representa el número de documentos que han sido incorrecta-

mente clasi�cados bajo la categoría ci,

TNi (negativos verdaderos) representa el número de documentos que han sido co-

rrectamente clasi�cados como no perteneciendo a la categoría ci y

FNi (negativos falsos) que representa el número de documentos que han sido inco-

rrectamente clasi�cados como no perteneciendo a la categoría ci.

Teniendo en cuenta la notación introducida y que Ni = TPi + FPi + TNi + FNi, las

distintas métricas pueden ser de�nidas de la siguiente manera:

Precisioni =TPi

(TPi+FPi)

Recalli =TPi

(TPi+FNi)

Accuracyi =(TPi+TNi)

Ni

Errori =(FPi+FNi)

Ni= 1− Accuracyi

La Precision se determina como la probabilidad de que si un documento cualquiera

es clasi�cado bajo una determinada categoría, esta decisión sea correcta. Con respecto

Page 44: Universidad Nacional de San Luis Tesis de Maestría en ...personales.upv.es/prosso/resources/RosasMSc.pdf · SEMÁNTICO DE TEXTOS Lic. María Verónica Rosas Director: Dr. Paolo Rosso,

Capítulo 3. Indexación y categorización de textos 30

a Recall, es de�nida como la probabilidad de que, si un documento cualquiera debe ser

clasi�cado bajo un determinada categoría, esta decisión es tomada.

Generalmente, el valor de N en la CT es grande, lo que produce que las métricas de

Accuracy y Error sean mucho más insensibles a las variaciones en el número de decisiones

correctas (TP + TN) que para el caso de Precision y Recall. Por esta razón, Recall

y Precision se usan más frecuentemente que Accuracy y Error en las evaluaciones de

clasi�cadores.

En la práctica, nuevas alternativas de medición de la efectividad surgen de la combina-

ción de las medidas de Precision y Recall, una de éstas es la denominada F-measure [107].

La expresión 3.1 permite calcular el valor proporcionando un parámetro α (0 ≤ α ≤ 1)

que permite ponderar tanto la Precision como el Recall.

Fα =1

α 1Precision

+ (1− α) 1Recall

(3.1)

En esta fórmula puede verse a α como el grado relativo de importancia α atribuída

a Precision y Recall: si α = 1, luego el valor de Fα coincide con Precision, si α = 0

entonces Fα coincide con Recall. Usualmente, un valor de α = 0,5 da igual importancia a

la Precision y al Recall, dicha medida es conocida como F1 [63].

En la CT de múltiple rótulo, el método más sencillo para calcular el puntaje total

de las categorías consiste en obtener el promedio de las valores calculados para todas las

tareas binarias. El resultado obtenido se llama macro-promedio de la métrica utilizada.

Otra forma es sumar los valores TP , FP , TN y FN para todas las categorías y luego

calcular cada una de las métricas planteadas. Los resultados obtenidos de esta forma son

llamados micro-promedio.

En [107, 123, 63] se da una explicación más detallada sobre las métricas de evaluación

descriptas y otras técnicas alternativas a la efectividad, como por ejemplo e�ciencia y

utilidad.

3.3. Reducción de dimensionalidad

Cuando se deben categorizar colecciones con un tamaño grande de vocabulario es de

esperar un impacto negativo de la e�ciencia en tiempo y espacio de memoria para la

Page 45: Universidad Nacional de San Luis Tesis de Maestría en ...personales.upv.es/prosso/resources/RosasMSc.pdf · SEMÁNTICO DE TEXTOS Lic. María Verónica Rosas Director: Dr. Paolo Rosso,

Reducción de dimensionalidad 31

mayoría de los sistemas de categorización [93]. Un aspecto interesante a analizar en estos

casos es el uso de métodos clásicos de reducción de la dimensión del espacio de términos

(T ) para hacer posible un procesamiento más e�ciente. El objetivo �nal es restringir |T |

a |T ′| donde |T ′|�|T |. La intención es descartar atributos o características3 irrelevantes,

redundantes o que brinden mínima información al clasi�cador. Sin embargo, el proceso

de remover términos debe ser realizado cuidadosamente, debido a que se puede correr el

riesgo de remover información útil para la clasi�cación de ciertos documentos.

En base a la naturaleza de los términos resultantes se pueden distinguir dos enfoques

principales para la reducción de dimensionalidad:

Selección de términos : se obtiene el conjunto T ′ que es un subconjunto de T . Se

seleccionan los términos 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 clasi�cador utilizado, de la agresividad de

la reducción y de la técnica utilizada para dicha reducción. Dentro de este enfoque

se plantean varias alternativas. La técnica de �envoltura� (en inglés, wrapper) es una

alternativa que plantea determinar T ′ por medio del mismo método de aprendizaje

usado para construir el clasi�cador, con la desventaja que el costo computacional que

implica hace imposible aplicarla en algunas técnicas estándar de CT [81, 49]. Una

alternativa computacionalmente más sencilla es denominada ��ltrado� (en inglés,

�ltering) que mantiene la diferencia |T ′|�|T | y selecciona los términos que reciben

el más alto puntaje de acuerdo a una función que mide la �importancia� del término

para la tarea de CT. Diferentes funciones pueden ser utilizadas para calcular la

medida en que in�uye un término en dicha tarea, como por ejemplo, Frecuencia de

documento [126], Ganancia de información [105], Punto de transición [12, 5], Factor

de asociación [36], Información mutua [28, 64] y la función χ2 [16, 37, 103], entre

otras.

Extracción de términos : en este enfoque los términos del conjunto T ′ no son un

subconjunto de T , sino que son obtenidos como una combinación o transformación

de los términos de T , buscando maximizar la efectividad. La idea de utilizar términos

�arti�ciales� (en lugar de los originales) es que debido al problema de ambigüedad

3Los datos de entrada de un clasi�cador y de un sistema de selección son denominados de esta forma

indistintamente, que representan una palabra o frase.

Page 46: Universidad Nacional de San Luis Tesis de Maestría en ...personales.upv.es/prosso/resources/RosasMSc.pdf · SEMÁNTICO DE TEXTOS Lic. María Verónica Rosas Director: Dr. Paolo Rosso,

Capítulo 3. Indexación y categorización de textos 32

los términos original pueden no ser los más adecuados para la representación de los

documentos. Estos métodos resuelven el problema en dos pasos, primero extraen

los nuevos términos desde los viejos utilizando algún método de extracción y luego

aplican un método que convierta la representación original a la nueva representación

con los términos elaborados. En CT se han realizado distintos experimentos con este

enfoque, destacándose los de Agrupamiento [66, 7] e Indexación semántica latente

[26, 122].

3.4. Semántica en la categorización de textos

La unidad de indexación elegida para la representación de los documentos es crítica

en las diferentes aplicaciones vinculadas al PLN. En la CT es importante debido a

la relevancia de los términos al momento de clasi�car un documento perteneciendo

a una categoría. Como fue referenciado en la sección 3.1, los términos deben ser

con�ables desde el punto de vista sintáctico y semántico, ya que deben capturar lo

máximo posible el signi�cado de los textos, y deben permitir un aprendizaje e�cien-

te y efectivo. En muchos casos incluso, y principalmente en comunicaciones usando

lenguaje informal o coloquial (slang language) se puede requerir de complejos siste-

mas de normalización que obtengan un conjunto aceptable de términos normalizados

para su uso en aplicaciones de PLN.

La ambigüedad propia del lenguaje natural di�culta la tarea de indexar las palabras

y representa una de las limitaciones de la CT. Al igual que para otras aplicaciones

del PLN, para la CT la tarea intermedia de determinar el signi�cado correcto de los

términos es esencial para operar e�cientemente.

La ambigüedad del lenguaje suele ser clasi�cada en tres tipos diferentes [120]:

� Ambigüedad léxica: una misma palabra puede pertenecer a diferentes ca-

tegorías gramaticales. Por ejemplo, la palabra para puede ser: preposición o

forma del verbo parar.

� Ambigüedad sintáctica o estructural: se produce cuando debido a la forma

en que se asocian las palabras, podemos interpretar una oración de distintas

formas. En algunos casos, esta forma de ambigüedad es casi imposible de solu-

cionar. Por ejemplo, Juan vio a su hermana con unos prismáticos (¾Juan usó

Page 47: Universidad Nacional de San Luis Tesis de Maestría en ...personales.upv.es/prosso/resources/RosasMSc.pdf · SEMÁNTICO DE TEXTOS Lic. María Verónica Rosas Director: Dr. Paolo Rosso,

Semántica en la categorización de textos 33

los prismáticos para ver a su hermana o Juan vio que su hermana tenía unos

prismáticos?)

� Ambigüedad semántica o conceptual: basada en el signi�cado de las pa-

labras se pueden mencionar los fenómenos de polisemia y sinonimia.

1. Ambigüedad por polisemia: una misma palabra puede tener distintos sig-

ni�cados dependiendo del contexto en el que está inserta. Por ejemplo, la

palabra vela en la oración �La vela da su�ciente luz� se re�ere al cilindro

de cera que sirve para alumbrar, mientras que en la frase �La vela mayor

del barco se ve a lo lejos� hace referencia a la lona que recibe viento para

impulsar un barco.

2. Ambigüedad por sinonimia: diferentes palabras pueden tener el mismo sig-

ni�cado. Por ejemplo, las palabras can y perro re�eren al mismo concepto,

en este caso, mamífero cánido.

Con el �n de solucionar los inconvenientes que surgen de la ambigüedad, a partir

de la representación de los términos se han planteado alternativas que incluyen

frases de palabras obtenidas por análisis estadístico o lingüístico [16, 66], patrones

de extracción de información [91] y conjuntos de sinónimos o �synsets� de WordNet

[40, 104, 45]. Esta última opción representa uno de los ejes principales del presente

trabajo y se explica en detalle en la sección 4.1.

Page 48: Universidad Nacional de San Luis Tesis de Maestría en ...personales.upv.es/prosso/resources/RosasMSc.pdf · SEMÁNTICO DE TEXTOS Lic. María Verónica Rosas Director: Dr. Paolo Rosso,

Capítulo 3. Indexación y categorización de textos 34

Page 49: Universidad Nacional de San Luis Tesis de Maestría en ...personales.upv.es/prosso/resources/RosasMSc.pdf · SEMÁNTICO DE TEXTOS Lic. María Verónica Rosas Director: Dr. Paolo Rosso,

Capítulo 4

Resolución de la ambigüedad

semántica

�Más vale una palabra con sentido que un centenar sin sentido...�

� Autor anónimo.

Toda aplicación de PLN tiene por objetivo fundamental la comprensión del lenguaje

natural. Una de las propiedades intrínsecas del lenguaje humano es contar con ele-

mentos ambiguos que in�uye negativamente en el rendimiento de diversas tareas de

PLN. Con la incorporación de información semántica en el indexado de documentos

se han obtenido bene�cios importantes frente al problema planteado.

En la primera sección de este capítulo se introduce una variante al modelo tradi-

cional de representación de los documentos que permite subsanar el problema de la

ambigüedad semántica. A partir de los recursos utilizados por las diferentes técnicas

de desambiguación se presentan, en la segunda sección, clasi�caciones de las mismas

de acuerdo a características particulares. Finalmente, se presenta una de las bases

de datos más importante en el área de desambiguación, la ontología WordNet, que

es usada ampliamente en este trabajo.

4.1. Indexación conceptual

La incorporación de información semántica en la representación de los documentos

supone agregar o sustituir una palabra con el concepto que mejor la represente.

Page 50: Universidad Nacional de San Luis Tesis de Maestría en ...personales.upv.es/prosso/resources/RosasMSc.pdf · SEMÁNTICO DE TEXTOS Lic. María Verónica Rosas Director: Dr. Paolo Rosso,

Capítulo 4. Resolución de la ambigüedad semántica 36

Por ejemplo, si se tiene un documento con la palabra vacuna y otro con la palabra

porcina, un �concepto� más general podría ser agregado como el término carne.

La determinación de dicho concepto (o signi�cado) que corresponde a los distintos

términos no es una tarea directa debido a los eventuales problemas de ambigüedad

que puedan surgir y que fueron descriptos en la sección 3.4.

La tarea de �desambiguación del sentido de las palabras� (WSD las siglas en in-

glés para Word Sense Disambiguation) se puede de�nir como el proceso de asociar

una palabra en un texto o discurso a la de�nición (o concepto) más apropiada con

respecto a otros signi�cados potencialmente atribuibles a esa palabra. WSD es con-

siderado una tarea intermedia o complementaria necesaria para obtener un buen

rendimiento en las aplicaciones vinculadas al PLN.

Si se toma como base la representación estándar de los textos por vectores de tér-

minos, el uso de información semántica planteará distintas alternativas respecto a

cómo esta información puede ser incorporada. Una propuesta fue introducida en

[45, 112] en la cual se plantea enriquecer los vectores de términos con conceptos

a partir de una ontología genérica (una combinación de diccionario y tesauro). En

dichos trabajos los resultados obtenidos a partir de esta variante logran una mejora

en el rendimiento y efectividad de las tareas de PLN.

La idea básica de la indexación conceptual es encontrar un �signi�cado� o �sentido�

que haga referencia a cada palabra en un documento, para luego usarlos en reemplazo

de los términos (o en concatenación con ellos) en la representación de los documentos

con el VSM. Usar los conceptos como espacio de indexación en lugar de los términos

combina dos bene�cios: a) los términos se desambiguarían totalmente favoreciendo

la medida de Precision, y b) los términos equivalentes podrían ser identi�cados,

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 desambiguación

Desde los primeros sistemas de WSD hasta la actualidad han surgido nuevas pro-

puestas y distintos enfoques para resolver el problema de ambigüedad descripto en la

sección 3.4. Consistente con la cantidad de nuevos métodos propuestos han surgido

también una variedad de formas de clasi�car dichos métodos.

Page 51: Universidad Nacional de San Luis Tesis de Maestría en ...personales.upv.es/prosso/resources/RosasMSc.pdf · SEMÁNTICO DE TEXTOS Lic. María Verónica Rosas Director: Dr. Paolo Rosso,

Estrategias de desambiguación 37

Una manera general y simple de clasi�car los distintos métodos utilizados para WSD

es diferenciando al grupo de las estrategias que necesitan corpus de entrenamiento

etiquetados semánticamente, denominado el grupo de los sistemas supervisados

de aquellos que no necesitan esa anotación para poder funcionar correctamente, los

sistemas no supervisados.

Otra forma de clasi�car los sistemas de WSD es basándose en la principal fuente

de conocimiento utilizada para establecer los diferentes sentidos. En primer lugar,

tenemos los métodos que utilizan diccionarios, tesauros y bases de conocimiento lé-

xicas, sin utilizar ningún corpus, métodos denominados Basados en diccionario o

Basados en conocimiento. Las principales técnicas en este contexto utilizan res-

tricciones de selección, el solapamiento de textos y medidas de similitud semántica.

En el capítulo 5, se estudian en mayor detalle estos métodos, incluyendo una descrip-

ción de los algoritmos utilizados en este trabajo. Por otra parte, tenemos aquellos

métodos que evitan casi completamente la información externa y trabajan directa-

mente con corpus sin etiquetar, son los denominados métodos No supervisados

basados en corpus. Estos métodos tienen la ventaja de evitar el inconveniente que

se produce cuando se requiere anotación manual para adquirir nuevo conocimiento

[14, 88]. En [102] se han obtenido resultados alentadores, reuniendo palabras simi-

lares en �clusters� (agrupamientos) y clasi�cando nuevas ocurrencias de las mismas.

Los sistemas Supervisados y Semi-supervisados, utilizan corpus etiquetados

semánticamente como entrenamiento [77]. A pesar de que son los métodos 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 Métodos híbridos utilizan en el proceso de desambiguación tanto

fuentes de conocimiento externas como corpus anotados o no anotados. Por ejemplo,

en [69] se implementa un método que combina la utilización de diccionarios con

corpus no anotados y en [74, 24, 23] se publican también otros métodos destacables

de este tipo. Existen otros métodos que utilizan la combinación de tesauros y corpus

no anotados, como es el caso del método ideado en [128]. Por último se encuentran

los métodos que combinan diferentes fuentes léxicas estructuradas con corpus como

en los trabajos propuestos en [67, 1, 90, 114].

Page 52: Universidad Nacional de San Luis Tesis de Maestría en ...personales.upv.es/prosso/resources/RosasMSc.pdf · SEMÁNTICO DE TEXTOS Lic. María Verónica Rosas Director: Dr. Paolo Rosso,

Capítulo 4. Resolución de la ambigüedad semántica 38

En la Tabla 4.1 se muestra un resumen de las distintas aproximaciones a WSD

planteadas anteriormente con un detalle de los procedimientos involucrados.

Métodos Procedimiento

X Comparación de las de�niciones de los

diccionarios con el contexto (método de Lesk).

Basados en conocimiento X Selección del sentido más similar al contexto,

utilizando medidas de similitud semántica.

X Un sentido por discurso y otras heurísticas

X Métodos no supervisados que clasi�can palabras

o contextos en diferentes clusters, obteniendo

Basados en corpus no supervisados los diferentes sentidos.

X Utilización de corpus paralelos para

inferir sentidos entre diferentes idiomas.

X Aprendizaje automático supervisado, utilizando

Basados en corpus supervisados corpus de entrenamiento etiquetados

manualmente.

X Métodos de bootstrapping (semi-supervisados).

X Utilización de técnicas de clustering no

supervisadas combinadas con métodos

basados en conocimiento.

Métodos híbridos X Utilización de métodos basados en conocimiento

para buscar ejemplos que sirvan de entrenamiento

en métodos supervisados.

X Utilización de corpus paralelos combinados

con métodos basados en conocimiento.

Tabla 4.1: Clasi�cación de los métodos de WSD

4.3. WordNet: una base de datos léxica

La indexación conceptual como fue previamente planteada, suele requerir de algún

recurso externo que, en primera instancia, puede ser cualquier base de conocimien-

to léxica que de�na los diferentes sentidos de las palabras y relaciones entre ellas

(conocida como ontología). La ontología más utilizada es WordNet, una base de

datos léxica para el idioma inglés que se originó como un diccionario electrónico

siguiendo principios psicolingüísticos [75, 34]. Fue desarrollada por el Laboratorio

de Ciencias Cognitivas de la Universidad de Princeton que lograron combinar los

Page 53: Universidad Nacional de San Luis Tesis de Maestría en ...personales.upv.es/prosso/resources/RosasMSc.pdf · SEMÁNTICO DE TEXTOS Lic. María Verónica Rosas Director: Dr. Paolo Rosso,

WordNet: una base de datos léxica 39

elementos de un diccionario (de�niciones y algunos ejemplos) y los de un tesauro

(sinónimos) convirtiendo a WordNet en un recurso muy útil para PLN en lo que

respecta a WSD.

WordNet se organiza en conjuntos de sinónimos o synsets que representan las uni-

dades básicas de información y organización. Cada uno de éstos es codi�cado como

un número único de ocho dígitos que de�ne un único concepto (o�set). De esta

manera, distintos sentidos de las palabras pertenecen a diferentes synsets. Entre los

synsets existen conexiones que expresan relaciones semánticas, conceptuales o léxi-

cas. El resultado de este conjunto de conexiones es una extensa red que proporciona

un gran número de interrelaciones entre palabras convirtiendo a WordNet en una

red semántica u ontología, más que en el simple diccionario electrónico planteado

inicialmente.

WordNet contiene tanto palabras compuestas, frases verbales y colocaciones1 como

frases idiomáticas. Según las diferentes reglas gramaticales, sustantivo (noun), verbo

(verb), adjetivo (adj ) y adverbio (adv) se establecen cuatro categorías gramatica-

les para los términos o palabras en un documento. De esta forma, como se de�ne

a continuación las relaciones presentes en WordNet pueden variar dependiendo la

categoría gramatical.

1. Para todas las categorías

� sinonimia: es una relación entre palabras las cuáles pueden sustituirse

unas por otras dentro de un contexto determinado sin modi�car su signi-

�cado siempre teniendo en cuenta que pertenezcan a la misma categoría.

Por ejemplo, en la frase �Si buscas un resultado distinto no hagas siempre

lo mismo� puede ser cambiada por �Si buscas una solución distinta no ha-

gas siempre lo mismo�, donde resultado y solución son sinónimos ya que

al reemplazar una por la otra no cambia el sentido de la oración.

� antonimia: de�ne a la relación entre palabras que tienen signi�cados

opuestos. Por ejemplo, arriba es el antónimo de abajo, frío representa el

antónimo de calor.

2. Para sustantivos1Es una secuencia de palabras que juntas tienen un signi�cado concreto, por ejemplo en inglés �dining

car� referencia al vagón comedor de un tren.

Page 54: Universidad Nacional de San Luis Tesis de Maestría en ...personales.upv.es/prosso/resources/RosasMSc.pdf · SEMÁNTICO DE TEXTOS Lic. María Verónica Rosas Director: Dr. Paolo Rosso,

Capítulo 4. Resolución de la ambigüedad semántica 40

� hiponimia: es una relación que sucede sólo para el caso de los sustantivos

y está de�nida como ES-UN. Por ejemplo, periódico es un medio de comu-

nicación. Por lo tanto, periódico es hipónimo de medios de comunicación.

� meronimia: esta relación suele estar de�nida como ES-PARTE-DE, que

representa que algún concepto es una parte de otro. Por ejemplo, un neu-

mático es un merónimo de un auto y un dedo de la mano.

� hiperonimia: de�ne la relación inversa de la hiponimia. Según el ejemplo

anterior, medios de comunicación es hiperónimo de periódico y vehículo es

hiperónimo de tren.

� holonimia: esta relación se de�ne como la inversa de la meronimia, deter-

mina la relación TIENE-UN, entre un término denotando un todo y un

término denotando una parte del todo, suele estar dedi�nida como . Por

ejemplo, casa es holónimo de dormitorio.

3. Para verbos

� troponimia: es la relación semántica de hacer algo en la forma de otra

cosa. Por ejemplo, caminar es tropónimo de mover (caminar es una forma

de moverse) y renguear es un tropónimo de caminar.

� hiperonimia: es la relación inversa a la troponimia y análoga a la relación

de hiperonimia de los sustantivos. Por ejemplo, mover es hiperónimo de

correr, caminar, trotar y saltar.

� implicación lógica: se re�ere a la relación entre los verbos en la cual hacer

algo requiere hacer otra cosa también, es decir un término implica al otro.

Por ejemplo, comer implica masticar y roncar implica estar durmiendo.

� causalidad: se re�ere a la relación de los verbos que una acción produce

o acciona para que se ejecute otra. Por ejemplo, insultar causa la acción

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: de�ne la relación de dos adjetivos con signi�cados similares

pero no lo su�cientemente iguales como para estar en el mismo synset.

Por ejemplo, claro como un color muy cercano al blanco y el propio color

blanco que es el más claro que existe.

Page 55: Universidad Nacional de San Luis Tesis de Maestría en ...personales.upv.es/prosso/resources/RosasMSc.pdf · SEMÁNTICO DE TEXTOS Lic. María Verónica Rosas Director: Dr. Paolo Rosso,

WordNet: una base de datos léxica 41

En la Tabla 4.2 se muestra un resumen de las diferentes relaciones para las distintas

categorías.

Sustantivos Verbos Adjetivos

hiperonimia troponimia sinonimia

hiponimia entailment antonimia

meronimia cause similaridad

holonimia hiperonimia

sinonimia sinonimia

antonimia antonimia

Tabla 4.2: Relaciones en WordNet según las categorías gramaticales

En la Figura 4.1 se muestra un ejemplo del synset pine, pine tree, true pine en

WordNet conectado a través 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])

La estructura jerárquica de WordNet contiene un conjunto de conceptos esenciales

de los que derivan el resto de los synsets. Los mismos son mostrados en la Tabla 4.3.

Además de distinguir mediante synsets los signi�cados de cada término, WordNet

establece una relación de orden entre los diferentes sentidos de las palabras, de

acuerdo a su frecuencia de aparición. De esta forma, para plane en la versión de

WordNet online 3.0 existen cuatro signi�cados diferentes:

Page 56: Universidad Nacional de San Luis Tesis de Maestría en ...personales.upv.es/prosso/resources/RosasMSc.pdf · SEMÁNTICO DE TEXTOS Lic. María Verónica Rosas Director: Dr. Paolo Rosso,

Capítulo 4. Resolución de la ambigüedad semántica 42

1. {02691156} airplane#1, aeroplane#1, plane#1 (an aircraft that has a �xed

wing and is powered by propellers or jets) �the �ight was delayed due to trouble

with the airplane�

2. {13861050} plane#2, sheet#4 ((mathematics) an unbounded two-dimensional

shape) �any line joining two points on a plane lies wholly on that plane�

3. {13941806} plane#3 (a level of existence or development) �he lived on a worldly

plane�

4. {03955296} plane#4, planer#1, planing machine#1 (a power tool for smoo-

thing or shaping wood)

Cada concepto asociado al término plane además de tener asociado su synset, tam-

bién tiene asociado un número de sentido: plane#1, plane#2, plane#3 y plane#4,

estos sentidos indican la frecuencia de aparición de cada concepto, siendo plane#1

el más frecuente usado en el idioma inglés según WN. A cada synset le corresponde

una de�nición o glosa que de�ne el concepto representado por el sentido especí�co

de cada término. Así, para plane#1 su glosa asociada es �an aircraft that has a �xed

wing and is powered by propellers or jets�.

La amplia cobertura de WordNet y su libre disponibilidad (a través de la Universidad

de Princeton [76]) ha promovido su utilización para una gran variedad de tareas de

PLN. El uso de WN para CT no ha demostrado ampliamente su efectividad en [104,

117] pero, en diversos trabajos que usan synsets de WordNet para la indexación, los

resultados fueron alentadores [40, 123, 79, 54].

Las cuatro categorías gramaticales y las relaciones léxicas existentes entre ellas de-

terminan la estructura de la base de datos WordNet. El formato y organización de

los archivos en WN han sido desarrollados de manera tal que faciliten el acceso de

las aplicaciones que lo utilizan como recurso externo (se darán más detalles en el

capítulo 6).

En la Tabla 4.4 aparece el conjunto de archivos que constituyen la base de datos para

la versión 2.1 de WordNet. Los archivos data.* e index.* son los más importantes.

Las cuatro categorías sintácticas (noun, verb, adj y adv) se utilizan para almacenar

la información correspondiente en diferentes archivos.

En la Figura 4.2 se muestra un fragmento del archivo index.noun. En todo archivo

de índices (index.*) se almacena la información relativa a cada término (éstos se

Page 57: Universidad Nacional de San Luis Tesis de Maestría en ...personales.upv.es/prosso/resources/RosasMSc.pdf · SEMÁNTICO DE TEXTOS Lic. María Verónica Rosas Director: Dr. Paolo Rosso,

WordNet: una base de datos léxica 43

Concepto De�nición

entity todo aquello que se percibe, se sabe o se in�ere como de existencia

propia (vivo o no vivo)

psychological rasgo o característica mental de un organismo viviente

feature

abstraction un concepto general formado por la extracción de rasgos comunes desde

ejemplos especí�cos

la forma en que algo se muestra con respecto a sus principales atributos;

state en inglés, sería por ejemplo: �the current state of knowledge�,

�his state of health� o �in a weak �nancial state�

event algo que pasa en un lugar y tiempo determinado

act,

human action, algo que la gente hace o hará que suceda

human activity

group, grouping conjunto de entidades (miembros) que se consideran como una unidad

possession todo lo que pueda ser apropiado o poseído

phenomenon cualquier estado o proceso conocido a través de los sentidos en lugar de

por intuición o razonamiento

Tabla 4.3: Conceptos en la cima de la jerarquía de WordNet

Figura 4.2: Fragmento del archivo index.noun

encuentran ordenados alfabéticamente para facilitar la búsqueda) y los synsets a

los que se encuentra asociado cada uno de ellos. En el ejemplo, el término �car�

se encuentra asociado con los synsets a través de los o�sets [02929975 02931574

02906118 02932115 02931966] correspondientes a cada uno de sus cinco posibles

signi�cados. En cada línea se incluyen, básicamente, el término y los identi�cadores

de los synsets correspondientes.

En el caso de los archivos data.* para cada o�set se almacenan todos los identi�-

cadores de los synset a los que se encuentra asociado por las diferentes relaciones

Page 58: Universidad Nacional de San Luis Tesis de Maestría en ...personales.upv.es/prosso/resources/RosasMSc.pdf · SEMÁNTICO DE TEXTOS Lic. María Verónica Rosas Director: Dr. Paolo Rosso,

Capítulo 4. Resolución de la ambigüedad semántica 44

Archivo Tamaño (KBytes)

data.noun 14643

data.verb 2673

data.adj 3154

data.adv 507

index.noun 4639

index.verb 507

index.adj 830

index.adv 162

index.sense 7127

noun.exc 27

verb.exc 30

adj.exc 19

adv.exc 1

sentidx.vrb 72

sents.vrb 5

cntlist 857

Tabla 4.4: Archivos de la base de datos WordNet (versión 2.1)

Figura 4.3: Fragmento del archivo data.noun

Page 59: Universidad Nacional de San Luis Tesis de Maestría en ...personales.upv.es/prosso/resources/RosasMSc.pdf · SEMÁNTICO DE TEXTOS Lic. María Verónica Rosas Director: Dr. Paolo Rosso,

WordNet: una base de datos léxica 45

léxicas. Por ejemplo, en la Figura 4.3 se puede encontrar información correspon-

diente al archivo data.noun, el o�set 02929975 corresponde a uno de los cinco

signi�cados del término �car� de la Figura 4.2.

Page 60: Universidad Nacional de San Luis Tesis de Maestría en ...personales.upv.es/prosso/resources/RosasMSc.pdf · SEMÁNTICO DE TEXTOS Lic. María Verónica Rosas Director: Dr. Paolo Rosso,

Capítulo 4. Resolución de la ambigüedad semántica 46

Page 61: Universidad Nacional de San Luis Tesis de Maestría en ...personales.upv.es/prosso/resources/RosasMSc.pdf · SEMÁNTICO DE TEXTOS Lic. María Verónica Rosas Director: Dr. Paolo Rosso,

Capítulo 5

WSD basado en conocimiento

�Uno no es lo que es por lo que escribe, sino por lo que ha leído...�

� Jorge Luis Borges. Escritor argentino.

De las estrategias de WSD planteadas en la sección 4.2 el enfoque supervisado basa-

do en corpus (también conocido como supervisado) ha mostrado uno de los mejores

comportamientos con respecto a los resultados observados [120]. No obstante, debi-

do a la necesidad de contar con un corpus etiquetado previamente, este enfoque no

siempre es viable de ser aplicado. Una alternativa para abordar el problema anterior

es el uso de métodos basados en conocimiento que obtienen información desde recur-

sos léxicos externos. Si bien este tipo de métodos suele mostrar resultados de menor

calidad que los obtenidos con métodos basados en corpus, constituyen en muchos

casos la única alternativa realista si se desea hacer uso de información semántica en

la representación de documentos [120].

En este capítulo se analizarán 3 líneas generales en los que se fundamentan los

métodos basados en conocimiento:

1. Los métodos heurísticos, analizados en la sección 5.1, que consisten en reglas

que asignan un sentido a ciertas categorías de palabras en base a un criterio

particular. Por ejemplo, el sentido más frecuente, un sentido por colocación o

un sentido por discurso.

2. Los métodos cuyo único recurso externo requerido es un conjunto de entradas en

un diccionario (una por cada posible sentido) y el contexto inmediato donde se

Page 62: Universidad Nacional de San Luis Tesis de Maestría en ...personales.upv.es/prosso/resources/RosasMSc.pdf · SEMÁNTICO DE TEXTOS Lic. María Verónica Rosas Director: Dr. Paolo Rosso,

Capítulo 5. WSD basado en conocimiento 48

desarrolla la desambiguación. En esta línea se incluye al algoritmo de Lesk con

sus variantes, analizados en la sección 5.2, donde los sentidos de las palabras de

un contexto se identi�can basándose en una medida de solapamiento contextual

a partir de las de�niciones de una base de conocimiento externa.

3. Medidas de similitud extraídas a través de redes semánticas. Esta categoría

incluye métodos que tratan de encontrar la distancia semántica existente entre

diferentes conceptos. Dependiendo del tamaño del contexto, estas medidas se

dividen en dos grandes categorías: aplicables a un contexto local, donde las me-

didas de similitud semántica se utilizan para desambiguar palabras conectadas

por relaciones sintácticas o por su localización y aplicables a contextos globa-

les, donde las cadenas léxicas son derivadas basándose en medidas de similitud

semántica. Un ejemplo de este enfoque es el sistema CIAOSENSO introducido

en [96].

5.1. Método heurístico del sentido más frecuente

Una forma sencilla para intentar establecer el sentido correcto de las palabras en un

texto es utilizar heurísticas basadas en propiedades lingüísticas aprendidas a través

de textos. Una de las heurísticas más utilizadas es la denominada del sentido más

frecuente. Entre todos los posibles sentidos que puede tener una palabra, general-

mente existe uno que ocurre más a menudo que los otros sentidos. Por lo tanto,

un sistema muy simple de desambiguación sería aquel que asigne a cada palabra su

sentido más frecuente. El método de desambiguación que se basa en esta frecuencia

es referenciado en este trabajo como Método del sentido más frecuente (MFS, de sus

siglas en inglés para Most Frequent Sense). Este método se utiliza a menudo como

baseline para evaluar el rendimiento de un método WSD de acuerdo a lo expuesto

en [38].

Aunque conceptualmente es muy sencillo, y casi trivial de implementar, hay un

inconveniente asociado a este método: no siempre disponemos de la distribución de

las ocurrencias de los sentidos en todos los lenguajes, ya que, no existen su�cientes

textos disponibles para extraer esa distribución. Además, un cambio en el dominio

por lo general altera la distribución de los sentidos, disminuyendo así la calidad de

los resultados obtenidos por esta heurística [1]. En este sentido, WordNet provee una

Page 63: Universidad Nacional de San Luis Tesis de Maestría en ...personales.upv.es/prosso/resources/RosasMSc.pdf · SEMÁNTICO DE TEXTOS Lic. María Verónica Rosas Director: Dr. Paolo Rosso,

Algoritmo de Lesk 49

frecuencia para cada synset, de acuerdo a su frecuencia de uso en el idioma inglés1.

El orden muestra la utilización de este concepto y, de este modo, los conceptos

ubicados al principio de la lista son los más comúnmente empleados. En la sección

4.3 se mostró un ejemplo en WordNet para el synset �plane� que ejempli�ca lo

anteriormente expresado.

Además de esta heurística, existen otras dos comúnmente utilizadas que no son

analizadas en este trabajo pero es conveniente mencionar. Las dos alternativas se

basan en la suposición de que una palabra siempre tiene el mismo sentido en todas

sus ocurrencias en un mismo discurso (�un sentido por discurso�) o en la misma

colocación (�un sentido por colocación�) [120].

5.2. Algoritmo de Lesk

El algoritmo de Lesk [62] es uno de los primeros algoritmos desarrollados para la

desambiguación semántica de palabras. El único recurso externo requerido por el

algoritmo es un conjunto de entradas de un diccionario tradicional, una por cada

sentido posible de la palabra a desambiguar.

Dada una palabra ambigua, la de�nición de cada uno de sus sentidos en el diccionario

(o glosa) es comparada a la de cada otra palabra en la frase o contexto inmediato.

A una palabra se le asigna aquel sentido cuya glosa comparte el número mayor

de palabras en común con las glosas de las otras palabras. El algoritmo comienza

nuevamente para cada palabra y no utiliza el signi�cado previamente asignado.

Básicamente, dadas dos palabras W1 y W2, cada una con sus respectivos sentidos

NW1 y NW2 de�nidos en un diccionario, para cada par de posibles sentidos W i1

y W j2 , i = 1 . . . NW1 , j = 1 . . . NW2 , primero se determina el solapamiento con las

correspondientes de�niciones contando el número de palabras que tienen en común.

A continuación, el par de sentidos con el mayor solapamiento es seleccionado y

entonces se le asigna un sentido a cada palabra del par inicial. Las tareas simples

que involucran el algoritmo se muestran en la Tabla 5.1.

En [62] se muestra el funcionamiento de este algoritmo para el ejemplo �pine co-

ne�, valiéndose de de�niciones encontradas en diccionarios tradicionales tales como

1Esta frecuencia corresponde, en realidad, a la determinada por la cantidad de ocurrencias de las

palabras en el corpus Brown [76].

Page 64: Universidad Nacional de San Luis Tesis de Maestría en ...personales.upv.es/prosso/resources/RosasMSc.pdf · SEMÁNTICO DE TEXTOS Lic. María Verónica Rosas Director: Dr. Paolo Rosso,

Capítulo 5. WSD basado en conocimiento 50

(1) Se determinan los sentidos de cada palabra W1 y W2.

(2) Para cada sentido i de W1 y cada sentido j de W2.

(3) Determinar el solapamiento (i, j), calculando la cantidad de palabras que tiene en común

las de�niciones de los dos sentidos analizados.

(4) Se seleccionan los sentidos i y j tales que el solapamiento (i, j) sea el máximo

Tabla 5.1: Algoritmo de Lesk (adaptado desde [9])

Oxford, Webster y Collins entre otros. De este modo, se determina que la palabra

�pine� tiene dos sentidos o signi�cados:

1. �kind of evergreen tree with needle-shaped leaves.�

2. �waste away through sorrow or illness.�

La palabra �cone� tiene tres sentidos:

1. �solid body which narrows to a point.�

2. �something of this shape whether solid or hollow.�

3. �fruit of certain evergreen tree.�

Cada uno de los dos signi�cados 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 más

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:

� Métodos que tratan de resolver el problema de la explosión combinatoria cuan-

do se consideran más de dos palabras [115].

� Métodos donde se considera en forma aislada a cada palabra, esto es, cada

término es desambiguado individualmente midiendo el solapamiento entre cada

de�nición del diccionario y el contexto en el cual aparece [119].

Page 65: Universidad Nacional de San Luis Tesis de Maestría en ...personales.upv.es/prosso/resources/RosasMSc.pdf · SEMÁNTICO DE TEXTOS Lic. María Verónica Rosas Director: Dr. Paolo Rosso,

Algoritmo de Lesk 51

� Métodos que utilizan las relaciones semánticas de las palabras y sus corres-

pondientes de�niciones para ampliar el contexto [9]. En la siguiente subsección

se detalla una variante mejorada del algoritmo de Lesk que se basa en esta

modi�cación.

5.2.1. Algoritmo de Lesk Mejorado

Basado en el algoritmo original de Lesk, Banerjee y Pedersen en [9] presentan una

variante denominada �Algoritmo de Lesk Mejorado� o �Algoritmo de Lesk Adaptado�

(en inglés �Enhanced Lesk Algorithm� o �Adapted Lesk Algorithm�) que introduce

nuevos cambios con respecto a:

� Tamaño de la ventana de contexto: en [18] se plantea que el ser humano de-

termina el signi�cado de una palabra a través del contexto inmediato de dicha

palabra, lo que motiva a reducir a sólo tres palabras la ventana de contexto. Por

otro lado, las limitaciones en los recursos computacionales también in�uyen en

el hecho de elegir un tamaño de ventana acotado.

� Recurso externo utilizado: el diccionario tradicional utilizado por el algoritmo

original es reemplazado por la ontología WordNet con el �n de usar las rela-

ciones jerárquicas (tales como hiperonimia, hiponimia, holonimia, meronimia

y troponimia). Esta interconexión entre diferentes conceptos permite construir

un contexto más amplio a partir de las de�niciones semánticas.

� Esquema para elegir las glosas a comparar : para comprender el cambio

implementado es importante, en primer lugar, presentar algunas notacio-

nes de WordNet. De esta manera, si se representa con word#pos#sense

a un único synset, con gloss(word#pos#sense) a la glosa de un syn-

set y con hype(word#pos#sense) a todos los hiperónimos del synset

word#pos#sense, entonces la notación gloss(hype(word#pos#sense)) deno-

ta la glosa de los hiperónimos del synset identi�cado por word#pos#sense.

Si existen múltiples hiperónimos para el synset word#pos#sense, entonces

gloss(hype(word#pos#sense)) se usa para denotar la concatenación de las glo-

sas de todos los hiperónimos. Si no existen hiperónimos para word#pos#sense

entonces hype(word#pos#sense) corresponde a la cadena vacía. Finalmente,

se pueden aplicar dos esquemas para analizar la superposición de las glosas

Page 66: Universidad Nacional de San Luis Tesis de Maestría en ...personales.upv.es/prosso/resources/RosasMSc.pdf · SEMÁNTICO DE TEXTOS Lic. María Verónica Rosas Director: Dr. Paolo Rosso,

Capítulo 5. WSD basado en conocimiento 52

obtenidas. El esquema �homogéneo� compara dos sentidos de dos palabras,

analizando la superposición entre sus glosas y entre las glosas de synsets que

estén relacionados a este synset a través de la misma relación (esto es, las glosas

de hiperónimos entre sí, las glosas de hipónimos entre sí, pero no superponiendo

glosas de diferentes relaciones en la comparación). Por otra parte, en el modo

�heterogéneo� las glosas relacionadas a una palabra simple en la ventana de

contexto es comparada a las de�niciones de otra palabra en la misma ventana,

observando todas los posibles superposiciones y relaciones entre dos palabras.

� Detección de superposición entre glosas : un nuevo modelo para detectar el sola-

pamiento entre glosas y su posterior mecanismo de cálculo fueron introducidos

en [9]. Éste se basa en encontrar la secuencia más larga de palabras que sean

iguales, y darles un peso mayor comparado con las que se igualan en menor

cantidad de palabras.

� Medida de puntuación: luego de encontrar una o más coincidencias entre dos

glosas, es necesario asignar una puntuación a la información que provee acerca

de la relación de los dos synsets que se comparan. El algoritmo de Lesk original

realiza un conteo del número de palabras que se superponen y otorga este valor

como puntuación entre las dos glosas que se comparan. La nueva alternativa da

un valor mayor a solapamientos multipalabras, de este modo un par de glosas

donde coinciden n palabras en forma consecutiva obtienen una puntuación

más alta que si la superposición de las n palabras hubiera ocurrido en dos

o más solapamientos diferentes. Para cumplir el objetivo propuesto se eleva

al cuadrado la cantidad de palabras que coincidan en cada solapamiento (es

decir, n2) y luego se suman todas las superposiciones distintas encontradas. Por

ejemplo, si hay un solapamiento de 4 palabras consecutivas su puntaje será de

42 = 16, pero si el solapamiento de las 4 palabras hubiera ocurrido en dos

superposiciones diferente una de 1 y la otra de 3 palabras el resultado asignado

sería 12 + 32 = 10, dando una puntuación más alta a una única secuencia larga

de palabras superpuestas que al combinarse los resultados de las secuencias

más cortas.

En base a lo anterior y a modo de síntesis, el algoritmo de Lesk original desambigua

cada palabra por separado, por lo tanto el sentido que se le asigna a una palabra ele-

gida para ser desambiguada no se determina por los sentidos que tienen las palabras

Page 67: Universidad Nacional de San Luis Tesis de Maestría en ...personales.upv.es/prosso/resources/RosasMSc.pdf · SEMÁNTICO DE TEXTOS Lic. María Verónica Rosas Director: Dr. Paolo Rosso,

Algoritmo de Lesk 53

de su ventana de contexto. La nueva propuesta sugiere que todas las palabras en

la ventana de contexto sean desambiguadas simultáneamente en un solo paso para

obtener la mejor combinación entre todas las palabras y no sólo para la palabra

elegida, dando un puntaje mayor al solapamiento de glosas con mayor cantidad su-

perpuestas de palabras. Este enfoque se referencia como �global� para diferenciarlo

del �local� que denota al algoritmo original. El algoritmo completo está descripto en

[8].

Por ejemplo, si se tienen tres palabras en la ventana de contexto: sentence, bench y

o�ender con las siguientes glosas para los diferentes signi�cados de cada palabra:

gloss(sentence#n#1) = a string of words satisfying the grammatical rules of a language

gloss(sentence#n#2) = the �nal judgment of guilty in criminal cases and the punishment

that is imposed

gloss(bench#n#1) = a long seat for more than one person

gloss(bench#n#2) = persons who hear cases in a court of law

gloss(o�ender#n#1) = a person who transgresses law

Surgen de esta forma las siguientes combinaciones:

Combination 1: sentence#n#1 y bench#n#1 y o�ender#n#1

Combination 2: sentence#n#1 y bench#n#2 y o�ender#n#1

Combination 3: sentence#n#2 y bench#n#1 y o�ender#n#1

Combination 4: sentence#n#2 y bench#n#2 y o�ender#n#1

Para cada combinación se pueden formar 3 pares de signi�cados a comparar. En las

Figuras 5.1, 5.2 y 5.3 se muestran los pares formados por la combinación número 4.

En todas las �guras se usa la siguiente notación: un óvalo para representar cada syn-

set conteniendo en su interior los miembros del synset y la glosa que está delimitada

con comillas doble, teniendo en cuenta que cuando existen dos o más relaciones de

hiperonimia o hiponimia los miembros del synset son concatenados por un punto y

coma y las glosas unidas por un punto, las �echas punteadas representan cada com-

paración entre glosas y las palabras resaltadas en negrita son las que forman parte de

la superposición. Mientras que para las palabras sentence y o�ender se tienen hiper-

ónimos e hipónimos, para bench sólo se obtuvieron hiperónimos. En estas �guras se

aplica un esquema heterogéneo de la selección de glosas donde cada comparación es

Page 68: Universidad Nacional de San Luis Tesis de Maestría en ...personales.upv.es/prosso/resources/RosasMSc.pdf · SEMÁNTICO DE TEXTOS Lic. María Verónica Rosas Director: Dr. Paolo Rosso,

Capítulo 5. WSD basado en conocimiento 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 sólo dos

glosas porque no tiene hipónimos). De la misma manera, las glosas asociadas con

o�ender#n#1 son comparadas a las vinculadas con sentence#n#2 y con las de

bench#n#2.

Figura 5.1: Comparación del primer par (adaptado de [8])

Figura 5.2: Comparación del segundo par (adaptado de [8])

En base a la medida de puntuación asignada por el algoritmo de Lesk Mejorado y

teniendo en cuenta la Figura 5.1 se puede observar una superposición de tres palabras

(�court of law �) y una de una palabra (�case�) que produce un puntaje de 32+12 = 10

Page 69: Universidad Nacional de San Luis Tesis de Maestría en ...personales.upv.es/prosso/resources/RosasMSc.pdf · SEMÁNTICO DE TEXTOS Lic. María Verónica Rosas Director: Dr. Paolo Rosso,

Sistema CIAOSENSO 55

Figura 5.3: Comparación del tercer par (adaptado de [8])

para el par de glosas gloss(hype(sentence#n#2)) y gloss(bench#n#2 ). Los valores

para los pares restantes son mostrados en la Tabla 5.2 y luego sumados entre sí

de acuerdo a cada combinación para calcular el puntaje total. La combinación de

synsets con la cali�cación más alta se selecciona como la más apropiada para las

palabras en la ventana de contexto. En este ejemplo, a partir del valor total en la

Tabla 5.2 y los datos calculados en [9] para las otras tres combinaciones posibles,

se determina a sentence#n#2, bench#n#2 y o�ender#n#1 como la combinación

más conveniente teniendo como ventana de contexto las palabras sentence, bench y

o�ender.

5.3. Sistema CIAOSENSO

Un nuevo modelo de WSD basado en el concepto de densidad conceptual fue intro-

ducido por Rosso, Masulli y Buscaldi en [96]. En este caso, la Densidad Conceptual

(DC) se determina como la medida de correlación entre el sentido de una palabra

y su contexto, está basada en la distancia conceptual que constituye la longitud de

camino más corto que conecta dos synsets en la taxonomía que utiliza WordNet.

El método utiliza las relaciones jerárquicas de hiperonimia e hiponimia presentes

en WordNet, es automático y no necesita proceso de entrenamiento. Cada jerarquía

conceptual en WordNet puede verse como un árbol donde cada nodo es un synset

Page 70: Universidad Nacional de San Luis Tesis de Maestría en ...personales.upv.es/prosso/resources/RosasMSc.pdf · SEMÁNTICO DE TEXTOS Lic. María Verónica Rosas Director: Dr. Paolo Rosso,

Capítulo 5. WSD basado en conocimiento 56

Primera glosa Segunda Glosa Superposición Puntaje

hype(sentence#n#2) bench#n#2 court of law, case 10

sentence#n#2 bench#n#2 cases 1

hype(sentence#n#2) o�ender#n#1 law 1

sentence#n#2 hypo(o�ender#n#1) criminal 1

hype(bench#n#2) hype(o�ender#n#1) person 1

hype(bench#n#2) o�ender#n#1 person 1

hype(bench#n#2) hypo(o�ender#n#1) person 1

bench#n#2 hype(o�ender#n#1) person 1

bench#n#2 o�ender#n#1 person, law 2

bench#n#2 hypo(o�ender#n#1) person 1

Puntaje para la combinación 4 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 signi�cados) cada uno de

estos cae en una diferente subjerarquía (o aglomeración) cada una conteniendo uno

de los sentidos.

En [2] se de�ne la distancia conceptual con la siguiente fórmula:

DC(c,m) =

∑m−1i=0 nhypi∑h−1i=0 nhyp

i(5.1)

donde c es el synset raíz de la subjerarquía, m el número de sentidos de las palabras

a desambiguar, h la altura de la subjerarquía y nhyp el número medio de hipónimos

por cada nodo (synset) de la subjeraquía. La Figura 5.4 representa una aglomeración

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 ejempli�ca con la Figura

5.5.

En [96] se introduce una variante de la ecuación 5.1 que tiene en cuenta espe-

cialmente el número de synsets relevantes con respecto a los demás synsets en la

aglomeración. La nueva fórmula 5.2 mide la distancia conceptual entre el númeroM

de synsets relevantes dividido el número total nh de synsets de la aglomeración. En

el resultado obtenido no se tienen en cuenta los caminos que no conducen a algún

synset relevante.

Page 71: Universidad Nacional de San Luis Tesis de Maestría en ...personales.upv.es/prosso/resources/RosasMSc.pdf · SEMÁNTICO DE TEXTOS Lic. María Verónica Rosas Director: Dr. Paolo Rosso,

Sistema CIAOSENSO 57

Figura 5.4: Subjerarquía y synsets relevantes

DC(M,nh) =M

nh(5.2)

A pesar de las modi�caciones incorporadas a la ecuación 5.2, en ciertos experimentos

analizados en [96] no se determina el sentido correcto de la palabra debido a que el

contexto de la palabra a desambiguar no resulta ser lo bastante signi�cativo. Por

lo tanto, se introduce un nuevo cambio a la fórmula agregando la variable f (valor

entero) que determina la frecuencia de cada sentido proporcionada por WordNet

(detallado en la sección 5.1).

DC(M,nh, f) = Mα(M

nh)logf (5.3)

A modo de ejemplo, en la Figura 5.5 se muestran las subjerarquías de WordNet en

la desambiguación de brake en la frase: �Brakes howled and horn blared furiously,

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 están gra�cados con línea

punteada. Teniendo en cuenta la ecuación 5.3 los cálculos para cada subjerarquía son

mostrados en la Tabla 5.3, donde se puede observar que el signi�cado perteneciente

al synset 1 es el más adecuado para brake según el método CIAOSENSO.

Page 72: Universidad Nacional de San Luis Tesis de Maestría en ...personales.upv.es/prosso/resources/RosasMSc.pdf · SEMÁNTICO DE TEXTOS Lic. María Verónica Rosas Director: Dr. Paolo Rosso,

Capítulo 5. WSD basado en conocimiento 58

Figura 5.5: Subjerarquías para la desambiguación de �brake� con CIAOSENSO

Synset (i) Mi nhi Ecuación (5.3)

1 9 21 90,1 * (9/21)log1= 1.24

2 1 1 1

3 1 1 1

4 1 5 10,1 * (1/5)log4= 0.07

Tabla 5.3: Cálculos para la Figura 5.5

Page 73: Universidad Nacional de San Luis Tesis de Maestría en ...personales.upv.es/prosso/resources/RosasMSc.pdf · SEMÁNTICO DE TEXTOS Lic. María Verónica Rosas Director: Dr. Paolo Rosso,

Capítulo 6

Aspectos de Ingeniería de Software

aplicados a PLN

�Los diseñadores de autos no reinventan la rueda cada vez que planean un nuevo modelo,

pero los ingenieros de software se encuentran a menudo produciendo repetidamente más

o menos la misma pieza de software en forma ligeramente diferente�

� Hamish Cunningham. PhD in Computer Science

Distintos trabajos en Ingeniería del Lenguaje, han realizado aportes interesantes al

tratar de solucionar el problema del escaso reuso e integración de componentes que en

general se puede observar en los desarrollos de PLN. Sin embargo, estos trabajos suelen

presentar la falencia de que el costo de entenderlos y usar sus abstracciones es más alto

que el costo estimado por el programador en desarrollarlos nuevamente desde cero. Un

problema adicional e igualmente importante es el hecho de que muchas de las arquitecturas

introducidas se han concentrado en modelos muy generales y poco �exibles para ciertos

problemas particulares de PLN. En este contexto, uno de los propósitos de esta tesis es

brindar un prototipo de marco de trabajo para el pre-procesado semántico de textos que

sea lo su�cientemente �exible para ser usado en experimentos similares a los realizados en

este trabajo, permitiendo además, la selección de diferentes algoritmos de desambiguación

y/o de etiquetado sintáctico.

El capítulo comienza con una descripción general de la IS y la IL, para luego detallar los

diferentes aspectos de la IS que generalmente no son tomados en cuenta por la comunidad

Page 74: Universidad Nacional de San Luis Tesis de Maestría en ...personales.upv.es/prosso/resources/RosasMSc.pdf · SEMÁNTICO DE TEXTOS Lic. María Verónica Rosas Director: Dr. Paolo Rosso,

Capítulo 6. Aspectos de Ingeniería de Software aplicados a PLN 60

de investigadores en el área del PLN [61]. Finalmente, se presentan las APIs utilizadas en

esta tesis junto con una descripción detallada de la propuesta implementada.

6.1. Conceptos introductorios

Todo software está compuesto por programas, datos y documentos. El software di-

señado y construído por los ingenieros de sistemas, tiene características propias que lo

distingue de los demás productos que el hombre pueda construir, debido a que:

El software se desarrolla, no se fabrica. La contrucción de software de computadora

supone un diseño y enfoque especial que no puede compararse con la elaboración

clásica de cualquier producto físico.

El software no se �estropea�. El software sufre cambios (mantenimiento) que pueden

producir nuevos defectos que provocan un deterioro del mismo. Cada fallo en el

software indica un error en el diseño o en la traducción de éste a código ejecutable.

El mantenimiento del software es, por lo tanto, bastante complejo.

La mayoría del software se construye a medida. En este sentido, la disciplina del

software está evolucionando al reutilizar o ensamblar componentes, una tarea propia

del proceso ingenieril que debería ser aplicada en este contexto. Dichos componentes

se crean para que el ingeniero pueda concentrarse en cuestiones innovadoras de un

diseño.

El contenido y el determinismo de la información son factores fundamentales para

determinar la naturaleza de una aplicación. El contenido se re�ere al signi�cado y a la

forma de la información de entrada y salida. Mientras que el determinismo está relacionado

a la predictibilidad del orden y el tiempo de llegada de los datos utilizados. La construcción

de sistemas de software de forma sistemática y apropiados a cada situación es una tarea

difícil, por lo que el riesgo de fallo en la mayoría de los sistemas suele ser muy alto [87].

Se de�ne a la ingeniería como �un proceso de construcción que debe tener como objetivo

la conformidad del producto resultante a criterios de adecuación bien especi�cados bajo

restricciones sobre la naturaleza propia del proceso� [87]. Tanto el proceso de construcción

como sus salidas deben ser medibles y predecibles. La IS es una disciplina que integra el

Page 75: Universidad Nacional de San Luis Tesis de Maestría en ...personales.upv.es/prosso/resources/RosasMSc.pdf · SEMÁNTICO DE TEXTOS Lic. María Verónica Rosas Director: Dr. Paolo Rosso,

Conceptos introductorios 61

proceso, los métodos y las herramientas para el desarrollo de software de computadora de

alta calidad de manera rápida, simple y a bajo costo tratando de mitigar mediante este

enfoque disciplinado el riesgo inherente de los diferentes proyectos de software. Para tal

�n, un número de diferentes modelos de proceso para la IS han sido propuestos a lo largo

del tiempo, como por ejemplo, el modelo en cascada y el modelo en espiral. Todos estos

modelos exhiben fortalezas y debilidades, adaptándose a distintos tipos de desarrollos. En

este contexto, todos se componen de una serie de fases genéricas en común:

Fase de de�nición: se enfoca en determinar lo que debe hacer el sistema, la infor-

mación a ser procesada, la función y desempeño deseado y el comportamiento que

se espera.

Fase de desarrollo: corresponde a un proceso de múltiples pasos que se enfoca en

cuatro atributos de un programa: estructura de datos, arquitectura de software,

representaciones de la interface y detalle de los algoritmos. El proceso de diseño

traduce los requerimientos a una nueva representación del software donde es factible

un proceso de evaluación de la calidad del sistema.

Fase de soporte: se evalúan los diferentes cambios a realizar, ya sea, debido a errores

encontrados, adaptaciones a cambios en el entorno externo o mejoras requeridas por

el cliente.

6.1.1. Ingeniería del Lenguaje Natural

La IL incluye el desarrollo de software, por lo tanto se la puede considerar como parte

del área de la IS [87]. Así mismo, el tópico principal de estos sistemas es el procesamiento

del lenguaje humano por lo que también es apropiado vincular a la IL con el área del

PLN. Por lo tanto, una de�nición acertada, clara y completa sería la expuesta en [21] que

detalla: �IL es una de las ramas de la IS que se enfoca en la construcción de sistemas de

software vinculados al PLN para algo más que sólo modelar el lenguaje en sí mismo y que

sea útil no sólo a los lingüistas.�.

Un conjunto de factores fueron determinantes en dar origen a la IL:

la demanda de aplicaciones para la manipulación de textos electrónicos, los cuales

han crecido exponencialmente en volúmen y disponibilidad.

Page 76: Universidad Nacional de San Luis Tesis de Maestría en ...personales.upv.es/prosso/resources/RosasMSc.pdf · SEMÁNTICO DE TEXTOS Lic. María Verónica Rosas Director: Dr. Paolo Rosso,

Capítulo 6. Aspectos de Ingeniería de Software aplicados a PLN 62

los avances en el hardware tales como mayor la velocidad de procesamiento, capa-

cidad de memoria y de almacenamiento.

la disponibilidad de recursos relacionados al lenguaje natural con un importante

tamaño de datos (diccionarios, tesauros, ontologías, etc.).

los altos niveles de precisión logrados en los experimentos vinculados al PLN.

Por lo tanto, se puede identi�car a la IL como la aplicación de la ciencia del lenguaje a la

solución de tareas prácticas.

A los problemas básicos que afectan a todo desarrollo de �software convencional�,

se deben añadir otras complejidades cuando se re�ere a la implementación de sistemas

vinculados al PLN, tales como: exactitud, e�ciencia, productividad, robustez, �exibilidad,

uso de múltiples lenguajes y escalabilidad, entre otros.

Exactitud : las técnicas del PLN no pueden garantizar que se encontrarán 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.

E�ciencia: la obtención de resultados (supuestamente correctos) es decisivo en el

desarrollo de los sistemas PLN. Por otro lado, las mejores políticas de diseño y

selección de tecnología solamente representan un detalle más de implementación y

no son cruciales.

Productividad : el tiempo es un producto muy escaso en todo desarrollo y por lo

tanto el factor que más in�uye en la productividad de un sistema. La pérdida de

productividad se puede deber a diferentes causas como son el desconocimiento de

la existencia de recursos, la descon�anza en los componentes que no son propios, o

la imposibilidad de instalar e integrar el software existente debido a la poca docu-

mentación de los mismos.

Robustez : en ingeniería, la robustez se determina como la habilidad de los dispo-

sitivos para trabajar aun bajo condiciones variantes. En el área del lenguaje, los

términos robustez y portabilidad tienen un signi�cado más limitado, ya que ambos

son usados para describir la viabilidad de que un método lingüístico sea aplicado a

diferentes tipos de textos o dominios (en términos de precision/recall vistos en el

Capítulo 3).

Page 77: Universidad Nacional de San Luis Tesis de Maestría en ...personales.upv.es/prosso/resources/RosasMSc.pdf · SEMÁNTICO DE TEXTOS Lic. María Verónica Rosas Director: Dr. Paolo Rosso,

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 más �exibles posible.

Múltiples lenguajes : en el mundo globalizado, los usarios necesitan sistemas capa-

ces de reconocer y trabajar con múltiples lenguajes. Las aplicaciones de PLN son

complejas debido a que ellas se valen de modelos estadísticos y conjuntos de reglas

gramaticales y léxicas que son especí�cos de cada idioma. De esta manera, en la ma-

yoría de los sistemas PLN es necesario crear nuevos componentes para cada idioma

diferente.

Escalabilidad : frecuentemente las partes de un sistema PLN dependen de otros com-

ponentes y la demanda de recursos en general es bastante alta. Los recursos de

memoria y tiempo no son reportados en PLN con anticipación, a diferencia de los

sistemas en general que plani�can con antelación los recursos necesarios.

Algunas de las falencias en lo que respecta a sistemas de PLN, tales como robustez,

productividad (a través del reuso de componentes) y �exibilidad, han sido y son temas de

relevancia en el ámbito ingenieril. Tanto es así que cada vez más proyectos y programas

de investigación están abocados a buscar posibles soluciones a algunos de estos problemas

o por lo menos tratar de atenuarlos [61]. Por lo tanto, cuando se hace mención al reuso

de componentes en PLN en realidad se está trabajando en un típico problema de inte-

gración [21, 121] que puede ser superado aplicando conceptos básicos de la IS como son

las interfaces de programación de aplicaciones (APIs) o los marcos de trabajo (en inglés

frameworks).

6.1.2. Reuso de componentes

A partir de lo expuesto en la sección 6.1.1, y sin entrar en cuestiones complejas del

dominio del PLN, se concluye que la baja reutilización de componentes resulta uno de los

problemas más complejos a solucionar. Esto se debe a que la reutilización en este caso

presenta una doble limitación, necesitando no sólo intercambiar datos usando el mismo

formato e interpretación, sino que también se necesita realizar la comunicación entre com-

ponentes que pueden estar escritos en distintos lenguajes e incluso ejecutar en diferentes

Page 78: Universidad Nacional de San Luis Tesis de Maestría en ...personales.upv.es/prosso/resources/RosasMSc.pdf · SEMÁNTICO DE TEXTOS Lic. María Verónica Rosas Director: Dr. Paolo Rosso,

Capítulo 6. Aspectos de Ingeniería de Software aplicados a PLN 64

plataformas. El concepto de reutilizar en nuevos sistemas componentes desarrollados pre-

viamente 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: reutilización de datos para entrenamiento o como recursos internos de cono-

cimiento y reutilización de código (o algoritmos) usados en el procesamiento de dichos

datos.

En los últimos años ha surgido un gran interés en la reutilización de repositorios de

datos, algunos de los cuales están disponibles públicamente para investigación, como por

ejemplo:

El diccionario Longman de Inglés Contemporáneo (LDOCE por sus siglas en inglés),

http://www.ldoceonline.com/

Wordnet, http://wordnet.princeton.edu/ [76]

El diccionario EDR, http://www2.nict.go.jp/r/r312/EDR/index.html [130]

El Consorcio de Datos Linguísticos (LDC por sus siglas en inglés), http://www.

ldc.upenn.edu/

La Asociación Europea de Recursos del Lenguaje (ELRA por sus siglas en inglés),

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 utiliza-

das en este trabajo [30, 59, 25]. Si bien el uso de colecciones estándar ha permitido hacer

comparable los resultados, en ocasiones el uso de sub-colecciones ha introducido proble-

mas según se muestra en [25]. En este sentido, a pesar de que existen aún inconvenientes

para resolver el reuso de datos, los avances superan notoriamente a la reutilización de

código. Una de las principales razones de que el porcentaje de reutilización algorítmica

sea bajo es la gran di�cultad que implica la integración, ya que los desarrolladores usan

diferentes lenguajes de programación, entornos obsoletos o diferentes paradigmas. Por lo

tanto, la reimplementación e integración causan la mayor pérdida de productividad.

Las dos formas de reutilización (de datos y de código) fueron tenidas en cuenta para

el desarrollo de este trabajo. En lo que respecta a la reutilización de fuentes de datos se

utilizó:

Page 79: Universidad Nacional de San Luis Tesis de Maestría en ...personales.upv.es/prosso/resources/RosasMSc.pdf · SEMÁNTICO DE TEXTOS Lic. María Verónica Rosas Director: Dr. Paolo Rosso,

Conceptos introductorios 65

la ontologíaWordNet que fue usada en diferentes tareas del procesamiento de textos

(ver Figura 6.2). Como se explicó en la sección 4.3 ésta es una de las bases de datos

léxica más utilizada en PLN.

los conjuntos de colecciones de textos que serán descriptos en la sección 7.1 y son

ampliamente usados en el área de PLN.

Aparentemente, la utilización de las anteriores fuentes de datos no representan un

problema. No obstante, hay que tener en cuenta que es necesario contar con una interface

para acceder a ellos desde el sistema desarrollado.

En el aspecto de la reutilización algorítmica, se trabajó sobre:

Una API para interactuar con WordNet. En http://wordnet.princeton.edu/

wordnet/related-projects/#local se mencionan algunas de las APIs más usa-

das para acceder a WordNet disponibles en distintos lenguajes de programación y

entornos. En la sección 6.1.3 se describen las APIs analizadas y la seleccionada para

ser usada en este trabajo.

Distintos algoritmos de desambiguación, para seleccionar el sentido más apropiado

de una palabra especí�ca en un contexto determinado.

1. CIAOSENSO (descripto en la sección 5.3), al ser un algoritmo desarrollado

en C++ se usó la API que permite la ejecución de componentes externos a la

Maquina Virtual Java para poder interactuar con este sistema desde Java.

2. Lesk Mejorado (descripto en la sección 5.2.1), se tradujo a lenguaje Java la

versión desarrollada en C# en http://www.codeproject.com/KB/string/

semanticsimilaritywordnet.aspx. WordNet es utilizado en este algoritmo.

Se podría haber dejado en C# y ser invocado desde Java, pero representa un

aporte más la implementación realizada.

3. Método heurístico del sentido de más frecuente (descripto en la sección 5.1), es

uno de los algoritmos más sencillos, por lo que directamente fue desarrollado

en Java.

Distintos algoritmos de etiquetado sintáctico, que rotulan las palabras según su ca-

tegoría gramatical (noun, verb, adjective y adverb) para realizar la desambiguación

Page 80: Universidad Nacional de San Luis Tesis de Maestría en ...personales.upv.es/prosso/resources/RosasMSc.pdf · SEMÁNTICO DE TEXTOS Lic. María Verónica Rosas Director: Dr. Paolo Rosso,

Capítulo 6. Aspectos de Ingeniería de Software aplicados a PLN 66

semántica dependiendo de la etiqueta aplicada. Fue implementado el método más

simple que tiene en cuenta la frecuencia determinada por WordNet.

6.1.3. APIs para WordNet

Una API representa una interfaz de comunicación entre componentes de software. Se

trata de utilizar bibliotecas que ofrecen acceso a ciertos servicios desde procesos internos

y representan un método para conseguir abstracción en la programación, generalmente

entre los niveles o capas inferiores y los superiores del software. Uno de los principales ob-

jetivos de una API consiste en proporcionar un conjunto de funciones de uso general. De

esta forma, los programadores se bene�cian de las APIs haciendo uso de su funcionalidad,

evitándose el trabajo de programar todo desde el principio. Las APIs son abstractas, es

decir el software que proporciona una cierta API generalmente es llamado la implemen-

tación de dicha API . Al implementar una API se debe llegar a un cierto equilibrio entre

su potencia, simplicidad y pérdida de �exibilidad.

Como se menciona en la sección 4.3, WordNet es una base de datos léxica compuesta

por un conjunto de archivos que contienen la jerarquía de synsets de esta ontología.

Para acceder a estos archivos se necesita una interface de�nida en algún lenguaje de

programación que permita recuperar datos de los mismos. Existen interfaces disponi-

bles en lenguajes tale como: C#, Java, Haskell, Prolog, Perl, Python, entre otros [76].

A continuación, se mencionan algunas de las más importantes explicadas en detalle en [76]:

1. NET/C#:

François-Régis Chaumartin ha desarrollado un framework linguístico denomi-

nado Antelope .NET. Éste usa y extiende WordNet incluyendo varios etique-

tadores y parsers para su versión francesa. Antelope trabaja bajo Windows o

Linux, y es gratuito para investigación y educación.

Troy Simpson ha desarrollado una interface C# para WordNet usando la ver-

sión 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 código fue traducido

Page 81: Universidad Nacional de San Luis Tesis de Maestría en ...personales.upv.es/prosso/resources/RosasMSc.pdf · SEMÁNTICO DE TEXTOS Lic. María Verónica Rosas Director: Dr. Paolo Rosso,

Conceptos introductorios 67

desde la versión 2.1. Puede ser descargado como código fuente o binario para

Windows.

2. Java:

La API Java para búsqueda en WordNet (JAWS las siglas en inglés para Java

API for WordNet Searching) es una interface de alto rendimiento, escrita en-

teramente 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 versión de interface Ja-

va/WAP que permite navegar WordNet desde el teléfono celular.

Bernard Bou ha escrito WNJN (compatible con la librería 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 código binario (escrito en C++)

y dispone funcionalidad para la consulta y la búsqueda.

JWNL (las siglas en inglés para Java WordNet Library) escrita por John Di-

dion, 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

código nativo, por lo que es totalmente portátil y todo su código 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 versión 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 código

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 documentación que

las acompañe. De las mencionadas anteriormente, la mayoría carecen de ésta, es muy

complicada o demasiado extensa. Con respecto a aquellas basadas en código nativo y

accesibles a través de JNI, una de las falencias es su baja portabilidad y di�cultad de

instalación.

Una de las APIs WordNet que tiene una documentación útil, con ejemplos de cómo se

debe usar y funcionalidades añadidas no incluidas en la distribución WordNet es la desa-

rrollada por Troy Simpson en C#. Se puede encontrar una documentación extensa en

Page 82: Universidad Nacional de San Luis Tesis de Maestría en ...personales.upv.es/prosso/resources/RosasMSc.pdf · SEMÁNTICO DE TEXTOS Lic. María Verónica Rosas Director: Dr. Paolo Rosso,

Capítulo 6. Aspectos de Ingeniería de Software aplicados a PLN 68

http://www.codeproject.com/KB/string/semanticsimilaritywordnet.aspx (donde

se hace referencia al algoritmo de Lesk adaptado) y http://www.ebswift.com/Desktop/

WordNet/. Las funcionalidades de búsqueda añadidas en esta distribución incluyen carac-

teres comodines, expresiones regulares y anagramas. Estas funcionalidades generalmente

se encuentran en productos comerciales, pero aquí están disponibles en código abierto. Por

lo mencionado anteriormente, y después de investigar algunas de las APIs mencionadas,

se migró la versión desarrollada por Troy Simpson en .NET a Java.

6.2. Trabajos Relacionados en Ingeniería del Lenguaje

Durante la investigación bibliográ�ca se encontró gran cantidad de documentación de

sistemas, prototipos y propuestas de entornos de integración y herramientas vinculadas a

PLN desarrollados en diferentes lenguajes (C, C++, C#, Perl, Python y Java) orienta-

dos a diferentes plataformas (distintas versiones de Linux o Windows). Muchas de estas

propuestas disponibles tienen la particularidad de ser muy completas pero a la vez com-

plejas y poco �exibles en determinadas situaciones. La mayoría de los sistemas de PLN

desarrollados hasta el momento tienen arquitecturas similares, cada plataforma permite

encadenar y combinar los diferentes componentes de análisis de acuerdo a una jerarquía

de ejecución. En general, los sistemas permiten crear �ujos lineales de módulos donde la

salida de uno es la entrada del siguiente. Algunos ejemplos de estos sistemas son:

GATE (las siglas en inglés para General Architecture for Text Engineering): esta

arquitectura desarrollada para la tarea de Extracción de la Información permite

construir sistemas PLN a partir de componentes previamente implementados. Pro-

porciona un núcleo con los módulos básicos de análisis del lenguaje (morfológico y

sintáctico) permitiendo el acoplamiento de nuevos componentes. Está implementa-

do en Java por lo que la integración de componentes se realiza considerando a todo

recurso como una clase Java [22, 20] (en la sección 6.5 se verá más en detalle este

sistema).

ALEP (las siglas en inglés 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

Page 83: Universidad Nacional de San Luis Tesis de Maestría en ...personales.upv.es/prosso/resources/RosasMSc.pdf · SEMÁNTICO DE TEXTOS Lic. María Verónica Rosas Director: Dr. Paolo Rosso,

Trabajos Relacionados en Ingeniería del Lenguaje 69

entorno de desarrollo abierto, versátil y de uso general. El sistema ofrece un forma-

lismo basado en la uni�cación y una máquina lingüística con análisis, generación y

transferencia de componentes. Está implementado en su mayoría en lenguaje Prolog

[132].

NLTK (las siglas en inglés para Natural Language Programming Toolkit): es un

sistema que provee herramientas básicas para la manipulación de datos y para la

realización de tareas vinculadas al PLN. Debido a sus características, es ampliamente

usado con un enfoque pedagógico en el ámbito académico, permitiendo construir

fácilmente sistemas PLN usando Python [11].

TEXTRACT (las siglas en inglés 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 básicas de PLN (tokenizer, PoSTagger, etc). Estos plugins comparten un

repositorio asociado a cada documento, a través del cual se comunican [82].

En la actualidad, los nuevos sistemas de PLN continúan implementando la misma ar-

quitectura pero con mayor �exibilidad y simplicidad para la integración de nuevos módulos

de análisis.

Los experimentos previos al desarrollo del framework, fueron desarrollados por medio

de scripts que complicaban las tareas de llevar una documentación de lo implementado,

determinar el orden de ejecución o precisar cual era la versión correcta de cada módulo.

Por lo tanto, la reproducción exacta de un experimento anterior era muy difícil de obte-

ner o casi imposible. Otro aspecto muy importante que surgió durante el desarrollo del

trabajo fue que, una integración de caja negra1 con componentes de software orientados

al campo de la lingüística resulta una tarea muy difícil debido a que si la técnica interna

es desconocida, el componente puede fallar. Finalmente, otro problema a resolver es la

presencia de subtareas o algoritmos que están desarrollados en diferentes paradigmas.

En este capítulo se plantea la propuesta de un marco de trabajo de fácil uso y extensi-

bilidad que permita uni�car las diferentes tecnologías. El lenguaje Java fue escogido para

la implementación del framework debido a su portabilidad y posibilidad de interacción

con diferentes sistemas, no necesariamente desarrollados en este mismo lenguaje.

1Concepto que referencia a los componentes lingüísticos cuyo detalle de implementación interna no es

conocido [61].

Page 84: Universidad Nacional de San Luis Tesis de Maestría en ...personales.upv.es/prosso/resources/RosasMSc.pdf · SEMÁNTICO DE TEXTOS Lic. María Verónica Rosas Director: Dr. Paolo Rosso,

Capítulo 6. Aspectos de Ingeniería de Software aplicados a PLN 70

6.3. Descripción del framework desarrollado

Un marco de trabajo (framework) es un diseño reusable para todo o parte de un

sistema de software. Todo framework está constituido por �un conjunto de bloques de

construcción de software ya desarrollados, que los programadores pueden usar, extender,

o adaptar a soluciones especí�cas� [50]. En un lenguaje más técnico, un framework expone

una colección de clases individuales que proveen un conjunto de servicios para un dominio

particular y que los clientes pueden usar o adaptar [80]. En otras palabras, es equivalente

a un librería de clases que han sido diseñadas para un cierto dominio dotadas de una

documentación que incluye detalles precisos de la API exportada junto con ejemplos de

como ser usada en contextos de problemas particulares. Dicha librería puede ser adaptada

y/o extendida para solucionar problemas en este dominio. El concepto de framework se

basa en el desarrollo basado en componentes [109]. Uno de los bene�cios principales de

los frameworks es la reusabilidad de código. Mediante la provisión de una infraestructura

estándar, se decrementa la cantidad de código que el desarrollador tiene que escribir,

testear y depurar. Esto también puede bajar los costos de mantenimiento y acelerar la

puesta en producción de una aplicación o la puesta en ejecución de experimentos por

parte de un investigador en el dominio.

En este trabajo se propone un framework sencillo, orientado al dominio PLN que

brinda interfaces y clases abstractas básicas para las tareas involucradas en el pre-

procesamiento semántico para la obtención de los vectores que serán utilizados en la

representación de los documentos [33]. Los componentes abstractos deben ser implemen-

tados por las clases que van a usar los servicios que brinda el framework. Siguiendo esta

convención, dichas clases pueden luego ser manipuladas de forma predecible por entornos

de desarrollo y aplicaciones.

En [80] se menciona un aspecto a tener en cuenta sobre el diseño y creación de un marco

de trabajo, se advierte que inclusive el framework más �elegantemente� diseñado nunca va

a ser usado a menos que el costo de entenderlo y usar sus abstracciones sea más bajo que el

costo estimado por el programador en desarrollarlo nuevamente de cero. La ganancia real

se obtiene cuando las clases y los mecanismos son reutilizados a menudo, indicando que

otros obtienen bene�cios del desarrollo, permitiendo que el desarrollador/investigador se

enfoque en la parte particular del problema sin tener que lidiar con cuestiones adyacentes

al mismo.

Page 85: Universidad Nacional de San Luis Tesis de Maestría en ...personales.upv.es/prosso/resources/RosasMSc.pdf · SEMÁNTICO DE TEXTOS Lic. María Verónica Rosas Director: Dr. Paolo Rosso,

Descripción del framework desarrollado 71

El framework desarrollado tiene un arquitectura simple y modular. La tarea de pre-

procesamiento de documentos para su posterior clasi�cación fue dividida en un número de

subtareas más pequeñas implementadas como módulos separados. La Figura 6.1 muestra

un diagrama general simpli�cado del sistema desarrollado mediante un diagrama de clases.

Se muestra un conjunto de clases básicas que realizan distintas tareas de pre-procesado

de documentos, entre ellas hay clases abstractas tales como WSD que luego son imple-

mentadas de acuerdo al algoritmo especí�co utilizado en cada caso. Por ejemplo, para

implementar el algoritmo de desambiguación llamado �AdaptedLesk � sólo se debe heredar

de la clase abstracta WSD e implementar el método disambiguate(String[] words) según

la lógica propia de dicho algoritmo sin tener que preocuparse por cuestiones de entrada y

salida con la etapa anterior y posterior de este módulo.

Figura 6.1: Estructura del framework

Para la API de Wordnet sólo se detallan las clases principales Lexicon y WNDB con

algunos de sus métodos más importantes. Los componentes del diagrama de clases se

describen a continuación obviando los detalles de sus atributos y métodos:

Page 86: Universidad Nacional de San Luis Tesis de Maestría en ...personales.upv.es/prosso/resources/RosasMSc.pdf · SEMÁNTICO DE TEXTOS Lic. María Verónica Rosas Director: Dr. Paolo Rosso,

Capítulo 6. Aspectos de Ingeniería de Software aplicados a PLN 72

InOutProcess, provee funcionalidad de entrada y salida de archivos para el procesa-

miento de los diferentes documentos de una colección.

StopWordsHandler, provee métodos para determinar si una palabra pertenece a la

lista de palabras de corte (stopword).

POSTagger, representa la clase abstracta que brinda el etiquetado sintáctico de cada

palabra.

WSD, representa la clase abstracta que realiza la tarea de desambiguación del sentido

de las palabras.

GetSynsetO�set, obtiene el identi�cador único en WordNet del synset (o�set) que

fue determinado por el algoritmo de desambiguación.

TermsPlusConcepts, forma el vector de términos más conceptos, para la representa-

ción �términos+conceptos� usada en la sección 7.2 para los experimentos.

Ejemplos de la implementación de las clases abstractas nombradas anteriormente son:

MFWN que implementa la clase abstracta POSTagger basándose en la frecuencia

de WordNet para determinar la categoría gramatical.

Brill, que implementa la clase abstracta POSTagger con el algoritmo de etiquetado

sintáctico desarrollado por Eric Brill que se basa en el aprendizaje de transforma-

ciones que deben corregir ciertos errores [13]. Este algoritmo no fue implementado

como parte del trabajo pero es factible y sencillo de ser incorporado.

CiaoSenso, que implementa la clase abstracta WSD con el algoritmo CIAOSENSO

que se basa en medidas de similitud semántica extraídas a través de redes semánticas

(ver sección 5.3).

EnhancedLesk, que implementa la clase abstracta WSD con el algoritmo de Lesk

Mejorado una variante del algoritmo original introducido por Michael Lesk (ver

sección 5.2).

MFS, que implementa la clase abstracta WSD con el algoritmo heurístico del sentido

más frecuente (ver sección 5.1).

Page 87: Universidad Nacional de San Luis Tesis de Maestría en ...personales.upv.es/prosso/resources/RosasMSc.pdf · SEMÁNTICO DE TEXTOS Lic. María Verónica Rosas Director: Dr. Paolo Rosso,

Descripción del framework desarrollado 73

La Figura 6.2 muestra las diferentes subtareas que conforman el proceso. Cada sub-

tarea acepta datos de la etapa previa, aplica una transformación a los datos y los pasa

procesados a la próxima etapa. En esta �gura, se muestra cada subtarea vinculada a la

clase abstracta de la que hereda (esto será explicado en detalle en la sección 7.2).

El framework comprende un grupo de clases programadas en lenguaje Java. Los obje-

tos de estas clases pueden ser instanciados en programas de usuario, los métodos pueden

ser invocados sobre estos objetos e inclusive se pueden heredar las clases para brindar

una mayor funcionalidad a las ya existentes. Un usuario podría crear sus propios mó-

dulos (algoritmos) para ejecutar cualquiera de las subtareas mencionadas anteriormente,

siempre y cuando los módulos adhieran al protocolo especi�cado por la arquitectura. Por

ejemplo, para implementar el algoritmo de etiquetado sintáctico (POS-tagging) llamado

�Brill tagger � [13] sólo se debe heredar de la clase abstracta PosTagger e implementar

únicamente el método posTag(String[] words) donde debe desarrollarse la lógica propia de

dicho algoritmo sin tener que preocuparse por cuestiones de entrada y salida con la etapa

anterior y posterior de este módulo.

De esta manera, se podrían incluir diversos algoritmos para las diferentes tareas pu-

diendo llegar a contar con un conjunto de módulos que se pueden combinar de formas

variadas para la creación y ejecución de experimentos de forma más sencilla sin tener que

desarrollar de cero muchas cuestiones que estarían ya solucionadas en el framework. El

framework brinda un acceso más sencillo a los archivos que se utilizan en los experimentos,

un acceso uni�cado a la base de datos léxica WordNet, algoritmo de stemming (selección

de la raíz o stem de la palabra) y de etiquetado sintáctico (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 básica de acceso a recursos externos (como los archivos

de WordNet) ya estaría solucionada mediante las clases superiores permitiendo concen-

trarse, exclusivamente, en la lógica de la solución del problema sin tener que preocuparse

por lo demás.

Por otro lado, la posibilidad de combinar los diferentes algoritmos en las distintas

etapas es algo que hasta el momento se hacía manualmente, por lo que se decidió extender

el trabajo implementando una interfaz grá�ca que facilite al usuario la experimentación

con el framework. En el Apéndice C se describe en forma detallada la interfaz grá�ca

desarrollada para tal �n, denominado Pre.Se.Do., especi�cando la tecnología usada para

su implementación, las distintas tareas que incluye y los pasos para su uso.

Page 88: Universidad Nacional de San Luis Tesis de Maestría en ...personales.upv.es/prosso/resources/RosasMSc.pdf · SEMÁNTICO DE TEXTOS Lic. María Verónica Rosas Director: Dr. Paolo Rosso,

Capítulo 6. Aspectos de Ingeniería de Software aplicados a PLN 74

Figura 6.2: Diagrama de tareas e interacción de clases

6.4. Experiencias en el uso del framework

El framework propuesto en este trabajo, fue inicialmente utilizado en tareas de CT

cortos [95], en estudios que incluyeron 7 colecciones de textos cortos, y el uso de 5 de

los métodos más difundidos de categorización, 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 signi�cativa el de-

sarrollo del trabajo experimental. Las razones de estas a�rmaciones están fundamentadas

en las características particulares que surgen al incorporar información semántica en tareas

de CT. En estos casos, al igual que en otros dominios de PLN que utilizan información

Page 89: Universidad Nacional de San Luis Tesis de Maestría en ...personales.upv.es/prosso/resources/RosasMSc.pdf · SEMÁNTICO DE TEXTOS Lic. María Verónica Rosas Director: Dr. Paolo Rosso,

Plugin semántico para GATE 75

semántica, la efectividad de incorporar los conceptos en la representación de documentos,

depende fuertemente del tipo de codi�cación usada en los documentos, del algoritmo de

clasi�cación, del método de WSD y, fundamentalmente, de las características particulares

de los documentos de las distintas colecciones. En este sentido, el uso del framework

permitió un rápido desarrollo de las distintas instancias experimentales, simpli�cando la

generación de las combinaciones de parámetros y métodos para detectar aquellas que

resultaran más efectivas en cada caso.

La experiencia lograda en este primer trabajo con el framework, permitió en un plazo

muy breve analizar si el buen desempeño en tareas de clustering de textos cortos logrado

por el algoritmo iterativo ITSA? [31], también se veri�caba en aquellos casos donde se in-

corporaba información semántica a la representación de los documentos. En este contexto,

los resultados obtenidos en los experimentos realizados en [94] son altamente prometedo-

res respecto a la efectividad de este enfoque, obteniéndose valores muy competitivos en

la mayoría de las instancias experimentales, incluso en algunos casos, alcanzándose los

mejores resultados comparados a los reportados en la literatura especí�ca del área.

Si bien los estudios citados previamente se encuadran claramente como una investiga-

ción cientí�ca, varias de las colecciones utilizadas en estos casos corresponden a documen-

tos originales del mundo real obtenidos de repositorios públicos de empresas. Este es el

caso, por ejemplo, de las sub-colecciones del corpus de cables de noticias Reuters-21578,

donde el enfoque semántico utilizado reportó valores altamente prometedores. Estos resul-

tados, sumados a la simplicidad en el uso del framework, sugiere que la utilización efectiva

del mismo en problemas empresariales concretos del mundo real (como la categorización

automática de noticias) es una área altamente factible a ser abordada.

6.5. Plugin semántico para GATE

Teniendo en cuenta la cita de Cunningham con la cual comienza este capítulo, se deci-

dió incorporar uno de los módulos semánticos desarrollados en este trabajo como recurso

de procesamiento en el GATE. Por otra parte, para continuar con la analogía y defendien-

do la propuesta de este trabajo, es posible considerar al framework implementado como

un tipo de �rueda especial� fabricada y adaptada para un �vehículo� con características

particulares.

Page 90: Universidad Nacional de San Luis Tesis de Maestría en ...personales.upv.es/prosso/resources/RosasMSc.pdf · SEMÁNTICO DE TEXTOS Lic. María Verónica Rosas Director: Dr. Paolo Rosso,

Capítulo 6. Aspectos de Ingeniería de Software aplicados a PLN 76

6.5.1. Modelo de componentes de GATE

GATE es una herramienta de uso libre y orientada al desarrollo de aplicaciones para

el Procesamiento del Lenguaje Natural. GATE está compuesto por una arquitectura, un

framework y un ambiente de desarrollo. En este contexto, como todo framework propor-

ciona un diseño reusable y un conjunto de bloques o módulos que pueden ser reusados,

extendendidos o adaptados para construir una amplia variedad de sistemas vinculados a

PLN. Además de sus propios componentes, permite la incorporación de plugins con nue-

vos módulos que pueden implementarse en varios lenguajes de programación, pero deben

ser invocados y reconocidos por el sistema como una clase Java. En GATE los plugins son

componentes en Java Beans2 denominados CREOLE (del inglés, Collection of Reusable

Objects for Language Engineering). Estos pueden ser de tres tipos principales:

Recursos linguísticos : elementos no algorítmicos que sirven como contenedores de

información (ontologías, corpus, documentos, etc.).

Recursos de procesamiento: unidades de procesamiento de datos (POS taggers, toke-

nizadores, separadores de sentencias, etc.). Un componente con estas características

fue el anexado al GATE como nuevo recurso para la desambiguación semántica y

será referenciado en mayor detalle en la subsección siguiente.

Aplicaciones : componentes (también conocidos en GATE como pipelines) que per-

miten integrar varios recursos para realizar operaciones sobre textos.

Para crear un nuevo recurso CREOLE se deben seguir los siguientes pasos:

1. Escribir una clase Java que implemente el modelo de componentes de GATE.

2. Compilar la clase, junto con todas las clases utilizadas, en un archivo jar (Java

ARchive).

3. Escribir los datos de con�guración en un archivo xml para este nuevo componente,

denominado creole.xml.

4. Indicar a GATE la dirección URL de los nuevos archivos jar y xml.

2Un JavaBean o bean es un componente hecho en software que se puede reutilizar y que puede ser

manipulado visualmente por una herramienta de programación en lenguaje Java.

Page 91: Universidad Nacional de San Luis Tesis de Maestría en ...personales.upv.es/prosso/resources/RosasMSc.pdf · SEMÁNTICO DE TEXTOS Lic. María Verónica Rosas Director: Dr. Paolo Rosso,

Plugin semántico para GATE 77

Cuando en GATE se ejecutan recursos de procesamiento que operan sobre textos,

éstos deben generar información acerca de los mismos. Esta información que se produce

a partir del texto se representa dentro de GATE como un conjunto de anotaciones. Una

anotación en GATE consiste de:

un ID, denota una identi�cación única en el documento al que la anotación se re�ere.

un type, denota el tipo de anotación, usualmente los diferentes recursos generan

anotaciones de distintos tipos.

StartNode y EndNode, denotan la posición inicial y �nal de la palabra a anotar en

el texto.

un conjunto de features en la forma de pares atributo/valor que proporcionan infor-

mación adicional acerca de la anotación.

La interfaz grá�ca de GATE, mostrada en la Figura 6.3, permite construir y ejecutar

componentes y sistemas de PLN (Recursos de Procesamiento y Aplicaciones), así co-

mo también crear, visualizar y editar colecciones de documentos y ontologías (Recursos

linguísticos).

Figura 6.3: Interfaz grá�ca de GATE

Page 92: Universidad Nacional de San Luis Tesis de Maestría en ...personales.upv.es/prosso/resources/RosasMSc.pdf · SEMÁNTICO DE TEXTOS Lic. María Verónica Rosas Director: Dr. Paolo Rosso,

Capítulo 6. Aspectos de Ingeniería de Software aplicados a PLN 78

6.5.2. Descripción del recurso de procesamiento semántico

En este trabajo, se desestimó en una primera instancia el uso de GATE debido a dos

motivos: primero, se evaluó que el tiempo de aprendizaje iba a ser muy alto y complejo

para el objetivo planteado y la premura necesaria en la obtención de resultados de los

experimentos en el Capítulo 7 y segundo, el hecho de considerarlo demasiado genérico ya

que el trabajo experimental estaba enfocado a tareas especí�cas de PLN.

Debido a que GATE es actualmente uno de los sistemas para PLN más usado, es

open source y está en constante mantenimiento y actualización, se planteó como un nuevo

objetivo mostrar si es factible incluir los módulos semánticos del framework desarrollado

como nuevos recursos de GATE.

A partir de esto, y siguiendo los pasos planteados anteriormente, se decidió desarrollar

un plugin para GATE que incluya como recurso de procesamiento uno de los compo-

nentes del diagrama de clases de la Figura 6.1, para esto se seleccionó el desambiguador

semántico referido como MFS (o SMF las siglas en español para Sentido más frecuente).

Por lo tanto, se creó un archivo denominado creole.xml mostrado en la Figura 6.4 con-

teniendo la metainformación para la con�guración del recurso a incluir. En este archivo

se especi�ca el conjunto de parámetros para el SemanticSMF, especi�cando cuáles serán

obligatorios, opcionales y/o por defecto. De este modo, teniendo ya los archivos jar y xml

en una ubicación determinada, es posible instalar nuestro plugin como componente para

ser utilizado en una aplicación de GATE.

Como un resumen de los pasos para la instalación se podrían enumerar los siguientes:

1. Abrir el entorno grá�co GATE.

2. Utilizar el manejador de plugins CREOLE (File�>Manage CREOLE Plugins) para

agregar el nuevo recurso especi�cando la URL del nuevo plugin a incorporar. De

este modo, el plugin ya será parte de la lista de plugins disponibles de GATE.

3. Por último, para poder ser utilizado en una aplicación sólo bastará seleccionarlo de la

lista de Recursos de Procesamiento donde ya está disponible luego de ser instalado,

como se realizó con el plugin semántico y puede observarse en la Figura 6.5.

Una vez que se ejecuta sobre un documento una aplicación conteniendo el recurso

SemanticSMF y luego de seleccionar del conjunto de anotaciones la opción Token (panel

Page 93: Universidad Nacional de San Luis Tesis de Maestría en ...personales.upv.es/prosso/resources/RosasMSc.pdf · SEMÁNTICO DE TEXTOS Lic. María Verónica Rosas Director: Dr. Paolo Rosso,

Plugin semántico para GATE 79

Figura 6.4: Archivo creole.xml del módulo SMF

Figura 6.5: Plugin semántico instalado y ejecutado en GATE

derecho en la Figura 6.5) para este recurso linguístico, se notará un cambio en la lista

de anotaciones (panel inferior en la Figura 6.5). Esto es, la incorporación a la lista de

anotaciones una nueva feature denominada SO�set cuyo valor es el o�set (ver sección 6.3)

que identi�ca unívocamente un synset en WordNet para cada palabra (token) que pudo

ser desambiguada con el método del sentido más frecuente.

A otro nivel, pero con el mismo estilo, se podrían adaptar los demás componentes del

framework desarrollado como plugins de GATE. En este contexto y a modo de ejemplo, fue

desarrollado un plugin para extracción de información para el lenguaje español adaptado

Page 94: Universidad Nacional de San Luis Tesis de Maestría en ...personales.upv.es/prosso/resources/RosasMSc.pdf · SEMÁNTICO DE TEXTOS Lic. María Verónica Rosas Director: Dr. Paolo Rosso,

Capítulo 6. Aspectos de Ingeniería de Software aplicados a PLN 80

a partir del componente ANNIE (las siglas en inglés para A Nearly-New Information

Extraction) que es distribuido con GATE [84].

En [20] se encuentra una explicación más detallada de los pasos necesarios para la

instalación de recursos de procesamiento y otras funcionalidades de GATE, como la carga

de recursos de lenguaje, creación de nuevas aplicaciones, ejecución de diferentes recursos

y una lista completa de los plugins disponibles para GATE.

Page 95: Universidad Nacional de San Luis Tesis de Maestría en ...personales.upv.es/prosso/resources/RosasMSc.pdf · SEMÁNTICO DE TEXTOS Lic. María Verónica Rosas Director: Dr. Paolo Rosso,

Capítulo 7

Conjuntos de datos y detalle de los

experimentos

�Si supiéramos lo que estamos haciendo, no se llamaría investigación, ¾verdad?.�

� Albert Einstein. Cientí�co alemán.

La cantidad de textos en lenguaje natural tiende a aumentar pero con la particularidad

de un uso acotado en el número de palabras en cada texto. En la actualidad, la comuni-

cación escrita entre personas hace un uso constante de este tipo de textos restringidos en

tamaño buscando optimizar el uso de palabras en interacciones e�cientes, cortas y veloces,

a través de correo electrónico, mensajes de textos, reportes internos, faxes, fragmentos de

páginas Web y cables de noticias, entre otros.

Diferentes trabajos han analizado las ventajas de incorporar información semántica a

la representación de textos (ver sección 4.1). Es conveniente destacar que en general estos

estudios están enfocados en documentos donde es factible, en la mayoría de los casos,

disponer de una colección de entrenamiento para la tarea de WSD. Este enfoque basado

en corpus (también conocido como supervisado) no siempre es viable de ser aplicado en

colecciones de textos cortos. Una alternativa para abordar el problema anterior, es el uso

de métodos de WSD basados en conocimiento descriptos en la sección 4.2. Si bien este tipo

de métodos suelen mostrar resultados de menor calidad que los obtenidos con métodos

basados en corpus, constituye en muchos casos una de las pocas alternativas factibles si se

desea hacer uso de información semántica en la representación de documentos [120]. Por

Page 96: Universidad Nacional de San Luis Tesis de Maestría en ...personales.upv.es/prosso/resources/RosasMSc.pdf · SEMÁNTICO DE TEXTOS Lic. María Verónica Rosas Director: Dr. Paolo Rosso,

Capítulo 7. Conjuntos de datos y detalle de los experimentos 82

lo tanto, se puede pensar al enfoque basado en conocimiento como una opción apropiada

para utilizar en aplicaciones vinculadas al PLN que trabajen sobre textos cortos.

En este capítulo se describen las colecciones de textos cortos seleccionadas para los

trabajos experimentales, éstas fueron elegidas por tener diferentes niveles de complejidad

para un mejor análisis posterior. El diseño experimental, los resultados y el análisis de la

tarea de CT están detalladas en distintas secciones del capítulo. Finalmente, se muestra

que la incorporación de información semántica a la representación de documentos puede

ser también bene�ciosa en otras tareas de PLN, como por ejemplo en clustering iterativo.

7.1. Descripción de los conjuntos de datos

Para los experimentos se seleccionó un grupo representativo de colecciones de docu-

mentos cortos con diferentes niveles de complejidad con respecto al tamaño de la colección,

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 continuación se especi�can solamente algunas características principales de estos

corpus:

CICling-2002 (CIC ): es una colección de textos cortos muy popular que ha sido

reconocida en diferentes trabajos [3, 47, 71, 29] como una colección de compleji-

dad alta debido a que sus documentos pertenecen a un dominio muy restringido.

Dichos textos son 48 resúmenes de artículos cientí�cos presentados en la Conferen-

cia CICling 2002 (Computational Linguistics). Las características de este corpus se

muestran en la Tabla 7.1.

Categoría # docs

Linguistics 11

Ambiguity 15

Lexicon 11

Text Processing 11

Característica Valor

# categorías 4

# tot. docs 48

# tot. terms 3382

vocabulario 953

promedio de terms por abstract 70.45

Tabla 7.1: Características del corpus CICling-2002

Page 97: Universidad Nacional de San Luis Tesis de Maestría en ...personales.upv.es/prosso/resources/RosasMSc.pdf · SEMÁNTICO DE TEXTOS Lic. María Verónica Rosas Director: Dr. Paolo Rosso,

Descripción de los conjuntos de datos 83

EasyAbstract (Easy): es una colección que está compuesta de documentos de corta

longitud que son resúmenes cientí�cos disponibles en Internet sobre temáticas comu-

nes (Intelligent Systems) pertenecientes a artículos presentados en cuatro diferentes

revistas internacionales. Debido a que la relación entre los distintos tópicos no es

tan estrecha como en CIC y que la longitud promedio de los abstracts es mayor, se

considera a Easy como un corpus de complejidad media. Las características de este

corpus son mostradas en la Tabla 7.2.

Categoría # docs

Heuristics in Optimization 11

Machine Learning 15

Automated Reasoning 11

Aut. Intelligent Agents 11

Característica Valor

# categorías 4

# tot. docs 48

# tot. terms 9261

vocabulario 2169

promedio de terms por documento 192.93

Tabla 7.2: Características del corpus EasyAbstracts

R8 : es un corpus compuesto de ocho categorías obtenidas de la colección Reuters-

21578. Esta colección, está compuesta por 21.578 cables de noticias divididos en

137 categorías. Los cables de noticias fueron publicados y clasi�cados 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 características

que la hacen muy interesante para utilizarla en tareas de CT ya que es una colec-

ción apta para clasi�cación de múltiples rótulos, tiene algunos documentos que no

pertenecen a ninguna categoría 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] de�nen dos sub-

conjuntos estándares que son frecuentemente usados, R10 (con las 10 categorías que

tienen más instancias de entrenamiento asociadas) y R90 (con las 90 categorías que

tienen al menos una instancia de entrenamiento y al menos una instancia de prue-

ba asociada). Si se busca realizar una clasi�cación de único rótulo, los documentos

que pertenecen a más de una categoría se deben eliminar quedando algunas clases

de R10 y de R90 sin documentos. Por lo tanto, si se quitan los documentos que

pertenecen a más de una clase y se quitan las categorías que no tienen documen-

tos, entonces de las 10 categorías de R10 quedan 8 y de las 90 categorías de R90

Page 98: Universidad Nacional de San Luis Tesis de Maestría en ...personales.upv.es/prosso/resources/RosasMSc.pdf · SEMÁNTICO DE TEXTOS Lic. María Verónica Rosas Director: Dr. Paolo Rosso,

Capítulo 7. Conjuntos de datos y detalle de los experimentos 84

quedan 52, denominándose las nuevas colecciones como R8 y R52 respectivamente.

Las características de este corpus se muestran en la Tabla 7.3.

Categoría # docs

trade 102

grain 34

monexfx 130

crude 140

interest 87

acq 707

ship 43

earn 1076

Característica Valor

# categorías 8

# tot. docs 2319

# tot. terms 150430

vocabulario 9315

promedio terms por documento 64.87

Tabla 7.3: Características del corpus R8

R8+: esta colección se diferencia de la R8 original por el tipo de los documentos

elegidos para cada una de las 8 clases. Para cada categoría fueron seleccionados los

20 documentos de mayor longitud, evitando de esta forma el desbalance en cantidad

de textos que existía entre las distintas clases en la colección original.

R8-: es una colección obtenida mediante el mismo procedimiento que para R8+ pero

seleccionando en este caso los 20 documentos de menor longitud para cada categoría.

R8porc+: es un subconjunto del R8 donde se seleccionó el 20% de los documentos

más largos de cada clase, manteniendo de esta manera el desbalance en la cantidad

de documentos por clase que presentaba originalmente la colección.

R8porc-: es una colección obtenida mediante el mismo procedimiento que para

R8porc+ pero seleccionando el 20% de los documentos más cortos de cada clase.

7.2. Diseño experimental

Los documentos son representados mediante el modelo VSM para la codi�cación de

textos (sección 3.1.2). Los experimentos se realizaron primeramente con las 20 codi�ca-

ciones SMART para el enfoque tradicional basado en términos con el �n de obtener cuáles

son las mejores codi�caciones para cada corpus. De las codi�caciones con mejor valor de

precisión para cada colección se seleccionaron btc, ltc y ntc para ser comparadas con las

Page 99: Universidad Nacional de San Luis Tesis de Maestría en ...personales.upv.es/prosso/resources/RosasMSc.pdf · SEMÁNTICO DE TEXTOS Lic. María Verónica Rosas Director: Dr. Paolo Rosso,

Diseño experimental 85

nuevas estrategias de representación de términos, a partir de lo reportado en trabajos

previos [48, 95].

En la Figura 7.1 se muestra el diagrama de actividades descripto en el Capítulo 6

que es aplicado en esta sección para generar los vectores de �términos�, �conceptos� y

�términos+conceptos�. El documento original es pre-procesado realizando un proceso de

eliminación de las palabras de paro (�stopword �) y un proceso posterior de lematizado

para obtener el vector de términos. El vector de �conceptos� se obtiene a partir de com-

pletar una serie de tareas intermedias. El documento sin las �stopword� es la entrada

para la tarea de etiquetado sintáctico (en inglés POS-tagging) que rotula cada palabra

del documento con su categoría gramatical. En caso que esto no pueda ser realizado ex-

trae la raíz de la palabra y trata de determinar nuevamente si la palabra es sustantivo,

verbo, adjetivo o advervio, colocando el rótulo correspondiente. El documento etiquetado

sintácticamente corresponde a la entrada del módulo de WSD donde se aplica un sistema

de desambiguación basado en conocimiento (MFS, LM o CIAO, detallados en el Capítulo

5) que utiliza la ontología WordNet como recurso externo. La salida de este último paso

es usado para el proceso de obtención del o�set (identi�cador único en la base de datos

WordNet que fue descripto en la sección 4.3) y luego transformar este número entero

en caracteres alfabéticos (utilizados como datos de entrada en el software Weka) que �-

nalmente representarán el vector de �conceptos�. El vector de �términos� concatenado al

vector de �conceptos� forman la variante �términos+conceptos�.

Para la CT se utilizóWeka1 [39] con diferentes algoritmos de aprendizaje: Naive Bayes

Multinomial Updateable (NBMU), Naive Bayes (NB), Naive Bayes Multinomial (NBM),

Complement Naive Bayes (CNB) y Support Vector Machine (SVM). Para el entrena-

miento y prueba de los experimentos, se utilizó la validación cruzada en k pliegues (k-fold

cross validation) con k = 10. Este procedimiento consiste en dividir los n ejemplos del

conjunto de entrenamiento en k subconjuntos de tamaño n/k y utilizar uno de ellos para

las pruebas y k − 1 para entrenar el clasi�cador. Este procedimiento se realiza k veces y

luego se realiza un promedio de los resultados obtenidos para cada partición. Los pará-

metros utilizados para los experimentos fueron seleccionados de aquellos que reportaron

los mejores resultados en trabajos previos [48, 95].

1Esta herramienta, desarrollada en la universidad de Waikato (Nueva Zelanda), contiene herramientas

para realizar transformaciones sobre datos, clasi�cación, regresión, clustering, asociación y visualización.

Page 100: Universidad Nacional de San Luis Tesis de Maestría en ...personales.upv.es/prosso/resources/RosasMSc.pdf · SEMÁNTICO DE TEXTOS Lic. María Verónica Rosas Director: Dr. Paolo Rosso,

Capítulo 7. Conjuntos de datos y detalle de los experimentos 86

Figura 7.1: Diagrama de actividades para generar los distintos vectores

7.3. Resultado y análisis de los experimentos

Los experimentos estuvieron dirigidos a mostrar distintas alternativas a la represen-

tación original utilizando VSM de textos cortos que ayuden a mejorar la tarea de cate-

gorización. Se comienza con una estrategia que incorpora información semántica en la

representación de documentos mediante métodos de WSD basados en conocimiento. De-

bido a que esto involucra un aumento en la dimensionalidad de la representación, una

segunda estrategia fue la aplicación de métodos de reducción de vocabulario. Por último,

a partir de lo planteado en [45] se experimentó con el uso de hiperónimos en la represen-

tación de documentos cortos.

Page 101: Universidad Nacional de San Luis Tesis de Maestría en ...personales.upv.es/prosso/resources/RosasMSc.pdf · SEMÁNTICO DE TEXTOS Lic. María Verónica Rosas Director: Dr. Paolo Rosso,

Resultado y análisis de los experimentos 87

7.3.1. Enfoque I: incorporación de información semántica

El VSM utilizado para codi�car cada texto en su representación original, fue enri-

quecido a partir de la incorporación de información semántica. El uso de información

semántica plantea distintas alternativas respecto a cómo ésta puede ser incorporada en la

representación de los documentos.

En la primera estrategia denominada �conceptos�, se genera un nuevo vector reem-

plazando todo término de la representación original por su concepto en WN (�synset�)

y removiendo aquellos términos cuyo synset no existe o no pudo ser desambiguado. Los

�synsets� fueron obtenidos al aplicar WSD mediante los tres enfoques descriptos en el

capítulo 5: el método heurístico del sentido más frecuente (MFS ), Lesk Mejorado (LM )

y CIAOSENSO (CIAO).

50

55

60

65

70

75

80

85

90

95

100

CICEasy

R8 R8+R8−

R8por+

R8por−

%pr

ecis

ion

colecciones

terminos conceptos terminos+conceptos

Figura 7.2: Sin Información Semántica vs. Con Información Semántica

En la segunda estrategia denominada �términos+conceptos� al vector de términos

original se le incorporan todos los conceptos de WN obtenidos con la primera estrategia.

La Figura 7.2 compara los mejores valores de precisión obtenidos con la representa-

ción de términos versus las nuevas estrategias de �conceptos� y �términos+conceptos�

para todas las colecciones. Para las dos nuevas estrategias se seleccionó la combinación

�codi�cación#clasi�cador#método de WSD basado en conocimiento� que reportó, entre

todas las posibles, el más alto valor de porcentaje de instancias clasi�cadas correctamente.

Para la estrategia original el más alto valor fue seleccionado desde la combinación �codi�-

Page 102: Universidad Nacional de San Luis Tesis de Maestría en ...personales.upv.es/prosso/resources/RosasMSc.pdf · SEMÁNTICO DE TEXTOS Lic. María Verónica Rosas Director: Dr. Paolo Rosso,

Capítulo 7. Conjuntos de datos y detalle de los experimentos 88

cación#clasi�cador �. En la Tabla 7.4 se muestran los componentes de la combinación que

fue elegida para cada colección. En aquellos casos en que más de una combinación obtuvo

el mejor valor, se seleccionó una de ellas al azar. Por ejemplo, para la colección CIC en

la representación de conceptos el mayor valor fue determinado a partir de la codi�cación

(codif ) ltc, el clasi�cador (clasif ) CNB y el método de desambiguación (WSD) MFS.

términos conceptos términos+conceptos

Corpus codif clasif codif clasif WSD codif clasif WSD

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

Tabla 7.4: Mejores valores para �codi�cación#clasi�cador#WSD�

De acuerdo a los resultados mostrados en la Figura 7.2 es claro que, independientemen-

te de la complejidad de cada colección, la incorporación de información semántica puede

lograr una mejora en la precisión, con respecto a los resultados obtenidos cuando sólo los

términos son considerados. En las colecciones con di�cultad baja y media (Easy, R8+,

R8y R8porc+) se puede observar un comportamiento similar, esto es, la representación

de �términos� es mejorada levemente por la de �conceptos� y esta última por la de �térmi-

nos+conceptos� de la misma manera (o en su defecto, igualada en el caso de la colección

Easy). Para las colecciones con una mayor complejidad en cuanto a su longitud (CIC,

R8- y R8porc-), no se observa el comportamiento mencionado anteriormente. A modo de

ejemplo, en el caso de la colección CIC, la representación de �conceptos� supera con su

valor de precisión a la de �términos� pero con un porcentaje mucho mayor y teniendo la

particularidad de que la de �términos+conceptos� no logra superar a la de �conceptos�.

Este comportamiento puede ser debido a la particularidad de los dominios restringidos de

la colección CIC (dominios que en cierta medida se solapan compartiendo algunos térmi-

nos aunque este grado de ambigüedad parece resolverse en parte con los vectores basados

únicamente en �conceptos�). No obstante esta diferencia observada entre ambos enfoques

semánticos, es importante notar que el enfoque semántico de �términos+conceptos� logra

superar al enfoque de sólo �términos�, en todas las colecciones consideradas.

Page 103: Universidad Nacional de San Luis Tesis de Maestría en ...personales.upv.es/prosso/resources/RosasMSc.pdf · SEMÁNTICO DE TEXTOS Lic. María Verónica Rosas Director: Dr. Paolo Rosso,

Resultado y análisis de los experimentos 89

CICling-2002 EasyAbstracts R8

C 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.38 95.12 94.86

ntc 62.50 66.66 75.00 97.91 100 95.83 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

Tabla 7.5: Mejores valores de precisión de CICling-2002, EasyAbstract y R8

Si bien los resultados mostrados previamente, dan evidencia de que la incorporación de

información semántica puede resultar en un mayor valor de precisión en la categorización

de textos cortos, es importante comparar ahora cuál fue el desempeño de los distintos

enfoques semánticos en cada una de las distintas instancias experimentales consideradas.

En las Tablas 7.5, 7.6 y 7.7 se realiza esta comparación reportándose, por colección, los va-

lores de precisión obtenidos con los diferentes métodos de WSD basados en conocimiento

utilizados para �conceptos� (C) y �términos+conceptos� (T+C) escogiendo el clasi�cador

que mostró el mejor comportamiento. Los valores resaltados en negrita indican los mejo-

res valores obtenidos. De las tablas se puede inferir que, como sucedió en la observación

de la Figura 7.2, también el análisis se puede agrupar de acuerdo a la complejidad de

las colecciones. Las colecciones de complejidad baja y media son mejor categorizadas, en

la mayoría de los casos, al aplicar los métodos WSD que tienen en cuenta el contexto

de la palabra a desambiguar, esto es LM y CIAO; mientras que en las de alta comple-

jidad los mejores valores fueron encontrados utilizando el método MFS. Por ejemplo, si

examinamos la colección CIC, un 75% de precisión es obtenido con la representación

de �conceptos� utilizando MFS y codi�cación ntc. Por el contrario, una tarea de catego-

rización con precisión perfecta se obtiene aplicando, tanto para �conceptos� como para

�términos+conceptos�, el método de WSD LM o CIAO para la colección Easy. Por otra

parte, si tomamos en cuenta las diferentes codi�caciones utilizadas, es posible observar

que en general, independientemente de la colección y método de WSD utilizados en los ex-

perimentos, en la mayoría de los casos, la ntc estándar es la que mejor resultados obtuvo,

seguida por la codi�cación ltc.

Page 104: Universidad Nacional de San Luis Tesis de Maestría en ...personales.upv.es/prosso/resources/RosasMSc.pdf · SEMÁNTICO DE TEXTOS Lic. María Verónica Rosas Director: Dr. Paolo Rosso,

Capítulo 7. Conjuntos de datos y detalle de los experimentos 90

R8+ R8-

C LM CIAO MFS LM CIAO MFS

btc 85.00 84.37 83.12 90.00 90.00 90.00

ltc 85.62 86.25 85.00 90.62 90.00 92.5

ntc 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 92.50 90.62 90.62

ltc 86.87 85.00 85.62 91.87 91.25 90.62

ntc 81.87 83.12 82.50 92.50 92.12 92.50

Tabla 7.6: Mejores valores de precisión de R8+ y R8-

R8porc+ R8porc-

C LM CIAO MFS LM CIAO MFS

btc 95.00 94.37 92.5 95.68 96.46 96.32

ltc 95.62 96.25 95.00 95.89 96.32 96.11

ntc 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 97.89

ltc 96.87 95.00 95.62 97.62 97.19 97.19

ntc 91.87 93.12 91.87 97.40 97.19 96.32

Tabla 7.7: Mejores valores de precisión de R8porc+ y R8porc-

7.3.2. Enfoque II: reducción de dimensionalidad

Uno de los problemas que se plantea con los enfoques semánticos como el de �tér-

minos+conceptos� es que implican un aumento considerable en la dimensionalidad de la

representación de los documentos. Este problema, puede resultar muy serio cuando se

deben categorizar colecciones con un tamaño grande de vocabulario como es el caso de la

colección R8, donde enfoques de este tipo pueden tener un impacto negativo en la e�cien-

cia en tiempo y espacio de sistemas de categorización como los provistos por Weka. Un

aspecto interesante a analizar en estos casos, es en qué medida los enfoques semánticos

son robustos a los métodos clásicos de reducción de dimensionalidad como los descriptos

en la sección 3.3, para poder obtener colecciones que se puedan procesar de manera más

e�ciente.

Para la tarea de reducción de dimensionalidad, Weka provee una variedad de �ltros:

supervisados, no supervisados, de �ltrado de instancias o de �ltrado de atributos. En este

Page 105: Universidad Nacional de San Luis Tesis de Maestría en ...personales.upv.es/prosso/resources/RosasMSc.pdf · SEMÁNTICO DE TEXTOS Lic. María Verónica Rosas Director: Dr. Paolo Rosso,

Resultado y análisis de los experimentos 91

80

85

90

95

100

250500

12502500

50007500

10000

%precision

tamaño de vocabulario

terminos conceptos terminos+conceptos

Figura 7.3: Reducción del tamaño de vocabulario para la colección R8

caso, de los más de 60 �ltros disponibles se seleccionó el �ltro supervisado denominado

�AtributeSelection� que permite con�gurar un evaluador y un tipo de búsqueda. El método

seleccionado para la evaluación es el �InfoGainAtributeEval� con el algoritmo �Ranker�

para el tipo de búsqueda que ordena los atributos según sus evaluaciones individuales.

Uno de los parámetros que puede ser introducido es el denominado �numToSelect� donde

se especi�ca el número de atributos que serán conservados luego del �ltrado. Este número

varía de acuerdo a la cantidad de atributos en cada colección. En la Figura 7.3 se muestran

los resultados aplicando el �ltro descripto anteriormente en la colección R8 que es la

mayor en cuanto al tamaño del vocabulario comparada con los demás conjuntos de datos

utilizados en los experimentos. En este caso la reducción es importante debido a que

algunos clasi�cadores no se podían utilizar con la cantidad original de atributos. En la

Figura 7.4 los resultados muestran la reducción para la colección R8+, donde la cantidad

de atributos es mucho menor a la presentada anteriormente.

Este enfoque demostró que, independientemente de la cantidad de atributos, el

problema de aumento en la dimensionalidad al utilizar la representación de �térmi-

nos+conceptos�, puede ser resuelto aplicando métodos de �ltrado de atributos que ob-

tienen una alta precisión con altos niveles de reducción de vocabulario. En algunos casos

esta tarea de �ltrado resulta necesaria e inevitable para poder aplicar un cierto clasi�cador

(por ejemplo, el clasi�cador NB al utilizar Weka).

Page 106: Universidad Nacional de San Luis Tesis de Maestría en ...personales.upv.es/prosso/resources/RosasMSc.pdf · SEMÁNTICO DE TEXTOS Lic. María Verónica Rosas Director: Dr. Paolo Rosso,

Capítulo 7. Conjuntos de datos y detalle de los experimentos 92

80

85

90

95

100

150175

250500

8751250

25003750

5000

%precision

tamaño de vocabulario

terminos conceptos terminos+conceptos

Figura 7.4: Reducción del tamaño de vocabulario para la colección R8+

7.3.3. Enfoque III: incorporación de hiperónimos

Uno de los modelos propuesto en [45] considera el hecho de agregar los hiperónimos

de los conceptos en la representación de los enfoques que incluyen información semántica.

A partir de los resultados alentadores mostrados en [112, 89] una nueva variante es intro-

ducida en este trabajo con el próposito de estimar el impacto de agregar hiperónimos a

la representación.

La idea principal en este enfoque es por ejemplo, si se tiene en un texto la palabra

�beef�, éste no sólo representa al concepto �beef� sino también a �meat�, �food� y así con-

tinuando hasta un cierto nivel de generalidad. En este contexto, se agregan conceptos de

mayor nivel de generalidad, en base a la relación de hiperonimia de la jerarquía WordNet,

a las dos nuevas estrategias de representación presentadas en la sección 7.3.1. Teniendo

como base la Figura 7.1 se implementa e incorpora un algoritmo para la obtención de los

hiperónimos que se ejecuta luego de la tarea de �Obtención de o�set� y antes de aplicar

la transformación a caracteres. Todos los �o�set� producidos son agregados tanto a la

representación de �conceptos� como al vector de �términos+conceptos�.

La colección que mayor di�cultad ha presentado para los distintos métodos estudiados

fue CIC debido a su alta complejidad, de esta forma se decide aplicar la variante para eva-

luar una posible mejora en la categorización de este corpus. Como nivel de hiperonimia se

tomó el valor 5 en la jerarquía de WN, que corresponde a los mejores resultados reportados

Page 107: Universidad Nacional de San Luis Tesis de Maestría en ...personales.upv.es/prosso/resources/RosasMSc.pdf · SEMÁNTICO DE TEXTOS Lic. María Verónica Rosas Director: Dr. Paolo Rosso,

Clustering utilizando información semántica 93

Sin hiperónimos Con hiperónimos

NBMU CNB NBM NB SVM NBMU CNB NBM NB SVM

C 35.41 66.66 41.66 50 60.41 54.16 72.00 60.41 50 45.83

T + C 35.41 70.83 39.58 47.91 54.16 56.25 75 64.58 43.75 52.08

Tabla 7.8: Resultados sin hiperónimos vs con hiperónimos

en [45]. Los conceptos en este caso se obtuvieron mediante el método CIAO. En la Tabla

7.8 se resumen los mejores valores obtenidos para CIC con los distintos algoritmos en el

caso de no usar hiperónimos (izquierda) y con el uso de hiperónimos (derecha). Observando

los mejores valores de precisión, tanto para la representación de �conceptos� (C ) como

para la de �términos+conceptos� (T +C), se puede determinar que el comportamiento de

los diferentes clasi�cadores es muy similar. Mientras que para NBMU , CNB y NBM el

uso de hiperónimos muestra algunas mejoras sobre los resultados sin hiperónimos, para los

algoritmos NB y SVM la incorporación de hiperónimos a la representación no produce

un impacto favorable en el valor de precisión.

Por lo tanto, podemos concluir que la efectividad del uso de este tipo de información

en la representación de los documentos, depende signi�cativamente del método de cate-

gorización utilizado. Un estudio más detallado sería también necesario para determinar

la conveniencia o no de incorporar este tipo de información en la categorización de textos

cortos ya que involucra un costo computacional muy alto para el escaso bene�cio que se

ve re�ejado en el valor de precisión.

7.4. Clustering utilizando información semántica

Como ya fue expuesto anteriormente, la tendencia actual es trabajar con documen-

tos cortos (blogs, mensajes de textos, y otros) lo que ha generado un interés creciente

en diversas aplicaciones del procesamiento automático de documentos. El �clustering�

(agrupamiento) de textos cortos es un área muy importante de investigación, que puede

jugar un rol fundamental en organizar estos grandes volúmenes de textos cortos, en un

número pequeño de grupos signi�cativos. Al usar el término clustering se hace referencia

a aquella forma de categorización no-supervisada la cual, a diferencia de la categorización

standard, no dispone de información sobre las clases �correctas� ni ejemplos de asignacio-

nes de instancias a las diferentes clases. Recientemente, el uso de métodos de clustering

Page 108: Universidad Nacional de San Luis Tesis de Maestría en ...personales.upv.es/prosso/resources/RosasMSc.pdf · SEMÁNTICO DE TEXTOS Lic. María Verónica Rosas Director: Dr. Paolo Rosso,

Capítulo 7. Conjuntos de datos y detalle de los experimentos 94

bio-inspirados iterativos de textos cortos, ha producido resultados muy interesantes utili-

zando representaciones de vector de términos clásicas [30, 31]. En esta sección, se analiza,

mediante un estudio experimental, cuál es el impacto que tiene en el desempeño de clus-

tering iterativo utilizando representaciones de documentos enriquecidas con información

semántica obtenida con métodos de desambiguación basados en conocimiento [32, 94].

El algoritmo ITSA? (cuyo nombre deriva de ITerative PAntSA?), es la versión iterativa

de PAntSA?, un método bio-inspirado diseñado para mejorar los resultados obtenidos

con algoritmos de clustering arbitrarios. PAntSA? es la versión particional del algoritmo

AntTree [6] que además incorpora información sobre el Coe�ciente de Silueta (Silhouette

Coe�cient) [97] y el concepto de atracción 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 colección completa de hormigas es representada inicialmente por una lista L de

hormigas que esperan ser conectadas. Comenzando desde un soporte arti�cial a0, todas las

hormigas son conectadas de manera incremental ya sea en el soporte o bien a otra hormiga

ya conectada. Este proceso continúa hasta que todas las hormigas están conectadas a la

estructura.

Las dos componentes principales de PAntSA? son: 1) la disposición inicial de las hor-

migas en la lista L, y 2) el criterio utilizado por una hormiga arbitraria ai ubicada sobre el

soporte, para decidir cuál será la hormiga a+ (conectada al soporte) hacia la que debería

moverse. Para el primer paso, PAntSA? toma como entrada el agrupamiento obtenido con

algún algoritmo de clustering arbitrario y usa información sobre el Coe�ciente de Silueta

(CS) de este agrupamiento para determinar el orden inicial de las hormigas en L. Parael segundo proceso, PAntSA? usa un criterio más informado basado en el concepto de

atracción. Aquí, si Ga+ = {a+} ∪Aa+ es el grupo formado por una hormiga a+ conectada

al soporte y sus descendientes; esta relación entre el grupo Ga+ y la hormiga ai es referida

como la atracción de Ga+ sobre ai y será denotada como att(ai,Ga+).

PAntSA? se diferencia de AntTree en otro aspecto importante: no construye estructuras

jerárquicas con raíces (hormigas) directamente conectadas al soporte. En PAntSA?, cada

hormiga aj conectada al soporte (a0) y sus descendientes (el grupo Gaj) es consideradosimplemente como un conjunto. De esta manera, cuando una hormiga arbitraria ai debe

Page 109: Universidad Nacional de San Luis Tesis de Maestría en ...personales.upv.es/prosso/resources/RosasMSc.pdf · SEMÁNTICO DE TEXTOS Lic. María Verónica Rosas Director: Dr. Paolo Rosso,

Clustering utilizando información semántica 95

ser incorporada en el grupo de la hormiga a+ que más atracción ejerce sobre ai, este paso

es implementado como un simple agregado de ai al conjunto Ga+ . 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) Conección al soporte, 2) Generación de la lista L y 3) Agrupamiento de las

hormigas en L.

función PAntSA?(C) retorna un clustering C?

Entrada: C = {C1, . . . , Ck}, un agrupamiento inicial

1. Conección al soporte

1.a. Crear un conjunto Q = {q1, . . . , qk} de k �las de datos (una �la por cada

grupo Cj ∈ C).1.b. Ordenar cada �la qj ∈ Q en orden decreciente de acuerdo al Coe�ciente

de Silueta de sus elementos. Sea Q′ = {q′1, . . . , q′k} el conjunto de �las

ordenadas que resulta de este proceso.

1.c. Sea GF = {a1, . . . , ak} el conjunto formado por la primer hormiga ai de

cada �la q′i ∈ Q′. Por cada hormiga ai ∈ GF , remover ai de q′i e inicia-

lizar Gai= {ai} (conectar ai al soporte a0).

2. Generación de la lista L2.a. Sea Q′′ = {q′′1 , . . . , q′′k} el conjunto de �las resultante del proceso previo

de remoción de la primer hormiga de cada �la en Q′.

Generar la lista L mezclando las �las en Q′′.

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 más alto de att(ai,Ga+).

Ga+ ← Ga+ ∪ {ai}Hasta que L esté vacía

retornar C? = {Ga1 , . . . ,Gak}

Figura 7.5: El algoritmo PAntSA?.

En el primer paso, la hormiga más representativa de cada grupo del agrupamiento

recibido como entrada es conectada al soporte a0. Esta tarea, consiste en seleccionar la

Page 110: Universidad Nacional de San Luis Tesis de Maestría en ...personales.upv.es/prosso/resources/RosasMSc.pdf · SEMÁNTICO DE TEXTOS Lic. María Verónica Rosas Director: Dr. Paolo Rosso,

Capítulo 7. Conjuntos de datos y detalle de los experimentos 96

hormiga ai con el valor de CS más alto de cada grupo Ci, y conectar cada una de ellas

al soporte, formando un conjunto de un único elemento Gai . El segundo paso, consiste

en generar la lista L con las hormigas que no fueron conectadas en el paso previo. Este

proceso también considera el ordenamiento basado en el CS obtenido en el paso previo, y

mezcla las hormigas restantes (ordenadas) de cada grupo tomando, en forma iterativa, la

primera hormiga de cada �la no vacía, hasta que todas las �las están vacías. En el tercer

paso, el orden en el cual las hormigas serán procesadas es determinado por sus posiciones

en la lista L. El proceso de clustering de cada hormiga arbitraria ai simplemente determina

cuál es la hormiga conectada a+ que ejerce más atracción sobre ai2 y entonces incorpora

a ai en el grupo de a+ (Ga+). El algoritmo �nalmente retorna un agrupamiento formado

por los grupos de las hormigas conectadas al soporte.

Una vez que el algoritmo PAntSA? es implementado, su versión iterativa llamada

ITSA?, puede ser fácilmente lograda. ITSA? sólo 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 iteración, y repetir este proceso hasta que no se observen

cambios en el agrupamiento generado por PAntSA? con respecto a la iteración previa.

Es importante notar que tanto PAntSA? como ITSA? son en realidad métodos 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 aún cuando

es provisto con agrupamientos iniciales aleatorios. Esta variante, que será la utilizada en

el trabajo experimental, permite obtener una versión totalmente autocontenida de ITSA?

como algoritmo de clustering, e independizarse de esta manera del algoritmo de clustering

particular utilizado para generar el agrupamiento inicial.

Para estimar la similitud entre documentos se utilizó la popular medida coseno. La

inicialización de parámetros para CLUDIPSO y los restantes algoritmos usados en las

comparaciones corresponden a los parámetros derivados empíricamente en [46].

Los resultados of ITSA? fueron comparados con los resultados de PAntSA? y otros

cuatro algoritmos de clustering: K-means, K-MajorClust [111], CHAMELEON [53] y

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

2Actualmente, como medida de atracción usamos la similitud promedio entre ai y todas las hormigas

en Ga+ pero otras medidas alternativas también serían válidas.

Page 111: Universidad Nacional de San Luis Tesis de Maestría en ...personales.upv.es/prosso/resources/RosasMSc.pdf · SEMÁNTICO DE TEXTOS Lic. María Verónica Rosas Director: Dr. Paolo Rosso,

Clustering utilizando información semántica 97

dos de las colecciones de textos cortos que utilizaremos en los experimentos, CICling-2002

y EasyAbstracts.

La calidad de los resultados fue evaluada mediante la medida denominada F -measure

(descripta en la sección 3.2) sobre los agrupamientos que cada algoritmo generó en 50

ejecuciones independendientes por colección. Los resultados reportados corresponden a

los valores de medida F mínimo (Fmin), máximo (Fmax) y promedio (Favg). Los valores

resaltados en negrita en la tabla con los resultados indican los mejores resultados obtenidos

en cada caso.

La Tabla 7.9 muestra los valores Fmin, Fmax y Favg que K-means, K-MajorClust,

CHAMELEON y CLUDIPSO obtuvieron con las cuatro colecciones. También se incluyen

los resultados obtenidos con PAntSA? e ITSA? tomando como entrada los agrupamien-

tos generados por un proceso simple (denotado R-Clustering) que determina de manera

aleatoria el grupo de cada documento. Estos resultados de PAntSA? e ITSA? utilizando

la representación de términos tradicional son denotados como R-Clust? y R-Clust?? res-

pectivamente. Los resultados de ITSA? utilizando vectores de conceptos son denotados

R-Clust??-C mientras que aquellos que combinan términos y conceptos son referenciados

como R-Clust??-T+C.

Los resultados obtenidos son concluyentes respecto al buen desempeño de ITSA? con

las colecciones con mayor número de documentos (R8+ y R8-) cuando se incorpora infor-

mación semántica en la representación de los textos cortos. En este sentido, se debe notar

que ITSA? obtiene los mejores valores de Fmin, Fmax y Favg utilizando representaciones

que sólo utilizan conceptos (R-Clust??-C) en el caso de R8+ y con representaciones que

utilizan conceptos y términos (R-Clust??-T+C) en el caso de R8-. Los resultados con las

otras dos colecciones más pequeñas, si bien no son tan categóricos, son altamente com-

petitivos con los obtenidos por los restantes algoritmos. En el caso de CICling-2002 (una

colección que ha exhibido una alta complejidad en trabajos previos) ITSA? obtiene los

mejores valores de Fmax y Favg con representaciones que sólo utilizan conceptos, y sólo es

mínimamente superado en el valor de Fmin por el algoritmo CLUDIPSO. Con respecto a

EasyAbstracts, la variante R-Clust??-T+C obtiene el mejor valor de Favg, si bien es supe-

rada en Fmin por CLUDIPSO, y levemente superada por la variante de ITSA? que sólo

utiliza términos (R-Clust??).

Los resultados obtenidos en el trabajo experimental, son altamente prometedores res-

pecto a la efectividad de este enfoque, obteniéndose resultados muy competitivos en la

Page 112: Universidad Nacional de San Luis Tesis de Maestría en ...personales.upv.es/prosso/resources/RosasMSc.pdf · SEMÁNTICO DE TEXTOS Lic. María Verónica Rosas Director: Dr. Paolo Rosso,

Capítulo 7. Conjuntos de datos y detalle de los experimentos 98

CICling-2002 EasyAbstracts R8- R8+

Algoritmos Favg Fmin Fmax Favg Fmin Fmax Favg Fmin Fmax Favg Fmin Fmax

R-Clust? 0.54 0.42 0.71 0.76 0.54 0.96 0.63 0.52 0.73 0.64 0.54 0.7

R-Clust?? 0.6 0.46 0.75 0.92 0.67 1 0.66 0.57 0.74 0.65 0.57 0.72

R-Clust??-C 0.62 0.46 0.77 0.92 0.72 0.98 0.72 0.63 0.82 0.73 0.58 0.78

R-Clust??-T+C 0.59 0.46 0.72 0.93 0.71 0.98 0.71 0.59 0.78 0.74 0.62 0.79

K-Means 0.45 0.35 0.6 0.54 0.31 0.71 0.64 0.55 0.72 0.60 0.46 0.72

K-MajorClust 0.39 0.36 0.48 0.71 0.48 0.98 0.61 0.49 0.7 0.57 0.45 0.69

CHAMELEON 0.46 0.38 0.52 0.74 0.39 0.96 0.57 0.41 0.75 0.48 0.4 0.6

CLUDIPSO 0.6 0.47 0.73 0.92 0.85 0.98 0.62 0.49 0.72 0.57 0.45 0.65

Tabla 7.9: Mejores valores de medida F por colección.

mayoría de las instancias experimentales consideradas y, en algunos casos, alcanzándose

los mejores resultados reportados en la literatura especí�ca en el área. Este último aspecto,

no es una observación menor, si consideramos que los métodos de WSD utilizados para

obtener los conceptos (WSD basado en conocimiento) son considerados como métodos

débiles en relación a otros métodos supervisados más elaborados, por lo que cualquier

mejora introducida en el proceso de WSD subyacente podría resultar en una mejora del

proceso de clustering completo.

Page 113: Universidad Nacional de San Luis Tesis de Maestría en ...personales.upv.es/prosso/resources/RosasMSc.pdf · SEMÁNTICO DE TEXTOS Lic. María Verónica Rosas Director: Dr. Paolo Rosso,

Capítulo 8

Conclusiones y trabajos futuros

�Si buscas resultados distintos, no hagas siempre lo mismo.�

� Albert Einstein. Cientí�co alemán.

En este capítulo se presentan las conclusiones del trabajo realizado y se plantean pro-

puestas para investigaciones futuras. El principal aporte fue la elaboración de un trabajo

interdisciplinario que realiza contribuciones en el ámbito de IL usando como sustento

aspectos básicos del PLN y la IS. La utilización de información semántica, mediante mé-

todos 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

implementación de un marco de trabajo para brindar robustez, con�abilidad y calidad en

el pre-procesamiento semántico dio soporte sustentable a los trabajos experimentales. En

base a las conclusiones previas se pueden identi�car dos áreas de�nidas de estudios para

los trabajos futuros, desde el ámbito de PLN y desde la IS.

8.1. Aportes realizados

Uno de los objetivos de este trabajo fue determinar si la incorporación de información

semántica en la representación de documentos, a partir de métodos no supervisados de

WSD, aporta bene�cios a la CT cortos. Más precisamente, los experimentos de este traba-

jo se fundamentan en el enfoque basado en conocimiento para la tarea de desambiguación,

debido a que es una de las alternativas viables en casos donde no se dispone de una co-

lección de entrenamiento para la WSD. Dos estrategias fueron consideradas y analizadas:

Page 114: Universidad Nacional de San Luis Tesis de Maestría en ...personales.upv.es/prosso/resources/RosasMSc.pdf · SEMÁNTICO DE TEXTOS Lic. María Verónica Rosas Director: Dr. Paolo Rosso,

Capítulo 8. Conclusiones y trabajos futuros 100

�conceptos� y �términos+conceptos�. Se evaluaron diferentes codi�caciones y diferentes

clasi�cadores en los experimentos de categorización, como así también el impacto de la

reducción de vocabulario en el comportamiento de dicha tarea.

Se concluye que el uso de información semántica en la representación de los documen-

tos, a través de métodos basados en conocimiento, bene�cia la tarea de categorización

de documentos cortos, en especial el enfoque que denominamos �términos+conceptos�.

Este enfoque demostró que, a pesar de que involucra generalmente un aumento en la di-

mensionalidad de la representación, puede obtener una precisión muy alta con elevados

niveles de reducción de vocabulario. Con respecto al desempeño de los distintos métodos

de WSD, teniendo en cuenta que no hay un único método de WSD basado en conocimiento

que presente los mejores resultados para todas las colecciones, se puede a�rmar que un

óptimo WSD general no puede ser determinado en base a los experimentos realizados. Por

tal motivo, el mejor valor de precisión depende de la codi�cación y el clasi�cador utilizado

en la CT.

A partir de los resultados altamente promisorios obtenidos en el trabajo experimen-

tal con CT, se decide experimentar con otra de las aplicaciones vinculadas a PLN. De

este modo, se realizan pruebas aplicando métodos de clustering bio-inspirados iterativos

que obtuvieron resultados importantes utilizando la representación original de vectores

[30, 31]. Un aporte interesante surge en este contexto, ya que se obtiene un desempeño

competitivo del clustering iterativo utilizando representaciones de documentos enriqueci-

das con información semántica en la mayoría de las instancias experimentales considera-

das. Con referencia a esto último es importante tener en cuenta que, si consideramos que

los métodos de WSD utilizados en este trabajo (basados en conocimiento) pueden cali-

�carse como métodos débiles en relación a otros métodos supervisados más elaborados,

entonces la mejora obtenida puede ser trascendental.

Por otro lado, las ventajas del uso de hiperónimos en la representación de documentos

cortos no han quedado demostradas y es un punto que requiere investigación futura. En

este sentido, una extensión interesante es la planteada en [45] para la tarea de cluste-

ring que consiste en no remover los términos que no pudieron ser desambiguados para

la representación de �conceptos� sino agregarlos como parte del vector junto con los que

pudieron ser desambiguados con alguno de los métodos de WSD (sería una variante al

enfoque planteado en la sección 7.3.1).

Page 115: Universidad Nacional de San Luis Tesis de Maestría en ...personales.upv.es/prosso/resources/RosasMSc.pdf · SEMÁNTICO DE TEXTOS Lic. María Verónica Rosas Director: Dr. Paolo Rosso,

Trabajos futuros 101

En base a las conclusiones anteriores, donde se destaca el buen desempeño del pre-

procesamiento semántico no supervisado para tareas vinculadas al PLN, se implementa

un marco de trabajo que brinda soporte al investigador en la reproducción exacta de

experimentos anteriores como así también, hacer más sencilla la creación de nuevos expe-

rimentos para la obtención 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 semántico, un acceso uni�cado a los algoritmos de análisis sintáctico (o

pos-tagging) y de análisis semántico (o WSD). Al tener una arquitectura simple y mo-

dular es posible extender fácilmente el framework, incorporando nuevos algoritmos como

procesos intermedios. En este contexto, se proveen interfaces y clases abstractas básicas

para las tareas involucradas en la obtención de los vectores. Por lo tanto, los módulos

que pretendan hacer uso de los servicios que brinda el framework únicamente deberán

implementar los componentes abstractos del mismo.

Si bien el uso del framework alivió la tarea de obtención de los vectores para la re-

presentación de documentos, la posibilidad de combinar los algoritmos disponibles en

las distintas etapas era una tarea engorrosa ya que se hacía manualmente. El desarrollo

de una interfaz grá�ca extendió los bene�cios del framework original, evitando que el

usuario tenga que conocer detalles subyacentes de la implementación. De esta manera, la

selección y el posterior enlace de los diferentes algoritmos en las distintas etapas ya no

es un proceso complejo que exige codi�cación, permitiendo a usuarios tanto del ámbito

informático como de otras áreas de estudio tener acceso a un conjunto de funcionalidades

para el análisis de textos. Pre.Se.Do. fue desarrollado para hacer factible la interacción en

forma amigable, rápida y sencilla del usuario con el framework implementado.

Finalmente, se muestra lo sencillo que resulta la adaptación de un módulo del fra-

mework desarrollado para el acoplamiento al sistema GATE. De esta manera, se puede

generalizar a�rmando que incorporar los demás componentes de nuestro framework a

sistemas mayores es una tarea simple y factible de ser realizada.

8.2. Trabajos futuros

En base a los experimentos realizados y a las conclusiones obtenidas de los mismos,

podemos identi�car dos áreas donde la investigación llevada a cabo en este trabajo puede

ahondar. Con respecto al ámbito del PLN sería posible:

Page 116: Universidad Nacional de San Luis Tesis de Maestría en ...personales.upv.es/prosso/resources/RosasMSc.pdf · SEMÁNTICO DE TEXTOS Lic. María Verónica Rosas Director: Dr. Paolo Rosso,

Capítulo 8. Conclusiones y trabajos futuros 102

Analizar el comportamiento de la incorporación de información semántica en otras

aplicaciones del PLN, distintas a CT y clustering.

Incorporar nuevos algoritmos para las distintas etapas del pre-procesamiento semán-

tico. Por ejemplo para la WSD, usar otras variantes del algoritmo de Lesk como el

Simpli�cado o el �Simulated anealing�, otros métodos heurísticos como la técnica

de considerar un sentido por discurso y la aplicación de otras medidas de similitud

semánticas como las introducidas en [79, 90].

Investigar y evaluar la posibilidad de trabajar con otras ontologías, diferente a Word-

Net, con el �n de ampliar la colección de conceptos y relaciones jerárquicas. Como,

por ejemplo analizar si es viable el uso de la ontología �Yago�, que con alta cobertura

y precisión combina los datos de Wikipedia y WordNet [116].

Por otro lado, en relación a la IS y al framework desarrollado existe la posibilidad de

que en base a los puntos anteriores pueda ser extendido para que tome en cuenta:

Ampliar el �abanico� de opciones en cuanto al formato del origen de datos para

poder ser adaptado a otras tareas que involucren sólo algunas (y no necesariamente

todas) las tareas de pre-procesamiento semántico.

Adecuar la GUI Pre.Se.Do (originalmente implementada como una aplicación de

escritorio) para que pueda ser usada desde la Web. De este modo, se permite a

usuarios desde cualquier parte del mundo acceder a la aplicación e integrar sus

propios módulos al framework desarrollado.

Profundizar sobre temas vinculados a la Web semántica, cuya idea principal es la

incorporación de metadatos semánticos y ontológicos a la World Wide Web. Esa

información adicional compuesta por el contenido, el signi�cado y relaciones entre

los datos deben ser proporcionadas de manera formal para poder evaluarlas auto-

máticamente y podría signi�car un vínculo relevante con el framework presentado.

Page 117: Universidad Nacional de San Luis Tesis de Maestría en ...personales.upv.es/prosso/resources/RosasMSc.pdf · SEMÁNTICO DE TEXTOS Lic. María Verónica Rosas Director: Dr. Paolo Rosso,

Apéndice A

Acrónimos

AA. Aprendizaje Automático

API. Interface de Programación de Aplicaciones

C. conceptos

CIAO. CIAOSENSO

CIC. CICling-2002

CNB. Complement Naive Bayes

CT. Categorización de Textos

Easy. EasyAbstract

GATE. General Architecture for Text Engineering

GUI. Graphic User Interface

IL. Ingeniería del Lenguaje

IS. Ingeniería de Software

ITSA. ITerative PAntSA

LM. Lesk Mejorado

MD. Minería de Datos

MFS. Most Frequent Sense

NB. Naive Bayes

Page 118: Universidad Nacional de San Luis Tesis de Maestría en ...personales.upv.es/prosso/resources/RosasMSc.pdf · SEMÁNTICO DE TEXTOS Lic. María Verónica Rosas Director: Dr. Paolo Rosso,

Apéndice A. Acrónimos 104

NBM. Naive Bayes Multinomial

NBMU. Naive Bayes Multinomial Updateable

PLN. Procesamiento del Lenguaje Natural

Pre.Se.Do. Pre-procesamiento Semántico de Documentos

RI. Recuperación de la Información

SVM. Support Vector Machine

T+C. términos+conceptos

VSM. Vector Space Model

WN. WordNet

WSD. Word Sense Disambiguation

Page 119: Universidad Nacional de San Luis Tesis de Maestría en ...personales.upv.es/prosso/resources/RosasMSc.pdf · SEMÁNTICO DE TEXTOS Lic. María Verónica Rosas Director: Dr. Paolo Rosso,

Apéndice B

Documentación del Framework

�Es de sentido común elegir un método y probarlo. Si falla, admitirlo francamente y

probar con otro. Pero, sobre todo, intentar algo.

�Franklin Roosevelt. Político estadounidense.

La documentación del framework es esencial para que éste pueda ser reutilizable.

Una buena documentación para las especi�caciones de un framework debe detallar como

mínimo:

El propósito del framework.

La forma de ejecutar dicho framework.

B.1. Propósito

Todo framework tiene el objetivo de capturar las decisiones de diseño comunes a un

tipo de aplicación, estableciendo un modelo para todas ellas, asignando responsabilidades

y estableciendo colaboraciones entre las clases que forman el modelo. La �nalidad de este

trabajo es proveer de un conjunto de módulos que permitan realizar de una manera sencilla

las tareas de pre-procesado semántico de textos para la obtención de los vectores que serán

utilizados en la representación de documentos para diversas aplicaciones de PLN. Entre

las tareas implementadas están los algoritmo de steeming, etiquetado sintáctico (o pos-

tagging) y de desambiguación (WSD). De la misma manera, se facilita el acceso a los

Page 120: Universidad Nacional de San Luis Tesis de Maestría en ...personales.upv.es/prosso/resources/RosasMSc.pdf · SEMÁNTICO DE TEXTOS Lic. María Verónica Rosas Director: Dr. Paolo Rosso,

Apéndice B. Documentación del Framework 106

archivos de la base de datos léxica WordNet, uno de los recursos externo más utilizado

para las tareas vinculadas a PLN. Esto último se logró mediante la adaptación de la API

WordNet .NET (mencionada en la sección 6.1.3) a lenguaje Java por ser la única que

satisfacía los requerimientos de diseño incial del framework.

B.2. Utilización y ejecución del framework

El objetivo principal del framework es pre-procesar un conjunto de archivos de texto

para generar un conjunto de vectores que será utilizado posteriormente para la tarea de

categorización (o cualquier tarea vinculada al PLN). Para utilizar el framework con un

conjunto de textos especí�co el primer paso a realizar es un análisis de los diferentes

algoritmos de POS-tagging y WSD disponibles de acuerdo al problema a solucionar.

Luego de realizado el análisis y seleccionados los algoritmos a aplicar, el próximo paso es

determinar si el algoritmo ya está implementado o necesita ser incluído como un nuevo

módulo en el framework. Para incluir un nuevo módulo, dependiendo de la tarea a incluir

(POS-tagging o WSD) se deberá realizar una acción diferente:

Para un algoritmo de POS-tagging, se debe crear una nueva clase, dentro del paquete

postagger, que herede de la clase POSTagger e implemente el método posTag con la

lógica correspondiente al etiquetador sintáctico a incluir. Un ejemplo simpli�cado

de la implementación se muestra en la Figura B.1.

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 implementación del algorit-

mo a incluir. Además debe incluirse una clase WSD〈nbreAlgoritmo〉 que herede de

Page 121: Universidad Nacional de San Luis Tesis de Maestría en ...personales.upv.es/prosso/resources/RosasMSc.pdf · SEMÁNTICO DE TEXTOS Lic. María Verónica Rosas Director: Dr. Paolo Rosso,

Utilización y ejecución del framework 107

la clase WSD e implemente el método disambiguate con la lógica correspondiente

al desambiguador a incorporar. Un ejemplo simpli�cado de la implementación se

muestra en la Figura B.2.

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 ejecución con

una colección de documentos, se deben con�gurar los algoritmos de POSTagger y WSD

a ejecutar en el archivo, de la siguiente manera:

java preproccess 〈nbreClasePOSTagger〉 〈nbreClaseWSD〉 〈Directorio〉

Donde,

〈nbreClasePOSTagger〉 representa el nombre de la clase que implementa el algoritmo

de etiquetado sintáctico a ejecutar.

〈nbreClaseWSD〉 representa el nombre de la clase que implementa el algoritmo de

desambiguación que se usará en la ejecución del pre-procesado.

〈Directorio〉 es la carpeta raíz que contiene la colección de documentos a pre-

procesar.

El resultado de la ejecución anterior es un conjunto de archivos (que se corresponden

con los de entrada) conteniendo para cada término, su correspondiente �synset� luego de

ser desambiguado por el algoritmo utilizado. Luego, estos archivos deben ser procesados

mediante la ejecución de la clase GetSynsetO�set para obtener, utilizando WordNet, el

Page 122: Universidad Nacional de San Luis Tesis de Maestría en ...personales.upv.es/prosso/resources/RosasMSc.pdf · SEMÁNTICO DE TEXTOS Lic. María Verónica Rosas Director: Dr. Paolo Rosso,

Apéndice B. Documentación del Framework 108

identi�cador único del �synset� para cada término desambiguado. Finalmente, se realiza

la transformación de los dígitos del �o�set� a letras (de la a a la j ) que formarán el vector

de conceptos que será utilizado como datos de entrada a las herramientas que resuelven

distintas tareas vinculadas al PLN.

Page 123: Universidad Nacional de San Luis Tesis de Maestría en ...personales.upv.es/prosso/resources/RosasMSc.pdf · SEMÁNTICO DE TEXTOS Lic. María Verónica Rosas Director: Dr. Paolo Rosso,

Apéndice C

Documentación de Pre.Se.Do

�...se puede pensar a la ingeniería como la ciencia para la gente impaciente�

� Herb Simon. PhD in Computer Science

El desarrollo de una interfaz grá�ca de usuario en lenguaje Java puede ser realizado

de varias maneras, las más utilizadas son a través de: Abstract Windows Toolkit (AWT ),

Swing y Standard Widget Toolkit (SWT ).

AWT soporta un conjunto de elementos con una apariencia más simple comparada

con los de Swing. Pero, al ser una tecnología muy estable y poder ejecutarse en

cualquier lugar donde el Java Runtime Environment esté instalado la convierte en

una buena opción de uso.

Swing proporciona GUIs que tienen apariencia elegante y so�sticada. Es una tec-

nología 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 grá�cos. Hace

posible el diseño 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 opción más rápida de las tres.

Por otro lado, está disponible en forma gratuita un plugin (plug-in), denominado Ji-

gloo, que se añade a Eclipse para diseñar GUIs con AWT, Swing y SWT lo que facilita

Page 124: Universidad Nacional de San Luis Tesis de Maestría en ...personales.upv.es/prosso/resources/RosasMSc.pdf · SEMÁNTICO DE TEXTOS Lic. María Verónica Rosas Director: Dr. Paolo Rosso,

Apéndice C. Documentación de Pre.Se.Do 110

gran parte del trabajo de desarrollo. Jigloo crea y administra el código para todas las

partes de Swing, SWT y manejo de eventos, además permite visualizar la GUI a medida

que se va construyendo. Jigloo es sencillo, rápido, potente, fácil de usar y totalmente inte-

grado con Eclipse. Esto puede llevar a importantes ahorros de tiempo para el desarrollo de

una interfaz grá�ca de usuario y sus tareas de mantenimiento. Jigloo ofrece las siguientes

características generales:

Construye clases Java para interfaces grá�cas de usuario en SWT o Swing, con un

simple editor WYSIWYG.

Edición de dos vías (o de ida y vuelta), los cambios realizados en el editor de

formularios se recogen en el código, y los cambios realizados al código se re�ejan

también en el editor de formularios. Actualización en el momento de los cambios

realizados en ambos editores.

Puede reconocer y manipular el código generado manualmente o por otros IDE (por

ejemplo, NetBeans, JBuilder, etc.).

Pueden agregarse componentes y modi�car la con�guración de los diseños.

Fácil navegación entre los editores de código fuente y de formularios.

Multiselección de los componentes para el ajuste de las propiedades, los parámetros

de diseño, y acciones como copiar, cortar, pegar y borrar.

Manipula la mayoría de las propiedades de los componentes de interfaz grá�ca de

usuario, tales como colores, fuentes, imágenes, tamaños, etc..

Crea controladores para todos y cada uno de los eventos de los componentes.

El código de Java y la forma interfaz grá�ca de usuario se puede ver en un solo

editor (ya sea una fracción de panel) o se puede seleccionar el diseño con solapas o

pestañas.

Por todos los motivos especi�cados anteriormente se decidió utilizar las facilidades de

Jigloo para el desarrollo de una interfaz grá�ca que haga posible interactuar en forma

amigable, rápida y sencilla con el framework desarrollado y descripto detalladamente en

el Apéndice B. Inicialmente, en el framework propuesto en este trabajo, la posibilidad de

Page 125: Universidad Nacional de San Luis Tesis de Maestría en ...personales.upv.es/prosso/resources/RosasMSc.pdf · SEMÁNTICO DE TEXTOS Lic. María Verónica Rosas Director: Dr. Paolo Rosso,

111

Figura C.1: Ventana inicial de Pre.Se.Do

combinar diferentes algoritmos en las distintas etapas era un proceso que se hacía manual-

mente y codi�cando. Es decir, no existía un controlador del �ujo ni entorno grá�co para

ejecutar los diferentes módulos, sino que la salida del anterior debía ser provista y codi�-

cada como entrada al posterior. Como una posible extensión a este framework se decide

implementar dicho �controlador � grá�co. Pre.Se.Do. (las siglas para Pre-procesamiento

Semántico de Documentos) es un entorno grá�co que ha sido desarrollado para facilitar

al usuario el pre-procesamiento semántico de una colección de documentos. Agiliza y sim-

pli�ca la selección y el posterior proceso de las tareas que componen el �ujo de ejecución

descripto en el Capítulo 6 y el Apéndice B.

Figura C.2: Ventana principal de Pre.Se.Do.

Page 126: Universidad Nacional de San Luis Tesis de Maestría en ...personales.upv.es/prosso/resources/RosasMSc.pdf · SEMÁNTICO DE TEXTOS Lic. María Verónica Rosas Director: Dr. Paolo Rosso,

Apéndice C. Documentación de Pre.Se.Do 112

La Figura C.1 muestra la ventana inicial con dos opciones posibles: acceder a la apli-

cación 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 grá�ca 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 semántico de documentos según fue descripto en el

Capítulo 6:

1. Etiquetado Sintáctico (POS-tagger)

2. Analizador Semántico (Word Sense Desambiguation)

3. Obtención de Vectores

4. Obtención de Relaciones en WordNet

Figura C.3: Explorador para seleccionar la colección

El primer paso para comenzar a trabajar con la aplicación es de�nir el origen de los

datos. Por lo tanto, debe seleccionarse en primer lugar el corpus o colección con la que se va

a trabajar, la misma debe ser una carpeta conteniendo las diferentes subcategorías dentro

de las cuales se encontrarán los archivos de textos a analizar que tendrán extensión �.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 colección a analizar o mediante el explorador mostrado en la Figura C.3 pulsando el

botón Explorar en la ventana principal de Pre.Se.Do.. Si la selección de un corpus no ha

sido realizado un aviso de error será mostrado en una ventana de diálogo como el de la

Page 127: Universidad Nacional de San Luis Tesis de Maestría en ...personales.upv.es/prosso/resources/RosasMSc.pdf · SEMÁNTICO DE TEXTOS Lic. María Verónica Rosas Director: Dr. Paolo Rosso,

113

Figura C.4. Finalmente, una vez seleccionado el origen de datos es posible comenzar a

realizar alguna de las tareas implementadas.

Figura C.4: Ventana de diálogo de aviso de error

La primera solapa permite realizar el análisis sintáctico del corpus. Los archivos a

pre-procesar en esta tarea deben tener extensión �.txt� y a la salida se le anexará la

extensión �.pos�. En primer lugar se debe seleccionar el algoritmo con el cuál se realizará

esta tarea. La descripción de los algoritmos MFWN y Brill fue incluída en el Capítulo

6. Es importante destacar que, como se especi�có en el Capítulo 6, el framework está

orientado a la extensibilidad por lo que añadir funcionalidades es una tarea sencilla,

que sólo requiere incluir nuevos algoritmos de las distintas tareas que conforman el �ujo

de ejecución. Al pulsar el botón �Get PosTagger� comienza la ejecución 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 con�rmar la

interrupción o no de la ejecución.

Figura C.5: Ventana de diálogo para Cancelar el proceso

Para veri�car que la tarea está en proceso y llevar un control de los archivos ejecu-

tándose 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 pestaña, mostrada en la Figura C.7, se puede realizar el análisis

semántico de los textos que ya han sido analizados sintácticamente. Para la tarea de

desambiguación es posible optar por alguno de los tres algoritmos implementados: SMF

(most frequent sense), CIAO y Lesk (en su versión mejorada o adaptada). Tanto para

Page 128: Universidad Nacional de San Luis Tesis de Maestría en ...personales.upv.es/prosso/resources/RosasMSc.pdf · SEMÁNTICO DE TEXTOS Lic. María Verónica Rosas Director: Dr. Paolo Rosso,

Apéndice C. Documentación de Pre.Se.Do 114

Figura C.6: Ventana procesando una tarea

la tarea anterior como para las siguientes es posible interrumpir, en todo momento, la

ejecución del procesamiento que para este caso comenzó al pulsar el botón �Get WSD�.

Figura C.7: Solapa para la tarea de WSD

En la Figura C.8 se muestra la solapa que permite realizar la tarea �nal para la

obtención de los vectores que serán 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 términos (Terms), conceptos (Concepts) o términos+conceptos (Terms+Concepts).

Page 129: Universidad Nacional de San Luis Tesis de Maestría en ...personales.upv.es/prosso/resources/RosasMSc.pdf · SEMÁNTICO DE TEXTOS Lic. María Verónica Rosas Director: Dr. Paolo Rosso,

115

Figura C.8: Solapa para la tarea de Vectores

Finalmente, y como un anexo al trabajo realizado, en el Capítulo 7 se considera el

hecho de agregar información complementaria a los vectores a partir de las relaciones je-

rárquicas presentes en WordNet. En este contexto, se decidió incluir una solapa (mostrada

en la Figura C.9) que permite seleccionar entre las relaciones de hiponimia, hiperonimia,

meronimia y holonimia para agregar información semántica a los vectores de conceptos y

términos+conceptos. Es importante aclarar que, varias alternativas pueden ser selecciona-

das para este caso pero que al momento sólo está implementada la relación de hiperonimia

con la cual se realizaron trabajos experimentales.

Figura C.9: Solapa para la tarea de Relaciones

Page 130: Universidad Nacional de San Luis Tesis de Maestría en ...personales.upv.es/prosso/resources/RosasMSc.pdf · SEMÁNTICO DE TEXTOS Lic. María Verónica Rosas Director: Dr. Paolo Rosso,

Apéndice C. Documentación de Pre.Se.Do 116

Page 131: Universidad Nacional de San Luis Tesis de Maestría en ...personales.upv.es/prosso/resources/RosasMSc.pdf · SEMÁNTICO DE TEXTOS Lic. María Verónica Rosas Director: Dr. Paolo Rosso,

Bibliografía

[1] Eneko Agirre and David Martínez. Exploring automatic word sense disambiguation

with decision lists and the web. Corpus Research Repository, cs.CL/0010024, 2000.

[2] Eneko Agirre and German Rigau. Word sense disambiguation using conceptual

density. In COLING, pages 16�22, 1996.

[3] Mikhail Alexandrov, Alexander Gelbukh, and Paolo Rosso. An approach to cluste-

ring abstracts. In NLDB, pages 8�13, 2005.

[4] Gianni Amati, Daniela D. Aloisi, Vittorio Giannini, and Flavio Ubaldini. A fra-

mework for �ltering news and managing distributed data. UCS, 3(8):1007�1021,

1997.

[5] David Pinto Avendaño, Héctor Jiménez-Salazar, and Paolo Rosso. Clustering abs-

tracts of scienti�c texts using the transition point technique. In CICLing, pages

536�546, 2006.

[6] Hanane Azzag, Nicolás Monmarche, Mohamed Slimane, Gilles Venturini, and Chris-

tiane Guinot. AntTree: A new model for clustering with arti�cial ants. In CEC,

pages 2642�2647, 2003.

[7] Douglas Baker and Andrew McCallum. Distributional clustering of words for text

classi�cation. In SIGIR, pages 96�103, 1998.

[8] Satanjeev Banerjee. Adapting the Lesk Algorithm for Word Sense Disambiguation to

WordNet. PhD thesis, Department of Computer Science. University of Minnesota,

2002.

[9] Satanjeev Banerjee and Ted Pedersen. An adapted lesk algorithm for word sense

disambiguation using wordnet. In CICLing, pages 136�145, 2002.

Page 132: Universidad Nacional de San Luis Tesis de Maestría en ...personales.upv.es/prosso/resources/RosasMSc.pdf · SEMÁNTICO DE TEXTOS Lic. María Verónica Rosas Director: Dr. Paolo Rosso,

BIBLIOGRAFÍA 118

[10] Jörg Becker and Dominik Kuropka. Topic-based vector space model. In BIS, pages

7�12, 2003.

[11] Steven Bird. Nltk: the natural language toolkit. In COLING/ACL, pages 69�72,

2006.

[12] K. H. V. Booth. Machine aided translation with a post-editor. In Machine Trans-

lation, pages 51�76. North-Holland, 1967.

[13] Eric Brill. A simple rule-based part of speech tagger. In ANLP, pages 152�155,

1992.

[14] Ted Briscoe and Bran Boguraev. Computational lexicography for natural language

processing. Longman Publishing Group, 1989.

[15] Davide Buscaldi, Paolo Rosso, and Francesco Masulli. The upv-unige-ciaosenso wsd

system. In SENSEVAL, pages 77�82, 2004.

[16] Maria F. Caropreso, Stan Matwin, and Fabrizio Sebastiani. A learner-independent

evaluation of the usefulness of statistical phrases for automated text categorization,

2001.

[17] Noam Chomsky. Aspects of the theory of syntax. MIT Press, 1965.

[18] Yaacov Choueka and Serge Lusignan. Disambiguation by short contexts. Computers

and the Humanities, 19(3):147�157, 1985.

[19] William Cohen and Yoram Singer. Context-sensitive learning methods for text

categorization. ACM Transformation Information System, 17(2):141�173, 1999.

[20] Hamish Cunningham, Diana Maynard, Valentin Tablan, Cristian Ursu, and Kalina

Bontcheva. Developing language processing components with gate version 7 (a user

guide), 2012.

[21] Hamish Cunningham and Donia Scott. Software architecture for language enginee-

ring. Natural Language Engineering, 10(3-4):205�209, 2004.

[22] Hamish Cunningham, Yorick Wilks, and Robert Gaizauskas. Gate-a general archi-

tecture for text engineering. In COLING, pages 1057�1060, 1996.

Page 133: Universidad Nacional de San Luis Tesis de Maestría en ...personales.upv.es/prosso/resources/RosasMSc.pdf · SEMÁNTICO DE TEXTOS Lic. María Verónica Rosas Director: Dr. Paolo Rosso,

BIBLIOGRAFÍA 119

[23] Ido Dagan and Alon Itai. Word sense disambiguation using a second language

monolingual corpus. Computational Linguistics, 20(4):563�596, 1994.

[24] Ido Dagan, Alon Itai, and Ulrike Schwall. Two languages are more informative than

one. In Association for Computational Linguistics, pages 130�137, 1991.

[25] Franca Debole and Fabrizio Sebastiani. An analysis of the relative hardness of

reuters-21578 subsets. American Society for Information Science and Technology,

56(6):584�596, 2005.

[26] Scott Deerwester, Susan Dumais, Thomas Landauer, George Furnas, and Richard

Harshman. Indexing by latent semantic analysis. American Society for Information

Science, 41(6):391�407, 1990.

[27] Xiaowen Ding, Bing Liu, and Philip Yu. A holistic lexicon-based approach to opinion

mining. In WSDM, pages 231�240, 2008.

[28] Susan Dumais, John Platt, Mehran Sahami, and David Heckerman. Inductive lear-

ning algorithms and representations for text categorization. In CIKM, pages 148�

155, 1998.

[29] Marcelo Errecalde, Leticia Cagnina, Diego Ingaramo, and Paolo Rosso. A discrete

particle swarm optimizer for clustering short-text corpora. In BIOMA, pages 93�

103, 2008.

[30] Marcelo Errecalde and Diego Ingaramo. Short-text corpora for clustering evaluation.

Technical report, LIDIC, U.N.S.L., San Luis, Argentina, 2008.

[31] Marcelo Errecalde, Diego Ingaramo, and Paolo Rosso. Itsa*: an e�ective iterative

method for short-text clustering tasks. In IEA-AIE, pages 550�559, 2010.

[32] Marcelo Errecalde, María V. Rosas, Diego Ingaramo, and Paolo Rosso. Clustering

iterativo de textos cortos con representaciones basadas en conceptos. In IBERAMIA,

pages 80�89, 2010.

[33] Marcelo Errecalde, María V. Rosas, and Paolo Rosso. Un framework de ingeniería

del lenguaje para el pre-procesado semántico de textos. In CACIC, pages 587�596,

2010.

Page 134: Universidad Nacional de San Luis Tesis de Maestría en ...personales.upv.es/prosso/resources/RosasMSc.pdf · SEMÁNTICO DE TEXTOS Lic. María Verónica Rosas Director: Dr. Paolo Rosso,

BIBLIOGRAFÍA 120

[34] Christiane Fellbaum. WordNet: An Electronic Lexical Database. Bradford Books,

1998.

[35] Edward Fox, Gerard Salton, and Harry Wu. Extended boolean information retrieval.

Computational and Applied Mathematics, 26(11):1022�1036, 1983.

[36] Norbert Fuhr, Stephan Hartmann, Gerhard Lustig, Michael Schwantner, Kostas

Tzeras, and Gerhard Knorz. Air/x - a rule-based multistage indexing system for

iarge subject �elds. In RIAO, pages 606�624, 1991.

[37] Luigi Galavotti, Fabrizio Sebastiani, and Maria Simi. Experiments on the use of

feature selection and negative evidence in automated text categorization. In ECDL,

pages 59�68, 2000.

[38] William Gale, Kenneth Church, and David Yarowsky. A method for disambiguating

word senses in a large corpus. Computers and the Humanities, 26:415�439, 1992.

[39] Stephen Garner. Weka: The waikato environment for knowledge analysis. In New

Zealand Computer Science Research Students Conference, pages 57�64, 1995.

[40] Julio Gonzalo, Felisa Verdejo, Irina Chugur, and Juan Cigarrán. Indexing with word-

net synsets can improve text retrieval. Corpus Research Repository, volume:cmp-

lg/9808002, 1998.

[41] P. Hayati and V. Potdar. Evaluation of spam detection and prevention frameworks

for email and image spam: a state of art. In Information Integration and Web-based

Applications & Services, 2008.

[42] José M. Gómez Hidalgo. Evaluating cost-sensitive unsolicited bulk email categori-

zation. In SAC, pages 615�620, 2002.

[43] José M. Gómez Hidalgo and Manuel de Buenaga Rodríguez. Integrating a lexical

database and a training collection for text categorization. Computing Research

Repository, volume:cmp-lg/9709004(1):130�148, 1997.

[44] José M. Gómez Hidalgo, Juan I. Giráldez, and Manuel de Buenaga Rodríguez. Text

categorization for internet content �ltering. Revista Iberoamericana de Inteligencia

Arti�cial, 22(1):147�160, 2003.

Page 135: Universidad Nacional de San Luis Tesis de Maestría en ...personales.upv.es/prosso/resources/RosasMSc.pdf · SEMÁNTICO DE TEXTOS Lic. María Verónica Rosas Director: Dr. Paolo Rosso,

BIBLIOGRAFÍA 121

[45] Andreas Hotho, Ste�en Staab, and Gerd Stumme. Ontologies improve text docu-

ment clustering. In ICDM, pages 541�544, 2003.

[46] Diego Ingaramo, Marcelo Errecalde, Leticia Cagnina, and Paolo Rosso. Compu-

tational Intelligence and Bioengineering, chapter Particle Swarm Optimization for

clustering short-text corpora, pages 3�19. IOS press, 2009.

[47] Diego Ingaramo, David Pinto, Paolo Rosso, and Marcelo Errecalde. Evaluation of

internal validity measures in short-text corpora. In CICLing, pages 555�567, 2008.

[48] Diego Ingaramo, María V. Rosas, Amparito Asensio, and Marcelo Errecalde. Tópi-

cos avanzados en categorización de textos. In WICC, pages 75�79, 2009.

[49] George John, Ron Kohavi, and Karl P�eger. Irrelevant features and the subset

selection problem. In ICML, pages 121�129, 1994.

[50] Ralph Johnson. Components, frameworks, patterns. Computational and Applied

Mathematics, 40(1):10�17, 1997.

[51] Daniel Jurafsky and James Martin. Speech and Language Processing: An Introduc-

tion to Natural Language Processing, Computational Linguistics and Speech Recog-

nition. Prentice-Hall, 2000.

[52] Paul Kantor. Foundations of statistical natural language processing. Infomation

Retrieval, 4(1):80�81, 2001.

[53] George Karypis, Eui-Hong Han, and Kumar Vipin. Chameleon: Hierarchical clus-

tering using dynamic modeling. Computer, 32(8):68�75, 1999.

[54] Athanasios Kehagias, Vassilios Petridis, Vassilis Kaburlasos, and Pavlina Fragkou. A

comparison of word- and sense-based text categorization using several classi�cation

algorithms. Intelligence Information System, 21(3):227�247, 2003.

[55] Moshe Koppel, Jonathan Schler, and Shlomo Argamon. Computational methods in

authorship attribution. JASIST, 60(1):9�26, 2009.

[56] Donald Kraft and Duncan Buell. Fuzzy sets and generalized boolean retrieval sys-

tems. International Journal of Man-Machine Studies, 19(1):45�56, 1983.

Page 136: Universidad Nacional de San Luis Tesis de Maestría en ...personales.upv.es/prosso/resources/RosasMSc.pdf · SEMÁNTICO DE TEXTOS Lic. María Verónica Rosas Director: Dr. Paolo Rosso,

BIBLIOGRAFÍA 122

[57] Oh-Woog Kwon and Jong-Hyeok Lee. Web page classi�cation based on k-nearest

neighbor approach. In IRAL, pages 9�15, 2000.

[58] John La�erty and ChengXiang Zhai. Probabilistic relevance models based on do-

cument 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 classi�cation system. In ACM DL, pages 179�187,

1999.

[61] Jochen Leidner. Current issues in software engineering for natural language proces-

sing. In SEALTS, pages 45�50, 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

Systems Documentation, 1986.

[63] David Lewis. Evaluating and optimizing autonomous text classi�cation systems. In

SIGIR, pages 246�254, 1995.

[64] David Lewis and Marc Ringuette. A comparison of two learning algorithms for text

categorization. In DAIR, pages 81�93, 1994.

[65] David Lewis, Robert Schapire, James Callan, and Ron Papka. Training algorithms

for linear text classi�ers. In SIGIR, pages 298�306, 1996.

[66] David Lewis and Alan Smeaton. Use of natural language processing at trec. In

TREC, pages 365�366, 1992.

[67] Dekang Lin. Using syntactic dependency as local context to resolve word sense

ambiguity. In ACL, pages 64�71, 1997.

[68] Andrew K. Lui, Siu C. Li, and Sheung O. Choy. An evaluation of automatic text

categorization in online discussion analysis. Advanced Learning Technologies, IEEE

International Conference, 0:205�209, 2007.

[69] Alpha Luk. Statistical sense disambiguation with relatively small corpora using

dictionary de�nitions. In ACL, page 181 to 188, 1995.

Page 137: Universidad Nacional de San Luis Tesis de Maestría en ...personales.upv.es/prosso/resources/RosasMSc.pdf · SEMÁNTICO DE TEXTOS Lic. María Verónica Rosas Director: Dr. Paolo Rosso,

BIBLIOGRAFÍA 123

[70] Romans Lukashenko, Vita Graudina, and Janis Grundspenkis. Computer-based

plagiarism detection methods and tools: an overview. In CompSysTech, page 40,

2007.

[71] Pavel Makagonov, Mikhail Alexandrov, and Alexander Gelbukh. Clustering abs-

tracts instead of full texts. In TSD, pages 129�135, 2004.

[72] Christopher Manning and Hinrich Schütze. Foundations of Statistical Natural Lan-

guage Processing. The MIT Press, 1999.

[73] Hermann Maurer, Frank Kappe, and Bilal Zaka. Plagiarism - a survey. Universal

Computer Science, 12(8):1050�1084, 2006.

[74] Susan McRoy. Using multiple knowledge sources for word sense discrimination.

Computational Linguistics, 18(1):1�30, 1992.

[75] George Miller. Wordnet: a lexical database for english. Computational and Applied

Mathematics, 38(11):39�41, 1995.

[76] George Miller. Wordnet®, 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. E�cient text categorization, 1998.

[79] Dan Moldovan and Rada Mihalcea. Using wordnet and lexical operators to improve

internet searches. IEEE Internet Computing, 4(1):34�43, 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):54�58, 1994.

[81] Isabelle Moulinier, Gaillius Raskinis, and Jean-Gabriel Ganascia. Text categoriza-

tion : a symbolic approach. In SDAIR, pages 87�99, 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 307�326, 2004.

[83] Nikunj Oza, Robi Polikar, Josef Kittler, and Fabio Roli, editors. Multiple Classi�er

Systems, volume 3541. Springer, 2005.

Page 138: Universidad Nacional de San Luis Tesis de Maestría en ...personales.upv.es/prosso/resources/RosasMSc.pdf · SEMÁNTICO DE TEXTOS Lic. María Verónica Rosas Director: Dr. Paolo Rosso,

BIBLIOGRAFÍA 124

[84] Valentina Muñoz Porras. Herramientas para la extracción de información bajo la

arquitectura gate. Master's thesis, Universidad de Guanajuato, 2008.

[85] Martin Potthast, Alberto Barrón-Cedeño, Benno Stein, and Paolo Rosso. Cross-

language plagiarism detection. Language Resources and Evaluation, 45(1):45�62,

2011.

[86] Martin Potthast, Benno Stein, Alberto Barrón-Cedeño, and Paolo Rosso. An eva-

luation framework for plagiarism detection. In COLING (Posters), pages 997�1005,

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 taxo-

nomy. In IJCAI, pages 448�453, 1995.

[91] Ellen Rilo�. An empirical study of automated dictionary construction for informa-

tion extraction in three domains. Arti�tial Intelligence, 85(1-2):101�134, 1996.

[92] Thomas Roelleke, Jun Wang, and Stephen Robertson. Probabilistic retrieval models

and binary independence retrieval (bir) model. In Encyclopedia of Database Systems,

pages 2156�2160. Idea Group, 2009.

[93] Monica Rogati and Yiming Yang. High-performing feature selection for text classi-

�cation. In CIKM, pages 659�661, 2002.

[94] María V. Rosas, , Marcelo Errecalde Diego Ingaramo, and Paolo Rosso. Clustering

iterativo de textos cortos con representaciones basadas en conceptos. Revista del

Procesamiento del Lenguaje Natural, Sociedad Española para el Procesamiento del

Lenguaje Natural (SEPLN), 46:19�26, 2011.

Page 139: Universidad Nacional de San Luis Tesis de Maestría en ...personales.upv.es/prosso/resources/RosasMSc.pdf · SEMÁNTICO DE TEXTOS Lic. María Verónica Rosas Director: Dr. Paolo Rosso,

BIBLIOGRAFÍA 125

[95] María V. Rosas, Marcelo Errecalde, and Paolo Rosso. Un análisis comparativo de

estrategias para la categorización semántica de textos cortos. Revista del Procesa-

miento del Lenguaje Natural, Sociedad Española para el Procesamiento del Lenguaje

Natural (SEPLN), 45:11�18, 2010.

[96] Paolo Rosso, Francesco Masulli, Davide Buscaldi, Ferran Pla, and Antonio Molina.

Automatic noun sense disambiguation. In CICLing, pages 273�276, 2003.

[97] Peter Rousseeuw. Silhouettes: a graphical aid to the interpretation and validation

of cluster analysis. Computational and Applied Mathematics, 20(1):53�65, 1987.

[98] Yasubumi Sakakibara. Pair hidden markov models on tree structures. In ISMB,

pages 232�240, 2003.

[99] Gerard Salton. The SMART Retrieval System�Experiments in Automatic Docu-

ment Processing. Prentice-Hall, Inc., 1971.

[100] Gerard Salton and Chris Buckley. Term-weighting approaches in automatic text

retrieval. Infomation Processing Management, 24(5):513�523, 1988.

[101] Robert Schapire and Yoram Singer. Boostexter: A boosting-based system for text

categorization. In ML, pages 135�168, 2000.

[102] Hinrich Schütze. Automatic word sense discrimination. Computational Linguistics,

24:97�123, 1998.

[103] Hinrich Schütze, David Hull, and Jan Pedersen. A comparison of classi�ers and

document representations for the routing problem. In SIGIR, pages 229�237, 1995.

[104] Sam Scott and Stan Matwin. Feature engineering for text classi�cation. In ICML,

pages 379�388, 1998.

[105] Fabrizio Sebastiani. Machine learning in automated text categorization. Compu-

tational and Applied Mathematics, 34(1):1�47, 2002.

[106] Fabrizio Sebastiani. Text categorization. In Encyclopedia of Database Technologies

and Applications, pages 683�687. Idea Group, 2005.

[107] Fabrizio Sebastiani. Text categorization. In Text Mining and its Applications to

Intelligence, CRM and Knowledge Management, pages 109�129. WIT Press, 2005.

Page 140: Universidad Nacional de San Luis Tesis de Maestría en ...personales.upv.es/prosso/resources/RosasMSc.pdf · SEMÁNTICO DE TEXTOS Lic. María Verónica Rosas Director: Dr. Paolo Rosso,

BIBLIOGRAFÍA 126

[108] Shahin Shakeri and Paolo Rosso. Spam detection and email classi�caion. Informa-

tion assurance and computer segurity, 6(IOS Press.):155�167, 2006.

[109] Ian Sommerville. Construction by con�guration: Challenges for software engineering

research and practice. In ASEC, pages 3�12, 2008.

[110] Efstathios Stamatatos. A survey of modern authorship attribution methods. JA-

SIST, 60(3):538�556, 2009.

[111] Benno Stein and Sven Meyer zu Eissen. Document Categorization with Major-

Clust. In WITS, pages 91�96, 2002.

[112] Benno Stein, Sven Meyer zu Eissen, and Martin Potthast. Syntax versus semantics:

Analysis of enriched vector space models. In TIR, pages 47�52, 2006.

[113] Ingo Steinwart. Consistency of support vector machines and other regularized kernel

classi�ers. IEEE Transactions on Information Theory, 51(1):128�142, 2005.

[114] Jiri Stetina, Sadao Kurohashi, and Makoto Nagao. General word sense disambigua-

tion method based on a full sentential context. In COLING-ACL, pages 450�460,

1998.

[115] Mark Stevenson and Yorick Wilks. The interaction of knowledge sources in word

sense disambiguation. Computational Linguistics, 27(1):321�349, 2001.

[116] Fabian Suchanek, Gjergji Kasneci, and Gerhard Weikum. Yago: A large ontology

from wikipedia and wordnet. J. Web Sem., 6(3):203�217, 2008.

[117] Geo�rey G. Towell and Ellen M. Voorhees. Disambiguating highly ambiguous words.

Computational Linguistics, 24(1):125�145, 1998.

[118] Kostas Tzeras and Stephan Hartmann. Automatic indexing based on bayesian in-

ference networks. In SIGIR, pages 22�34, 1993.

[119] Florentina Vasilescu, Philippe Langlais, and Guy Lapalme. Evaluating variants of

the Lesk approach for disambiguating words. In LREC, pages 633�636, 2004.

[120] Sonia Vázquez. Resolución de la ambigüedad semántica mediante métodos basados

en conocimiento y su aportación a tareas de PLN. PhD thesis, Departamento de

Lenguajes y Sistemas Informáticos. Universidad de Alicante, 2009.

Page 141: Universidad Nacional de San Luis Tesis de Maestría en ...personales.upv.es/prosso/resources/RosasMSc.pdf · SEMÁNTICO DE TEXTOS Lic. María Verónica Rosas Director: Dr. Paolo Rosso,

BIBLIOGRAFÍA 127

[121] Xia Wang. owsd: A tool for word sense disambiguation in its ontology context. In

ISWC, pages 340�352, 2008.

[122] Erik Wiener, Jan Pedersen, and Andreas Weigend. A neural network approach to

topic spotting, 1995.

[123] Yiming Yang. An evaluation of statistical approaches to text categorization. Infor-

mation Retrievel, 1(1-2):69�90, 1999.

[124] Yiming Yang. A study on thresholding strategies for text categorization. In SIGIR,

pages 137�145, 2001.

[125] Yiming Yang and Christopher Chute. An example-based mapping method for text

categorization and retrieval. ACM Transformation Information System, 12(3):252�

277, 1994.

[126] Yiming Yang and Jan Pedersen. A comparative study on feature selection in text

categorization. In ICML, pages 412�420, 1997.

[127] Yiming Yang, Seán Slattery, and Rayid Ghani. A study of approaches to hypertext

categorization. Intelligence Information System, 18(2-3):219�241, 2002.

[128] David Yarowsky. Word-sense disambiguation using statistical models of roget's

categories trained on large corpora. In COLING, pages 454�460, 1992.

[129] Shiren Ye, Tat-Seng Chua, and Jeremy R. Kei. Clustering web pages about persons

and organizations. Web Intelligence and Agent System, 3(4):203�216, 2005.

[130] Toshio Yokoi. The edr electronic dictionary. Association for Computing Machinery,

38(11):42�44, 1995.

[131] Edward Yourdon. Beyond software engineering: Ten imperatives for the successful

software developer at the end of the decade (abstract). In ICSE, page 538, 1997.

[132] Rémi Zajac, Mark Casper, and Nigel Sharples. An open distributed architecture for

reuse and integration of heterogeneous nlp components. In ANLP, pages 245�252,

1997.

[133] Tong Zhang. Fundamental statistical techniques. In Handbook of Natural Language

Processing, Second Edition, pages 1�21. CRC Press, Taylor and Francis Group, 2010.