Fundamentos de la Recuperación de Información: Preprocesamiento y Modelos Clásicos
El Preprocesamiento de la Información
1. Enfoques de Indexación
El proceso de indexación puede realizarse desde dos enfoques principales: uno basado en métodos no lingüísticos y otro basado en métodos lingüísticos.
- En el primer caso (métodos no lingüísticos), se utilizan técnicas estadísticas para el cálculo de frecuencias y pesos de los términos, el análisis de probabilidades para la determinación de multipalabras y técnicas de agrupamiento.
- En el segundo caso (métodos lingüísticos), se emplean técnicas derivadas del procesamiento del lenguaje natural (PLN), las cuales buscan imitar el comportamiento de los indizadores humanos.
1.1. Indexación basada en Técnicas Lingüísticas
Existen diversas técnicas que se pueden utilizar basadas en el enfoque lingüístico:
- Procesamiento Morfológico-Léxico: La idea principal es convertir un flujo de caracteres en un flujo de palabras. Para ello, se requieren técnicas que traten números, guiones, signos de puntuación, acrónimos, etc. El uso del analizador morfológico permite que el análisis estadístico de frecuencias de aparición de términos se realice sobre datos previamente tratados.
- Procesamiento Sintáctico: Su objetivo principal es describir la estructura de las oraciones que componen los documentos. En el análisis sintáctico se separan las unidades lingüísticas con sentido simple o compuesto y se desambiguan las categorías gramaticales asignadas por el analizador morfológico.
- Procesamiento Semántico: El objetivo del análisis semántico es identificar el significado de las palabras y, a partir de estas, de las oraciones que las forman. Una de las tareas más difíciles es la resolución de la ambigüedad de las palabras, para lo cual se utilizan recursos externos.
1.2. Indexación basada en Técnicas No Lingüísticas
La indexación de base no lingüística se fundamenta en el cálculo de la frecuencia de los términos y su distribución dentro de los documentos. Este análisis tiene como objeto establecer criterios que permitan determinar si una palabra es un término de indexación válido.
- Análisis Léxico del Texto: Consiste en la conversión de una secuencia de caracteres (el texto de los documentos o consultas) en una secuencia de palabras candidatas a ser adoptadas como términos índice por el sistema. Se consideran habitualmente tres tipos de caracteres: de palabra, interpalabra y especiales.
- Eliminación de Stopwords: Las stopwords son palabras de escasa utilidad en la recuperación de información (ej., preposiciones, artículos). Dada su poca utilidad, pueden ser desechadas como términos de indización, lo que permite un considerable ahorro de recursos. En el texto de las consultas, también es conveniente eliminar el contenido de su metanivel (expresiones de formulación de la consulta o preferencias del usuario) que no aportan información a la búsqueda.
- Stemming y Lematización:
- El stemming consiste en la reducción de una palabra a su stem o supuesta raíz mediante la eliminación de sus terminaciones o sufijos. Su objetivo principal es reducir las diferentes formas lingüísticas de una palabra a una forma común o stem, facilitando el acceso a la información y reduciendo el número de términos diferentes del sistema, lo que a su vez disminuye los recursos de almacenamiento requeridos.
- La lematización permite identificar la forma canónica de una palabra, es decir, su lema.
Métricas de Ponderación de Términos
Frecuencia de Aparición de un Término (TF o Term Frequency)
- Denominación: Term Frequency (TF) = frecuencia de aparición del término.
- Descripción: Es la frecuencia de aparición de un término a lo largo de un documento, es decir, el número de veces que este se repite en el documento, lo que permite determinar su capacidad de representación.
- Finalidad: Representativa.
- Casos:
- TF baja: Representatividad elevada.
- TF media: Representatividad media.
- TF muy alta: Muy baja representatividad.
Su cálculo se efectúa una vez el texto del documento ha sido “normalizado”, según los procesos de depuración mencionados en apartados anteriores.
Frecuencia Inversa del Documento para un Término (IDF o Inverse Document Frequency)
- Denominación: Inverse Document Frequency (IDF) = frecuencia inversa del documento para un término.
- Descripción: Es el coeficiente que determina la capacidad discriminatoria de un término en un documento con respecto a la colección, es decir, su habilidad para distinguir la homogeneidad o heterogeneidad del documento a través de sus términos.
- Finalidad: Discriminatoria.
- Casos:
- Poder discriminatorio bajo: El término es genérico y aparece en la mayoría de los documentos.
- Poder discriminatorio medio: El término tiene una discriminación moderada.
- Poder discriminatorio alto: El término es especializado y aparece en pocos documentos.
El factor IDF se calcula aplicando el logaritmo en base 10 de N (número total de documentos en la colección).
Ponderación TF-IDF
El cálculo del peso de un término en un documento es el producto de su frecuencia de aparición en dicho documento (TF) y su frecuencia inversa de documento (IDF).
La Ley de Zipf y la Frecuencia de Aparición
La Ley de Zipf establece que la frecuencia de cualquier palabra es inversamente proporcional a la posición que ocupa en la tabla de frecuencias. Es decir, la frecuencia de aparición de una palabra es inversamente proporcional a su número de orden.
Como se observará, al ser una ley empírica, cuando se calcula la constante K para todos los términos del ranking, no siempre el valor es coincidente con la frecuencia de aparición (TF). Zipf llega a esta conclusión basándose en la ley del mínimo esfuerzo, ya que se supone que el usuario no utilizará términos de búsqueda cuya frecuencia de aparición sea tan baja o tan elevada como para encontrarse en los bordes potenciales del cuadro logarítmico, prefiriendo utilizar un término más común o habitual con una frecuencia de aparición media. En definitiva, esta ley se utiliza para facilitar la representación e interpretación de la distribución de términos.
Técnica de Cortes de Luhn: Cut-on y Cut-off
La expresión logarítmica de los términos de un documento muestra una curva pronunciada con los términos de altísima frecuencia de aparición y, en su inverso, aquellos de muy baja frecuencia de aparición. Este hecho dio lugar al empleo de la técnica de cortes que propuso Luhn en 1958. Esta conjetura ya intuía que los términos situados en los extremos del eje de abscisas y de ordenadas son los que menos poder de resolución o representatividad tienen para un determinado documento dentro de la colección.
La técnica de cortes se puede utilizar para la “poda” del vocabulario de la base de datos. Consiste en la eliminación de:
- Términos de altísima frecuencia de aparición (Cut-on).
- Términos de bajísima frecuencia de aparición (Cut-off).
Las palabras que describen de mejor forma el contenido se encuentran en un área comprendida entre las altamente frecuentes y las de baja frecuencia (es decir, las muy raras). Los términos con alta frecuencia de aparición suelen ser generales. Por su parte, los términos de baja frecuencia son específicos, pertenecen a la terminología especializada de un área de conocimiento, vocabulario técnico, científico o hápax.
Modelos de Recuperación de Información
1. Modelos de Recuperación de Información
La recuperación de información (RI) trata de encontrar documentos relevantes de acuerdo con una necesidad de información de un usuario, expresada como una consulta. Como se ha mencionado, esta tarea es imprecisa debido a las decisiones que se adoptan a lo largo de todo el proceso.
Los modelos de recuperación de información definen las premisas que se tienen en cuenta para determinar si un documento es relevante o no a una necesidad de información. En otras palabras, un modelo determina cómo se realizará la comparación entre la consulta y los documentos para calcular una medida de similitud o similaridad que permita determinar la relevancia de dichos documentos, así como su posición en el ranking de resultados.
1.2. Modelos Clásicos
Existen tres modelos clásicos:
- El modelo booleano
- El modelo vectorial
- El modelo probabilístico
El Modelo Booleano
El modelo booleano está basado en la teoría de conjuntos y en el álgebra de Boole. Su uso es de larga trayectoria y se ha aplicado con frecuencia a sistemas de recuperación de información comercializados y utilizados por los usuarios.
En este modelo, cada documento se representa por un conjunto de términos, donde cada uno se trata como una variable booleana que se determina como verdadero si el término está presente en el documento o falso si no lo está.
El modelo booleano se define por:
- D: Conjunto de términos presentes en los documentos.
- Q: Expresión booleana formada por términos y operadores (OR, AND, NOT).
- F: Álgebra booleana aplicada a los conjuntos de términos y documentos.
- R: Un documento se considera relevante a una consulta si satisface la expresión de consulta. No existe un ranking alguno.
Las búsquedas se dividen en función de los términos que las componen. Primero se recuperan los conjuntos de documentos asociados a cada término. Luego, tales conjuntos se combinan de acuerdo con los operadores booleanos para obtener un único conjunto solución.
Ejemplo de consulta booleana: ballena AND franca AND austral AND (‘Península Valdés‘ OR ‘Puerto Madryn‘) AND reproducción.
Uno de los puntos débiles del modelo booleano es que, en ciertas situaciones, puede ofrecer resultados no óptimos.
Operadores Complementarios
Para aumentar las prestaciones del modelo booleano, se ha enriquecido el lenguaje de consulta. Se pueden distinguir los siguientes operadores complementarios:
- Operadores posicionales
- Operadores de comparación
- Operadores de truncamiento
El uso de estos operadores potencia las capacidades de un sistema de recuperación basado en el modelo booleano, ya que consideran el valor del término dentro de su contexto.
Operadores Posicionales
Los operadores posicionales se dividen en dos clases:
- Posicionales absolutos: Posibilitan buscar un término en un lugar determinado del documento. Trabajan como operadores de campo, permitiendo que el usuario determine sobre qué campo(s) se debe restringir la búsqueda.
- Posicionales relativos o de proximidad: Posibilitan establecer la posición o separación máxima de un término respecto a otro dado. Se basan en el principio de que si dos términos ocurren en un mismo contexto, puede haber una relación significativa.
Operadores de Comparación
Los operadores de comparación determinan un rango de búsqueda, fijando límites para la consulta. Tales límites pueden ser tanto numéricos como alfabéticos. Los operadores correspondientes adquieren formas del tipo «mayor que», «menor o igual que», etc.
Operadores de Truncamiento
En ciertas ocasiones, es necesario buscar por una familia de términos relacionados morfológicamente. Para facilitar este tipo de búsquedas, se han introducido operadores de truncamiento, que definen máscaras de consulta. Se denotan normalmente con símbolos como * o ? (comodines), y su presencia puede sustituir a un carácter o a un conjunto de estos.
Modelo Booleano Extendido y Lógica Difusa (Fuzzy Logic)
Como alternativa al modelo booleano puro, se han propuesto el modelo booleano extendido y el basado en la teoría de la lógica difusa.
El modelo booleano extendido busca establecer un ranking sobre el conjunto de documentos resultantes ante una consulta. Para calcular la posición de cada documento en el ranking, se utiliza la frecuencia de los términos de la consulta en cada documento recuperado, y la relevancia se computa en base a una función de ordenación o ranking.
El modelo de lógica borrosa o lógica difusa (fuzzy logic) se basa en la teoría de conjuntos borrosos o difusos. De manera general, para cada término se define un conjunto difuso donde cada documento tendrá un determinado grado de pertenencia. A diferencia de la teoría clásica de conjuntos (aplicada en el modelo booleano), donde un elemento está o no en un conjunto, en la teoría de conjuntos difusos cada elemento tiene un grado de pertenencia asociado a un conjunto dado, que representa la fuerza de su pertenencia. Los grados de pertenencia habitualmente son valores comprendidos entre 0.0 y 1.0.
Modelo de Espacio Vectorial
El modelo de espacio vectorial, también denominado modelo vectorial, fue desarrollado por Gérald Salton como parte de su sistema SMART (System for Manipulation and Retrieval Text, 1968). Se basa en cálculos que permiten introducir un orden (ranking) en los documentos recuperados en función de su relevancia respecto a la consulta. Plantea la necesidad de utilizar una función de similitud o similaridad entre el documento y la consulta.
En el modelo vectorial, cada documento de la colección está representado por un vector t dimensional, donde t es la cardinalidad del conjunto de términos indexados que representan a un corpus de documentos. Cada elemento del vector corresponde al peso del término asociado a esa dimensión.
En un esquema binario, se asigna a los elementos del vector un 1 si la palabra forma parte del documento o un 0 en caso contrario. No obstante, es de uso común que los pesos asociados a los términos indiquen una medida de relevancia basada en un cálculo de frecuencias. Generalmente, se utiliza la métrica de ponderación TF*IDF, la cual ha sido explicada anteriormente.
Similaridad Consulta-Documento o Documento-Documento
Existen varias formas de calcular la similitud entre dos vectores. La similitud medida por el coseno del ángulo que forman el vector documento y el vector consulta es la más popular de las métricas de semejanza.
El modelo vectorial es ampliamente utilizado, ya que aporta visibles ventajas respecto del modelo booleano. Principalmente:
- El uso de pesos mejora las prestaciones de la recuperación, puesto que permite mostrar documentos parcialmente relevantes.
- La aplicación de medidas de similaridad proporciona un método de ranking de los resultados.
- Mediante esta representación, se puede medir la similitud entre diferentes objetos: documentos y consultas, documentos y documentos, oraciones y consultas, etc.
2. Valor de Discriminación de los Términos
Concepto
El valor de discriminación de los términos (VDT) es un proceso que tiene por finalidad detectar aquellos términos del vocabulario de una colección que identifiquen de mejor manera a los documentos. En otras palabras, se clasifican los términos de un texto según su capacidad para discriminar unos documentos de otros en un corpus.
La determinación del valor de discriminación de un término t (VDT) en una colección C se calcula de la siguiente forma:
- Se calcula la similaridad de cada documento con respecto a los demás de la colección.
- Se repite la misma operación para cada término del vocabulario, pero sin considerarlo en el cálculo.
- A continuación, se computa la diferencia de cada promedio obtenido menos el promedio de la colección.
Si esta diferencia para un término t es negativa, se considera que t no es un buen discriminador y debería ser eliminado del vocabulario. Para valores cercanos a cero, t es bastante frecuente en los documentos de la colección y posee un valor de discriminación bajo. En cambio, para valores grandes superiores a cero, t es un buen término discriminador de documentos.
Los valores de discriminación obtenidos mediante este proceso se pueden dividir en tres grupos:
- Los términos que son pobres discriminadores tienen altos VDT negativos.
- Los términos que son discriminadores indiferentes tienen valores próximos a cero.
- Los términos con altos VDT positivos son buenos discriminadores.
La Densidad del Espacio Documental
El valor de discriminación (VDT) de un término es la capacidad de ese término para separar o distanciar documentos. Es decir, el VDT mide la capacidad de un término para incrementar o reducir la similaridad entre los documentos de una base de datos.
Si consideramos el espacio vectorial como un espacio euclidiano de n dimensiones, los documentos serán puntos de ese espacio y los componentes de los vectores serán sus coordenadas. Existe una relación inversamente proporcional entre la distancia entre dos puntos y el coeficiente de similaridad de los documentos que representan esos puntos:
- Cuando los puntos de este espacio están cerca, los documentos que representan tienen muchos términos de indización comunes con pesos altos, es decir, son temáticamente afines.
- Cuando los puntos están alejados entre sí, los documentos que representan tienen pocos términos de indización (y de poco peso) comunes, lo que indica que son temáticamente poco afines.
Esto nos lleva a la consideración de la densidad del espacio (ligada al valor de discriminación) que conforman los pesos de los documentos indizados en una base de datos. En términos físicos, esto podría llevarnos a las siguientes conclusiones:
- La densidad del espacio que conforman los pesos de los documentos indizados en una base de datos es la expresión de la afinidad temática de los documentos, representada por la totalidad de los términos de indización utilizados para expresar sus contenidos.
- El cálculo de la densidad de ese espacio se realiza mediante la determinación de la suma total de los coeficientes de similaridad (SIM) entre todos los pares posibles de documentos existentes en la base de datos.
Cálculo del Valor de Discriminación
El valor de discriminación se puede calcular de dos formas:
- Cálculo por el método exacto:
- Se calcula la similaridad media (sm) de la colección.
- Se elimina un término de indización de la base de datos.
- Se calcula la similaridad media sin el término de indización (smi).
- La resta de los valores de similaridad obtenidos anteriormente (sm – smi) proporciona el valor de discriminación del término de indización excluido.
- Cálculo por el método aproximado:
- Se calculan los componentes del vector del documento centroide: los componentes del vector son el valor promedio de todos los valores de los vectores que forman el espacio vectorial.
- Cálculo del coeficiente de similaridad (SIM) de cada vector con el centroide y cálculo de la similaridad media (sm), acumulando todos los coeficientes.
- Se van eliminando términos y recalculando la similaridad media para restar a cada una de ellas la similaridad media total.
- El resultado obtenido es el valor de discriminación aproximado del término de indización correspondiente.
3. Estructuras de Datos en Recuperación de Información
En este apartado se presentan las estructuras de datos básicas para la implementación de sistemas de recuperación de información. A partir de los conceptos y las técnicas planteadas en el tema sobre preprocesamiento de textos, resulta necesario contar con estructuras de datos eficientes que soporten las estrategias de búsqueda, de acuerdo con el modelo de RI implementado en cada sistema.
La recuperación de información parte de un conjunto de documentos o colección, los cuales han de ser procesados de alguna forma para responder a consultas de los usuarios. Con el objetivo de lograr mayor eficiencia en la tarea de recuperación, se construyen estructuras de datos auxiliares que soportan la representación lógica de todos los documentos de la colección. De forma genérica, estas estructuras reciben el nombre de índices.
Los índices permiten el acceso directo a los documentos que contienen los términos de la consulta. El contenido del índice está formado por el conjunto de términos que contienen todos los documentos de la colección, es decir, el vocabulario. Puesto que todos los términos de todos los documentos son potenciales claves de búsqueda, el índice, para un sistema de RI, contiene todo el vocabulario.
Otra cuestión importante a tener en cuenta para la creación de índices es que su contenido varía de acuerdo con el modelo de RI que debe soportar. La presencia de pares término/documento es suficiente para el modelo booleano. Además, el archivo inverso es una estructura de datos que contiene información de posición donde cada término ocurre con respecto al inicio del documento.