Thursday, November 29, 2012

Automatically Constructing a Normalisation Dictionary for Microblogs

Este artículo se basa en el uso de un diccionario para la normalización de mensajes de Twitter debido a que la búsqueda en un diccionario es menos costosa computacionalmente que otros métodos empleados para este proceso. Sin embargo, el enorme número de variantes de palabras existentes dentro de Twitter vuelve prácticamente imposible la construcción manual del diccionario.

Mientras más corta sea la representación de la palabra, mayor será su tendencia a ser ambigua. Mientras más caracteres posean, es más difícil encontrar distintas interpretaciones. En este segundo tipo de escenario es en el que está basado el sistema.

Primero se obtienen datos de Twitter para formar pares en base a la similitud de su distribución. Se forman pares de palabras IV con OOV. Se formarán pares del tipo (tmrw, tomorrow) y otros falsos positivos como (Tusday, Sunday) o (Youtube, web). El siguiente paso es reordenar los pares en base a la similitud existente entre ellos.

Para la similitud entre los pares se desea tomar en cuenta el contexto de las palabras. Para definir el contexto se hicieron pruebas con el tamaño de la ventana de contexto (1 a 3 tokens en ambos lados), el orden del n-gram de los tokens (unigrama, bigrama, trigrama), si las palabras están indexadas para posicionamiento relativo y si se emplean todos los tokens de contexto o sólo las palabras IV.

Se utilizó un corpus de 10 millones de mensajes en Twitter recolectados entre septiembre de 2010 y enero de 2011. Se utilizaron sólo aquéllos en el idioma inglés y se aplicó un tokenizer simplificado para Twitter. Se empleó el diccionario de Aspell para determinar si las palabras eran IV y sólo se introdujeron palabras OOV al diccionario que tuvieran al menos 64 apariciones y una longitud mayor o igual a 4 caracteres. Al formar los pares, sólo se tomaron en cuenta aquellos que son morfo-fonéticamente similares entre sí.

Para evaluar los pares generados, se usó el criterio de 5 anotadores con 10,000 palabras OOV seleccionadas aleatoriamente dentro de los 10 millones de mensajes. Se consideró que debían concordar 3 de los 5 anotadores para que fuese correcto el par. Como resultado se obtuvieron 351 variantes léxicas y 282 palabras OOV correctas (como nombres de productos como iPad).

Los resultados de manejar diversos valores en los parámetros de similitud se presentan a continuación:

image

Para la evaluación se tomaron en cuenta las siguientes métricas:

image

Se compararon los resultados con otros diccionarios y los resultados fueron los siguientes:

image

Han, B., Cook, P., & Baldwin, T. (2012). Automatically Constructing a Normalisation Dictionary for Microblogs. newdesign.aclweb.org, (July), 421–432. Retrieved from http://newdesign.aclweb.org/anthology-new/D/D12/D12-1039.pdf

Syntactic Normalization of Twitter Messages

Los mensajes dentro de Twitter suelen estar escritos con términos coloquiales, palabras repetitivas, palabras nuevas e interjecciones. Algunas palabras se escriben de acuerdo a su escritura fonética (nite en lugar de night) o en acrónimos combinadas con otras palabras (omg en lugar de oh my god). Además los mensajes carecen del uso correcto de mayúsculas y la puntuación. Algunos ejemplos de mensajes se presentan en la siguiente figura:

image

El sistema lleva a cabo una fase de normalización (preprocesamiento) de los mensajes para transformarlos en un inglés formal y que puedan ser analizados por técnicas de procesamiento de lenguaje natural. La arquitectura de esta fase se muestra a continuación:

image

Para la fase de preparación, se extrajeron aproximadamente un millón de tuits del Edinburgh Twitter Corpus (que contiene 97 millones de mensajes). Se removieron los mensajes que no se encontraran en el idioma inglés, es decir que al menos 40% de las palabras contenidas estuvieran en dicho idioma. De los mensajes restantes, se tomaron al azar 1150 mensajes y fueron traducidos a mano por 10 anotadores. Se removieron caracteres como los emoticons y otros elementos que no aportaran información para que las oraciones se tradujeran directamente al inglés. El propósito de esto fue el facilitar el trabajo a las herramientas de procesamiento de lenguaje natural.

