jueves, 17 de febrero de 2011

Brecha semántica y la recuperación de información multimedia

Antonio Fumero nos cuenta en su blog que la recuperación de información es un campo muy amplio... Cada vez más la información se genera en formato multimedia y, sin embargo, los procesos y sistemas de IR están basados en el procesado de texto asociado a los objetos que queremos realmente recuperar. Si pensamos en dar un paso más, teniendo en cuenta que el vídeo se puede trocear en cuadros y fotogramas, el desafío está en disponer de clasificadores automatizados de imágenes que las conviertan a texto. El problema es que necesitamos un conjunto suficientemente grande de imágenes anotadas para entrenar cualquier sistema de este tipo; y por supuesto, la brecha semántica que se deriva de la puesta en contexto del significado de las imágenes... La idea que subyace es la de mejorar la recuperación de información basada en texto mediante el uso de conceptos visuales.

La primera tentación --o quizás necesidad- con la que se encuentra uno es la (quizás evidente) de definir el término que nos ocupa: Multimedia (Information) Retrieval (Recuperación de Información Multimedia). Hoy, cualquier usuario de la Red suele comenzar consultando Wikipedia. Ahí podemos encontrar algunas "palabras clave" para desarrollar la definición que buscamos (IR, multimedia) y diferenciar los procesos y técnicas para la recuperación de información multimedia de los más conocidos sistemas de minado de datos (Data Mining). Se trata más de encontrar un documento con la información que busca el usuario (IR) que de descubrir la información implícita en una colección grande de documentos (DM).

En general, los sistemas de IR suelen abordar el problema que tratan de resolver con dos aproximaciones básicas: los catálogos o directorios de información (Yahoo!) y los sistemas de pregunta-respuesta tipo Google o Ask.com; con algunas soluciones en medio, como Kartoo. El usuario habitualmente va al buscador y lo usa (típicamente introduciendo entre dos y cuatro palabras clave) para encontrar un sitio web, donde luego navega hasta encontrar la información que buscaba.

La bondad de los resultados arrojados por uno de esos procesos de búsqueda se mide, en términos técnicos, usando los parámetros de precisión (la proporción de resultados relevantes) y el grado de recuperación, 'recall' (que mide la proporción de documentos relevantes recuperados en el proceso de búsqueda); dos elementos claramente complementarios que deben encontrarse en un delicado equilibrio que comprometerá la calidad de nuestro sistema. Esos dos parámetros se pueden afinar y sofisticar de muchas formas, por ejemplo, refiriéndolos a una determinada clasificación o ranking, o con otras métricas derivadas, como la media armónica (F-measure) o la precisión media de ambos (Average Precision Recall).

Hoy en día, las técnicas más extendidas para la MIR están basadas en el análisis de documentos de texto asociados a los objetos multimedia que queremos recuperar, siendo los modelos de espacios vectoriales los más extendidos. Estos modelos se basan en la construcción de un espacio n-dimensional (considerando n términos que se utilizan para indexar el conjunto de documentos con el que trabajamos) en el que se posicionan luego los vectores que representan a cada documento de acuerdo con sus pesos asociados a cada dimensión (tij sería el peso del término j en el documento i). Esto nos permite encontrar similitudes entre documentos definiendo ángulos y distancias en un espacio vectorial.

¿Cómo funciona esto en la Web para encontrar imágenes, por ejemplo? Tenemos que encontrar las páginas adecuadas mediante la búsqueda textual; y luego encontrar las imágenes relevantes a partir del contexto (el nombre del fichero, las anclas en el HTML, el texto que rodea las imágenes, etc.) y/o de la información que puedan proporcionar sistemas asociados de anotación automática, o de la propia realimentación del usuario.

¿Qué es multimedia? a los efectos de los sistemas para la recuperación de información, multimedia es todo lo que no sea texto. El problema es la cantidad de datos que genera el video por ejemplo. con información más rica y un cada vez menor grado de estandarización: en cuanto al almacenamiento por ejemplo (comprimido, servido en streaming).

¿Qué pasa con la brecha semántica? ¿Qué pasa con la diferencia entre la información que uno puede extraer de un conjunto de datos visuales y la interpretación que esos mismos datos tienen para un determinado usuario en una situación concreta (el contexto)? Una vez más, se echa mano del texto asociado... ¿Y si no lo hay? Se genera, de forma manual o automática. La indexación manual presenta demasiados problemas asociados a la clasificación ambigüa de multitud de conceptos; mientras que los sistemas para la anotación automática usan técnicas de minado de datos (DM), incluyendo aprendizaje automático, para extraer de las imágenes (de sus características de bajo nivel) conceptos de alto nivel (de nivel semántico).

