lunes, junio 29, 2009
Social Recommender Ecosystems: from artificial to social intelligence
Introduction
What we have to take into consideration nowadays is the growing "social" characteristic of the Network itself, as a whole, beyond the Web as we know it. Web 2.0 phenomenon has impacted almost all the social and economic environments of the Network. The way people interact online has dramatically changed; and the same occurs to the e-commerce activity traditionally related to the recommendation problem. The originally niche terms 'community' and 'social network' suddenly apply to almost all the ecosystems we find online. All the activities people perform on the Web have the "social" adjective attached someway strengthening the importance of the individuals role for defining the community itself.
The evolution of web semantics has led us to a scenario where real-world semantics is being "mashing up" together with some Semantic Web components for extracting metadata from the content items themselves, or from the users online behaviour, potentially softening, for instance, the intrusiveness problem of some recommendation methods. We have systems for building up collaborative ontologies online; even the searching activities --the ones we need the most when we go online- are becoming social (e.g. http://www.heystaks.com/; http://porqpine.com/; http://vark.com/)
In such a "social" scenario we can think about the recommendation problem, or at least its collaborative filtering approach from a social networking point of view; that is to say, What if the item we have to recommend is another individual user? What if the recommendation context is a vertical social network, a community where the users are sharing their interests based on a full-fledged persona profile? Can we improve our recommendation collaborative filtering method performance by socializing it? Even, going further with this social approach, Could we re-formulate the whole recommendation problem for a Social Computing (SC) scenario, defining some Social Recommendation Scenario (SRS) where any kind of recommendation (any item, content or service) could be reduced to some kind of social recommendation, i.e. a social networking "intelligent" process aimed at connecting two individuals in terms of their common interests, "using" people, individuals, as social proxies for the items to be recommended.
Recommendation as we know it
The traditional landscape for the recommender systems [TABLE 2, Classification of Recommender Systems Research] is still ranging from content-based to collaborative filtering methods, keeping the hybrid methods category as the nobody's land for mixing (mashing) up both sides elements in the process of defining new frontiers in this research field. The limitations of these kind of Recommender Systems (RecSys) had been widely documented in the literature.
Content-based systems (e.g. Google, introducing their behavioral targeting for recommending ads) still suffer from limited content analysis stalled in the text-based analysis, the metadata extraction limitations, etc.; overspecialization; and the new user problem that stands for the situation in which the system don't have ratings enough for recommending relevant items.
Collaborative filtering (e.g. Amazon, king of recommender systems) systems, based on extracting user's peers from their profiles similarities --and traditionally splited between memory-based (heuristics), and model-based systems keep showing their problems dealing with the classic "new-user-problem"; or even the sparsity of users in the quest for a critical mass of users in the community building stage.
The hybrid methods proposed and documented so far are not rocket-science; their approaches usually lay on one of these four areas: combining the predictions from collaborative and content-based methods; incorporating some content-based characteristics into a collaborative approach; incorporating some collaborative characteristics into a content-based approach; and constructing a general unifying model that incorporates both.
Roughly speaking the kind of commercial recommender systems we have in place are ranging between personalised (e.g. Amazon), social (e.g. del.icio.us) and item (e.g. Pandora) recommendation systems and, of course, a creative combination of the three of them. One of the preferred scenarios where we could find a lot of activity proposing new approaches to the recommendation problem has been the music recommendation scenario; and we can, of course, use such a scenario --and a few of the services ruling it out- for illustrating the evolution towards a "social" recommendation scenario. We can first think, in one hand, about the Music Genome Project from Pandora, defining some 400 attributes for each song, and getting assessed by a group of experts or Lala, purely based on the peers recommendations and, in the other hand, projects like Mufin with an algorithm-based approach. The hybrid approach can be illustrated by eMusic, combining the P2P recommendations of users, a technical algorithm, and even the fine-tuning from a group of "editors".
Metrics are a key factor for building up a recommender system. Recommender systems must: (i) choose which (of the items) should be shown to the user, (ii) decide when and how the recommendations must be shown; so we have to take, at least, into consideration performance and context issues to provide an accurate recommendation process. It's not my objective here to dig into the complex issue of the recommendation systems' performance measurement; but it's important to highlight the relevance of the contextual information for proposing a social recommendation scenario.
Towards RecSys 2.0
The improvements we've been seen during the last two to four years in the literature include improving the understanding of users and items, incorporating the contextual information into the recommendation process, supporting multicriteria ratings, and providing more flexible and less intrusive types of recommendations.
In terms of understanding of user/content, it's important to have a more comprehensive user and item profiles fed into the recommendation methods. Multirating criteria (e.g. car rating, includes engine, design, price, performance, etc.) integration is another key issue in evolving current recommendation systems, with some ideas took from Operations Research community as solutions for multicriteria optimization problems.
Nonintrusiveness is another long time desired characteristic for the RecSys. The balance between nonintrusive ratings --automatically obtained from the interaction of the user with the items to be rated- and the ones obtained through explicit feedback, in terms of accuaracy for instance is not easy to manage. The possibility exists that in a true social scenario with a rich level of interaction among users, the traceability of such an interaction could help in adding nonintrusive mechanisms to the recommendation process.
The extensions demanded include flexibility: the end-user cannot customize recommendations according to his or her needs in real time. Some proposals have been arising, mainly RQL-based. The same way OLAP-based approaches have emerged for aggregated recommendations.
Effectiveness of recommendations is still a problem. Metrics seem to be someway out-of-date: coverage and accuracy are not enough in accounting for the social recommendation processes we need in place. Some researching results show how Social Netwoking Collaborative Filtering (SNCF) could outperform Collaborative Filtering (CF) methods in certain circumstances. What if the items are people? How are we going to deal with social networks? What about connectivity, contactivity, or reputation (http://commented.org/blog/2008/4/15/a-usable-reputation-web-service.html) as parameters to be assessed in a multidimensional rating process?
Spoting the new scenario: connecting the (social) dots
We are living in a mobile society: data from many analysts, e.g. comScore confirm that the number of people accessing mobile Internet has almost double in 2009; mainly through social networking sites. So, What about discovering (recommending) contents/people/services on the move? In such a mobile scenario, context is getting more and more important for making accurate recommendations. 'Mobilisation' of the Internet is connecting physical and virtual spaces of our lifes. What if we could integrate our physical and virtual distances within the recommendation process? We are talking about social distributed, or enhanced searching processes, beyond the algorithms behind the searching engines we are used to. We can find examples like HeyStacks (http://www.heystaks.com/content/about-heystaks) for having the users sharing their searching experiences; or Porqpine, proposing a collaborative community-like searching experience (http://porqpine.com/info/faq.html).
People usually dont't like to explicitly recommend things. The challenge here is more about the way people implicitly recommend things to other people without being involved in a recommendation process or using a recommendation system as we know them. Even when we need a recommendation, we are not used to narrow enough our interests in the terms the RecSys need. These vague ideas are behind some promising concepts like "ambient recommendation" (http://log.scifihifi.com/post/59360628/ambient-recommendation).
If we are going to accept we are dealing with a new "social" scenario, it's not diffucult to accept we need a way of representing such a scenario in a consistent manner. One of the concepts gaining momentum among the researching community is the "social graph" as "the global mapping of everybody and how they're related" (http://bradfitz.com/social-graph-problem/). It's an idea deeply rooted to FOAF (http://www.foaf-project.org/about) and XFN (http://www.gmpg.org/xfn/) projects, and being enhanced with initiatives like Google Social Graph API.
While social graphing elements could act as some kind of "social" infrastructure for a new recommendation architecture, we still need a consistent set of parameters we can use for designing a new recommendation process. We are talking about a trustworthy reputation system, for instance. A system that have to be open, by definition. In doing so, we are opening up the identity issue: we have some elements in place for having an open distributed soft identity scheme on the Web, like OpenID (http://openid.net/), and even for accesing our resources in the same way, OAuth (http://oauth.net/).
Concluding remarks
References
http://www.readwriteweb.com/archives/recommendation/index.php
http://mobblog.cs.ucl.ac.uk/2008/11/27/a-pitch-on-future-recommender-systems/
http://www.readwriteweb.com/archives/social_graph_concepts_and_issues.php
Adomavicius G., Tuzhilin A. (2005). Toward the Next Generation of Recommender Systems: A Survey of the State-of-the-Art and Possible Extensions. IEEE Transactions on Knowledge and Data Engineering, Vol. 17, No 6. Junio 2005.
Zheng, R., Wilkinson, D., Provost, F. (2008). Social network collaborative filtering. HP Labs Working Paper. HP Labs. Disponible en http://www.hpl.hp.com/research/scl/papers/sncf/sncf-wp.pdf
SNCF proposed by Zheng et al. in
Zheng, R., F. Provost and A. Ghose (2007). Social Network Collaborative Filtering: Preliminary Results. In Proceedings of the Sixth Workshop on eBusiness (WEB2007).
CF vs. SNCF - computational complexity + cold-start problem
Like-mindedness = f (Alters, Friends, Allies; are different)
Previous work = clustering methods for alleviating computational costs; extracting social links from co-purchase and/or co-rating history (Kautz, H., Selman, B., and Shah, M. Referral Web: combining social networks and collaborative filtering. Communications of the ACM,40(3): 63-65, 1997; Perugini, S., M. A. Goncalves, & E. A. Fox (2004). A connection centric survey of recommender system research. Journal of Intelligent Information Systems 23); spread of recommendations over a network; propagation of "trust" through explicit and implicit connections...
Essembly.com
Social influence, Selection effects affecting user-selected alters and SNCF vs. user-user traditional CF
CF parameters we consider are: (i) which similarity measure to use in weighting (potential) alters’ previous ratings, and (ii) how many alters to consider; we also consider (iii) the distance/error measure used to assess the result.
Gaudioso, E., Hernández, F. (2007). Evaluation of recommender systems: A new approach. Universidad Nacional de Educación a Distancia (UNED), Departamento de Inteligencia Artificial. Madrid.
Kumar, A., Anand, D., Manickam, T., Riedl, J. (2008). Can people collaborate to improve the relevance of search results? Proceedings of the 2008 ACM conference on Recommender systems, Lausanne, Switzerland, pp. 283-286. Disponible en http://delivery.acm.org/10.1145/1460000/1454052/p283-
Adomavicius, G., Tuzhilin, A. (2008). Context-Aware Recommender Systems , 2nd ACM International Conference on Recommender Systems (RecSys 2008), Lausanne, Switzerland, October 2008. Disponible en http://ids.csom.umn.edu/faculty/gedas/talks/RecSys2008-tutorial.pdf
Adomavicius, G., Kwon, Y. (2007). New Recommendation Techniques for Multi-Criteria Rating Systems. IEEE Intelligent Systems, vol. 22, no. 3, May/June 2007.
McNamara, L., Mascolo, C., Capra, L. (2008). Media Sharing based on Colocation Prediction in Urban Transport. Presentado en Mobicom 2008
San Francisco, CA, USA.
Quercia, D., MobiRate: Making Mobile Raters Stick to their Word. Ubicomp 2008. ACM. http://www.cs.ucl.ac.uk/staff/d.quercia/publications/quercia08mobirate.pdf
http://planb.nicecupoftea.org/2009/01/14/w3c-workshop-on-the-future-of-social-networking/
http://blog.scrump.com/2008/11/21/collaborative-filtering-social-capital/
http://diso-project.org/
Bonneau, J., Anderson, J., Stajano, F., Anderson, R. (2009). Eight Friends are Enough: Social Graph Aproximation via Public Listings. Computer Laboratory, University of Cambridge. Disponible en http://www.cl.cam.ac.uk/~jcb82/8_friends_paper.pdf
Etiquetas: research
sábado, mayo 23, 2009
Food4Thought
¿Es el alpha un nuevo buscador? ¿Tiene sentido la expectación creada en la superficie webosférica? A poco que nos fijemos, el Alpha propone una nueva forma de "recuperar" información basada en la búsqueda semántica y el procesado del lenguaje natural. NO es, por tanto, un "buscador" (Search Engine) al uso; y se enfrenta a un mundo (la Red que conocemos) poblado por "googlitas luditas", no por humanos... ¿O acaso hemos cambiado? Es posible que el lenguaje "natural" ya no sea lo que era y que ahora los humanos conversemos intercambiando "palabras clave" e hiperenlaces. El hecho cierto es que no deja de resultar sorprendente cómo nos estamos quedando, en el caso del Alpha, con la pobre idea de que estamos frente a algo a medio camino entre Google y Wikipedia.
Pensemos por ejemplo en fenómenos como Twitter en términos, por ejemplo, de la fragmentación de esas conversaciones y de la propia narrativa del discurso digital. Pensemos en cómo ha evolucionado: de los 140 caracteres de contenido hemos pasado a un ecosistema formado por multitud de contenedores multimedia a los que se puede apuntar y añadir meta-información y meta-datos (semántica) usando Twitter. Con esa imagen en la cabeza, pensemos ahora en la conexión entre nuestras conversaciones analógicas y el lenguaje no verbal en el marco del nuevo entorno tecnosocial: miramos a un amigo y, mientras enseñamos el móvil o simplemente esgrimimos un gesto, que nos recuerda hoy al logo de MÁSmóvil, proferimos sólo una (o dos) palabra(s): "(móvil) llamar". Analizamos esa simple interacción: multimedia (lenguaje no verbal) + enlace (dos palabras clave, una es un verbo y recuerda el servicio que daba origen al dispositivo móvil). No dejo de darle vueltas, no sé por qué; pero nos enfrentamos a algo más relevante de lo que simplemente refleja la brillante superficie webosférica.
Recomendando en sociedad
Otro de los temas que me rondan la cabeza tiene que ver con una breve incursión que he realizado en la realidad de los sistemas de recomendación en el ámbito de mi situación oficial como investigador. Esa realidad se ve directamente afectada por la popularidad de los 'sitios de redes sociales' en la Red.
Uno puede pensar en la recomendación de personas, es decir, introducir los perfiles de los usuarios como items para el proceso de recomendación o, aun más interesante, pensar en las personas y sus relaciones en términos de 'proxies' sociales en el proceso de recomendación. Los cual nos lleva más o menos directamente a discutir qué tipo de funciones de valoración (reputación, relevancia, influencia) aplicamos para realizar las recomendaciones o elegir el proxy más adecuado.
El filtrado cooperativo (collaborative filtering) hace ya tiempo que forma parte de los procesos tradicionales de recomendación. Algunos resultados interesantes de investigación van en la línea de utilizar la información implícita en el grafo social de los usuarios para automatizar hasta cierto punto el proceso de recomendación: un trabajo realizado en los laboratorios de HP da a entender que el resultado medio, en términos de rendimiento, de un proceso de recomendación por filtrado cooperativo en red (Social Networking Collaborative Filtering, SNCF) es sólo ligeramente peor que el mejor resultado obtenido mediante filtrado cooperativo. Otros resultados interesantes aseguran que el resultado de una de aquellas funciones aplicada sobre un grafo parcial no es tan distinto del obtenido por la misma función aplicada sobre la totalidad del grafo...
¿Por qué son importantes esos resultados? Fundamentalmente porque la realidad de la Red transcurre en gran parte dentro de los sitios de redes sociales donde consumimos servicios online para la gestión de nuestros contactos; y muchos de esos sitios sólo ofrecen, como es evidente, información parcial de nuestro grafo social, el de verdad, el que resulta relevante para el resultado de un proceso de recomendación.
Otro debate, también relevante, es el relativo a la evolución de esos sitios de redes sociales: ¿Cuánto tiempo durarán los sitios generalistas más populares? ¿Realmente están las plataformas actuales pensadas para gestionar el grafo social de una persona como reflejo o soporte lógico de su identidad digital, o se trata simplemente de la gestión de una base de datos de perfiles potencialmente susceptibles de contener información más o menos relevantes en términos comerciales? Temas sin duda relevantes que no se pueden discutir de forma aislada dentro de un escenario cada vez más complejo.
Etiquetas: internet, sociedad, technoloy
miércoles, mayo 06, 2009
Brecha semántica y la recuperación de información multimedia

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 (cualquier persona del primer mundo ;) suele comenzar consultando Wikipedia. Ahí podemos encontrar algunas "palabras clave" para desarrollar la definición que buscamos [http://en.wikipedia.org/wiki/Information_retrieval | http://en.wikipedia.org/wiki/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 (e.g. Yahoo!) y los sistemas de pregunta-respuesta tipo Google y el resto de buscadores que tod@s conocemos, como Ask.com o el propio Yahoo!; 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, e.g. 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 (http://www.hermitagemuseum.org/fcgibin/db2www/qbicLayout.mac/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) [http://www.like.com/ | http://www.pikadeo.com/ |Retrievr, http://labs.systemone.at/retrievr/] ¿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.
lunes, mayo 04, 2009
Recuperación de información 101
Esta situación, en términos más ortodoxos, es lo que se conoce como la paradoja FOA (Finding-Out-About) y que ilustra la imposibilidad de que el usuario con el gap de "conocimiento" --que expresa una necesidad de información- que ha dado lugar a su pregunta realice la pregunta correcta: esa imposibilidad de describir lo que no conocemos para encontrarlo, que ha inspirado, por ejemplo, el análisis de las tecnologías de los motores de búsqueda desde un punto de vista cognitivo (http://www-cse.ucsd.edu/~rik/foa/)

Evidentemente, la pregunta (la consulta) irá cambiando a lo largo de un proceso iterativo e interactivo, el "curso de la búsqueda" que considera el modelo Berry-picking [“moving through many actions towards a general goal of satisfactory completion of research related to an information need”, http://www.gseis.ucla.edu/faculty/bates/berrypicking.html] y que nos llevará a satisfacer nuestras necesidades de información con el conjunto de elementos que vamos encontrando por el camino.
Estas consideraciones nos llevan a enmarcar los procesos de recuperación de información dentro de un proceso de búsqueda de información consistente en dos fases básicas: una fase de búsqueda y la recuperación de documentos; y una dedicada al análisis y la síntesis de los resultados de esa búsqueda. De manera que la recuperación de información se puede definir como la tarea de la construcción de un sistema que nos ayude a recuperar los documentos más susceptibles de resultar relevantes para el usuario. Esa concepción sigue evolucionando, de hecho, sobre un núcleo de desarrollos teóricos que emergían en los años 1960 con los modelos probabilísticos, los sistemas booleanos o el modelo de espacios vectoriales, debido a Salton [http://en.wikipedia.org/wiki/Gerard_Salton] y que transformó el campo de los sistemas de recuperación de información [tal como se recoge en la revisión histórica que hacía Dubin en 2004, http://www.ideals.uiuc.edu/bitstream/2142/1697/2/Dubin748764.pdf].

Frente a la estructura de un sistema IR clásico, los sistemas basados en contexto se deben adaptar para centrarse en el soporte al usuario en el proceso de construcción de su consulta, así como en la visualización e interpretación de sus resultados.
Un componente básico de los sistemas IR es el lenguaje de consulta. El más simple en el que uno puede pensar es el booleano, compuesto a base de términos (palabras, frases, tesauros, ...) y operadores (AND, OR, NOT). Lo normal es que, ante su excesiva sencillez, se ensayen lenguajes pseudo-booleanos; o que se realicen ordenamientos artificiales de los resultados (cronológicos o por número de respuestas) o que se opte por algunas extensiones, como las consultas estructuradas (por "facetas"), las búsquedas por proximidad o los filtros.
El análisis del contenido de los documentos recuperados es la base para determinar la relevancia de los mismos para el usuario que construyó la consulta. Generalmente tratamos con documentos de texto en crudo, que debemos trasformar de tal forma que queden representados los aspectos de su significado. Las técnicas tradicionales de análisis de contenido suelen clasificarse en estadísticas, lingüísticas, cognitivas e híbridas. En cuanto al procesado de textos, lo normal es reconocer la estructura del documento en cuestión, trocearlo identificando signos de puntuación o caracteres especiales propios del idioma, extraer las raíces (stemming, donde destaca el algoritmo de Porter, http://tartarus.org/~martin/PorterStemmer/) que nos permitan normalizar la búsqueda de palabras y realizar un análisis morfológico de las mismas.
Uno de los elementos de análisis más utilizados es la distribución estadística de las palabras en un texto, concretamente se suele utilizar la representación de la frecuencia de ocurrencia frente a su clasificación. Curiosamente, los términos de un texto escrito en lenguaje natural siguen una distribución Zipf (http://en.wikipedia.org/wiki/Zipf%27s_law), es decir que la palabra que más veces aparece lo hace aproximadamente el doble de veces que la segunda que más veces aparece. Es lo que se conoce como "ley de potencias" o distribución de "cola larga". Se trata de una distribución muy peculiar que se ha observado no sólo en la distribución de términos en un texto y cuyas consecuencias han dado lugar a la aparición de ciertas estrategias y herramientas para el procesado de textos escritos en lenguaje natural, e.g. la existencia de unos pocos términos, muy frecuentes, que se comportan muy mal como discriminadores (las llamadas "stop-words", relacionadas con la noción de "clases cerradas" en lingüística); o el hecho de que los términos más frecuentes no son los más descriptivos... Toda una serie de ideas que se combinan habitualmente con otros elementos de la estadística matemática para buscar otras propiedades estadísticas de un texto, como la asociación léxica en términos, por ejemplo, de la independencia estadística de las palabras.
Finalmente, en lo que al procesado automático del contenido respecta, los documentos se tratan como "sacos de palabras" que se acaban representando como vectores en un espacio multi-dimensional. Con eso trabajamos para, una vez realizado el análisis del contenido, mostrar al usuario los resultados más relevantes de acuerdo con su consulta, que será refinada en un diálogo posterior, seguirá el curso de una búsqueda de la que ya formaba parte o iniciará un nuevo proceso de búsqueda o de recuperación de información.
miércoles, abril 29, 2009
Recuperación de información multimedia
Recordando las brevísimas notas de una emisión fallida en streaming y recopilando las presentaciones gracias a alguno de los organizadores, me resulta interesante pasar sobre algunos temas más allá de la propia recuperación de información (IR, Information Retrieval) y conceptos básicos que aparecerán asociados con problemas como la información multimedia y el gap semántico o la capacidad de adaptación y la extracción del contexto en los sistemas de IR.
Paul Clough (University of Sheffield) agrupaba bajo el epígrafe de "Multimedia Retrieval and Evaluation" una serie de reflexiones genéricas y específicas acerca de las técnicas de recuperación de información multimedia.

Los procesos de recuperación de información, orientados a la búsqueda de información relevante para las necesidades del usuario, tienen cada vez más que ver con información multimedia: la disponibilidad de herramientas, servicios y dispositivos que ofrecen funcionalidades para la captura, almacenamiento, edición y publicación de ese tipo de información ha hecho que la cantidad de contenido generado por el usuario en la Red se dispare de forma explosiva.
Evidentemente los métodos de acceso a esa dependerán del tipo de información disponible (Chu, H. (2006:43) Information Representation and Retrieval in the Digital Age, Information Today Inc (August 2003), ISBN: 1573871729.), ya sean metadatos u objetos multimedia propiamente dichos.
Puesto que una imagen vale más que mil palabras, son ese tipo de objetos --las imagenes- de los más demandados por los usuarios en la Red (Armitage L.H., Enser P.G.B. (1998) Analysis of user need in image archives, Journal of Information Science, 23(4), pp. 287-299). Dependiendo de las características genéricas (básicas), específicas o abstractas de una imagen, se definen diferentes niveles en los métodos para la recuperación de imágenes que, en términos genéricos se suelen dividir en métodos basados en descripción (que utilizan características abstractas que se derivan manualmente de las imágenes) y basados en contenido (que utilizan características semánticas que se derivan automáticamente del contenido, píxel a píxel, de la imagen), además de métodos híbridos que combinarán descripción y contenido.
Los métodos basados en descripción utilizan habitualmente la "anotación" de las imágenes mediante texto (metadatos). Esto presenta muchas limitaciones, como el problema clásico del gap semántico, su coste y su ambigüedad. La recuperación basada en el contenido opera mediante la realización de consultas sobre valores de ciertas características descriptivas de bajo nivel, es decir color, texturas, formas, tamaños, orientación de los objetos, etc. arrojando métricas de la semejanza entre la imagen de ejemplo que se ofrece y las almacenadas en los repositorios de contenido. Generalmente la posibilidad extracción de características globales de las imágenes es muy limitada, de manera que se utilizan características locales, segmentándolas por regiones.
Un buen ejemplo de recuperación de información basada en contenido (Content-Based Image Retrieval, CBIR) es medGIFT [http://www.sim.hcuge.ch/medgift/ | http://viper.unige.ch/~muellerh/demoCLEFmed/index.php]
La indexación automática de imágenes requiere de un proceso de correspondencia entre las características básicas (primitivas) de bajo nivel y los conceptos semánticos de más alto nivel, un proceso que no es en absoluto trivial (e.g. http://alipr.com/)
[Jia Li, James Z. Wang, "Automatic linguistic indexing of pictures by a statistical modeling approach", IEEE Trans. on Pattern Analysis and Machine Intelligence, vol. 25, no. 9, pp. 947-963, 2003]
Aplicaciones y ejemplos hay muchos. Algunos de los más relevantes en diferentes ámbitos:
Szummer, M. and Picard, R.W. (1998) Indoor-Outdoor Image Classification, in IEEE Intl Workshop on Content based Access of Image and Video Databases
Detección y reconocimiento de caras, Turk, M.A., Pentland, A.P. (1991) Face Recognition Using Eigenfaces, in the Proceedings of the Conference on Computer Vision and Pattern Recognition (CVPR)
Imágenes médicas, http://viper.unige.ch/~muellerh/demoCLEFmed/index.php
IBM QBIC: IBM Almaden Research Center
VIRAGE: Virage Incorporation
Photobook: MIT Media Lab
VisualSEEK: Columbia University
WBIIS: Stanford University
Blobworld: U.C. Berkeley
Evidentemente, los sistemas CBIR no están exentos de problemas, entre los que destacan: brecha (gap) sensorial (por el simple hecho de que trabajamos con representaciones digitales de objetos del mundo físico) y semántica (entre las características de bajo nivel y los conceptos de alto nivel), la carencia de métodos y recursos para la evaluación, así como de sistemas comerciales... Entre las tendencias más claras en investigación se encuentran las iniciativas orientadas a la integración del usuario y su contexto en la descripción (anotación) y recuperación de imágenes (http://www.espgame.org/)
El siguiente paso en la recuperación de información multimedia --entendiendo que se trata de sucesiones de imágenes- es la recuperación de vídeo. Disponemos de métodos automáticos para indexar ese tipo de información, dividiéndola previamente en componentes jerárquicamente organizados (piezas, escenas, historias, cuadros, fotogramas). Los problemas que presentan los sistemas disponibles van en la misma línea de los experimentados en la recuperación de imágenes.
[Enser, P. & Sandom, C. (2002). Retrieval of archival moving imagery: CBIR outside the frame? Proceedings of the International Conference on Image and Video Retrieval (London, July 18-19, 2002). Berlin: Springer (Lecture Notes in Computer Science 2383). 206-214]
[http://www.robots.ox.ac.uk/~vgg/research/vgoogle/]
[http://www.alphaworks.ibm.com/tech/imars]
[http://staff.science.uva.nl/~civr2007/index.php]
En [Saracevic, T. (1995). Evaluation of evaluation in information retrieval. In Proceedings of the 18th Annual International ACM SIGIR Conference on Research and Development in Information Retrieval (Seattle, Washington, United States, July 09 - 13, 1995): SIGIR '95 (pp.1380146). New York, ACM Press] se distinguen seis niveles de evaluación para los sistemas de información (engineering, input, processing level, output level, use and user level, social level) apoyándose la evaluación específica de los sistemas para la recuperación de información en los tres primeros.
Como parte del Cross Language Evaluation Forum (http://www.trebleclef.eu) surge en 2003 una campaña para la evaluación de la recuperación de imágenes (http://www.imageclef.org/) que se extiende hasta la actualidad, proponiendo tareas para trabajar con fotografías, información proveniente de Wikipedia, imágenes médicas y la recuperación interactiva de imágenes multi-idioma.
[Clough, P. (2007), Large-scale evaluation of cross-language image retrieval systems, ASIST Bulletin, Feb-Mar 2007]
[http://np.uned.es/iCLEF/]
http://ir.shef.ac.uk/cloughie/
(http://specialcollections.stand.ac.uk/photcol.htm)
(http://babelfish.altavista.com/)
http://ir.shef.ac.uk/eurovision/
http://www.multimatch.eu
http://www.gpsvisualizer.com/
Etiquetas: NLP, research, technoloy
martes, abril 28, 2009
Autoría y plagio
La identificación de la autoría de un texto está directamente relacionada con la determinación del estilo del mismo a partir de sus características léxicas y sintácticas, de bajo nivel y derivadas. De hecho, es una tarea que se enmarca dentro de lo que se conoce como estilometría (http://www.mathcs.duq.edu/~juola/papers.d/fnt-aa.pdf) entendida como la ciencia que se dedica a inferir características de un autor literario a partir de las características de los documentos escritos por el mismo (Joula, 2008). Normalmente los métodos informáticos utilizados incluyen fases de normalización del texto, selección de características distintivas (una de las tareas más difíciles) y la inferencia estadística (incluyendo técnica de análisis supervisado [t-test, ANOVA, LDA, aprendizaje automático] o no supervisado [PCA, escalado multidimensional, clustering]). Con la definición de la estilometría el debate está servido: ¿Se puede identificar el estilo de un autor individual? ¿De verdad cada autor deja una impronta única y subconsciente en sus escritos?
[Un clásico: Mosteller, Frederick, and David L. Wallace. Applied Bayesian and Classical Inference: The Case of the Federalist Papers. New York: Springer-Verlag, 1984]
Aparte de las herramientas estad´siticas habituales (SPSS, Matlab, WEKA, ...) podemos encontrar software específico (Signature, http://www.philocomp.net/?pageref=humanities&page=signature; JGAAP, http://www.jgaap.com/) y algún ejemplo, como CUSUM (Andrew Morton).
Kessler, B., Numberg, G., and Schütze, H. 1997. Automatic detection of text genre. In Proceedings of the 35th Annual Meeting of the Association For Computational Linguistics and Eighth Conference of the European Chapter of the Association For Computational Linguistics (Madrid, Spain, July 07 - 12, 1997). Annual Meeting of the ACL. Association for Computational Linguistics, Morristown, NJ, 32-38.
Métricas de legibilidad
Flesch reading easy formula (1948)
Gunning FOG index (1952)
Kincaid Formula (Flesch-Kincaid)
UNIX style, http://www.delorie.com/gnu/docs/diction/style.1.html
En pocas palabras
Plagio = reutilización antiética de un texto
Tipos de plagio: palabra por palabra; parafraseado; de fuentes secundarias; de la forma original; de ideas; de autoría
Clough, P. and Gaizauskas, R. (2008), Corpora and Text Re-use, In Anke Lüdeling & Merja Kytö (eds) Corpus Linguistics. An International Handbook. (Series: Handbücher zur Sprache und Kommunikationswissenschaft/Handbooks of Linguistics and Communication Science). Mouton de Gruyter, Berlin (In Press).
Clough, P. (2003), Old and new challenges in automatic plagiarism detection, National UK Plagiarism Advisory Service, JISC (Online).
El autor divide el problema de la detección de un plagio en otros dos dependiendo de si la tarea se ha de realizar dentro del mismo texto o entre textos diferentes. En el primer caso de divide en la detección de inconsistencias y la búsqueda de fuentes probables del texto plagiado; mientras que en el segundo caso, la tarea se divide entre la detección de colusión (caso de que el texto haya sido generado cooperativamente) o del plagio propiamente dicho, es decir la copia entre los textos.
Los sistemas automáticos para la detección del plagio están pensados [“The task [of automatic plagiarism detection] may be simplified by finding a distinctive characteristic such as a misspelled identifier or paraphrased comment, though such a capability is hard to build into any automated plagiarism detection system” – Whale (1990)] para dar soporte a un proceso manual mediante la reducción del tiempo empleado en la comparación de textos y la búsqueda de posibles fuentes del plagio.
Solapes Ngram: Ferret, University of Hertfordshire (Lyon et al., 2001) based on tri-gram containment CopyFind, University of West Virginia, http://plagiarism.phys.virginia.edu/software.html CopyCatch, University of Birmingham by Woolls and Coulthard (1998)
Servicios online
Plagiarism.org - www.plagiarism.org
Digital Integrity - www.findsame.com
iParadigms - www.turnitin.com
Essay Verification Engine 2 (EVE2) - www.canexux.com/eve
IntegriGuard - www.integriguard.com
IntegriGuard [Howoriginal] - www.howoriginal.com
Copyscape - http://www.copyscape.com
Aplicaciones
Copycatch - www.copycatch.freeserve.com
Glatt Plagiarism Services - www.plagiarism.com
WordCheck - www.wordchecksystems.com
YAP3 - www.ccsr.cam.ac.uk/~mw263/YAP.html
COPS - Copy Protection System from Stanford – http://www-diglib.stanford.edu
SCAM - Stanford Copy Analysis Mechanism, http://www-db.stanford.edu/~shiva/SCAM/scamInfo.html
CHECK – http://citeseer.nj.nec.com/si97check.html
Turnitin, Commercial tool used by UK universities through the JISC Plagiarism Detection Service (www.jiscpas.ac.uk/)
[Zobel, Justin. 2004. 'Uni Cheats Racket': A Case Study in Plagiarism Investigation" In Proceedings of the Sixth Conference on Australian Computing Education. Vol. 30 p. 357-365]
Etiquetas: NLP, research, technoloy
Inteligencia de Negocio
La información y los sistemas tecnológicos para su gestión están en el corazón mismo de la organización empresarial. Es bueno saber distinguir entre los datos y la información (datos puestos en contexto para el usuario adecuado) para entender la tecnologías clave relacionadas con su uso por parte del negocio, a todos los niveles, operativo, táctico y/o estratégico. Para Clough los sistemas de información --para la gestión empresarial- se pueden considerar sistemas complejos donde interaccionan como elementos básicos personas, objetos y procedimientos, una simplificación intencionada de algunos modelos de complejidad al uso en la literatura sajona, como BAPO (Business, Architecture, Processes, Organisation).
Los sistemas de inteligencia de negocio (BI, Business Intelligence) se suelen asociar con la reinvención de los tradicionales sistemas de información para la gestión (MIS, Management Information Systems; EIS, Enterprise Information Systems) y la toma de decisiones (DSS, Decision Support Systems). Se trata de sistemas que, típicamente incluyen funcionalidades para la gestión de bases de datos, el minado de los mismos (para la extracción de conocimiento o información) y su visualización y representación [infraestructura típica de tres capas, 3-tier, http://www.dwreview.com/DW_Overview.html].
En términos genéricos, se suele hablar de un almacén de datos (DataWarehouse, DWh) como una base de datos especialmente diseñada para la generación de informes a diferencia de otras de uso empresarial que se optimizan para el procesamiento transaccional online (OLTP). Una de las herramientas tipo que se suelen instalar en el Front-End de esos sistemas para la generación de informes son las dedicadas al procesamiento analítico online (OLAP) que ofrecen respuestas rápidas a preguntas complejas relacionadas con el negocio y que habitualmente se integran en los EIS, MIS o DSS.
Dentro de la propia estructura de los almacenas de datos es fundamental tener integradas las funciones de transformación e integración de múltiples fuentes (bases de datos) así como las de selección y agregación.
El proceso de "Minado" de Datos (Data Mining) se suele entender como la resolución de problemas mediante el análisis de los datos gestionados habitualmente por esos sistemas de DWh; y las técnicas que utiliza derivan en gran parte del aprendizaje automático (machine learning). Los sistemas de DM se utilizan habitualmente para tareas de clasificación, predicción numérica, extracción de reglas asociativas y agrupamientos (clustering, típico del aprendizaje no supervisado). Sus aplicaciones son diversas y, pensando en el campo específico de la inteligencia de negocio, se utiliza típicamente para buscar información predictiva en grandes bases de datos, de mercado, por ejemplo; para la identificación de tendencias o patrones a partir, por ejemplo, de los datos de consumo de los clientes.
Weka, http://www.cs.waikato.ac.nz/ml/weka/
Clementine (SPSS), http://www.spss.com/clementine/
RapidMiner (formerly YALE), http://rapid-i.com/content/blogcategory/10/69/
Java Data Mining, http://www.artima.com/lejava/articles/data_mining.html
XLMiner (data mining in Excel), http://www.resample.com/xlminer/index.shtml
La visualización cobra hoy especial importancia por varias circunstancias: la generalización de los 'mashups' asociados al popular servicio de GMaps; la reinvención de los sistemas de información geográfica (GIS) 'à-la-Web 2.0'; el relanzamiento del tradicional análisis de redes sociales asociado con nuevas técnicas para la visualización dinámica y estática de redes; la creciente demanda de servicios geo-localizados para la representación de información relevante (e.g. Cobertura de la pandemia de gripe porcina en The Guardian)
ESRI (e.g. ArcGIS), http://www.esri.com/
MapInfo, http://www.mapinfo.com/location/integration
InstantAtlas, http://www.instantatlas.com/
The Sheffield Health and Well-being Atlas (Sheffield PCT, United Kingdom), http://www.sheffield.nhs.uk/healthdata/4-6.php
Hoy se empieza a hacer un uso intensivo de tecnologías para el procesado del lenguaje natural (NLP), la extracción y recuperación de información (IE, IR) en el área de inteligencia de negocio. No es difícil pensar en aplicaciones específicas: e.g. la elaboración de resúmenes de documentos o la asistencia en la redacción de textos multi-idioma en el caso de NLP; la recuperación de información no textual y/o en función del contexto y las necesidades del usuario (IR); la estructuración de información textual desestructurada o la asignación automática de meta-datos (etiquetado automático, www.opencalais.com/) utilizando las técnicas de extracción de información (IE). El reconocimiento de entidades nominales (Named Entities Recognition, NER) y la extracción de relaciones (Language Technology, a machine learning approach, http://ilk.uvt.nl/~antalb/ltua/LTUA2006-5.pdf) puede ser de gran valor para la búsqueda de personas y la gestión de las modernas organizaciones en red.
Encontramos ejemplos de visualización de contenidos en http://www.perseus.tufts.edu/; LingPipe, http://alias-i.com/lingpipe/index.html; GATE, http://www.gate.ac.uk/
Dentro de las funcionalidades más útiles de las tecnologías para la extracción de información, especialmente en las áreas de representación e intercambio de datos tienen cabida las tecnologías de la Web Semántica (XML, RDF + RDFSchema, OWL)
[http://www.sciam.com/article.cfm?articleID=00048144-10D2-1C70-84A9809EC588EF21]
Algunas referencias útiles para empezar a tirar del hilo:
Data visualisation
http://www.math.yorku.ca/SCS/Gallery/
http://mashable.com/2007/05/15/16-awesome-data-visualization-tools/
Spence, R. (2001) Information Visualization. Addison-Wesley:
Tufte, E R. (1997) Visual explanations: images and quantities, evidence and narrative: Graphics Press: Cheshire, CT.
Modern Information Retrieval, Ricardo Baeza-Yates Berthier Ribeiro-Neto (Eds.) This chapter is called “User Interfaces and Visualization,” by Marti Hearst. Available at www.sims.berkeley.edu/~hearst/irbook/chapters/chap10.html
Data mining
http://www.the-datamine.com/bin/view/Misc/IntroductionToDataMining
Datamining: Practical Machine Learning Tools and Techniques with Java Implementations, Witten, I. H. and Frank, E., Morgan Kaufmann, 1999
http://www.spss.com/data_mining/
Data mining for BI
http://www.dataminingbook.com/
Natural Language Processing
Christopher D. Manning, Hinrich Schutze Foundations of Statistical Natural Language Processing, MIT Press (1999), ISBN 978-0262133609
Information Extraction (IE)
H. Cunningham. GATE, a General Architecture for Text Engineering. Computers and the Humanities, volume 36, pp. 223-254, 2002.
http://www.itl.nist.gov/iaui/894.02/related_projects/muc/
Sarah M. Taylor, "Information Extraction Tools: Deciphering Human Language," IT Professional, vol. 6, no. 6, pp. 28-34, Nov/Dec, 2004.
Web2.0 and BI
http://www.b-eye-network.co.uk/view-articles/5913
Etiquetas: NLP, research, technoloy
lunes, febrero 18, 2008
Muertes en tránsito
Con ese tránsito continuo tomamos consciencia de la mundialización, proceso de metástasis que, mediante una homogeneización mortal de necesidad, extiende entre nosotros el tumor maligno más peligroso para aquella sociedad, nuestra propia humanidad. Morimos ahogados en nuestra propia nausea y lo hacemos anestesiados por cierto placer hedónico, cambiante, pero continuado: sadomasoquismo en estado puro.
Nos movemos, sí. Me muevo y muero dos veces: una yo y otra los demás que, juntos, hacen que yo sea posible...
Etiquetas: chorradas, personal
Caminar sobre la nieve
¿Serás tú? ¿No? En ese caso, piensa que la mejor forma de no caerse es pensar, exclusivamente, en el siguiente paso: eso implica usar toda tu capacidad para dar ese paso, no para pensar en hacerlo, sino para hacerlo.
Etiquetas: chorradas, personal
