martes, 5 de agosto de 2008

RECUPERACIÓN DE INFORMACIÓN: ONTOLOGÍAS

A continuación intentaremos tratar el problema de la recuperación de información en el Web se con mecanismos como la realimentación por relevancia, la utilización de tesauros, el estudio de los hiperenlaces, o la aplicación de redes neuronales, entre otros. Todos estos mecanismos se aplican sobre grandes bases de datos construidas a partir de la exploración previa de sectores más o menos amplios del Web.
La experiencia ha demostrado que la precisión de estos sistemas es baja, y la exhaustividad está relativizada al sector explorado. Finalmente nos centraremos en el el uso de agentes inteligentes que rastreen la red según las necesidades informativas del usuario. Se indican las características de los agentes y se analizan algunas de las propiedades y habilidades deseables para aquellos agentes dedicados a la recuperación de información en el Web.Sumario1. Introducción
2. Agentes Inteligentes
3. Agentes inteligentes y recuperación de información en el Web
3.1 La elección de los puntos de partida
3.2 Activación de enlaces
3.3 Selección de páginas por contenido
4. Conclusiones
5. Bibliografía
1. IntroducciónUno de los fenómenos más importantes de los últimos años en el campo de la Información es eldesarrollo y espectacular crecimiento de Internet, especialmente de lo que conocemos como Web. El número de páginas crece exponencialmente y afecta a todos los ámbitos del conocimiento . En el terreno científico, por ejemplo, muchas de las fuentes de información tradicionales como revistas, actas de congresos, etc. se encuentran ya en la red. Este hecho pone de relieve el problema de la Recuperación de Información en la red,
Básicamente, los sistemas de recuperación en el Web utilizan dos mecanismos, que no son excluyentes entre sí y que pueden utilizarse de forma combinada.- Uno es la búsqueda mediante palabras clave. E- El otro es la clasificación en clases o categorías de páginas web
En el caso conocido de las búsquedas por palabras clave se pueden aplicar diversas técnicasque mejoren los resultados, tendentes fundamentalmente a superar o aminorar lo que algunos autores han denominado como la barrera semántica: la manera de expresar una misma idea o concepto difiere de unas personas a otras. Buena parte de tales técnicas tienen que ver con la expansión de la consulta o adición de nuevos términos a las palabras clave de la búsqueda, en especial la realimentación por relevancia Otra posibilidad es el uso de tesauros. Éstos pueden ser elaborados previamente de forma manual por lo general, y estar especializados en algún dominio del conocimiento concreto, o bien pueden construirse de forma más o menos automática. Para esto último se aplican mecanismos de análisis de similitud o distancia entre términos. Entre las técnicas utilizadas podemos citar los denominados tesauros de similitud, el análisis de cluster para agruparautomáticamente palabras relacionadas, o la utilización de redes neuronales para la obtención de términos cercanos o relacionados.
Por lo que se refiere a las búsquedas mediante categorización previa, dicha clasificación sueleefectuarse manualmente, aunque hay experiencias interesantes de clasificación automática de páginas web, como por ejemplo el proyecto WEBSOM (http://websom.hut.fi/websom/), en el que se utilizan mapas autoorganizativos para establecer categorías de términos. Esas categorías se emplean para definir o representar vectores de las páginas web, con los cuales se puede construir, aplicando el mismo mecanismo, un mapa visual de las propias páginas colocadas en función de su similitud. El usuario puede utilizar dicho mapa para, una vez seleccionada alguna de las páginas, obtener las más cercanas o más relacionadas con ella.Otros proyectos de categorización utilizan modelos basados en las características de losenlaces hipertextuales, incluso algunas veces en combinación con técnicas de redes neuronales. También hay que destacar el programa Inxight Star y su aplicación a la producción de mapas temáticos (http://www.inxght.com/products/st_studio). Sin embargo, bien se trate de búsquedas mediante palabras clave o a través de categorización previa de páginas, o de una combinación de ambos métodos, cualquiera de estos sistemas parte de la existencia de una base de datos que contenga la colección de páginas web.
Dejando de lado los sistemas especializados y circunscritos a ámbitos muy concretos del conocimiento, los sistemas generales de búsqueda tienden a manejar bases de datos muygrandes, puesto que, como es bien sabido, el Web crece día a día. En general, la experiencia de los usuarios de tales sistemas de búsqueda muestra claramente que se producen respuestas de muy baja precisión. En cuanto a la exhaustividad, se percibe en términos brutos como muy alta (la típica respuesta de un buscador con cientos o miles de páginas encontradas). Aunque esta exhaustividad debe ser relativizada, puesto que es conocido que incluso los buscadores más importantes cubren sólo una parte de todo el espacio Web, el hecho es que respuestas con un número tan alto de páginas encontradas producen en el usuario el fenómeno bien conocido de la sobrecarga de información (desbordamiento cognitivo).
Existe sin embargo otra aproximación al problema que, sin perseguir altas tasas deexhaustividad, pretende obtener resultados mucho más precisos, basándose para ello en el uso de agentes inteligentes.
volver al sumario
2. Agentes Inteligentes Los agentes inteligentes son programas que han sido definidos por diversos autores; en muchos casos de manera lo suficientemente poco precisa como para que se produzca discusión acerca de si tal o cual sistema es o no un agente . Las clasificaciones que podemos hacer de los agentes son variadas y dependen de las diferentes características que se tengan en cuenta.
Además hay que tener presente la existencia del internet invisible o Infranet entendiendo quees el conjunto de recursos accesibles solamente a través de pasarelas o formularios o bien contenidos de creación dinámica (por ejemplo consultas a bases de datos) y que por ello están inaccesibles para los robots. Los agentes intentan ofrecer una solución a este tipo de situaciones, fundamental pues en muchos casos son de vital importancia en la recuperación de información por la calidad de sus contenidos.
A pesar de ello, casi todo el mundo está de acuerdo en que los agentes inteligentes tienen una serie de características que los definen como tales. Tal vez el problema esté en que, de un lado, no siempre están presentes todas esas características, y de otro, buena parte de dichas características son lo suficientemente ambiguas como para admitir diferentes interpretaciones acerca de su contenido real y concreto. En adición, el estado todavía embrionario de muchos proyectos, y los intereses comerciales de muchas empresas que proclaman de forma abusiva producir y vender auténticos agentes inteligentes, son factores que añaden más confusión.
A grandes rasgos las características típicas de un agente inteligente son:· Autonomía. Los agentes deben trabajar sin supervisión humana, al contrario que losprogramas que operan en base a interfaces de manipulación directa por parte del usuario.Así, una vez fijadas las condiciones y restricciones necesarias por parte del usuario, seespera que el agente intente cubrir o conseguir sus objetivos, dejando ocultos los detallespara dicho usuario .· Inteligencia. El concepto de inteligencia puede entenderse de maneras muy distintas.· Cooperación. Un agente debería ser capaz de colaborar con otros agentes, intercambiandoinformaciones y resultados de acciones propias. La negociación puede hacerse conagentes que persigan los mismos objetivos (de manera que, por ejemplo, objetivos yalogrados por un agente podrían ser cedidos a otro agente que persigue lo mismo), o conagentes de objetivos diferentes, pero necesarios o al menos útiles para lograr las metas delprimero. La capacidad de cooperación requiere disponer de algún mecanismo que permitala negociación entre agentes, aún cuando éstos sean heterogéneos. Se han propuestodiversos estándares, siendo probablemente el más difundido el conocido como KQML . · Comunicación. Esto no sólo implica la simple capacidad para comunicarse con el usuario,sino también la necesidad de tener conocimiento sobre el mundo o dominio sobre el cualopera el agente. Habitualmente este conocimiento se implementa mediante ontologías yreglas de inferencia .· Reactividad. Un agente debería poder responder ante eventos, tomando sus propiasdecisiones, incluso modificando su manera de operar, siempre en vista a la consecución desus metas.· Adaptitividad. Un agente debería poder aprender de experiencias pasadas (y de laexperiencia de otros agentes), así como de las reacciones del usuario ante resultadosprevios. Esto está directamente relacionado con el aprendizaje de máquina oaprendizaje automático.
volver al sumario
3. Agentes inteligentes y recuperación de información en el Web
Una de las tareas obvias que podría ser abordada mediante agentes es la exploración automática del WWW, con el fin de recuperar las páginas relevantes para unas necesidades informativasdeterminadas. De esta forma, la formulación de tales necesidades sería parte de las especificaciones iniciales proporcionadas al agente; éste exploraría la red, eligiendo los enlaces más prometedores, accediendo a nuevas páginas, recopilando las que pudiesen satisfacer las especificaciones iniciales, y así sucesivamente. Todo ello de forma muy parecida a como lo hacemos manualmente las personas, pero de forma automática, sin requerir de nuestra presencia.
Puesto que la propia exploración del Web, manual o automática, requiere grandes cantidadesde tiempo, un enfoque de este tipo tiene de entrada algunas limitaciones. No es esperable unarespuesta inmediata, ni siquiera probablemente con la agilidad suficiente para plantear una dinámica especialmente interactiva con el usuario. Antes bien, y muy en la línea de lo que entendemos por agentes inteligentes, de alguna forma el usuario delega en el agente, después de haberle facilitado algunas instrucciones (por ejemplo, indicándole qué clase de información se desea). Se deja al agente hacer su trabajo de forma autónoma y tomándose su tiempo, en espera de que en un plazo razonable (el propio usuario podría establecer plazos máximos) entregue el resultado de su trabajo, esto es, las páginas web encontradas útiles para satisfacer las necesidades de información expresadas por el usuario.
La otra limitación importante de este enfoque es la renuncia implícita a la exhaustividad. Dadoel tamaño del Web, parece claro que la exploración completa, o incluso de una parte significativa de él, resulta implanteable; antes al contrario, agentes de este tipo trabajando para usuarios individuales o personales, por ejemplo, explorarían tan sólo una pequeña parte del Web. Se espera, en contrapartida, que los resultados obtenidos alcancen una notable precisión. Esta clase de agentes permitirían obviar el efecto de sobrecarga de información aludido más arriba.
Aceptando estas limitaciones, los agentes a que nos referimos deben resolver una serie decuestiones, para las que se han propuesto diversas soluciones, la mayor parte no excluyentes entre sí.
Examinaremos a continuación los problemas más importantes.
volver al sumario
3.1 La elección de los puntos de partida
Puesto que un agente de este tipo debe explorar gran cantidad de páginas, es preciso determinar algún punto de partida. Habitualmente se suele representar el Web como un grafo dirigido, en el que las diferentes páginas son los nodos, y los enlaces son los arcos de tal grafo. El proceso de exploración parte de un nodo y, utilizando los arcos o enlaces, conduce y explora otros nodos, y así sucesivamente.
Como la distancia entre el nodo por el que se empieza a explorar y cualquiera de los nodos relevantes puede ser muy grande, es crítico localizar previamente nodos o puntos de partida que puedan estar lo más cercanos posible a nodos o páginas relevantes para las necesidades de información del usuario.
La distancia a recorrer (el número de nodos por los que hay que pasar) no sólo depende deltamaño del Web, sino que incluso podemos encontrar nodos con vías muertas que se extinguen sin permitir proseguir con la exploración.
Un enfoque utilizado frecuentemente para elegir buenos puntos de partida es comenzar eltrabajo del agente con una búsqueda al estilo clásico en las bases de datos de diferentes buscadores convencionales. En estos casos tales búsquedas previas suelen enviarse a servicios metabuscadores, los cuales tratan con los diferentes buscadores, recogen los resultados de cada uno de ellos, los organizan y los devuelven a quien hizo la consulta. En este caso sería el propio agente quien enviaría la consulta a esos metabuscadores, recogiendo las páginas devueltas por éstos. Tales páginas son las candidatas a ser puntos de entrada o de comienzo de exploración.
Dichos puntos de entrada pueden manejarse de forma secuencial, empezando la exploraciónpor uno de ellos, hasta una determinado distancia prefijada de antemano, o en paralelo, utilizando varios agentes para ello. En este caso los agentes deben hacer uso de sus capacidades cooperativas, no sólo para compartir criterios de selección de páginas relevantes, sino también para evitar exploraciones de los mismos nodos.
La exploración de la red con varios agentes tomando diferentes puntos de entrada ofrece elatractivo de permitir utilizar procesamiento paralelo o varios ordenadores para el proceso (22), pero incluso sin ello presenta la ventaja de obviar en alguna medida problemas derivados de lascomunicaciones, como cuellos de botella, líneas o servidores lentos, etc., redundando en una mejora en el tiempo de respuesta.
De otro lado, el hecho de disponer de varios puntos de entrada puede implicar la selección departe de ellos (en un número razonable), así como posiblemente la priorización. Hay diversasestrategias automáticas para abordar esta cuestión, desde tomar simplemente los n primeros, hasta aplicar medidas de similitud (que trataremos luego) entre las especificaciones del usuario y el contenido de las páginas, pasando por el análisis de aspectos como el número de enlaces de cada punto de entrada, o incluso prospecciones de tiempos de respuesta. Del mismo modo, es posible una realimentación por parte del usuario, dejando que sea éste quien seleccione los que estime como mejores puntos de entrada. Naturalmente, estos diversos enfoques son combinables entre sí.
volver al sumario
3.2 Activación de enlaces
Dado un punto o página de partida, un agente que pretenda explorar el Web debe extraer los enlaces (direcciones URL) que esa página contenga y guardarlos en una lista. Posteriormente, irá tomando enlaces de esa lista, recuperando las páginas a las que apuntan y así sucesivamente. Si la exploración se ha de llevar a cabo por varios agentes de forma cooperativa, esa lista debería ser compartida en alguna forma, a fin de no duplicar exploraciones de los mismos nodos.
El almacenamiento y posterior seguimiento de todos los enlaces en la lista llevaría,teóricamente, a la exploración de todo el Web. Sin embargo, como suele tenerse limitaciones derecursos de almacenamiento, capacidad de proceso o comunicaciones, etc., y especialmente de tiempo, se hace preciso establecer un orden de prioridad para los elementos de la lista. Este orden atiende a dos premisas fundamentales: en primer lugar, la relevancia de los enlaces (o su presunción) respecto de las necesidades informativas del usuario. En segundo lugar, las posibilidades de acceder a mayores espacios del Web desde unos enlaces que desde otros.Empezando por este último aspecto, se han propuesto diversos sistemas para seleccionaraquellos enlaces más prometedores desde ese punto de vista. Para determinar la importancia de unapágina, una posibilidad consiste en utilizar los backlinks de la misma, esto es, las páginas que tienen enlaces hacia la página en cuestión. El mecanismo más simple es contar el número de backlinks, pero el problema es disponer de dicha información. En este sentido, cabe mencionar el proyecto Compaq's Connectivity Center Server en estrecha relación con Altavista(http://www.altavista.com), o el también muy conocido buscador Google (http://www.google.com)
Más sofisticado que el simple recuento de backlinks es el algoritmo conocido comoPageRank. La idea básica es que la importancia de un nodo o página es directamenteproporcional al número de backlinks que éste tiene, pero no todos los backlinks pesan lo mismo, sino que su valor está en función de la importancia de la página de la que procedan. Y la página de procedencia tiene, a su vez, una importancia que viene determinada por los backlinks que recibe, y así sucesivamente. Según este algoritmo, el cálculo del PageRank ha de hacerse de forma iterativa, asignando de antemano pesos a determinados nodos o páginas, ya sea de forma aleatoria o en función de algún otro criterio, y asumiendo que, de una forma u otra, en algún momento de la computación se llega a esos nodos. Se trata de una visión muy genérica, en la que hay que resolver otros detalles, pero lo que importa resaltar aquí es que se trata de un cálculo costoso en términos de tiempo de proceso.
volver al sumario
3.3 Selección de páginas por contenido
Más allá de la mayor o menor importancia de una página (en el sentido de la mayor o menor facilidad de exploración del Web a partir de la misma), lo que realmente nos interesa es disponer de medios para estimar la proximidad de un nodo a las necesidades informativas del usuario. Esto debe permitir, naturalmente, seleccionar páginas para que el agente las entregue al usuario como resultado. Pero también, en conjunción con la estimación de importancia vista antes, para determinar cuáles son los enlaces más prometedores para proseguir la exploración.En esta línea, diversos mecanismos pueden ser utilizados, y muchos de ellos pueden combinarse o compaginarse entre sí.
volver al sumario
4. . Conclusiones
La mejora de los mecanismos de trabajo actuales y su aplicación en la recuperación deinformación deberían integrarse en el empleo de los agentes, con el fin de conseguir aplicaciones muy precisas en sistemas de usuario. A pesar del problema de los relativamente largos tiempos de espera,que podrían mejorarse con la cooperación entre agentes, se conseguirían tasas de precisión muyelevadas.Los mecanismos actuales como el análisis de los enlaces hipertextuales, que han demostradosu efectividad, permitirían, entre otros resultados, obviar en gran medida la situación multilingüe del Web, sin olvidar los mecanismos clásicos como la exploración de grafos, o la aplicación de modelos habituales muy usados en recuperación de información.
Para la utilización de agentes en la recuperación de información en el Web se necesita ladeterminación clara y precisa de aspectos tan importantes como la designación de los puntos (páginas) de partida, y la selección de enlaces (páginas, de nuevo) en el camino de la selección de los mejores candidatos a ser explorados. Ambos aspectos se han tratado en este artículo. Todo ello redundaría en conseguir no sólo valores altos de precisión, sino también, dentro de la porción de Web explorada, mejores definiciones para conseguir valores altos de exhaustividad.
volver al sumario
5. Bibliografía.
1. HUBERMAN, B.A. y ADAMIC, L.A.. Evolutionary dynamics of the World Wide Web. Tech.Rep. Xeros Palo Alto Research Center, (February, 1999).2. HOBBES ZAKON, R.. Hobbe's Internet Timeline v5.2., 2000. URL: http://www.zakon.org/robert/internet/timeline
3. SHIRI, A.A.. Cybermetrics: a new horizon in information research. 49th FID Conference andCongress, 1998, 11-17 october , New Delhi, India, 1998
4. CHEN, H.; ZHANG, Y. y HOUSTON, A.L.. Semantic indexing and searching using a hopfield net. Technical report, Dep. of MIS, College of Business and Public Administration, Tucson, AZ, 1997.
5. NADIS, S.. Computation cracks semantic barrier between databases. Science, 1997, vol. 272, p. 1419
6. SALTON, G.. On the relationship between theoretical retrieval models. In Informetrics 87/88, Diepenbeeck (Bélgica), 1987, p. 263-270
7. CROUCH, C.J.. An approach to the automatic construction of global thesauri. InformationProcessing & Management, 1990, vol. 26, p. 629-640
8. QIU, Y.; FREI, H. Concept based query expansion, SIGIR 93, 1993, p. 160-169
9. FIGUEROLA, C.G.; ALONSO BERROCAL, J.L. y ZAZO RODRÍGUEZ, A.F.. El contenido semántico de los enlaces de las páginas web desde el punto de vista de la recuperación de información. I Jornada de Terminología i Documentació, 2000, Barcelona, Maig de 2000.
10. RASMUSSEN, E.. Clustering algorithms. En: FRAKES, W.B. y BAEZA-YATES, R. (editors). Information Retrieval: Data structures and algorithms. Prentice-Hall, 1992.
11. CHEN, H. y otros. Internet browsing and searching: User evaluations of category map and concept space techniques. Journal of American Society for Information Science, 1998, vol. 49, nº 7, p. 582-603
12. KOHONEN, T.. Self-Organizing Maps, Springer Series in Information Sciences, vol. 30
13. KASKI, S. y otros. WEBSOM--self-organizing maps of document collections, Neurocomputing, 1998, vol. 21, p. 101-117
14. . AGUILLO, I.F. Infranet. Buscar en los escondrijos de Internet. Net Conexión, 1997, 15, p. 55-56
15. CORNELLA, A. La infranet: ¿dónde está el valor?. El profesional de la información, 1999, vol. 8, nº 5, p. 3
16. AGUILLO, I.F. Internet invisible o Infranet: definición, clasificación y evaluación, VII Jornadas Españolas de Documentación, 2000 (Bilbao, Octubre 19-21), p. 249-269
17. FINIM, T. Umbc kqml web. URL: http://www.cs.umbc.edu/kqml/.
18. LABROU, Y. y FININ, T. A proposal for a new kqml specification. Technical report, Computer Science and Electrical Engineering Department, University of Maryland, Baltimore, MD 21250, 1997. URL: http://www.cs.umbc.edu/ jklabrou/publications/tr9703.ps
19. BHARAT, K. y otros. The connectivity server: fast access to linkage information on the web. In Procs. of the 7 Internet. WWW conference, 1998, Brisbane, Australia. URL: http://www7.scu.edu.au/programme/fullpapers/1938/com1938.htm
20. BRIN, S. y PAGE, L. The anatomy of a large-scale hypertextual (Web) search engine. Computer Networks and ISDN Systems, 1998, vol. 30, nº 1-7, p. 107-117. URL: citeseer.nj.nec.com/brin98anatomy.html
volver al sumario

Construccion automatica de ontologıas para laWeb Semantica

GruSMA (Grupo de Sistemas Multi-Agente) es un grupo de trabajo que for-
ma parte del Grupo de Investigacion en Inteligencia Artificial de la Universidad
Rovira i Virgili. Esta coordinado por los doctores Antonio Moreno y Aıda Valls, y
actualmente cuenta con dos estudiantes de doctorando avanzados (David Isern
y David Sanchez) y una decena de estudiantes de Ingenierıa Informatica. La
motivacion principal del grupo, fundado en el curso 1999-2000, es promover un
entorno propicio para la realizacion de Proyectos Fin de Carrera (PFC) de primer
y segundo ciclo de Ingenierıa Informatica en elambito de los agentes inteligentes
y los sistemas multi-agente (SMA). Desde su inicio ya se han presentado mas de
30 PFCs, que han dado lugar a numerosas publicaciones cientıficas.
Las lıneas principales de trabajo de GruSMA son las siguientes:
La provision personalizada, inteligente y proactiva de servicios a los ciu-
dadanos o turistas que visitan una ciudad. Este trabajo se enmarco dentro
de la red europea AgentCities.NET, IST 2000-28384, ya finalizada. El prin-
cipal resultado de GruSMA fue el dise˜no e implementacion de HeCaSe, un
SMA que proporcionaba servicios en elambito de la salud.
La aplicacion de los sistemas multi-agente a problemas en el dominio de la
Medicina. Algunasareas concretas de trabajo han sido la gestion del trans-
plante deorganos, el seguimiento automatizado de guıas de practica clınica
(trabajo actual de tesis de David Isern), o la gestion, analisis y monitoriza-
cion de los datos de pacientes paliativos (en el proyecto espa˜nol PalliaSys,
TIC2003-07936, coordinado por la URV, que acaba a finales de 2005.

El objetivo basico de esta lınea de trabajo es la estructuracion semi-auto-
matica del conocimiento almacenado en la web sobre un dominio determinado.
La intencion es desarrollar un sistema que funcione de forma autonoma, no
supervisada, sin conocimiento previo, de forma independiente del dominio, y
con la suficiente escalabilidad como para obtener resultados representativos para
cualquier dominio con un rendimiento aceptable.
El proceso de construccion automatica de ontologıas que hemos dise˜nado e
implementado hasta el momento tiene los siguientes pasos:
Construccion de una taxonomıa de clases del dominio.
Deteccion de instancias de las clases.
Deteccion de relaciones no taxonomicas