¿Y si el texto no nos basta? Podemos pensar en la recuperación de información basada en el contenido (CBIR) que, inicialmente se basa en las características de bajo nivel de las imágenes (colores, formas, texturas, etc.). Hay ya una larga historia desde 1995 con el QBIC de IBM, por la que han ido pasando otros sistemas conocidos como Simplicity, IKONA o GIFT... También se puede pensar en una consulta a partir de una imagen similar (Query-by-Example) (como like.com comprada por Google) ¿Qué pasa con el audio (vocal, música, ruido)? Pues lo mismo: se busca texto asociado o se genera. También podemos buscar por similitud (Query-by-Humming) igual que hacíamos en los sistemas CBIR [www.midomi.com].

¿Y si no tenemos ejemplos para buscar similitudes en el sistema? ¿Se puede realizar un proceso de aprendizaje no supervisado, que es como se llama esto? Se puede, sí: la idea es introducir cierto orden en nuestra colección de documentos, de datos, buscando agrupaciones (clustering) que nos ayudan a dar cierta estructura a los datos visuales distinguiendo cuadros, escenas o fotogramas en el vídeo u objetos en las imágenes, por ejemplo. Hay modelos y algoritmos de todo tipo para realizar estas agrupaciones: jerárquicos (K-means; c-means; EM algorithm). Estas técnicas no están pensadas para una fase concreta del proceso de recuperación de información: pueden servir como entrada a un aprendizaje supervisado en una etapa de post-proceso; se puede utilizar en el pre-proceso para independizar los atributos que luego se utilizarán en el análisis de contenido, por ejemplo.

martes, 1 de febrero de 2011

CBIR - Sistemas de Recuperación de Imágenes por Contenido

Para poder realizar búsquedas de imágenes, tradicionalmente éstas se describían mediante un proceso de transcripción del lenguaje visual al verbal mediante palabras claves. Los indizadores suelen ser humanos, lo que hace que el proceso que sea complejo, caro e irregular. Una solución sobre la que se ha estado investigando son los sistemas automaticos. De momento están lejos de ser tan eficientes como el humano, pero hay varias experiencias interesantes al respecto y muchísima información en la red.

Estos sistemas evitan el cambio de lenguaje (o utilizan el lenguaje verbal como complemento) y hablan en los mismos términos que las propias imagenes, por ello se basan normalmente en caracteristicas como el Color, Textura, Formas genéricas, Segmentación e identificación de formas individuales y Disposición espacial relativa de objetos.

A estos sistemas genericamente se les suele denominar CBIR: content based image retrieval, es decir, Sistemas de Recuperación de Imágenes por Contenido.

En la web del profesor James Z. Wang, de la Universidad de Pennsylvania, podemos ver varios experimentos muy interesantes relacionados con imágenes de distintos ámbitos: generales (a-lip: Automatic Linguistic Indexing of Pictures), relacionadas con estudios militares o geograficos (Satellite Imagery), SIMPLIcity (Semantics-sensitive Integrated Matching for Picture Libraries), imágenes del mundo del arte, médicas...

Técnicas como feedback (retroalimentación por relevancia), clustering (análisis de conglomerados), fuzzy (lógica difusa), etc son muy utilizadas. Estos sistemas y sus aplicaciones son muy importantes principalmente cuando no es importante la descripción denotativa de la imagen (imaginemos una fotografia de guerra con un niño llorando, en la que la denotación sería fundamental), y por ello se ha primado el estudio de CBIR en campos como la medicina, el arte, el militar, la meteorología, etc. Pero en estos campos este concepto, por lo que he podido ver, se sustituye por el procesamiento digital de imágenes, disciplina que desarrolla las bases teóricas y algorítmicas mediante las cuales pueda extraerse información del mundo real, de manera automática a partir de una imagen observada, de un conjunto de imágenes o de una secuencia.

Otra aplicación de los sistemas CBIR es su utilización para incluir las palabras clave obtenidas como metadatos. Así lo he visto en la presentación de este producto ViA2 Platform, un gestor de activos media especializado en la indexación y anotación de contenidos, incorpora herramientas de análisis avanzado para facilitar la compilación de metadata y con ello el acceso a los vídeos, audios e imágenes almacenados. Otros ejemplos: SIMPLIcity: Semantics-sensitive Integrated Matching for Picture LIbraries, Unified Feature Matching Scheme, blobworld o el desarrollado por INRIA.

Por último, mencionar las técnicas de intentos de standarización del etiquetado de imágenes: MPEG-7 del que se puede leer una sencilla explicación: aquí, que pueden ser un importante componente.