Debido a la presencia de palabras que se han vuelto comunes dentro de la jerga de Twitter y que no están presentes en diccionarios, decidieron utilizar un enfoque conservador al corregir errores ortográficos para no cambiar palabras que posiblemente no estaban mal escritas.

Se creó una lista con las abreviaciones más comunes dentro de Twitter y su equivalencia en inglés. Sin embargo, existen abreviaciones que pueden variar su significado de acuerdo al contexto del mensaje por lo que fueron omitidas de la lista para ser posteriormente tratadas por un modelo estadístico de MT (Machine Translation).

Para el caso de signos y caracteres repetidos, se eliminan y si se logra formar una palabra que puede ser reconocida, se mantiene en el texto o de otra forma se elimina por completo.

Para el proceso de MT estadístico se empleó Moses. Moses permite llevar a cabo traducciones entre idiomas al seguir un proceso mediante el cual encuentra la equivalencia de una palabra dentro de un corpus a otro.

La evaluación se lleva a cabo mediante el indicador BLEU. Este indicador requiere como entrada una serie de traducciones llevadas a cabo por humanos para evaluar la traducción de la máquina en una escala de 0 a 1, siendo 0 el peor y 1 lo mejor. Los resultados se muestran a continuación:

image

Según se menciona, al momento de la publicación de este artículo, no existen otras investigaciones similares para comparar la efectividad de la normalización por lo que lo debieron hacer con mensajes SMS. Los resultados se muestran a continuación:

image

Al tener un mejor resultado BLEU de inicio, se sostiene la hipótesis que dice que los mensajes dentro de Twitter contienen menor cantidad de errores ortográficos que los encontrados en los SMS. Algunos ejemplos de los mensajes traducidos se muestran a continuación:

image

En el artículo se muestra que la combinación de un MT estadístico junto a un preprocesamiento, ayuda a eliminar la mayoría del ruido encontrado dentro de los mensajes de Twitter.

Kaufmann, M., & Kalita, J. (2010). Syntactic normalization of Twitter messages. International Conference on Natural Language …, 1–7. Retrieved from http://cs.uccs.edu/~jkalita/work/reu/REUFinalPapers2010/Kaufmann.pdf

Thursday, November 22, 2012

Text Spam Neural Network Classification Algorithm

Este artículo busca hacer una clasificación del texto contenido dentro de los correos electrónicos para determinar si son correos basura (spam). El flujo del procesamiento de mensajes se muestra en la siguiente figura:

image

El conjunto de reglas indicado se refiere a una serie de indicadores propuestos por spamassassin. Mediante el proceso de la figura anterior, se genera una matriz con los correos usados y las reglas que se aplican a ellos, este proceso se emplea principalmente para reducir la dimensión del conjunto de reglas.

El modelo de red neuronal empleado fue el de retropropagación siguiendo el modelo clásico mostrado en la siguiente figura:

image

Para las pruebas se empleó el corpus de Spamassassin del que fueron seleccionados 2,501 correos marcados como interesantes y 500 etiquetados como spam. Procesando los datos con el conjunto de reglas predefinido, se obtuvo una matriz de 568 correos y 328 rasgos de los que se escogieron de manera aleatoria 464 para entrenamiento, dejando los 104 restantes para pruebas.

Los resultados se muestran a continuación:

image

image

image

El artículo terminó estando más enfocado a la manipulación de los parámetros de la red de retropropagación que al proceso que sigue.

Ma, Q., Qin, Z., Zhang, F., & Liu, Q. (2010). Text spam neural network classification algorithm. 2010 International Conference on Communications, Circuits and Systems (ICCCAS), 466–469. doi:10.1109/ICCCAS.2010.5581954

Recurrent Neural Networks for Robust Real-World Text Classification

La clasificación de texto puede ser considerada como el proceso automático de asignación de una o más categorías predefinidas a un documento de texto. El trabajo realizado en este artículo se centra en las capacidades de los modelos simples de redes neuronales recurrentes para clasificar títulos de noticias del Reuters-Corpus.

