lunes, 10 de diciembre de 2007

Propuesta PFC

A raíz de una reunión con Dani ha surgido la idea de un PFC para la EUITIO:

La idea del proyecto es el desarrollo y la comparación de diversas implementaciones de tag-clouds (tanto en la interfaz como en el algoritmo de creación). El trabajo a realizar sería un conjunto de páginas web (con el interfaz de páginas paradigmaticas de la web 2.0 tales como Flicker o Delicious) utilizando diversas formas de mostar y crear las tag-clouds y puede que la implementación de algún prototipo de creación de la tag-cloud.

De esta forma podrían observarse las diferentes técnicas de creación y de interfaces en un mismo contexto. Es un trabajo interesante dado que hasta el momento apenas hay documentación sobre el tema y casi no sabemos nada de como usamos o creamos tag-clouds (en muchos casos se usa porque es muy "2.0").

Este proyecto además abriría una vía para la realización de un estudio pormenorizado (a medio plazo) de la usabilidad y eficiencia de las tag-clouds para el acceso a la información.

El desarrollo del proyecto (

lunes, 19 de noviembre de 2007

Automatic Content Analisis (Parte V)

En esta entrada (espero que sea la última de este tema) se van a resumir las partes del artículo relacionados con el asociamiento estadístico de términos y con la búsqueda de información controlada por usuario.

Asociación estadística de términos
En esta parte del artículo se observa cómo el análisis de contenido no ha tenido en cuanta ciertos tipos de asociación entre términos (solo tienen en cuenta relaciones existentes en los diccionarios).

El tipo de relación que se cita a continuación se basa en que dos términos están relacionados entre si cuando son "encontrados" de manera coocurrente frecuentemente en el mismo contexto. A partir de este hecho, dado un vector de conceptos asignado a un documento o a una consulta, puede expandirse añadiendo aquellos conceptos que tienen un nivel de similitud por encima de cierto umbrál.

El artículo explica (después de realizar experimentos) que un sistema de recuperación usando asociación da un grado de efectividad mayor que un sistema basado únicamente en matching de palabras. Sin embargo también defiende que un proceso normal de tesauro es mucho mejor como dispositivo de procesamiento de lenguaje que el método de asocición estadística.

Los sistemas de asociación estadística son por lo tanto más eficientes en los casos en los que no se dispone de un tesauro.
--------------------------------

Busqueda de información controlada por usuario
En el sistema SMART los vectores de concepto generados para cada documento individual en la fase de análisis se comparan con los vectores asignados con las consultas realizadas y aquellos documentos que son encontrados más similares son devueltos al usuario.

El sistema SMART tiene la particularidad de tener múltiples sistemas de análisis de contenidos que devuelven unos resultados u otros en función de los distintos usuarios (algunos centrados en la precisión, otros en el recall). De esta forma es obvio que no puede haber una solución correcta para todos los usuarios.

En este punto del artículo se propone un feddback de tal manera que se realice una búsqueda parcial. A partir de los resultados mostrados se podrá realizar un ajuste de parámetros antes de realizar una segunda búsqueda más refinada.

Hay muchos métodos que se basan en sistemas de feedback. El artículo cita varios de ellos:

1. Diccionario mecánico -> Presenta al usuario una lista de los posibles términos relacionados con la consulta realizada por el usuario. Se sugiere al usuario que puede reformular la pregunta con alguno de los términos nuevos.

El uso de terminos asociados de manera estadística tambien puede proporcionar nuevos potenciales términos de búsqueda, al igual que las clases de un tesauro en caso de usarse.

El problema de este método es que deja la carga de la reformulación de la consulta en manos del usuario.

2. Reformulación automatica de consulta -> A partir de los resultados de una búsqueda previa se realiza una reformulación de la consulta. El usuario (a partir de los resultados de una primera búsqueda) dice, para documento, si es relevante o no para su propósito.

Con esta información se reformula la consulta con los términos de los documentos relevantes y sin los conceptos de sean irrelevantes para todos los documentos escogidos. Este método produce considerables mejoras en la efectividad de la búsqueda.

3. Alterar el proceso de análisis -> Esta solución solo es posible en sistemas como SMART que tengan implementadas varias estrategias de análisis de contenidos. Este método tiene como ventaja añadida el poder elegir qué método de análisis puede ser mejor para cada caso.

miércoles, 14 de noviembre de 2007

Automatic Content Analisis (Parte IV)

Jerarquía de conceptos

El artículo continua explicando cómo se utilizaban desde hace muchos años las jerarquías de conceptos en las bibliotecas. Partiendo de esta base indica que pueden usarse en los sistemas de análisis de contenido para la identificación de información y para propósitos de recuperación.

Usando está técnica, es posible extender busquedas a través de los conceptos de la jerarquía.
(Nota mia) Por ejemplo, en el caso de no encontrar sufucientes documentos con una búsqueda podemos devolver los documentos asociados con su concepto padre.

El sistema SMART incluye la jerarquía de conceptos. Se asume que una consulta al tesauro precede cualquier operación de expansión jerárquica.
(Nota: Las jerarquías de conceptos también pueden representar relaciones de referencia cruzada además de relaciones padre-hijo. Este tipo de relaciones no especificadas reciben una interpretación distinta al resto de relaciones)

En cuanto a la estructura misma de la jerarquía, es lógico pensar que los términos más generales estarán cerca de la raíz mientras que los más especificos más cerca de las hojas. El artículo, además de este razonamiento también dice que parece haber una relación entre la frecuencia de ocurrencia de un término y su lugar en la jerarquía.

Los términos con mayor frecuencia (y por lo tanto "teoricamente" los más comunes) deberían colocarse en un nivel superior a aquellos con menor frecuencia.

Las jerarquías de conceptos dependen de los documentos o los usuarios en sí. Un concepto, en función del contexto, tendrá un concepto padre u otro. Partiendo de esta premisa está claro que no puede haber una jerarquía genérica que sirva a todos los usuarios y circunstancias.

Los sistemas de jerarquía pueden servir para sugerir ampliaciones o reducciones de una consulta o de cierta interpretación.

martes, 13 de noviembre de 2007

Automatic Content Analisis (Parte III)

Diccionarios de frases de manera sintáctica y estadística:

Los métodos considerados anteriormente se basaban en el análisis de palabras sueltas. En este caso se utiliza como unidad la frase en vez de la palabra. El usar un conjunto de palabras tiene ventajas respecto a cada una de sus palabras por separado, una de estas ventajas es que su significado suele ser más especifico y por lo tanto menos ambigüo.

Los diccionarios de frases incluyen normalmente pares, triplas o cuadruplas de palabras de tal forma que identifican combinaciones de conceptos. Estas frases son las que se presuponen más esperadas para indicar el contenido de un tema dado.

Para la construcción de este tipo de diccionarios hay varias técnicas. Una de ellas es basarse en las combinaciones de palabras con una alta frecuencia en los documentos o en las consultas. Por otra parte se puede partir de un tesauro previamente creado.

En el sistema SMART se optó por basar el diccionario de frases en coocurrencias de los conceptos del tesauro.

Principalmente hay dos técnicas de detección de frases. Los métodos estadísticos (que usan las estadísticas de co-ocurrencias entre componentes de frases) y los métodos sintácticos (que se basan en reglas sintácticas para detectar las frases).

(Nota: Según experimentos del artículo las frases suelen tener normalmente dos términos o como mucho tres)

En el caso del análisis sintáctico (dependiente de idioma), para cada frases sintáctica se obtiene no solo la lista de conceptos de los componentes sino también ciertos indicadores sintácticos de tal manera que se pueden observar las relaciones sintácticas entre componentes.

El artículo, apoyado en experimientos, defiende que el uso de técnicas de procesamiento de frases son más efectivas que el uso único del tesauro.

Por otra parte también concluye que el uso de técnicas estadísticas o sintácticas no tienen una gran diferencia de efectividad, sin embargo, el análisis sintáctico necesita mucha mayor potencia computacional.

(Nota: Otro problema es que el análisis sintáctico es diferente para cada idioma)

lunes, 12 de noviembre de 2007

Automatic Content Analisis (Parte II)

Los diccionarios de raices y la lista de sufijos:
Una de las primeras idéas para la recuperación de la información fue el uso de las palabras contenidas en los documentos y de las búsquedas para propositos de identificación de contenidos. El documento además defiende que los métodos de matching de vocabulario son satisfactorios para ciertos tipos de usuarios.

A continuación se citan algunas "entidades" usadas en los métodos de matching:

a. El diccionario de palabras inglesas

b. Vocabulario omitiendo la "s" final para equiparar singulares a plurales y la tercera persona de los verbos

c. Mediante una técnica más refinada pueden convertir cada palabra a su raíz eliminando prefijos y sufijos típicos antes de hacer el matching.

Cualquiera de las tres técnicas anteriores pueden ser aplicadas a todo el texto o a ciertas palabras comunes (el resto no se tendrá en cuenta).

(Nota: Hay que recordar que estos métodos, tal y como estan expuestos son dependientes completamente del idioma)

Los términos pueden tener cierto peso asociado en función de su importancia en un texto (normalmente proporcional a la frecuencia de aparición). En el caso del sistema SMART la decisión fue aplicar al menos una normalización mínima realizando stemming, usar una lista de exclusión para eliminar palabras comunes y dar a cada palabra un peso proporcional a su frecuencia en el texto. Del mismo modo el sistema tiene ciertas reglas morfológicas incorporadas para la correcta obtención de la raíz.

(Nota: En el caso del uso del stemming obviamente el peso es con relación a la frecuencia de la raíz)

El texto concluye en la parte del sistema de stemming que en un sistema sencillo de recuperación, dado un conjunto de raíces y consultas de búsqueda pueden ser usados directamente como indicadores de similitud de contenido aunque también pueden usarse otros métodos más sofisticados como se verán a continuación.

-----------------------------------
Diccionario de sinónimos (Tesauro)

Un tesauro es un conjunto de palabras (o raíces de palabras) agrupados en categorias, llamadas clases. Una de las posibles implementaciones es relacionar cada clases conceptual con algún número.

Al construir los tesauros se dan tres tipos de problemas:
1. Decidir qué palabras se incluyen
2. Decidir qué tipo de categorias de sinónimos deben usarse
3. Decidir dónde debe aparecer cada palabra en la estructura del tesauro

Por supuesto no existe una configuración "mágica" válida para todos los casos por lo que dicha configuración depende del contexto y del propio tesauro. Aún así el texto (basandose en experimentos con tesauros) defiende que ciertos tipos de tesauros son más efectivos que otros.

En particular defiende el uso de tesauros en los que los términos con alta frecuencia deban ser eliminados o deban aparecer por si mismos en clases de concepto. Los términos con baja frecuencia deben agruparse en clases con otros términos de baja frecuencia.

Por último los términos con poca significación técnica deben ser eliminados y los términos ambigüos solo deben aparecer en aquellas clases en las que pueden llegar a necesitarse en la práctica.

El peso de un concepto es determinado tanto por el número de palabras mapeadas en la clase como por el tipo de tesauro utilizado. El peso de palabras ambigüas mapeados en más de una clase es dividido entre el número posible de clases.

La filosofía del sistema SMART se podría resumir en que no es necesario eliminar asignaciones ocasionales incorrectas dado que está diseñado para asignar un número grande de conceptos de los cuales una gran parte se espera que estén bien asignados.

miércoles, 24 de octubre de 2007

Automatic Content Analisis (Parte I)

Acabo de terminar de leer por encima el artículo "Automatic Content Analysis in Information Retrieval" y voy a realizar una segunda lectura más detenida mientras resumo su contenido en el blog.

Como en los anteriores casos de una introducción sobre IR añadiendo en este caso una división conceptual de los "trabajos" en los sistemas de IR:

1. Analisis de información: Identificación para cada término almacenado y cada búsqueda de indicadores de contenidos.
2. Búsqueda y recuperación: Operación de matching entre los indicadores de contenidos de los términos almacenados y los de las consultas. También incluye la selección (recuperación) de aquellos elementos que tienen un nivel de similitud mayor de cierto grado con la consulta.

El análisis de contenido puede ser muy exhaustivo (muchos indicadores de contenido muy especídicos) o puede ser poco detallado dando un conjunto pequeño de indicadores muy generales.

En el primer caso se daría sistema de IR cuyas respuestas tendrían precisión y poca exhaustividad, al contrario que el el segundo caso. Llegados a este punto se definen ambos términos:

Precisión(precision): Porcentaje de documentos relevantes respecto de los recuperados.
Exhaustividad (recall): Porcentaje de documentos recuperados de los relevantes totales.

Lo normal es intentar tener un recall razonablemente alto manteniendo la precisión en uno intervalo razonable.

--------
El siguiente punto del artículo es la presentación de los problemas del analisis de contenido, definiendo dos categorias de sistemas automáticos de procesamiento de texto:

1. Text inference systems: Sistemas de procesamiento que permiten confirmar o negar hipótesis en función del texto procesado.

2. Text retrieval systems: Sistemas de procesamiento que indican si el texto procesado puede incluirse en la descripción del usuario de lo que quiere.

Funcionamiento de un sistema de analisis de contenido:
1. Introducción de consultas
2. Conversión de consultas en componentes aceptados por el sistema
3. (resultado del punto anterior) Obtención de conjuntos de indicadores de contenido (vectores de concepto).
4. Comparación de los vectores de las consultas con los indicadores de contenido del sistema de información dado
5. Se extraen los docuementos cuyos vectores coinciden (match) lo suficientemente bien con los de las consultas.

----------------------
Características del sistema SMART

SMART es (en 1968) un sistema autónomo (completamente) de recuperación de información. No necesita ningún tipo de interacción por parte de personas, al contrario de otros sistemas que necesitaban la asignación de terminos del índice, usando para ello principalmente la frecuencia de ocurrencia de ciertas palabras o frases en el texto de los documentos.

El sistema utiliza varias técnicas tales como procedimientos de matching de palabras simples, diccionarios de sinónimos, organización jerárquica de identificadores, generación de frases de manera estadística y sintactica, ...

Una de las características del sistema es que es controlado por el usuario. De esta manera puede configurarse para producir respuestas más cercanas a las esperadas. El sistema se creó como un sistema experimiental de IR e incorpora muchos módulos, algunos de los más interesantes son:

a). Sistema de stemming para el lenguaje inglés: Permite obtener raíz y sufijos de las palabas.

