Skip to content

Web Semántica y Linked Data

Búsquedas con semántica

Actividad: Google Trends

Google Trends es un servicio que permite averiguar qué está buscando la gente.

En la actividad anterior, Google Trends contabiliza y clasifica las búsquedas por palabras clave realizadas por los usuarios. ¿Qué sucede cuando hay varias palabras clave, combinaciones de palabras o sinónimos, que corresponden a un mismo concepto? Por ejemplo, la energía de las olas también puede llamarse undimotriz. Los usuarios que están interesados en dicho concepto podrían haber buscado indistintamente usando un término u otro. Si nos fijamos exclusivamente en palabras clave, Google Trends no tendría manera de asociar ambas combinaciones de palabras clave y considerar que corresponden a un mismo concepto del que queremos medir su tendencia en las búsquedas realizadas.

Pero también pueden producirse ambigüedades en los términos de búsqueda por palabras clave. Por ejemplo, los términos de búsqueda "camarón" o "cigala" pueden referirse a crustáceos o a artistas flamencos.

Búsquedas por términos o palabras clave

  • Comparar las tendencias de búsqueda durante el último año de los términos de búsqueda camarón frente a cigala hasta obtener el siguiente resultado.

Camarón frente a Cigala como términos de búsqueda

Como puede observarse, la diferencia entre ambos términos es escasa; incluso parece que en determinados periodos, la búsqueda de cigala ha sido más trendy que la de camarón.

Búsquedas por conceptos

  • Comparar ahora las tendencias de búsqueda durante el último año de los conceptos Camarón de la Isla frente a Diego el Cigala hasta obtener el siguiente resultado.

Camarón frente a Cigala como conceptos

En esta ocasión, la diferencia entre ambas búsquedas es más amplia a lo largo del tiempo, a favor del primer concepto.

Significado de los términos

¿Cuál era la intención de cada usuario que hizo una búsqueda cuando escribió camarón? ¿Y cuándo buscaba cigala? ¿Quería preparar una receta de cocina o asistir a un espectáculo musical?

Dicho de otra forma ¿cuál era el significado o la semántica que cada usuario le da a sus términos de búsqueda?

Las búsquedas realizadas y los resultados del análisis de tendencias no deben ser los mismos, dependiendo de si dicho análisis nos lo contrata una empresa comercializadora de marisco o si lo contrata una cátedra de flamencología.

Un mismo contenido de la Web puede tener diversos significados (polisemia). También puede haber múltiples maneras de nombrar a un mismo concepto (sinonimia). Incluso puede haber conceptos que sean subconceptos de otros, y a los que por comodidad nos queramos referir por su concepto más general (hiperonimia) o específico (hiponimia): por ejemplo, es más cómodo buscar por marisco que por la lista de todos los posibles crustáceos que le vienen bien a un arroz.

Hay muchas más relaciones semánticas que podrían interesarnos. Por ejemplo, querríamos poder expresar la relación marido de para analizar cuántos de los maridos de tonadilleras son o han sido toreros. Dicha relación marido de sirve para enlazar los hiperónimos de torero y tonadillera (o de torera y tonadillero, indistintamente).

Pero un ordenador es incapaz de distinguir estas y otras relaciones semánticas, a menos que se las expliquemos detalladamente. Esta es la tarea a resolver para la web semántica y está basada en los siguientes conceptos:

  • Metadatos
  • Vocabularios
  • Formatos estructurados

Gracias a estos elementos, las búsquedas y otras operaciones en la Web pueden verse mejoradas con características semánticas, construyendo lo que Google bautizó como Knowledge Graph.

Knowledge Graph

  • Ver el vídeo siguiente sobre el grafo de conocimiento de Google:

asciicast

Metadatos

Cualquier dato se puede anotar o etiquetar con otros datos que expliquen algún aspecto sobre el dato original, es decir, con metadatos.

Google ha puesto en práctica un tipo especial de metadatos, a los que llama datos estructurados. Los datos estructurados son pequeños fragmentos de código que se pueden añadir a las páginas de tu sitio web para describir su contenido y ayudar a que los buscadores comprendan mejor lo que contienen.