Las características de una red neuronal recurrente simple (SRN) permite procesar información secuencial, teniendo en cuenta las reglas gramaticales y el contexto de las palabras. Este tipo de consideraciones puede ser valioso ya que el orden de las palabras puede aportar información relevante para la clasificación de la red neuronal. Otra característica del modelo consiste en la habilidad de procesar secuencias con tamaños arbitrarios.

La arquitectura general contiene dos capas de contexto asociadas a dos capas ocultas que extienden la memoria sobre estados previos a través del tiempo. La recurrencia parcial en las capas de contexto es controlada por una función de histéresis. La siguiente figura muestra una visualización de la arquitectura:

image

La entrada de una capa oculta Hn en la red, es afectada por la capa Hn-1 y por la capa de contexto incremental Cn.

Para que el texto pueda ser procesado por algún clasificador, se debe llevar a cabo un mapeo para poder representar las características o rasgos en una forma apropiada.

Se menciona al Vector Space Model (VSM) como la técnica mayormente usada y establecida para llevar a cabo este proceso dentro de Information Retrieval (IR). VSM se encarga de codificar un conjunto de palabras sin tomar en cuenta el orden secuencial.

Por otra parte, la medida estadística más comúnmente usada dentro de IR y minería de texto es TFIDF (Term Frequency-Inverse Document Frequency). TFIDF indica la relevancia de una palabra respecto a un documento.

Se empleó una variación de VSM conocida como vectores semánticos para representar los títulos de las noticias y reducir la dimensión de los datos. Los rasgos son transformados en representaciones vectoriales con pesos para cada palabra de tal forma que el número de dimensiones para cada vector de palabras está en función del número total de clases dentro del corpus. A cada palabra se le asigna un número único decimal en el rango de 0 a 1 que la asocia a una clase en particular, mientras más alto es el valor, mayor es la asociación y mientras menor sea el valor, de igual forma la asociación es menor. Esto se calcula con las siguientes fórmulas:

image

La frecuencia de aparición normalizada de una palabra w en una categoría semántica ci es dada por el valor de v(w,ci), para cada elemento del vector semántico, dividido por la frecuencia de aparición normalizada de la palabra w en el corpus. C indica el número total de clases.

El corpus empleado consiste de 10,733 títulos que están relacionados al menos a un tema. El conjunto de entrenamiento consistió de 1,040 títulos (los primeros 130 de cada una de las 8 categorías). Los 9,693 títulos restantes se emplearon para probar las capacidades de generalización de la red entrenada. Los resultados se presentan a continuación:

image

image

Los resultados muestran que las redes de este tipo son una buena opción para la clasificación de texto. Según los resultados obtenidos, el orden de las palabras no resultó importante y hasta se llegó a obtener mejores resultados al mezclar las palabras.

Arevian, G. (2007). Recurrent Neural Networks for Robust Real-World Text Classification. IEEE/WIC/ACM International Conference on Web Intelligence (WI’07), (2), 326–329. doi:10.1109/WI.2007.126

Thursday, November 15, 2012

Notas de Redes Neuronales:

Las pruebas de las redes neuronales variarán en el pre-procesamiento de los datos:

  • Normalización de texto:
    • Se incluyen pruebas eliminando (al máximo posible) los errores de ortografía, lematización de los verbos, eliminación de abreviaturas, etc.
  • Eliminación de palabras frecuentes:
    • Quitar las palabras que frecuentemente se utilizan en el español y que no aporten información sustancial al contexto del mensaje, se encontró una lista de palabras frecuentes en: http://corpus.rae.es/creanet.html
  • Estandarización de los datos de entrada:
    • Se sigue tratando con la manera de introducir los valores a la red neuronal, se había pensado en utilizar una función de mapeo directo como una tabla hash pero se están analizando las posibles implicaciones.

Nota de datos de región de Twitter

Hemos visto que Semiocast lleva a cabo reportes anuales sobre el crecimiento de Twitter en el mundo. Se tiene estadísticas sobre las características de los usuarios, lugar de origen, tipos de dispositivos empleados, etc.

