Maestría en Ingeniería

Anuncio
Maestría en Ingeniería
Curso de Ingeniería Web
Sesión 3: Web Semántica
Fernando Barraza A. Ms.C.
fbarraza@javerianacali.edu.co
Sesión 3
•  Objetivo: Introducir los conceptos de la
Web Semántica
•  Temas:
–  Conceptos básicos
–  Campos de Aplicación
–  La Arquitectura de la Web Semántica
–  Lenguajes de la Web Semántica (RDF,
RDFS, SPARQL)
–  Introducción a las ontologías
Antecedentes
•  Los actuales buscadores basados en palabras clave
suelen devolver información irrelevante que usa una
cierta palabra con un significado diferente del que se
pretende en la búsqueda, y pierden información cuando
no reconocen palabras diferentes pero con el mismo
significado que la buscada.
•  Actualmente se requiere lectura humana para extraer
información relevante de un origen, dado que agentes
automáticos no tienen el sentido común requerido para
reconocer dicha información en representación textual.
Antecedentes (2)
•  Mantener orígenes textuales débilmente estructurados
representa una tarea dificultosa, y consumidora de
tiempo cuando tales orígenes aumentan
considerablemente de tamaño. Mantener esas
colecciones consistentes y al día requiere de
representación interpretable por computador, de
semántica que ayude a detectar anomalías
automáticamente.
•  La utilidad de sitios Web adaptativos que permitan su
reconfiguración dinámica de acuerdo al perfil del usuario
u otros aspectos relevantes, requiere una
representación computable de la semántica involucrada.
Caso Ejemplo:
Biografía de Simón Bolívar
1
Búsqueda
6
Significados
Caso Ejemplo:
Biografía Simón Bolívar (2)
Y
cuantos
de
estos
resultados?
Refinamos
la
Búsqueda
Aún
2
Significados
Diferentes
tipos
de
recursos
Qué es la web semántica?
•  Es una extensión de la web actual en la cual la
información es suministrada con un significado
bien definido, de tal forma que pueda ser
entendido por las maquinas
•  Es un área pujante en la confluencia de la
Inteligencia Artificial y las tecnologías web para
permitir que las máquinas puedan hacerse
cargo del trabajo más costoso, rutinario, o
físicamente inabarcable que actualmente
realizan manualmente los usuarios que navegan
e interactúan con la web.
Diferentes formas de ver lo mismo
La web profunda
• 
• 
• 
La web profunda está
constituida por las bases de
datos cuyos contenidos, no
directamente accesibles, se
hacen visibles mediante
páginas generadas
dinámicamente
Se estima puede contener un
tamaño de información varios
cientos de veces mayor, y de
mucha mejor calidad, que la
web superficial, y crece a un
ritmo aún mayor que ésta.
Se estima que el tamaño de la
web profunda ha superado ya
al volumen total de
información impresa existente
en todo el planeta.
La Web hoy (1) … un caso típico
Año
2006
La Web hoy (2) … lo pensado
Año
2010:
Un
niño
pregunta
a
su
asistente
persona
que
lleva
puesto
en
su
chaqueta,
quien
marco
el
gol
del
empate
de
Colombia
ante
Alemania
en
el
mundial
de
fútbol
de
1990?.
El
asistente
personal
levanta
un
proceso
en
background
y
busca
en
sitios
web
pertinentes
y
en
poco
mas
de
un
minuto
el
niño
recibe
la
respuesta:
Freddy
Rincón,
minuto
92,
pase
de
Carlos
Valderrama,
video
disponible
en
www.videofutbol.com
,
etc.,
etc.
….
Aquí
el
asistente
es
un
Agente
Digital.
Enfoque de la solución al problema
•  Una forma de resolver estos problemas es reducir o
eliminar la confusión conceptual y terminología y
acercarse a un entendimiento compartido:
–  Reusabilidad: El entendimiento común es la base para
una codificación formal de entidades, atributos, procesos y
sus interrelaciones en el dominio de interés. Esta
representación formal deberían ser un componente
reusable o compartido en un sistema de software.
–  Confiabilidad: Un representación formal también hace
posible la automatización del cheque de la consistente
resultando en software más confiable.
–  Especificación: El entendimiento común puede asistir el
proceso de identificación y definición de especificaciones
para un sistema de información.
Como ayuda la Web Semántica
–  Búsquedas avanzadas
–  Integración de información de diferentes fuentes
–  Ejecución de tareas automatizadas de forma
inteligente
–  Dispositivos de captura de información dinámicos y
sensitivos al contexto
–  Representación de información rica en medios
Diferentes formas de representación
XML no es suficiente
Para
un
humano,
es
intuitivamente
claro:
Las
etiquetas
son
términos
de
un
dominio
Para
un
computador
no
es
claro
(no
tiene
intuición):
Las
etiquetas
no
tienen
semántica
Arquitectura de la Web Semántica
Semantic
Web
architecture
http://www.w3.org/2000/Talks/1206-xml2k-tbl/
Primera capa:
Identificador
unificado
de
recursos
es
un
texto
corto
que
identifica
unívocamente
cualquier
recurso
Proporciona
un
número
único
para
cada
carácter,
sin
importar
la
plataforma,
sin
importar
el
programa,
sin
importar
el
idioma.
Semantic
Web
architecture
http://www.w3.org/2000/Talks/1206-xml2k-tbl/
Unicode y URI
•  Unicode provee un número único por cada
caracter, sin importar su plataforma, programa o
idioma en que está representado.
•  Un URI permite apuntar sin equivocación a un
recurso en la Web que puede ser una página,
una aplicación, en fín, cualquier elemento que
pueda ser accedido a través de Internet.
http://www.puj.edu.co/portal
Segunda capa:
Ofrece
un
espacio
de
nombres
para
intercambiar
datos
entre
fuentes
heterogéneas
XML
Define
restricciones
de
la
sintaxis
y
la
estructura
de
documentos
XML
de
forma
más
rica
que
un
DTD
Lenguaje
de
marcado
que
describe
y
homogeniza
los
recursos
XML
•  XML es el estándar más extendido hoy
•  Representa una primera aproximación
para clasificar datos en la Web semántica.
•  Permite estructurar datos y documentos
en forma de árboles de etiquetas con
atributos.
Namespaces
•  Los espacios de nombres complementan las referencias
hechas por un URI proveyendo un método sencillo para
calificar elementos y nombres de atributos usados en
XML.
•  Esto permite identificar los elementos incluidos en XML
en diferentes puntos de la Web.
XMLS
•  Con XML Schema (XMLS) es posible definir
estructuras más complejas basadas en XML
donde se reflejen tipos de datos primitivos y
derivados.
•  Son una alternativa más estructurada a los
DTD’s.
•  El modelo de datos XML en árbol, que no
distingue entre objetos y relaciones ni tiene
noción de jerarquía de clases, no permite
representar la semántica de los datos.
Tercera capa:
Framework
para
definir
metadatos
a
través
de
jerarquía
de
clases
de
recursos,
especificando
propiedades
y
relaciones
Por qué no usar solo XML?
•  En XML el orden en el cual los elementos aparecen es
significativo y muchas veces necesario.
•  RDF provee más ventajas:
–  Independencia. Podemos inventar una propiedad llamada
"Autor" y otros pueden inventar una propiedad llamada "Director"
que podría aplicarse, por ejemplo, a recursos asociados con
películas.
–  Intercambio. Dado que las sentencias RDF se escriben en XML
pueden ser fácilmente usadas para intercambiar información.
–  Escalabilidad. Las sentencias RDF son simples, registros con
tres campos (Recurso, propiedad, valor) por lo que son fáciles
de manejar y de usar para buscar objetos aun en volúmenes
realmente grandes.
–  Flexibilidad: Las propiedades, valores y sentencias puedes ser
son recursos. Esto es importante porque tendremos muchísimos
recursos que manejar. Demasiados como para buscarlos uno
por uno.
RDF
•  Con RDF se puede darle significado
semántico a los recursos de la Web.
•  Es considerado un lenguaje para la
definición de metadatos en la Web.
•  Es el estándar más popular y extendido en
la comunidad de la Web semántica.
Construcción RDF
•  El elemento de construcción básica en RDF es
el “triple” o sentencia, que consiste en:
–  Dos nodos (sujeto y objeto) que representan
recursos:
•  Un sujeto, que es identificado por un URI y que apunta al
recurso a ser descrito
•  Un objeto el cual puede ser un recurso o un literal, tal como
un numero o una cadena de caracteres
–  Unidos por un arco (predicado), que representa una
propiedad del recurso
Ejemplo RDF
•  Sentencia: El escritor Gabriel García
Márquez (sujeto) es el autor (predicado)
de un libro con título “Cien años de
soledad” (objeto).
Extensión del grafo
•  Se pueden agregar sentencias al grafo
•  Ej.; El autor de libro “Cien años de soledad”
nació en una ciudad colombiana de nombre
Aracataca.
•  Para identificar univocamente los recursos del
grafo utilizamos entonces URI’s
Modelo RDF
Serialización del grafo RDF
namespace
<?xml version="1.0"?>
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
xmlns:body="http://www.algo.com/libro#’’
<rdf:Description rdf:about="http://www.algo.com/Gabriel_Garcia_Marquez">
<libro:autor>Cien Anos de Soledad</libro:autor>
</rdf:Description>
</rdf:RDF>
Y RDF-Schema?
•  Con RDFS tenemos la posibilidad de
expresar las características de los datos
•  Se pueden definir jerarquías de clases de
recursos incluyendo:
–  Generalizaciones y herencia,
–  Especificación de las propiedades
–  Relaciones que se admiten entre
propiedades.
•  Todo esto permite entonces construir
ontologías sencillas.
Modelo gráfico RFDS
RDF le da mas expresividad semántica al
lenguaje de marcado sin cambiar el modelo
grafico de RDF.
Ejemplo RDFS
Ejemplo RDF(S)
Representación serializada de grafos
RDF(S)
Serialización de Grafos RDF(S)
Serialización de Grafos RDF(S)
Serialización de Grafos RDF(S)
Consulta de grafos RDF
•  Una de las prestaciones más importantes
para cualquier modelo de representación
de información es la posibilidad de ser
consultado.
•  Se logra utilizando un lenguaje de
consulta semántico, los cuales permiten
expresar consultas tanto sencillas como
búsquedas complejas sobre un grafo RDF
mediante una sintaxis declarativa sencilla.
Lenguajes semánticos
•  La mayoría fueron construidos con SQL en
mente y por lo tanto tienen un cierto grado de
similaridad en su estructura
•  En la Web semántica existen diferentes
propuestas que se han ido convirtiendo en un
estándar “de facto”:
–  SeRQL (lenguaje principal de Sesame)
–  RDQL (lenguaje principal de Jena)
–  SPARQL (recomendación de W3C)
Consulta en RDQL
select
where
?y from <escritores.rdf>
(?x, <edad>, ?z),
(?x, <nombre>, ?y)
and ?z > 50”
•  Devuelve la propiedad “nombre” de todos los
recursos del grafo definido en “escritores.rdf”
cuya propiedad “edad” tiene un valor mayor que
50.
Consulta en SPARQL
SELECT
?libro ?escritor ?editorial
FROM
<http://www.algo.com/obras>
WHERE
{ ?name <Gabriel_Garcia_Marquez> ?editorial}
ORDER BY DESC (?editorial)
•  Devuelve los nombres de los libros escritos por
Gabriel García Márquez ordenados por la
editorial del libro.
Cuarta capa:
Define
como
un
conjunto
de
términos
de
conocimiento,
incluyendo
el
vocabulario,
las
interconexiones
semánticas
y
algunas
reglas
simples
de
inferencia
y
lógica
Créditos
•  Carole Goble. Semantic Grid, Part 4: Pioneers and
Examples, The University of Manchester, 2005.
•  Jun Zhao, Carole Goble, Robert Stevens. An
Identity Crisis in the Life Sciences. The University of
Manchester, 2005.
•  Alexander Garcia C. Interoperabilidad e integración
de información en Bioinformática. The University of
Queensland, 2004.
•  Pablo Castells. La Web Semántica. Escuela
Politécnica Superior, Universidad Autónoma de
Madrid, 2004.
Descargar