Gracias a estos metadatos, los buscadores pueden mostrar el contenido de forma más útil y llamativa en los resultados de búsqueda, lo que a su vez puede ayudar a atraer al tipo de clientes adecuado. El buscador podrá mostrar entonces resultados enriquecidos como resultado de las búsquedas.

Datos estructurados de Google

Vocabularios

Para anotar que un determinado contenido web tiene asociado un cierto significado, hace falta definir primero un conjunto de significados válidos, comprensibles por el buscador. Estos significados asociables a un cierto significante (esto es, el contenido) forman parte de vocabularios y tesauros. Hay muchos vocabularios posibles, destacando los siguientes:

  • Los vocabularios Linked Open Vocabulary (LOV): tipos y propiedades para definir personas, lugares, productos, eventos y muchos otros tipos de cosas. Suelen estar definidos en un formato conocido como RDF.

  • Los vocabularios de schema.org: iniciativa fundada por Google, Microsoft, Yahoo y Yandex para que webmasters y desarrolladores web se pongan de acuerdo en un conjunto de vocabularios común. Los tipos de contenido que el buscador de Google indexa y comprende actualmente son los de la galería de búsqueda. Están definidos en formatos como JSON-LD y RDFa y microdata HTML.

Formatos de datos estructurados

Los formatos de datos estructurados más comunes son:

  • Microdatos: Una extensión de HTML con la que se pueden incrustar datos estructurados dentro de contenido normal HTML. Las propiedades que se quieren exponer como datos estructurados deben marcarse con atributos de etiquetas HTML.
  • RDFa: Una extensión HTML5 que admite datos vinculados mediante atributos de etiquetas HTML que corresponden al contenido que los usuarios pueden ver y que se quiere describir para los motores de búsqueda.
  • JSON-LD: Una notación basada en JSON insertada en una etiqueta <script> situada en el encabezado o el cuerpo de la página. Sirve para expresar elementos de datos como el país (Country), de una dirección postal (PostalAddress) o el lugar (MusicVenue) de un evento (Event).

Jerarquía de esquemas de schema.org

  • Explorar toda la jerarquía de tipos del vocabulario de schema.org.
  • Buscar y contabilizar cuántos tipos de schema.org parecen útiles para enriquecer contenidos web en los siguientes sectores económicos: artes audiovisuales, salud y bienestar, viajes, educación y cultura, finanzas, administración pública.
  • ¿Cuál de los sectores anteriores parece mejor representado en los vocabularios de schema.org?

Otros formatos de datos estructurados, en los que se basan algunos de los anteriores, son XML (eXtensible Markup Language), RDF (Resource Description Framework) y JSON (JavaScript Object Notation).

Lecturas para profundizar: Datos Estructurados de Google

Datos enlazados y web semántica

Gracias a las tecnologías anteriores de metadatos y datos estructurados, se puede construir una versión evolucaionada de la World Wide Web, enriquecida con significado y que hiperenlace conceptos, en lugar de páginas. Es lo que Google ha venido a llamar Knowledge Graph, pero que tiene sus ancestros en la Linked Open Data (LOD) y la Semantic Web de Tim Berners Lee.

El objetivo de los datos enlazados es que puedan ser consumidos por agentes automatizados (programas de ordenador). La LOD no está enfocada en páginas consumibles por los usuarios humanos. En su lugar, LOD tiene como objetivo que exista un gran volumen de información en la Web, preparada para ser procesada automáticamente (machine-readable) por programas de ordenador.

Para que esta información hiperenlazada sea consumible por un programa informático, debe construirse con metadatos, vocabularios y formatos de datos estructurados como los anteriores. Además, cada concepto debe poder ser vinculado o enlazado con otros conceptos relacionados, a través de propiedades y relaciones bien definidas. Algunos ejemplos de grandes conjuntos de datos enlazados son:

  • DBPedia: Versión LOD de wikipedia, construida y alimentada a partir del contenido estructurado que aparece en la parte derecha de cada página en wikipedia.
  • Wikidata: Base de conocimiento abierta, formada por datos estructurados y construida como una wiki que es editada por humanos y por programas automatizados (máquinas). Es parte de la familia de productos wikimedia.

Lecturas recomendadas: LOD, Web semántica y Knowledge Graph