Al profundizar en la búsqueda de la obtención de datos para determinar el origen geográfico de los mensajes en Twitter, se encontró el siguiente párrafo:

Semiocast used its proprietary platform, databases and tools to process user profiles in order to determine the location of each user using all available information: free-form location declared in user profile, time zone, language used to post tweets and GPS coordinates for the very few concerned tweets. Indeed, more than 2.5 years after Twitter introduced the ability to post tweets with GPS coordinates, this feature is only used in 0.77% of all public tweets.

Al conocer esto, se conoce la posibilidad de no tener una manera trivial de conocer los datos de origen de los usuarios de Twitter a menos que se hayan escrito explícitamente.

Neural Network Approaches for Text Document Categorization

Para este artículo se emplea un perceptrón multicapa como componente base para la categorización de documentos de texto en una gran cantidad de documentos con una gran cantidad de categorías. Se exploran dos arquitecturas, una categórica y otra jerárquica.

Una categorización multinivel de documentos consiste en una estructura jerárquica que contiene enlaces y nodos para representar la relación entre los conceptos de la categoría del documento cubiertos por la clasificación. La primera tope esta conformada por el concepto en general del dominio del documento. Se puede definir a dicha categoría como un conjunto de subcategorías (C1, C2, … Cn) que forman al primer nivel (L1) dentro del sistema. La composición de subcategorías se muestra en la siguiente figura:

image

La red tradicional fue entrenada una metodología de todos contra todos debido al gran número de clases y al gran tamaño del conjunto de entrenamiento. Esta red fue entrenada para comparar sus resultados con los dos enfoques presentados dentro del artículo.

En el modelo categórico, se entrenó a una red neuronal por cada categoría de nivel 1. Cada red tiene distintas salidas incluyendo la posibilidad que un tema no pertenezca a la categoría. Al final, todo se conjunta en un módulo de decisión que se encarga de asignar una categoría en base a un umbral que puede ser modificado. Esta arquitectura se puede paralelizar fácilmente y las estructuras de cada una de las redes neuronales son independientes entre sí así como sus parámetros. También el espacio necesario para esta representación es menor al de una sola red. La arquitectura se presenta en la siguiente figura:

image

El modelo jerárquico consiste en una primera red neuronal para el nivel 1. Esta red comparte un solo espacio y las salidas son binarias (pertenece o no pertenece). Se procede a un segundo conjunto de redes en las que cada una tiene un espacio más específico para la categoría que busca. El entrenamiento del primer nivel se hace de manera rápida y eficiente debido a la salida binaria mientras que para las redes del siguiente nivel se pueden paralelizar y al contar con espacios personalizados, requieren menos recursos que el uso de una sola red. La arquitectura se muestra a continuación:

image

Se utilizaron datos de diagnóstico de la industria automotriz para los experimentos. Se tienen 7 categorías de nivel 1 y cada una tiene un número distinto de datos siendo la segunda la más grande con 911. La siguiente figura presenta una descripción de los datos:

image

Uno de los principales motivos para realizar estas comparaciones consistió en el tiempo requerido para ejecutar los pasos. Los resultados se muestran en la siguiente figura:

image

Por otro lado, se debió llevar a cabo una medición de la confiabilidad de clasificación entre los tres modelos. Los resultados se presentan a continuación:

image

Murphey, Y. L. (2006). Neural Network Approaches for Text Document Categorization. The 2006 IEEE International Joint Conference on Neural Network Proceedings (pp. 1054–1060). IEEE. doi:10.1109/IJCNN.2006.246805

Document Classification and Recurrent Neural Networks

Se habla sobre un sistema de clasificación automática de documentos llamado NeuroClass. Es una herramienta de clasificación sobre texto en lenguaje natural basado en redes neuronales recurrentes.

Los documentos empleados para entrenamiento fueron cinco tipos de veintiocho posibles de la sección de aeropuertos de Transport Canada. Se emplearon aproximadamente 1000 documentos en la construcción del sistema. Las clases son las siguientes:

  • 5151 Establishment & Operations – General
  • 5157 Marketing
  • 5158 Construction & Maintenance – Airside
  • 5160 Emergency Services & Rescue
  • 5164 Light & Power