b). Diccionario de sinónimos (también conocido como tesauro): Cambia sinonimos por un "número de concepto" sirviendo además como identificadores de concepto para el sistema.

c). Organización jerárquica de identificadores: A partir de los identificadores del tesauro es posible realizar una organización jerárquica. Una vez realizado esto podemos obtener, para un término dado, sus padres, hijos o hermanos en la jerarquía. Esto permite especializar (hijos), generalizar (padres) y extender con referencias cruzadas (hermanos) las consultas.

d). Estadísticos para calcular coeficientes de similaridad a partir de coocurrencias de conceptos en las sentencias de la colección.

e). Métodos de analisis sintáctico para comparar las sentencias de documentos y consultas con un diccionario de estructuras sintácticas.

f). Métodos estadísticos de matching entre frases

g). Sistema de actualización de diccionarios.

El sistema SMART esta diseñado de tal manera (los detalles no importan) que permite comparar los resultados de los distintos métodos utilizados. En el resto del artículo se presentan tablas y resultados en distintos contextos.

miércoles, 17 de octubre de 2007

Tercer artículo (Parte V)

En la que será la última entrada del blog sobre este artículo se indican tres medidas de similitud en el espacio del índice además de conceptos de distancia en el espacio de documentos y estrategias de búsqueda.

