Mela Sem Perio2009 Documento Los Motores De BúSqueda SemáNticos

12
SEMINARIO DE POSGRADO SEGUNDO CUATRIMESTRE 2009 de la Cátedra Tecnologías en Comunicación Social Cambios sociales y culturales: innovando en lasTecnologías en comunicación social Docente dictante responsable: Héctor H. THOMPSON Otros docentes dictantes AZPIAZU, Hernán BOSCH, Mela ROJAS, Carlos SORGENTINI, Luis Documento de trabajo: Los motores de búsqueda semánticos para incluir y extraer conocimiento en la Web Autora: Mela Bosch Resumen: Todos esperamos más de los motores de búsqueda Web, veremos sus tendencias, analizaremos como una vieja técnica, la de anotar o glosar porciones se impone con nuevos usos en el futuro de la Web para dar o extraer sentido de lo que se archiva y publica a la vez que se complementa con los avances en el procesamiento del lenguaje Keywords: Natural Language Processing, Semantic annotation, Semantic Web, Web search engines Palabras clave: Anotación semántica, Motores de búsqueda, Procesamiento del lenguaje natural, Web semántica Motores de búsqueda: tipos y tecnologías Es importante hacer algunas distinciones terminológicas que identifican tecnologías, estrategias y enfoques diferentes en los buscadores Web en general. Un primer tipo es el motor de búsqueda textual (Full Text Search Engine) basado en análisis léxico. Se trata de una forma de procesamiento que divide el texto en parágrafos, frases, palabras y también identifica entidades tales como direcciones de correo electrónico y direcciones Web, todos estos elementos para ser procesados son considerados como unidades acumulativas, técnicamente llamadas tokens, son sometidos a una serie de parámetros estadísticos con los que se establece un rango de enlaces, esta lista es la que se presenta como respuesta a nuestra pregunta. Este tipo de motores son los primeros que aparecieron, eran de este tipo por ejemplo el Gopher, creado en 1991 por Mark McCahill de la University of Minnesota y Veronica (Very Easy Rodent-Oriented Net-wide Index to Computerized Archives) (ver http://www.webreference.com/authoring/search_history/ [Consultada 21-07-09] Luego tenemos los motores con indización de la semántica latente (Latent semantic indexing, LSI), estos motores se basan en análisis del significado no literalmente explícito utilizando algoritmos con componentes estadísticos y léxicos. En este sentido

description

Todos esperamos más de los motores de búsqueda Web, veremos sus tendencias, analizaremos como una vieja técnica, la de anotar o glosar porciones se impone con nuevos usos en el futuro de la Web para dar o extraer sentido de lo que se archiva y publica a la vez que se complementa con los avances en el procesamiento del lenguaje Keywords: Natural Language Processing, Semantic annotation, Semantic Web, Web search engines

Transcript of Mela Sem Perio2009 Documento Los Motores De BúSqueda SemáNticos

Page 1: Mela Sem Perio2009 Documento Los Motores De BúSqueda SemáNticos

SEMINARIO DE POSGRADO SEGUNDO CUATRIMESTRE 2009 de laCátedra Tecnologías en Comunicación Social

Cambios sociales y culturales: innovando en lasTecnologías en

comunicación social

Docente dictante responsable: Héctor H. THOMPSON

Otros docentes dictantes

AZPIAZU, Hernán

BOSCH, Mela

ROJAS, Carlos

SORGENTINI, Luis

Documento de trabajo:

Los motores de búsqueda semánticos

para incluir y extraer conocimiento en la Web

Autora: Mela Bosch Resumen:

Todos esperamos más de los motores de búsqueda Web, veremos sus tendencias,

analizaremos como una vieja técnica, la de anotar o glosar porciones se impone con

nuevos usos en el futuro de la Web para dar o extraer sentido de lo que se archiva y

publica a la vez que se complementa con los avances en el procesamiento del lenguaje

Keywords: Natural Language Processing, Semantic annotation, Semantic Web, Web search engines

Palabras clave: Anotación semántica, Motores de búsqueda, Procesamiento del lenguaje natural, Web semántica

Motores de búsqueda: tipos y tecnologías

Es importante hacer algunas distinciones terminológicas que identifican tecnologías,

estrategias y enfoques diferentes en los buscadores Web en general.

Un primer tipo es el motor de búsqueda textual (Full Text Search Engine) basado en

análisis léxico. Se trata de una forma de procesamiento que divide el texto en

parágrafos, frases, palabras y también identifica entidades tales como direcciones de

correo electrónico y direcciones Web, todos estos elementos para ser procesados son

considerados como unidades acumulativas, técnicamente llamadas tokens, son

sometidos a una serie de parámetros estadísticos con los que se establece un rango de

enlaces, esta lista es la que se presenta como respuesta a nuestra pregunta. Este tipo de

motores son los primeros que aparecieron, eran de este tipo por ejemplo el Gopher,

creado en 1991 por Mark McCahill de la University of Minnesota y Veronica (Very

Easy Rodent-Oriented Net-wide Index to Computerized Archives) (ver

http://www.webreference.com/authoring/search_history/ [Consultada 21-07-09]

Luego tenemos los motores con indización de la semántica latente (Latent semantic

indexing, LSI), estos motores se basan en análisis del significado no literalmente

explícito utilizando algoritmos con componentes estadísticos y léxicos. En este sentido

Page 2: Mela Sem Perio2009 Documento Los Motores De BúSqueda SemáNticos

el Latent semantic analysis (LSA) es una técnica de procesamiento del lenguaje natural

(Natural Language Processing, NLP ) que usa una base de datos de documentos para

encontrar términos similares. En este tipo de motores se puede encontrar entonces un

cierto grado de sinonimia y devuelve los enlaces a los sitios Web que mejor se adaptan a

nuestra búsqueda, el LSI no necesita tener el exacto término en una referencia para

poder ofrecerlo como repuesta, puede usar aproximaciones de acuerdo con la estructura

de sinónimos cuasi sinónimos que identifica. (ver

http://en.wikipedia.org/wiki/Latent_semantic_analysis) [Consultada 21-07-09]

El motor Google utiliza este tipo de análisis, aunque el componente estadístico es más

fuerte que el de procesamiento de lenguaje, pero según todos hemos podido

experimentar puede detectar errores de tipeo, cambios en las expresiones, etc. En este

motor se aplican además otro tipo de parámetros que no son lingüísticos sino

vinculados a la explotación comercial de los buscadores. Es el caso de PageRank, el

algoritmo de Google para calcular el valor de a una página en la lista que se obtiene

cuando se hace una búsqueda. PageRank analiza las etiquetas que describen el sitio así

como los títulos del mismo, es decir que hace análisis textual, pero también computa lo

que se llama Link Popularity: Otros sitios que citan ese sitio, los enlaces funcionan

como sugerencia de un sitio Web a sus visitantes, así la cantidad de enlaces que apuntan

a una página mejora la posición de la misma por criterios que no tienen que ver con el

contenido semántico. Entonces si un sitio es citado por otros aumenta su popularidad, el

valor se calcula no sólo con la cantidad de enlaces, sino también la calidad de ellos, que

por supuesto se mide con el PageRank. Entonces el valor que Google asigna a una

página puede aumentar aunque pocos sitios hayan insertado el enlace del mismo, o el

contenido no sea óptimo respecto de la consulta, siempre y cuando provengan de

páginas consideradas valiosas para Google, es decir que tengan un PageRank alto. Es

útil para detectar sitios atendibles, porque se trata de sitios ya visitados por otros, pero

también genera una “elitización” de los resultados de Google O al menos daña a los

sitios recientes o a los que no se plantean la política de insertar enlaces a otros sitios.

Vemos que el tema de los motores de búsqueda no solo se refiere a la calidad de la

recuperación sino al negocio ligado a la ubicación en los primeros puestos de los

enlaces en una respuesta.

Finalmente tenemos los llamados motores de búsqueda semánticos, (Semantic Web

search engines) que intentan tomar el sentido de una palabra como factor para los

algoritmos de ordenamiento y también pueden ofrecer al usuario posibilidades para

desambiguar o refinar su consulta. Estos son llamados también motores de búsqueda

de tercera generación, los cuales su vez utilizan las otras dos tecnologías de búsqueda

textual y de búsqueda de semántica latente a las que se suman otras específicas llamadas

tecnologías de Web semántica. Estas son: ontologías, RDF (Resource Description

Format) OWL (Ontology Web Language). Las tecnologías de Web semántica se

basan en lógicas de descripción para dar cuenta de manera formal y computable de la

semántica de los objetos de un sistema.

Dentro de estos motores de tercera generación o motores de búsqueda semánticos

debemos hacer algunas distinciones:

Tenemos por un lado los Buscadores semánticos orientados al usuario (User oriented

Semantic Web search engines) estos motores nos devuelven enlaces a páginas Web, y

pueden usar internamente tanto tecnologías de Web semántica como de LSI, Entre ellos

tenemos a los siguientes: True Knowledge, Hakia y PowerSet.

Page 3: Mela Sem Perio2009 Documento Los Motores De BúSqueda SemáNticos

Además están los Buscadores semánticos orientados a servicios Web (Semantic Web

Services oriented) Estos no son para el usuario final, sino que dan enlaces a útiles para

los especialistas que necesitan trabajar en la construcción de recursos de Web

semántica, devuelven enlaces a ontologías, archivos en OWL, a instancias de RDF.

Entre ellos tenemos: SOWL,WSE, Watson, Falcons, Sindice y Swoogle

Y finalmente tenemos los motores de búsqueda orientados a la Web social

semántica La llamada socio-semantic web (s2w) se propone complementar la visión

formal de la Web semántica con un acercamiento pragmático agregando a los lenguajes

controlados creados con fuertes bases lógicas otros aspectos heurísticos basados en

experiencias de prueba y error experimentadas por multitudes de usuarios que realizan

etiquetado colaborativo (folksonomy) Entre ellos tenemos por ejemplo a:

http://www.stumpedia.com/[Consultada 21-06-09]

La diferencia de este tipo de motores con los buscadores semánticos orientados al

usuario es que utilizan microformatos de Web 2.0 (por ejemplo RSS) para poner

etiquetas y usan para el trabajo cooperativo apoyado en computadoras Computer

Supported Cooperative Work (CSCW). (ver:

http://en.wikipedia.org/wiki/Social_Semantic_Web) [Consultada 21-07-09]

¿Cuál Web Semántica?

¿Por qué tenemos todas esta diferencias? Según nos indican en

http://www.readwriteweb.com/archives/semantic_web_patterns_a_guide_redux.php

[Consultada 21-07-09]

Estos es así porque la llamada Web semántica significa muchas cosas para muy

diferentes tipo de personas y usos. Para algunos Web semántica significa la Web de los

datos, donde la información está representada en RDF, OWL o en microformatos que

se agregan a páginas HTML. Para otros, Web semántica es el ámbito de los servicios

Web desde comercio electrónico y comunicación multimedial. Finalmente es la Web de

la inteligencia artificial, de los programas capaces de resolver complejos problemas de

optimización.

Pero hay algo que uniforma esta diversidad: son los instrumentos para extraer o asignar

sentido en los motores de búsqueda semánticos. Y aquí la diversidad se resume a solo

dos opciones: El tratamiento del lenguaje natural (Natural Language Processing,

NLP) y la anotación semántica.

Anotación proceso y resultado

El concepto de anotación semántica (semantic annotation) es conocido también como

marcado semántico (semantic markup), etiquetado semántico (semantic tagging o

semantic labelling), pero poco a poco el término anotación se ha ido imponiendo.

(Garcia-Castro, R.; Garcia Silva, A, 2009)

En forma más general la anotación se encuentra presente en la Web desde hace mucho

con diferentes alcances y usos, tenemos así la anotación en texto libre (Free-text

annotation) que pueden ser cualquier tipo de comentarios, notas, explicaciones,

referencias, sugerencias, correcciones, en fin cualquier tipo de indicación externa que

puede ser agregada o incluida en un documento Web o en una parte de él (ver

http://www.ncb.ernet.in/groups/dake/annotate/intro.shtml) [Consultada 21-07-09]

Page 4: Mela Sem Perio2009 Documento Los Motores De BúSqueda SemáNticos

En tanto que la anotación semántica en general significa la asociación de una entidad

de datos con un elemento de tipo semántico que puede ser:

Un esquema de clasificación, una ontología, un tesauro o cualquier otro instrumento de

identificación de conocimiento en un repositorio de información. Por ejemplo algo tan

usual y generalizado como las asignaciones de los descriptores de MeSH al las

citaciones en MEDLINE, es decir una común indización por palabras claves o

descriptores, hasta asignaciones de sentido mucho más complejas como los términos de

la Gene Ontology a los productos genéticos en UniProt. (Camon et alia, 2008)

Pero el término que nos interesa no es el de anotación semántica en general, sino lo que

específicamente se realiza para la Web, es decir la anotación para Web semántica

(Semantic Web Annotation). Este tipo de anotación tiene como objetivo hacer que las

máquinas puedan comprender un dato en uno o varios sentidos y puedan usarlo para

tomar decisiones y realizar acciones en determinadas y precisas situaciones. (Atanas,

2005)

El procedimiento para incluir datos comprensibles y procesables en la Web es agregar

datos sobre los datos, es decir por medio de la creación de metadata. Por eso es que

usan también los términos de marcado semántico (semantic markup), etiquetado

semántico (semantic tagging o semantic labelling), pues hacen referencia al proceso y

no al hecho de la anotación.

El término anotar denota el proceso de anotar así como el resultado de esa anotación.

Cuando aplicamos la anotación en el ámbito de la Web semántica el proceso de

anotación involucra tres componentes:

El primero y básico: una ontología que describe el dominio del sistema. Pues la

anotación para Web semántica es un tipo específico de anotación donde el predicado y

el contexto deben ser términos de una ontología y el objeto al que se refieren debe

responder a una definición ontológica en el sentido de la Web semántica: un conjunto de

términos que refieren a objetos, términos que se encuentran expresados considerando

sus propiedades y relaciones en un determinado dominio y sin que eso impida que en el

desarrollo de una ontología intervengan diferentes enfoques metodológicos según el

campo disciplinario de quienes aportan en la construcción de la ontología o en el

dominio de aplicación de la misma. (Bosch 2006).

El Segundo componente es un proceso de reconocimiento de la instancias de datos, es

decir la detección de los objetos que responden a esa ontología, ya sea en un corpus de

documentos o en un reservorio objetos multimedeales que es manejado por el sistema

que hace uso de la ontología.

La acción de anotar

Tenemos entonces que los dos primeros componentes de una anotación semántica

corresponden al proceso de anotación, el tercer componente de una anotación es la

acción que produce la anotación como resultado: se agrega contenido semántico a las

instancias que responden a las propiedades y atributos de una ontología u otra estructura

de representación de conocimiento. (ver

http://www.deg.byu.edu/ding/research/SemanticAnnotation.html) [Consultada 21-07-

09]

Page 5: Mela Sem Perio2009 Documento Los Motores De BúSqueda SemáNticos

La anotación como acción puede ser manual, automática o semiautomática. Para ello se

utilizan los herramientas de anotación semántica (semantic annotation tools)

A su vez podemos identificar dos tipos fundamentales de herramientas de anotación con

sus desarrollos combinados, por supuesto, pero indicaremos los tipos en forma pura:

La anotación en línea (Inline annotation) en la que el documento original es

incrementado con el agregado de metadata. En este caso la metadata está incrustada en

el documento (embedded metadata). Este tipo de anotación es llamada también

anotación de autor (Semantic Authoring). Se incluyen en los documentos las

indicaciones para que los sistemas puedan analizarlos, se usan esquemas en XML como

RDF (Resourse Description Format)

En cuanto a la metodología de construcción este tipo de anotación es llamada anotación

bottom up, porque se va generando y creciendo a medida que se publican páginas Web.

Luego tenemos la anotación separada (stand-off annotation) este tipo de anotación está

escrita y archivada fuera del documento o de los objetos Web a los que refiere, se la

llama también metadata añadida (attached metadata), y se archiva en una base de datos

de metadata.

Este tipo de anotación está siendo ampliamente explotada en los servicios Web para

manejar el grandes masas texto que no tienen ningún tipo de tratamiento, desde correos

electrónicos en una empresa hasta documentos internos, muchos de los motores de

búsqueda se utilizan en la intranets se valen de este tipo de anotación, que como

veremos más adelante usan a su vez algoritmos de tratamiento de lenguaje natural para

detectar sentido, como en el caso del líder del mercado análisis semántico en servicios

Web que es Autonomy.

<html>

<annot>

</html>

<html>

</html> annotation

Metadata incrustadaFuentes:

Documentos,

fotos, videos y

otros objetos

Web

<html>

<annot>

</html>

<html>

<annot>

</html>

Base de datos de datos

de metadata

Page 6: Mela Sem Perio2009 Documento Los Motores De BúSqueda SemáNticos

Por otra parte este tipo de anotación es muy útil desde el punto de vista de la

interoperabilidad, pues no requiere ningún cambio en el interior de los objetos a los que

refiere.

Desde el punto de vista la metodología de desarrollo es llamada anotación top-down y

tiene como objetivo relevar información ya existente en el Web derivando de lo ya

publicado un mayor valor semántico.

Entre las herramientas de anotación hay algunas que están incluídas en soluciones

costosas y complejas aunque de una eficacia impresionante como la que hemos

mencionada más arriba, pero también hay otras que son más o menos gratuitas.

Agregamos un cuadro de algunas de ellas, aclarando el nombre de la herramienta, a qué

tipo de fuente se puede aplicar y qué lenguajes de metadata o de representación del

conocimiento usan.Cuadro 1. Herramientas de anotación. (Fuente de la información de base:

www.dsi.uniroma1.it/~estrinfo/10.%20Annotazioni_Semantiche.ppt [Consultada 21-07-2009]

Traducida, revisada y adaptada.

Page 7: Mela Sem Perio2009 Documento Los Motores De BúSqueda SemáNticos

Ejemplos de herramientas de anotación1. Gans, J.(20079 Multi-scale, Multi-genome, Multi-platform Visualizationand Analysis. Los Alamos National Lab, Bioscience Division.http://public.lanl.gov/jgans/genomorama/genomorama_doc.html - [21-07-2009]

Page 8: Mela Sem Perio2009 Documento Los Motores De BúSqueda SemáNticos

2. Anotación para Web Semántica. Staab, S. Handschuh, S. Authoring andAnnotation of Web Pages in CREAM.http://www2002.org/CDROM/refereed/506/ [21-07-2009]

3. Amaya (embedded annotation)

Fuente: http://www.w3.org/Amaya/screenshots/Overview.html. [21-07-2009]

Page 9: Mela Sem Perio2009 Documento Los Motores De BúSqueda SemáNticos

4. Video Semantic Summarization Systems

http://www.research.ibm.com/MediaStar/VideoAnn.html. [21-07-2009]

Page 10: Mela Sem Perio2009 Documento Los Motores De BúSqueda SemáNticos

El procesamiento de lenguaje natural en el los motores semánticos

Las primeras experiencias de procesamiento de lenguaje natural se llevaron a cabo

mucho antes de la explosión de la Web y se proponían manipular palabras y partes de

discurso con la idea de apoyar y desarrollar los estudios lingüísticos, se lo consideraba

un poderoso auxiliar para la investigación y la evaluación de los diferentes aspectos del

lenguaje humano ya que permite estudiar grandes corpus de texto.

Más adelante en los años 60 la Inteligencia Artificial como disciplina se interesa en el

procesamiento del lenguaje natural con propósitos prácticos como la traducción

automática o la conversación de personas con máquinas.

Luego de la explosión de la Web el procesamiento de lenguaje natural es usado a la

inversa para que las máquinas puedan comprender lo que las personas escriben o

representan en los documentos, imágenes y videos.

Esta inversión de dirección es la que ahora hace que algoritmos de procesamiento del

lenguaje humano sean usados para extraer, desambiguar, etiquetar información en la

Web.

Ambas metodologías ahora se están mezclando: los motores de búsqueda necesitan que

existan muchas páginas anotadas para que la recuperación pueda realizarse, y esto

requiere un trabajo enorme si se hace en forma manual o semiautomática, entonces el

procesamiento de lenguaje natural se transforma en una ayuda valiosísima para la

anotación automática o semiautomática. Al mismo tiempo la precisión del análisis de

texto debe ser optimizado, ya que aunque los algoritmos de procesamiento de lenguaje

natural se han enriquecido mucho aún es muy difícil dar cuenta de la complejidad de las

estructuras semánticas de nuestro lenguaje.

Entonces los productos o los insumos de lenguaje natural se enriquecen por medio de

técnicas de asignación de sentido por parte de usuarios en el caso de las famosas

folksonomías o de profesionales que desarrollan lenguajes controlados de

representación de conocimiento como tesauros, clasificaciones, taxonomías y

ontologías.

Conclusión

Los buscadores en Internet se desarrollan para ofrecer no sólo la respuesta mecánica a

consultas sino también para procesar el sentido, hay dos caminos para ello y que reviven

la discusión tradicional en el análisis semántico: la extracción del contenido por medio

de procesamiento de lenguaje natural o la asignación de descriptores semánticos

pertenecientes a lenguajes controlados por medio de anotaciones.

Page 11: Mela Sem Perio2009 Documento Los Motores De BúSqueda SemáNticos

En síntesis las opciones son anotación semántica en sus diferentes tipos, o análisis de

texto libre. El primer caso requiere la interacción humana y la segunda no.

En este momento estas dos alternativas no son en absoluto excluyentes porque para que

los buscadores semánticos se difundan es necesario que haya muchas páginas con

anotación semántica, pero realizarlo, aún en forma semiautomática, requiere una

extraordinaria carga de trabajo, por lo que para llevar a cabo la anotación y para cuidar

la coherencia de la misma respecto del contenido se vuelve a pensar en la técnicas de

NLP.

Complementariamente se exploran nuevas posibilidades para que los usuarios

activamente realicen anotaciones semánticas por un lado y por otro normalicen el

vocabulario en uso para favorecer la calidad de la recuperación de los algoritmos

automáticos de procesamiento automático de lenguaje natural.

En resumen nos encontramos en un momento donde es necesario pensar en sistemas

colectivos de manejo de conocimiento basados en la contribución humana lo cuales que

mejoran en la medida en que más personas participan anotando, glosando los textos,

haciendo comentarios, como hace siglos en un scriptorium monástico.

Page 12: Mela Sem Perio2009 Documento Los Motores De BúSqueda SemáNticos

Bibliografía

Atanas, K. et al. (2005) Semantic Annotation, Indexing, and Retrieval. Ontotext Lab.

http://www.ontotext.com/publications/SemAIR_ISWC169.pdf [25-07-2009]

Bosch, Mela.Ontologies, (2006) Different Reasoning Strategies, Different Logics,

Different Kinds of Knowledge Representation: Working Together. Knowledge

Organization, Ergon Verlag. 33(3) 153-159. ISSN . 0943-7444 Knowl.Org.

Camon, Evelyn; Magrane, Michele; Barrell, Daniel; Lee, Vivian; Dimmer, Emily;

Maslen, John; Binns, David; Harte, Nicola; Lopez, Rodrigo. The Gene Ontology

Annotation (GOA) Database: sharing knowledge in Uniprot with Gene Ontology -

Apweiler, Rolf The Gene Ontology Annotation (GOA) database

(http://www.ebi.ac.uk/GOA [Consultada 21-07-09]

Diana Maynard (2005) Benchmarking ontology-based annotation tools for the Semantic

Web. Department of Computer Science, University of Sheffield,

UK.http://gate.ac.uk/sale/ahm05/ahm.pdf [21-07-2009]

Garcia-Castro, R.; Garcia Silva, A. Content annotation in the future web: Upgrade, Vol

10, n. 1 Feb.2009.

Good, Benjamin M ; Kawas, Edward ; Wilkinson, Mark. (2007) Bridging the gap

between social tagging and semantic annotation: E.D. the Entity Describer.

http://precedings.nature.com/documents/945/version/2/html. [21-07-2009]

Iskold, Alex. (2006) Semantic Web Patterns: A Guide to Semantic Technologies.

http://www.readwriteweb.com/archives/semantic_web_patterns_a_guide_redux.php .

[21-07-2009]

Vehvilainen, A. et al. (2006) SemiAutomatic Semantic Annotation and Authoring, Tool

for a Library Help Desk Service. Helsinki University.

http://www.seco.tkk.fi/publications/2006/vehvilainen-hyvonen-alm-semi-automatic-

semantic-annotation-and-authoring-tool.pdf [Consultada 21-07-09]