De los 1000 documentos, 400 fueron empleados en la construcción de un diccionario que contiene aproximadamente 14000 palabras. El diccionario contiene las palabras más empleadas en los documentos junto a la información requerida para convertir a los documentos en secuencias de vectores de probabilidad correspondientes a las palabras. Se guardan las palabras, su frecuencia en todos los documentos y la frecuencia en cada documento.

La primera codificación de los documentos se basó en el uso de los valores ASCII de las letras. Cada palabra era convertida en un vector de números reales en el rango [0,1]. Cada vector era normalizado al dividir cada componente entre 255. Sin embargo, surgió un problema al clasificar las palabras ya que sucedía que en palabras con una longitud similar, con letras cercanas (en valores), no lograban diferenciarse lo suficiente.

La representación corregida consiste en leer los documentos mediante una rutina, palabra por palabra. Cada palabra es buscada dentro del diccionario, al encontrarse se convierte a la palabra en un vector de probabilidades pi al dividir la frecuencia de la frecuencia en cada clase fi entre la frecuencia total de la palabra ftot. Si no se encuentra la palabra dentro del diccionario, se hace uso de una probabilidad de 1/n donde n=5 ya que es el número de clases consideradas para las pruebas.

La primera arquitectura propuesta consistía en dos redes. La primera se encargaba de obtener las palabras claves de cada documento mientras que la segunda llevaba a cabo la clasificación del mismo. Los resultados con esta arquitectura no fueron los deseados y se decidió utilizar una sola red entrenada con las secuencias de vectores de probabilidad que representan las palabras contenidas en el documento. El paradigma de Elman fue elegido en base a experimentos.

El progreso de eficiencia de clasificación fue avanzando gradualmente. Con 500,000 iteraciones, solo se pudo clasificar la clase 5160 al 100%. Con 1,000,000 de iteraciones, sólo la clase 5158 fue propiamente identificada. Después de 1,500,000 iteraciones se empezó a diferenciar entre clases y no fue sino hasta las 3,000,000 de iteraciones que todas empezaron a obtener un 100% de precisión.

Se creó una herramienta de validación estadística para medir la confiabilidad del sistema. Después de asignar una clase a un documento, se calcula un nivel de confianza C(x, y) mediante la siguiente fórmula:

image

En la fórmula, X representa el total del número de palabras en un documento en que pi ≥ 0.55 y Y es el número total de palabras en el documento. Los experimentos que realizaron mostraron que los casos en que C(x, y) ≥ 0.30, la mayoría de los documentos fueron correctamente clasificados mientras que en el caso C(x, y) < 0.30 eran incorrectamente clasificados. La siguiente gráfica muestra los resultados finales:

image

En general, el sistema puede asegurar la correcta clasificación al alcanzar los 3,500,000 ciclos de entrenamiento.

Farkas, J. (1995). Document classification and recurrent neural networks. Proceeding CASCON ’95 Proceedings of the 1995 conference of the Centre for Advanced Studies on Collaborative research. Retrieved from http://dl.acm.org/citation.cfm?id=781936

Thursday, November 8, 2012

POS-Taggers

Revisar características a detalle de los siguientes POS-Taggers:

Neural network for theme recognition in twitter

Tweets -> Normalization -> Label -> Train Neural network -> Works for just 1 theme?
                |-> POS Tagger
                |-> Unsupervised Learning
                |-> Ontology

¿Clasificar en base a la estructura? ¿En base al contenido?

Automatic labeling? -> Entity Relationship? -> Clustering?
                                  |-> Web n-gram?
                                  |-> Wikipedia?

Empirical Study of Machine Learning Based Approach for Opinion Mining in Tweets

El artículo se encuentra basado en minería de opiniones (análisis de sentimientos). La minería de opiniones se define como el estudio computacional de las opiniones, sentimientos y emociones expresadas en texto.