Las tres medidas de similitud en el espacio del índice permiten seleccionar nuevos términos sobre los que hacer consultas similares a la dada.

1. Al primer heurístico se le conoce como la probabilidad condicional. Definimos N(Ij) como la frecuencia con la que cada término es usado para etiquetar un documento y N(Ij,.Ik) como la frecuencia con la que ambos términos (juntos) son usados para etiquetar documentos. A partir de esta definición obtenemos P(Ij.Ik) que es la probabilidad de que si Ij está asignado a un documento Ik también lo está:

P(Ij, Ik) = N(Ij.Ik) / N(Ij)

Al repetir este proceso para cada par de términos se conoce qué términos son similares a otros, pero sigue sin tenerse una medida cuantitativa. Definimos pj como:

pj = P(Ij, Ij'); Siendo el Ik que hace P(Ij, Ik) máximo para un Ij dado.

Normalizamos pj sobre los términos usados en la consulta. A partir de este momento reemplazamos wi(Ii') [el peso asignado a Ij' para el documento i-ésimo) por la normalización de pj multiplicada por wi(Ii').

Este es un método elemental basado en relaciones estadísticas entre términos del índice.

2. El segundo heurístico se conoce como probabilidad condicional inversa. En este caso se calcula la medida de similitud de los términos hacia el término buscado (Ij). Al calcular el máximo de P(Ik, Ij) variando Ik obtenemos la etiqueta que más fuertemente implica al término dado Ij.

En este heurístico se define:
pj = P('Ij, Ij) ; Siendo 'Ij el Ik que hace P(Ik, Ij) máximo para un Ij dado.

A continuación al igual que en el punto anterior debe normalizarse el resultado.

3. El tercer heurístico es el más prometedor de los comentados. Se conoce como los coeficientes de asocicación entre predicados.

Partiendo de las etiquetas Ik e Ij se parte la biblioteca en cuatro particiones (nota: La sintaxis de complemento sería una ralla sobre los términos, por problemas con el editor se utilizara "!" para preceder al término):

1. Documentos indexados por Ik e Ij (Ij.Ik)
2. Documentos indexados por Ij pero no por Ik (Ij.!Ik)
3. Documentos indexados por Ik pero no por Ij (!Ij.!k)
4. Documentos no indexados por ninguno de los términos (!Ij.!Ik)

En este punto se deduce que Ij es estadísticamente independiente de Ik si:
P(Ij, Ik) = P(Ik)
P(In.Ik) = P(Ij)*P(Ik)
N(Ij.Ik) = N(Ij)*N(Ik)/n

Para cada par de valores observamos el exceso de N(Ij.Ik) sobre su valor de independencia.
a(Ij,Ik) = N(Ij.Ik) - N(Ij)*N(Ik)/n

Definimos sobre las condiciones anteriores un coeficiente cuyo rango varía entre -1 y 1 de tal manera que es 0 en el caso de que a(Ij,Ik) sea 0:

Q(Ij,Ik) = (N(Ij.Ik) * N(!Ij.!Ik) - N(Ij.!Ik) * N(!Ij.Ik)) / (N(Ij.Ik) * N(!Ij.!Ik) + N(Ij.!Ik) * N(!Ij.Ik))

El algoritmo, dada una consulta R = Ij, selecciona Ik (distinto de Ij) con el máximo coeficiente Q(Ij,Ik). El valor debe de estar comprendido entre 0 y 1 o ningún término será seleccionado. Del mismo modo que se hacia en los anteriores heurísticos, debe normalizarse el resultado multiplicando wi(Ik) por el valor de Q(Ij, Ik).

Los tres heurísticos que se han citado son heurísticos de profundidad uno. Si se volviera a utilizar el heurístico (con el valor Ik) tendríamos heurísticos de profundidad dos en cadena,... En el caso de reuilizar el heurístico con el valor Ij en vez de Ik tendríamos heurísticos de profundidad dos concentrada (two-deep hub search). Para configuraciones más complejas podrían cambiarse las medidas de cercanía para las posteriores búsquedas, construyendo así sistemas de búsquedas todo lo complejas que se quieran.

---------------------------- -----------------------

Heurísticos en el espacio de documentos (edición del 24 Oct 07)

Se desea tener una clase de heurísticos (extension heuristics) mediante los cuales se pueda extender una clase de documentos atendiendo a dicha clase (que sería una "pista" sobre la intención de búsqueda del usuario).

A(Di, Dj) = Distancia entre documento i y documento j

Partiendo de wi(R) y A(Di, Dj) podemos definir la distancia entre una petición y un documento Di como:

d(R, Di) = -log wi(R)

miércoles, 10 de octubre de 2007

Tercer artículo (Parte IV)

Medida de Relevancia.

Partiendo de los problemas de las técnicas convencionales se puede concluir que, dado un interes de un usuario (representado por sus términos de consulta), hay una probabilidad de que un documento dado (representado por los mismos términos) sea relevante realmente para dicho usuario.

Las técnicas convencionales usaban medidas lógicas (si-no) entre los términos del índice y los documentos siendo mucho más razonable el uso de una medida probabilística.

Dado un indice con pesos es más posible caracterizar con más precisión el contenido de un documento. Estos pesos serán utilizados para obtener las medidas de relevancia de los documentos.

En el siguiente punto del artículo se explican conceptos de la relevancia y la "cantidad de información" (amount of information) . El problema en este punto es definir de una manera precisa el concepto de relevancia y el poder tener una medida cuantitativa de esta. Al menos deberiamos ser capaces de tener una medida comparativa para ordenar los documentos.

Explicar la noción de relevancia es similar a explicar el concepto de cantidad de información (concepto básico en teoría de la comunicación). En el libro "The Mathematical Theory of Communication" Shannon explica la cantidad de información de un mensaje dado en términos probabilísticos de una manera similar a como se calcularía la relevancia de un texto.

P(A,B) simboliza la probabilidad de que un evento de la clase B ocurra con referencia a un evento de la clase A.

Di: Obteniendo el documento i-ésimo y buscando su relevancia
Ii: Pidiendo información sobre documentos designados con el término j-ésimo del índice
A: Solitidando información de la biblioteca

Así puede decirse que P(A.Ij,Di) = La probabilidad de que una petición de usuario sobre Ij sea satisfecha con el documento Di. De esta manera si P(A.Ij,D1) > P(A.Ij,D2) entonces D1 es más relevante que D2.

Utilizando nociones de calculo de probabilidades (para toda petición Ij P(A, Ij) es una constante) se puede llegar a la conclusión de que:

P(A.Ij,Di) = (P(A,Di)*P(A.Di,Ij)) / P(A,Ij)
P(A.Ij,Di) ~ P(A,Di)*P(A.Di, Ij)

Siendo P(A.Di,Ij) la probabilidad de que si se requiere buscar información del tipo contenido en el documento se hará formulando una petición con Ij.

A la probabilidad P(A.Ij, Di) se la llamara número de relevancia del documento i-ésimo respecto a la petición dada.

Partiendo de la hipótesis de que el peso de una etiqueta para un documento puede ser interpretada como un estimador de P(A.Di, Ij) entonces:

P(A.Ij, Di) = aj * P(A, Di) wij;
wij es el grado en el que el término j-ésimo se aplica al i-ésimo documento
P(A, Di) es la probabilidad del documento Di
aj es el factor de escalada

Podemos definir el peso de una etiqueta como Wij = estimación de P(A.Di, Ij). Este término se conoce como el peso modificado ("modified weight").

Como resumen de esta pequeña as parte decir que las estadísticas de biblioteca nos dan P(A, Di), los pesos (una vez escalados) estiman P(A.Di, Ij) por lo que podemos hallar P(A.Ij, Di) por lo que se pueden ordenar los documentos en función de la relevancia.

--------------------- ------------------------
Elaboración de un proceso de selección automático

Dada una petición esta selecciona una clase de documentos a través de una función de matching. El articulo propone dos métodos por el cual se extiende la clase C en la dirección más probable:

1. Transformar la petición R en R' de tal forma que R' selecciona una clase de documentos C' que contiene más elementos (y más elementos relevantes) que C.

2. Usar la clase C para generar una nueva clase C'' en función de parecidos semánticos entre terminos y documentos.

Un conjunto de reglas que indican cómo transformar una consulta en una clase de documentos obtenidos es una estrategia. Dicha estrategia involucra varias técnicas de medida de similitudes entre términos y documentos. En este punto se explican con un mayor detalle las dos tecnicas anteriores:

1. Definimos f(R) = C siendo f una función que transforma consultas de entrada en una clase de documentos. El problema a solucionar es agrandar C para obtener más documentos relevantes y menos irrelevantes. Suponiendo que R' es una consulta similar a R definimos la función f' como sigue:

f'(R) = f(R) v f(R') = C v C'

Obviamente debemos definir una medida de similitud en el espacio de consultas. Suponiendo que tenemos una medida de similitud f'(R) sería la unión de todas las clases de documentos obtenidos a partir de una consulta R' tal que la similitud entre R y R' fuera mayor que cierto umbral (e)

2. Del mismo modo para la técnica dos, si tenemos una medida de la distancia entre documentos, podemos definir:

f''(R) = C''

-------------------------------- -----------------------------

Agrupamientos en el espacio de índices

Entre los términos del índice pueden darse dos tipos de relaciones.

1. Relaciones semánticas: Que van desde los sinónimos hasta relaciones del tipo "parcialmente implicado por" e "implica parcialmente". Este tipo de relaciones se basa en el contenido semántico de los términos.

2. Relaciones estadísticas: Basadas en la frecuencia relativa de ocurrencias de los términos usados como índices.

Las relaciones semánticas se basan sólamente en el significado de los términos, de manera independiente del contexto del documento. Por su parte las relaciones estadísticas se basan en el contenido de los documentos (ej: "Shannon" y "information theory" posiblemente tengan una relación estadística en textos informáticos pero no una relación semántica).

Una vez identificadas estas relaciones hacen falta reglas para moverse en el espacio de los puntos conectados. Al este conjunto de reglas se le conoce como heurístico. Básicamente el heurístico indica (A partir de una consulta) que términos "ver" y "ver también". También indica la profundidad de la búsqueda y cuando parar el algoritmo (en función normalmente del número de documentos obtenidos y su relevancia).

El conjunto de dispositivos, reglas, heurísticos, ... que permite pasar de una entrada (consulta) a una salida (clases de documentos recuperados) es una estrategia.

Tercer artículo (Parte III)

Aproximación convencional para un sistema de recuperación de información.

El artículo parte del hecho de que las máquinas no pueden "leer" textos entendiendo si el contenido se relaciona con una consulta dada por lo que es necesario el uso de etiquetas de identificación, esto es el sistema de índice. El índice funciona como una etiqueta por la cual puede identificarse el contenido del documento en cuestión. Cabe destacar que los elementos del índice pueden ser términos simples (palabras) o conjuntos de estas (frases).

En principio un indexador lee un documento y selecciona los términos del índice desde el "vocabulario de biblioteca", relacionandolos luego con dicho documento. De esta forma un usuario debe identificar sus necesidades como términos de una consulta, consistiendo en términos del índice utilizados con combinaciones lógicas.

Dado el índice para un documento dado y el conjunto de términos de una consulta el problema consiste en buscar e intentar corresponder dichos términos en la forma en la que se define en la consulta.

El uso de índices tiene un problema. La correspondendia entre el índice de un documento y su contenido no es exacto dado que es muy dificil saber el contenido de un texto a partir de un conjunto de palabras (o frases). Un conjunto de términos puede abarcar muchos posibles temas. Por contra, un mismo tema de conocimiento puede ser denotado por diferentes términos. El artículo, a partir de esta situación, dice que hay "ruido semántico" en los términos del índice.

Por otra parte tampoco hay una relación exacta entre la petición de un usuario y su intención por lo que podemos concluir que hay ruido semántico tanto en la indexación de documentos como en las consultas de información.

Para reducir el ruido semántico se han realizado trabajos especializando los sistemas para tipos específicos de bibliotecas y utilizando el concepto de glosario de ideas (de esta manera puede eliminarse gran parte de la ambiguedad).

La consecuencia del ruido semántico es que en los sistemas convencionales al realizar la correspoendencia de términos pueden aparecer documentos irrelevantes o, lo que es peor, no aparecer documentos relevantes.

Según el artículo el problema de la representación fidedigna de un documento a partir de etiquetas para posteriores consultas o comparaciones entre documentos está sin resolver (documento de 1960).

La técnica que se presentará a continuación den el documento (Indexación probibilística) proporciona un ranking de documentos que satisfacen la consulta, ordenados por su relevancia.

Tercer artículo (Parte II)

El artículo comienza indicando la dificultad del procesamiento del lenguaje natural de manera mecánica. Posteriormente se presenta el "problema de la biblioteca" haciendo énfasis en que el problema como tal no reside en el tamaño ocupado (hay soluciones para ello) sino en la identificación del contenido de los textos. También se cita la dificultad en determinar la "cercania" de dos artículos respecto de un tercero desde el punto de vista del significador. El último problema relacionado que se cita es el problema de especificar si un texto es o no relevante (o en que grado) respecto a una consulta.

El artículo parte de la idea de que el problema es la identificación precisa de la información contenida en los documentos. En este punto se introduce el concepto aritmético (respecto a otras soluciones que son de naturaleza lógica) de relevancia, siendo una probabildad de la relevancia de un documento para un usuario.

La relevancia permite la creación de un ranking de documentos pero hay que tener en cuenta también como se hara la selección de los documentos a evaluar. Para ello hace falta definir medidas (probabilísticas) de cercania semántica. Se definen medidas de cercanía entre documentos y entre consultas. En este punto el artículo se divide en varios apartados tratando en cada uno lo siguiente:

1. Aproximación convencional al problema de la biblioteca.
2. Exposición de la solución dada por el indexado probabilístico.
3. Estudio sobre los experimentos preliminares para probar las nuevas técnicas.

Tercer artículo (Parte I)

El artículo del que se escribe el resumen en "On Relevance, Probabilistic Indexing and Information Retrieval" de M. E Maron y J. L. Kuhns.

Dado que es algo más amplio haré varios resumenes sobre dicho artículo. En esta primera parte únicamente se comenta el contenido del abstract.

El articulo introduce una nueva técnica basada en la noción de relevancia. Este concepto es tomado como clave en la teoría de recuperación de información. Para la comparación se usa un concepto de relevancia explicado en términos probabilísticos.

La técnica de "Indexado Probabilístico" devuelve para una consulta dada y cada documento una medida (relevancia) probabilistica que indica la probabilidad de que el documento satisfaga la consulta.

El articulo continua citando que en los sistemas convencionales las referencias cruzadas ("see") solamente responde al parecido semántico. Por contra, en los sistemas de "parecido" entre términos de manera estadística la máquina puede modificar la propia consulta para incrementar la probabilidad de obtener documentos relevantes.

martes, 9 de octubre de 2007

Siguiente lectura

Poco a poco voy entrando en el tema de la recuperación de información y ya he comenzado a leer el tercer artículo. Espero tener un resumen (algo más largo que los anteriores dado que son 30 páginas de texto) a finales de esta semana a más tardar.

Mañana tengo toda la mañana libre y hay tres horas reservadas para el proyecto así que espero avanzar bastante.

lunes, 8 de octubre de 2007

Resumen del 2º articulo

El artículo aborda las posibilidades de que una máquina simule la aplicación de patrones "humanos" para seleccionar las sentencias clave de un texto dado.

La introducción del artículo trata sobre la incapacidad de los investigadores de asimilar la gran cantidad de nueva información generada cada poco tiempo. Así, define el principal problema del procesamiento y recuperación de información a la "velocidad de diseminación y al control efectivo del rápido crecimiento". Otro punto interesante de la introducción es la definición de la composición de la información (en textos escritos en lenguaje natural) como "partes de información no organizadas y no relacionadas".

Para intentar minimizar el problema el control de la información surgen 2 opciones distintas:
1. Utilizar un "lenguaje máquina" más sencillo de mecanizar
2. Observar las características del texto en sí haciendo que la máquina seleccione la información interesante por sí misma (en función de reglas sintácticas o asociativas)

El nucleo central del artículo es una comparación experimental entre tres métodos para extraer el contenido esencial de un texto (para construir su índice).

1. Escaneado de sentencias clave (topic sentences): Partiendo de bases de teoría de composición de textos se puede decir que en la mayoria de los casos la sentencia clave de un párrafo se encuentra en primer lugar (en el 85% de los casos según un estudio sobre 200 párrafos). Esta técnica selecciona la primera sentencia de cada párrafo para crear el índice, ignorando todas las demas sentencias.

2. Proceso de eliminación sintáctica: Esta técnica se basa en una selección de unidades sintácticas. Se ignoran todas las palabras que sean superfluas (conjunciones, pronombres,...) y se realiza un índice estadístico con las palabras residuales.

3. Selección de frases preposicionales: Esta técnica se basa también en una selección de unidades sintácticas. Parte de la base de que las frases son un núcleo de la comunicación , comparables en importancia únicamente a los párrafos. Basa su funcionamiento en premisas sintácticas (dependientes del lenguaje inglés) tales como el número medio de palabras en las frases, que en el caso del inglés es de 4 palabras.

A partir de esas estadísticas la tecnica selecciona como frase las siguientes 4 palabras (o las que haya hasta una preposición o un signo de puntuación) a cada preposición del texto. La gran ventaja de esta técnica es que las frases tienen más significado que cada palabra por separado y que minimizan problemas tales como los distintos significados que si se dan en palabras individuales.

(Añadido mio) Tiene un inconveniente claro que no se cita en el artículo y es que es dependiente en cierta medida del idioma. Para que fuera genérico deberían de estar disponibles las estadísticas de número medio de palabras en una frase para cada uno de los idiomas posibles de los documentos.

En la parte final del artículo se citan las dificultades para definir la idoneidad de un índice para un texto dado siendo dependiente en función de la persona que lo juzgue, del proposito del índice, ...

Según el artículo (y la potencia computacional de esa 1958) se recomienda un índice de 0,5% sobre el número de palabras del texto. En el caso de estudio realizado la técnica que ha proporcionado mejores soluciones es la técnica de selección de frases proposicionales. Por último se comenta que el indexado automático tiene la gran ventaja de ser un método sistematico, consistente y uniforme.

jueves, 4 de octubre de 2007

Nueva lectura

He acabado de leer el artículo “Machine-made index for technical literature – an experiment” y me encuentro bastante más cómodo que con el anterior artículo. El inglés es bastante más sencillo (como en cualquier artículo) y la manera de redactar es mucho menos "novelística".

Desde el punto de vista de la investigación en sí este artículo es mucho más claro que el anterior. Describe varios métodos de una manera concreta y con ejemplos por lo que he aprendido bastante más con este artículo. Posiblemente mañana haga un pequeño resumen en el blog.

Al acabar los artículos englobados en el wiki para proyectantes como "Primeros sistemas de recuperación de información" realizaré (a partir de las entradas del blog) fichas de lectura tal y como recomendaba Umberto Eco en su libro
sobre como hacer una tesis.

lunes, 1 de octubre de 2007

(Como se hace una tesis) Referencia Bibliográfica

Continuando con la lectura del libro anteriormente citado de Umberto Eco me ha parecido importante crear una nueva entrada con las indicaciones del libro sobre cómo maquetar una referencia bibliográfica a un libro (o al menos los fallos más comunes que hay que evitar).

1. No hay que poner iniciales nunca. Deben indicarse los nombres completos de los autores.

2. Los títulos de libros no deben ponerse entre comillas puesto que normalmente las comillas son para indicar nombres de revistas o nombres de artículos.

3. Es preferible al maquetar los títulos seguir la costumbre anglosajona de poner en mayúscula la inicial de nombres, adjetivos y verbos.

4. Evitar en la medida de lo posible indicar dónde se ha publicado un título y no citar el autor (esto sucede en algunas publicaciones)

Un punto muy interesante del libro es que al acabar el tema comentado aquí hay un resumen de las reglas de la cita bibliográfica y un ejemplo.

El libro posteriormente propone varias maquetaciones específicas de títulos pero no me parece relevante. Cualquiera que siga estas normas podría ser utilizada.

Como se hace una tesis

Por una recomendación de Dani hace unos días me propuse leer el libro "Como se hace una tesis" de Umberto Eco y hoy he conseguido tenerlo. El libro es una especie de guía general para la realización de tesis (preferentemente del campo de las enseñanzas de humanidades) pero también se puede aplicar para cualquier tipo de investigación en cualquier campo.

Para los estudiantes o investigadores de las ramas más técnicas cabe destacar el apartado de decisión del tema de la tesis y el de la búsqueda del material.

En el apartado de decisión del tema de la tesis se argumenta de un modo interesante y con ejemplos bastante gráficos porque el tema de las tesis (o las investigaciones similares) tienen que estar muy focalizados. Además explica las consecuencias de la exposición ante un tribunal de un tema demasiado general.

En el apartado de búsqueda de material (y en otras partes del libro) da consejos sobre la búsqueda y organización (en primarias y secundarias) de las fuentes de información, además de la manera de enfocar dicha información. Del mismo modo indica la necesidad de verificación de la información siempre que no sea información de primera mano.

En cuanto a la organización de la información, desde el punto de vista de un proyecto fin de carrera, caben destacar dos ideas organizativas:

1. Fichero de lectura: Organización en forma de fichas (en mi caso usaré algún tipo de organización digital) de los libros y articulos leidos indicando citas, juicios,... Este fichero será utilizado en la realización de la investigación y en la elaboración de la bibliografía final.

2. Fichero bibliográfico: Organización de todos los títulos o artículos que es interesante buscar. En este fichero solamente se guardan los datos más importantes de cada documento y su localización en bibliotecas o internet (u otras fuentes). A lo sumo pueden añadirse algún tipo de observación del tipo "muy importante según Gamma"

martes, 25 de septiembre de 2007

Statistical Approach

He finalizado la lectura del primer articulo propuesto titulado "A Statistical Approach to Mechanized Encoding and Searching of Literary Information". Me ha costado bastante dado que es uno de los primeros articulos que leo sobre el tema y por estar escrito en un inglés algo más complejo del habitual para los textos técnicos (también es verdad que hace mucho que no leo en inglés).

El articulo introduce el tema de la extracción de información (citando la dificultad de barrera de distintos lenguajes) y explica una división de los tipos de sistemas de información en seis niveles que van desde sistemas de referencia (como catálogos) hasta literatura novelística pasando por textos técnicos que es en el nivel en el que se centra dicho artículo.

Habla también sobre la teoría de la comunicación y como dos interlocutores van subdividiendo ideas hasta llegar a un nivel de "experiencia común" de tal forma que ambos entiendan lo mismo.

Posteriormente indica que los documentos tienen una estructura física que da indicaciones de la relevancia y la estructura de la información que contiene (capítulos, parrafos,...). El estudio usará dicha información en la relevancia de documentos.

A continuación se hará un pequeño resumen sobre la organización de un sistema estadístico de búsqueda:

1. El objetivo es minimizar el esfuerzo humano en tareas rutinarias, realizandose estas de manera automática partiendo de un conjunto pequeño de reglas.

2. Se debe crear un diccionario de notions (lo traduciré libremente por conceptos) de tal forma que se crean familias de palabras con un nivel conceptual similar. Dicho diccionario depende en gran medida del tipo de documentos a estudiar.

3. Se observa cada documento como elementos conceptuales creandose así patrones que posteriormente se utilizaran para las comparaciones. En este punto se utiliza la estructura física del documento impuesta por el autor para definir los distintos niveles de relaciones (palabras en el mismo párrafo, en parrafos seguidos, ...) entre los términos.

4. Para el procedimiento de búsqueda de información se prepara un documento con un formato similar al usado en la colección y codificado de la misma manera que sus documentos. De esta forma el resultado abstracto de conceptos se utilizará como patrón de búsqueda. A continuación un programa comparará el patrón de búsqueda con los patrones de los documentos en la colección basandose en la estadística para indicar sus niveles de similitud.

El artículo termina indicando que hacen falta mejores métodos para elegir que elementos de las sentencias son mejores discriminantes y que hace falta más investigación para indicar el número de familias conceptuales y su nivel de especialización en cada caso concreto.

lunes, 24 de septiembre de 2007

Comienzo PFC

Ya he tenido mis días de descanso merecido tras el verano tan ocupado "gracias" a IA y por lo tanto doy por comenzado el nuevo curso hoy mismo, comenzando por un recordatorio sobre la temática del PFC.

El PFC que desarrollaré este curso se engloba en el campo de la recuperación de información (o information retrieval). Este término se asocia a sistemas automaticos que permitan determinar la existencia o no de documentos relativos a una cierta consulta. El proyecto puede resumirse en los siguientes puntos:

1. Desarrollo de un sistema IR que recoja las características de un sistema anteriormente desarrollado y ampliarlas (es interesante utilizar un lenguaje que permita su utilización multiplataforma).

2. Enfatizar instalación y facilidad de uso.

3. Orientar el modo de empleo hacia la participación en el CLEF (Cross-Language Evaluation Forum). El CLEF es un "congreso" o más bien competición en el cual compiten distintos sistemas de IR desarollados por equipos de todo el mundo.

4. No descuidar el tiempo de respuesta (posibilitando un futuro uso interactivo) pero sin considerarlo una prioridad.

El sistema anterior (conocido como BlindLightIR) tiene ciertas características muy interesantes que habrá que tener en cuenta. Estas son las siguientes:

1. Independiente de lenguaje y con resultados consistentes entre distintos idiomas.
2. Muy tolerante al ruido
3. Fácil desarrollar un módulo externo para consultar en un idoma distinto al de la colección.
4. Es un campo muy interesante para la búsqueda de configuraciones óptimas mediante paradigmas flexibles (como mi proyecto fin de carrera de la EUITIO).
5. Características adicionales de otros proyectos o prototipos tales como identificación de idioma, extracción de resumenes y extracción de palabras clave.

Por último caben destacar las características deseables del proyecto:
1. Pseudo-relevance feedback (generar nuevas consultas a partir de los primeros resultados obtenidos para una consulta)
2. Feedback del usuario (generar nuevas consultas a partir de los resultados señalados como relevantes por el usuario)
3. Indexado de pasajes y no de documentos
4. Nuevas medidas de similitud/disimilitud
5. Semántica distribuida (a estudiar)

A partir de hoy ire haciendo comentarios sobre los articulos que vaya leyendo de entre los facilitados por Dani en la siguiente página.

Organización del año

Hoy estuve acabando de cuadrar mi horario para el curso que se avecina. Este curso "solo" voy a cursar las 5 asignaturas obligatorias de la superior, 3 cursos de verano, 2 optativas y el proyecto fin de carrera.

Por supuesto tantas cosas que hacer son un quebradero de cabeza para organizar horarios. Finalmente haré dos de los cursos (uno de CSS y uno de PHP) durante cuatro semanas en Octubre. El tercer curso tendré que cuadrarlo en marzo seguramente...

En cuanto a las optativas mis opciones (aún sin cerrar) son Ingeniería del Software 2 y Diseño de Sistemas Operativos.

En cuanto al proyecto fin de carrera pretendo llevarlo como una asignatura más y por esto tengo organzado el horario (a falta de que me concedan los grupos que pido) de tal manera que no tenga clase los miercoles. Si todo continua así los miercoles por la mañana serán para el proyecto.

miércoles, 19 de septiembre de 2007

Primera entrada

Con esta entrada queda inaugurado mi primer blog. He iniciado este blog a raíz de la sugerencia del que fue mi director de proyecto en la Ingeniería Técnica en informática y antiguo profesor Dr. Daniel Gayo .

Aunque la idea original es utilizarlo como medio de comunicación (y coordinación) para labores relacionadas con el proyecto fin de carrera de la superior posiblemente derive a un blog con contenidos algo más variados.

Dicho esto me retiro a acabar de ver la película de 300 en versión original (hay que mejorar el nivel de inglés) en uno de mis pocos días de descanso en este agotador verano antes de acostarme para poder dormir algo antes de asistir a la lectura del proyecto fin de carrera de un compañero de la facultad.