Formalmente definen a una opinión como la siguiente quíntupla:

  • oj – Es el objeto de la opinión, en caso de Twitter, de la entidad o entidades sobre las que se habla en un mensaje.
  • fjk – es la característica del objeto de opinión, en el caso del artículo se ignora esta parte.
  • ooijkl – es la polaridad de la opinión, en este caso es la polaridad del mensaje entero y puede ser: positiva, negativa o neutral.
  • hi – es quien emite la opinión, en este caso quien escribió el mensaje en Twitter.
  • t1 – es el tiempo en que la opinión fue emitida, en este caso el momento en que se publicó el mensaje.

Para la clasificación, se representa al texto como una serie de características. Las características son n-grams formados por las palabras extraídas de los mensajes. Se emplea una representación morfológicamente normalizada. Al utilizar POS n-grams, se emplean los tags que arroja el POS en lugar de las palabras del mensaje. Por ejemplo se menciona el uso de Noun en lugar de batería, Verb en lugar de descargar, etc.

Se menciona que no encontraron una referencia anterior que utilice Twitter en español como cuerpo de estudio por lo que tuvieron que diseñar todo el pre-procesamiento de datos.

Para el cuerpo de datos, se recolectaron 32,000 mensajes correspondientes a una lista de entidades predefinidas sobre marcas de teléfonos celulares. 8,000 mensajes fueron clasificados manualmente como: Positivo, Negativo, Neutral e Informativo.

Los mensajes en Twitter suelen contener errores, en el caso específico del español se mencionan algunos representados en la siguiente figura:
image

Para poder llevar a cabo el análisis se requiere realizar una normalización del texto, en su caso decidieron emplear los siguientes cuatro procesos:

  • Error correction – en errores ortográficos como “muertooo” se corrigen basados en un diccionario de español y un modelo estadístico sobre letras dobles comunes en el idioma. Se hicieron reglas a mano sobre la jerga y las palabras comunes tomadas del inglés. No se detectan otro tipo de errores ortográficos.
  • Special tags – se emplean USER_TAG, WINK_TAG, HASH_TAG, y URL_TAG para remplazar palabras con formato especial conocido para Twitter. Por ejemplo @usuario se cambia por USER_TAG y =) se cambia por WINK_TAG.
  • POS-tagging – Utilizaron freeling como POS-Tagger ya que no solo lleva a cabo el etiquetado, también lleva a cabo una lematización de las palabras para reducir el número de conjugaciones y formas que se pueden presentar.
  • Negation process – las negaciones alteran el sentido de la opinión en el texto, para lidiar con ellas, cada que se presentan, se adhieren a su siguiente palabra. Por ejemplo “no tener” quedaría como “no_tener”.

Para las entradas a los clasificadores se emplean dos vectores. Cada entrada en un vector corresponde a una característica arrojada por el POS-tagger y se emplean: verbs, nouns, adjetives, adverbs e interjections.

De los 8000 mensajes manualmente marcados, 7000 son utilizados para el conjunto de entrenamiento y 1000 para pruebas de los cuales 236 son positivos, 145 negativos, 342 neutrales y 257 informativos.

Para las pruebas se quiso medir el efecto del tamaño del cuerpo, del tamaño de los n-grams, número de clases y balance del cuerpo.

Los resultados obtenidos se muestran en las siguientes figuras:

image

image

image

image

image

image

image

Según los resultados obtenidos, consideraron que los mejores parámetros para llevar a cabo la clasificación en tuits en español constan de lo siguiente:

  • Utilizar unigrams
  • Tener un conjunto de entrenamiento de al menos 3000 tuits
  • Utilizar SVM como clasificador
  • Tener solo dos clases polarizadoras
  • Que el conjunto de entrenamiento y el de prueba sean sobre el mismo dominio

Al emplear estos parámetros, lograron conseguir una precisión del 85.8%.

Los errores más comunes al clasificar los mensajes se dividen en lo siguiente:

  • Mensajes acortados – suceden cuando ni el humano es capaz de etiquetar el mensaje como una de las clasificaciones planteadas debido a la falta de información.
  • Faltas de ortografía – las palabras mal escritas evitan la posibilidad de poder identificar la opinión dentro del mensaje.
  • Humor, ironía y sarcasmo – interpretar el sentido de la oración cuando se emplean este tipo de connotaciones se vuelve complejo y completamente dependiente de un contexto general que a veces no es fácilmente identificable ni por un humano.
  • Errores en el etiquetado – De nuevo, no todos los mensajes se pueden etiquetar fácilmente y se requiere de cierta interpretación que no siempre concuerda con el enfoque original.

Grigori Sidorov, Sabino Miranda-Jiménez, Francisco Viveros-Jiménez, Alexander Gelbukh, Noé Castro-Sánchez, Francisco Velásquez, Ismael Díaz-Rangel, Sergio Suárez-Guerra, Alejandro Treviño, and Juan Gordon. Empirical Study of Machine Learning Based Approach for Opinion Mining in Tweets. LNAI 7630, 2012, pp. 1-14.

Aplicación del Procesamiento de Lenguaje Natural en la Recuperación de Información

La aplicación está basada en Recuperación de Información (RI) que consiste en la acción de recibir una consulta o pregunta de un usuario y devolver un conjunto o serie de documentos ordenados según su relevancia respecto a lo que se pidió. El propósito general consiste en mejorar la calidad de los resultados arrojados al hacer uso de técnicas de procesamiento de lenguaje natural (PLN).

El modelo propuesto se basa en que un documento puede estar representado por sus entidades y las relaciones que existen entre ellas. Las entidades son representadas por sintagramas nominales (Noun Phrase NP). Para las relaciones se emplean cláusulas en las que el verbo es el núcleo y los modificadores son los NP y los sintagramas preposicionales (Prepositional Phrase PP).

El ejemplo que indican para su análisis inicia con la siguiente oración: “Mary Blake arrived late, so Mary Spencer who is the secretary of ARS fined her, the president of ISS, with 1000€”. Se identifican dos entidades: Mary Blake y Mary Spencer, además se puede obtener datos de Mary Spencer (secretary of ARS). Al resolver la referencia anafórica entre her y Mary Blake se puede obtener que ella es the president of ISS. Esto permite que se pueda responder al usuario por consultas por Mary Blake, the president of ISS y descartar otras como Mary Blake, the president of ARS.

Para obtener el conocimiento emplearon el Slot Unification Parser for Anaphora Resolution (SUPAR). El sistema necesita como entrada el resultado de un etiquetador POS tagger (para el idioma español emplearon Maco) y se realiza un análisis sintáctico parcial del texto.

Para implementar las entidades y relaciones dentro del modelo vectorial tradicional de RI, se emplean 3 tablas NPT, PPT y CCT. NPT almacena la información de las entidades NP. PPT Y CCT almacenan información adicional sobre las entidades o las relaciones entre ellas ya sea en sintagramas preposicionales o clausulas. Por ejemplo se maneja la frase architecture in San Louis, la preposición in indica que es muy probable que San Louis sea un lugar en lugar de una persona por lo que se debe dar más puntaje al documento en que una PP aparezca como in San Louis a que aparezca solo. CCT se dedica a guardar información sobre las relaciones entre entidades en base a los verbos. A continuación se presentan ejemplos de las tablas:

image

image

image

image

En general el modelo se utiliza para enfrentar al concepto tradicional del modelo de sacos de palabras que asumen que los términos ocurren independientemente unos de otros al indexar entidades y las relaciones entre ellas.

Se adaptó el modelo vectorial al cambiar los términos por entidades y modificar la medida de similitud al introducir NLPfactor y proximity como valores.

En general los resultados muestran una mejoría respecto al modelo vectorial original en dos idiomas (inglés y español) en consultas largas y cortas. En inglés, las preguntas cortas tuvieron una mejoría en precisión de 35.11% mientras que en las largas fue de 12.96%. En español se lograron mejorías de 27.42% y 37.18% respectivamente. Comparándolos contra el método de coseno pivotado se obtuvo que en inglés se mejoró en 21.12% y 9.91% mientras que en español resultó con 19.76% y 36.67%.

Rojas, Y., Ferrández, A., & Peral, J. (2005). Aplicación del procesamiento de lenguaje natural en la recuperación de información. Procesamiento del lenguaje natural, (1999). Retrieved from http://www.sepln.org/revistaSEPLN/revista/34/02.pdf