Está en la página 1de 40

Tema 11

Inteligencia Artificial e Ingeniería del Conocimiento

Representación de
conocimiento: Web
Semántica
Índice
Esquema 3

Ideas clave 4
11.1. ¿Cómo estudiar este tema? 4
11.2. Introducción y conceptos básicos 4
11.3. Web semántica 9
11.4. Especificaciones: RDF, RDFS y OWL 10
11.5. Ontologías 19
11.6. Inferencia/razonamiento 24
© Universidad Internacional de La Rioja (UNIR)

11.7. Linked data 30


11.8. Referencias bibliográficas 34

A fondo 35

Actividades 37

Test 39
© Universidad Internacional de La Rioja (UNIR)

REPRESENTACIÓN DEL CONOCIMIENTO: WEB SEMÁNTICA

Introducción y Web Inferencia /


Especificaciones Ontologías Linked data
conceptos básicos semántica razonamiento

Introducción RDF Elementos principales

Conceptos básicos RDFS Diseño de ontologías: software


OWL

Inteligencia Artificial e Ingeniería del Conocimiento


Tema 11. Esquema
Esquema

3
Ideas clave

11.1. ¿Cómo estudiar este tema?

Para estudiar este tema deberás leer las Ideas clave que se exponen a continuación.

Además de las páginas 56-58 del libro: Labra-Gayo, J. E. (2012). Web semántica:
comprendiendo el cambio hacia la web 3.0. La Coruña: NetBiblo SL. Disponible en la
Biblioteca Virtual de UNIR.

En el anterior tema se habló sobre la representación del conocimiento exponiendo


cuatro elementos básicos: vocabularios, taxonomías, tesauros y ontologías.
Precisamente con la introducción de este último se empezaba a hablar de un término
relacionado: Web Semántica.

El objetivo de este tema es mostrar al alumno qué es la Web Semántica, sus


principales características, su piedra angular con más detalle (ontologías), así como
los aspectos más novedosos de este campo de investigación.

11.2. Introducción y conceptos básicos

El concepto de Web Semántica hace referencia a un movimiento colaborativo liderado


© Universidad Internacional de La Rioja (UNIR)

por el World Wide Web Consortium (W3C) para promover el uso de formatos estándares
para la representación de datos en internet. Este concepto comenzó a usarse a principios
de los 60, mediante lo que se conoce como «Semantic Network Model», acuñado por los
científicos Allan M. Collins, M. Ross Quillian y Elizabeth F. Loftus en varias publicaciones.

Inteligencia Artificial e Ingeniería del Conocimiento


4
Tema 11. Ideas clave
La idea del modelo de red semántica era representar de forma semántica conocimiento
en forma estructurada.

Cuando este concepto se aplica a internet, lo que pretende es extender el concepto de


la red, tratando de mejorar la relación que se establece entre documentos en internet a
través de los hipervínculos, mediante la inserción de metadatos que puedan ser
interpretados automáticamente por los ordenadores tratando de describir como las
páginas están relacionadas unas con otras. Estos metadatos permitirían a agentes
automáticos acceder a la Web de una forma más inteligente.

Esta definición, una de las básicas que podemos encontrar para el término de Web
Semántica, fue acuñada en 2001 por Tim Berners Lee el cual podría considerarse el padre
de la Web Semántica. Para Berners Lee, la Web Semántica es «una web de datos que
puede ser procesada directa e indirectamente por máquinas».

Conceptos básicos

La Web, tal y como se ha conocido hasta hace unos años y como la mayoría de los
usuarios la conocen, se basa en una increíble cantidad de páginas que generalmente
están interconectadas entre sí mediante enlaces. Documentos que enlazan a
documentos pero que no proporcionan ninguna información adicional, tal y como
muestra la siguiente figura.
© Universidad Internacional de La Rioja (UNIR)

Figura 1. Interconexión de páginas en la Web.

Inteligencia Artificial e Ingeniería del Conocimiento


5
Tema 11. Ideas clave
Esta interconexión de páginas permite que podamos navegar entre ellas, que podamos
usar buscadores que nos enlacen a estas páginas. Sin embargo, no hay información
adicional sobre el contenido de la página a la que vamos a acceder. Una vez ingresamos
a estos documentos, podemos visualizar el contenido y mediante las imágenes o texto
que compongan la página web entender su contenido. Sin embargo, una máquina es
incapaz de entenderlo. Una máquina no puede comprender el lenguaje natural. No tiene
esa capacidad. Las máquinas simplemente visualizan el contenido al usuario.

Un primer intento para que las máquinas tuvieran información sobre el contenido de
estas páginas son los llamados tags o keywords. Estas palabras clave permiten tener una
idea aproximada de «por dónde van los tiros» y permiten, precisamente, a los
buscadores usarlas a la hora de indexar las páginas (aparte del análisis de su contenido)
para que las búsquedas vayan lo más orientadas posible.

Sin embargo, sigue sin ser suficiente. Las keywords proporcionan información muy
genérica sobre el posible contenido de la página, pero ni mucho menos ahondan en el
contenido real. Una web puede tener como keywords palabras como biología, animales
o mamíferos y contener información o datos mucho más detallados. Esos datos estarán
expresados precisamente como lenguaje natural y las máquinas no podrán interpretarlo.

Como se puede observar, esta definición de Web puede «estar bien» para los humanos,
pero no para las máquinas. Que no lo esté para las máquinas, en realidad, se traduce en
que tampoco lo está del todo para nosotros: el hecho de que una máquina pueda ser
capaz de interpretar el contenido y saber de qué va el contenido de una página abre el
abanico de posibilidades que nos ofrecen a los humanos: búsquedas más precisas,
descubrimiento de conocimiento automático, clasificación de contenido, etc.
© Universidad Internacional de La Rioja (UNIR)

Con una web donde el contenido de sus páginas pueda ser catalogado de forma manual
o automática de tal forma que la información que esta ofrezca pueda ser interpretada
por máquinas de forma automática, estaremos dando un paso más hacia la Web
Semántica.

Inteligencia Artificial e Ingeniería del Conocimiento


6
Tema 11. Ideas clave
Un ejemplo básico, antes de empezar a ver los elementos principales sobre los que se
sustenta la Web Semántica, es el de las búsquedas. El Dr. José Emilio Labra Gayo, uno de
los pioneros de la Web Semántica en España, ya por el 2005, propuso a sus alumnos de
Ingeniería Informática un ejemplo muy claro de cómo se podría mejorar la calidad de la
web mediante la introducción de metadatos semánticos.

Imaginemos que queremos realizar una búsqueda de un vuelo a Praga para mañana. Nos
vamos al Google (nos íbamos en realidad; estas transparencias tienen sus años y, aunque
las búsquedas ahora ya son mejores, precisamente gracias a esta introducción paulatina
del concepto de Web Semántica ejemplifican perfectamente la problemática) e
introducimos esas mismas palabras en el buscador:

Figura 2. Búsqueda por keywords. Fuente: Labra-Gayo (2005).


© Universidad Internacional de La Rioja (UNIR)

Y obtenemos los resultados de la figura 2. Esos están basados en búsquedas por


keywords y contenido, donde en el caso de que las palabras que hemos introducido en
el buscador aparezcan, obtenemos resultados relacionados, pero no todo lo exactos que
podrían ser.

Inteligencia Artificial e Ingeniería del Conocimiento


7
Tema 11. Ideas clave
Sin embargo, si un buscador fuera semántico, sería capaz de interpretar nuestra
búsqueda: analizar el input de tal forma que sepa qué estamos buscando (vuelos: medio
de transporte), un lugar (Praga: localización) para una fecha (mañana: fecha) y una hora
(por la mañana: hora).

Esto permitiría, por lo tanto, realizar una búsqueda donde sabemos que lo que queremos
buscar no son simples palabras, sino que estamos buscando conceptos que están
modelados dentro de un universo concreto. Un buscador semántico buscaría en función
de esos conceptos y podría proporcionarnos un resultado como este:

Figura 3. Buscador semántico. Fuente: Labra-Gayo (2005).

En este caso, ya vemos como los resultados se ajustan, exactamente, a lo que queremos
buscar.

La mejora del etiquetado de las webs y la adición de metadatos permite dotar a la


información de significado y, por lo tanto, crear conocimiento. La información necesita
ser contextualizada según lo que se quiera expresar para que deje de ser mera
información sin sentido.
© Universidad Internacional de La Rioja (UNIR)

Para conseguir este objetivo, la Web Semántica se nutre de una serie de elementos
básicos que se verán en las siguientes secciones de este tema.

Inteligencia Artificial e Ingeniería del Conocimiento


8
Tema 11. Ideas clave
11.3. Web semántica

Tal y como se ha explicado en las secciones previas, el objetivo de la Web Semántica


es dotar a la web de significado.

La evolución de la informática y de la Web a lo largo de los años ha dado lugar a un


conjunto de tecnologías alrededor de ambos conceptos dando lugar a elementos
como la Web 2.0, la Web 3.0, etc.

Hasta hace unos años, la Web 2.0 iba a ser la Web Semántica. Ese concepto ha
cambiado. Cuando la Web «sintáctica» (la que teníamos hace 10 años, también
conocida como Web 1.0) empezó a desarrollar las ideas de la Web Semántica se
pensaba que esta iba a ser la siguiente generación de la Web, la 2.0.

Sin embargo, el paradigma que presenta la Web Semántica no es ni mucho menos


fácil de diseñar, crear o implementar. La ciencia y las ciencias de la computación
avanzan, pero parece que la Web Semántica no lo hace todo lo rápido que cabría
esperar. Eso no significa que no haya habido avances, pero la popularidad de todo lo
referido a lo «social», lo colaborativo, ha hecho que este concepto de Web Semántica
quede relegado a lo que se espera que sea la Web 3.0.
© Universidad Internacional de La Rioja (UNIR)

Figura 4. Evolución de la Web.

Inteligencia Artificial e Ingeniería del Conocimiento


9
Tema 11. Ideas clave
Como se puede observar en la figura anterior, la evolución de la Web ha ido creciendo
dando lugar a los diferentes entornos Web 1.0, 2.0, etc. Alrededor de esta
especificación versionada de la Web existen una serie de elementos básicos que
conforman esta realidad. En el caso de la Web Semántica, esta realidad se basa en
los pilares que la conforman.

La siguiente figura muestra esta representación de los pilares actuales que


conforman la Web Semántica, lo que se conoce como Pila de la Web Semántica:

Figura 5. Pila de la Web Semántica.

La pila de la Web Semántica muestra los pilares básicos sobre los que esta tecnología
se soporta en base a otras tecnologías. En este contexto, en el siguiente capítulo,
vamos a ver los elementos básicos sobre los que se sustenta, permitiendo así ir más
allá en la descripción propia de la Web Semántica.

11.4. Especificaciones: RDF, RDFS y OWL


© Universidad Internacional de La Rioja (UNIR)

Cuando estamos trabajando con la Web Semántica, como con cualquier tecnología,
es necesario el uso de una serie de especificaciones básicas que conformen el
estándar sobre el que nos vamos a mover.

Inteligencia Artificial e Ingeniería del Conocimiento


10
Tema 11. Ideas clave
La definición de los estándares es una tarea complicada, sobre todo, porque siempre
alguien quiere definir su propio estándar. Las razones para esto pueden ser variadas:
no comprensión del estándar actual, motivaciones basadas en que el estándar actual
no cumple con los criterios y requisitos necesarios para mi problemática, etc.

Esto da lugar a situaciones como las que representa la siguiente figura:

Figura 6. El problema de los estándares. Fuente: https://xkcd.com/927/

Afortunadamente, la Web Semántica, en algunos de sus aspectos parece ser una


excepción en este ámbito. Esto se debe en gran parte al hecho de que el W3C, como
consorcio más que asumido del «manejo» de la Web, tome parte en la definición y
establecimiento de lo que son los propios estándares de la Web Semántica, que
además de hecho son definidos y producidos por los usuarios.

Como parte de esas especificaciones, tal y como se vio en la Semantic Web Stack vista
© Universidad Internacional de La Rioja (UNIR)

previamente, tenemos 3 que podemos considerar fundamentales y que veremos a


continuación, no sin antes definir el concepto base sobre el que sustenta todo: las
URI.

Inteligencia Artificial e Ingeniería del Conocimiento


11
Tema 11. Ideas clave
URI hace referencia a Uniform Resource Identifier. Una URI es una cadena que
identifica a un recurso de una red de forma unívoca. A simple vista puede
confundirse con una URL (Uniform Resource Loader) y en apariencia son iguales, ya
que no hay diferencia práctica en su representación entre unos y otros. Sin embargo,
una URL puede hacer referencia a recursos que varían en el tiempo, mientras que los
URI hace referencia a recursos, en teoría, fijos. Además, la URL especifica de forma
intrínseca la forma a usar para obtener la representación de ese recurso.

RDF

RDF (Resource Description Framework) es una familia de especificaciones definidas


por el W3C. Inicialmente, fue diseñado con el objetivo de ser un modelo de datos
para la representación de metadatos. Sin embargo, RDF se ha convertido en el
método más general para la descripción o modelado de información en recursos
Web.

Debido también a su popularidad y facilidad de representación de información


mediante su esquema, no es difícil encontrar aplicaciones que usen RDF como
especificación para la descripción de sus propias bases de conocimiento.

Es importante recalcar que RDF no nació para la Web Semántica. La primera


especificación de RDF como modelo de datos (usando serialización XML) fue
publicada como una recomendación del W3C ya en el año 1999, poco antes de que
Berners Lee publicara su famoso artículo sobre la Web Semántica.

El modelo de datos RDF es similar a otros enfoques de modelado como el modelo


entidad-relación. RDF se basa en la idea de hacer declaraciones sobre recursos (y
© Universidad Internacional de La Rioja (UNIR)

más particularmente sobre recursos web) siguiendo la fórmula sujeto-predicado-


objeto (SPO). Estas expresiones, conocidas como «tripletas», dan lugar a la base
sobre la que se conforma RDF y todas las especificaciones y lenguajes superiores.

Inteligencia Artificial e Ingeniería del Conocimiento


12
Tema 11. Ideas clave
predicate
subject object

Figura 7. Tripleta.

Por lo tanto, en una tripleta tenemos los siguientes elementos:

 Sujeto: denota el recurso sobre el que se está haciendo la declaración.


 Predicado: hace referencia a la característica o acción del recurso y permite
establecer la relación existente entre el sujeto y el objeto.
 Objeto: denota la información que atañe al recurso a través del predicado.

Un ejemplo de tripleta en la forma RDF podría ser el siguiente:

«Alberto tiene perro»

Donde «Alberto» es el sujeto, «tiene» es el predicado y «perro» es el objeto.

Mediante la agrupación de tripletas RDF se da lugar a la creación de un grafo


etiquetado y dirigido. Por ejemplo, imaginemos las siguientes tripletas:

Alejandro tieneMadre Marisa


Marisa tieneMarido José
Alejandro tieneHermano Adrián
Alejandro tieneHermano Ana
Marisa tienePadre Alberto
José tieneMadre Laura
© Universidad Internacional de La Rioja (UNIR)

Inteligencia Artificial e Ingeniería del Conocimiento


13
Tema 11. Ideas clave
La representación en RDF, de forma visual, daría lugar al siguiente grafo:

Adrián

Alberto
tieneHermano

Alejandro tienePadre

tieneHermano tieneMadre Marisa tieneMarido José

Adrián tieneMadre

Laura

Figura 8. Representación visual en RDF.

Por otra parte, RDF, aparte de definir la forma esquemática en la que se representan
los datos mediante tripletas, tiene un vocabulario en su especificación que permite
que los datos sean clasificados en función de su naturaleza.

Accede a la especificación a través del aula virtual o desde la siguiente dirección:


http://www.w3.org/TR/2014/REC-rdf11-concepts-20140225/

La especificación completa puede consultarse en la web proporcionada, sin embargo,


algunos de los elementos más interesantes de RDF son:

 XMLLiteral (rdf:XMLLiteral): esta clase se usa para definir valores (literales) en


© Universidad Internacional de La Rioja (UNIR)

formato XML.
 Property (rdf:Property): esta clase usa para definir propiedades (relaciones).
 type (rdf:type): esta propiedad se utiliza para definir el tipo de un determinado
recurso.

Inteligencia Artificial e Ingeniería del Conocimiento


14
Tema 11. Ideas clave
Para finalizar, a la hora de guardar un grafo RDF existen diferentes formas de
serialización siendo algunas de las más populares:

 RDF/XML (serialización basada en sintaxis XML).


 Turtle (un formato que permite que los humanos puedan leer de forma sencilla el
contenido).
 N-Triples (otro formato similar, pero no tan compacto como Turtle).
 N3 (similar a Turtle).
 JSON.

RDFS

RDFS (Resource Description Framework Schema) es una serie de elementos (clases


con ciertas propiedades) que usan como lenguaje de representación el
conocimiento RDF. RDFS proporciona los elementos básicos para la descripción de
ontologías.

Con los elementos básicos, por lo tanto, de RDFS es posible la construcción de


ontologías, si bien es cierto que la expresividad de este lenguaje está limitada.

Algunos de los elementos más interesantes de RDFS son los siguientes:

 rdfs:Class: se usa para definir que un determinado recurso es una clase. El hecho

de definir un recurso como una clase implica que se está haciendo una abstracción
de un determinado concepto. Por ejemplo: FOAF (Friend of a Friend) es un
vocabulario que define Person como clase (foaf:Person). El hecho de definir
Person como clase, implica que puede haber elementos que sean instancias
© Universidad Internacional de La Rioja (UNIR)

(objetos) de esa clase. Por lo tanto, una instancia de la clase foaf:Person es un


recurso que está vinculado a esa clase mediante el uso de la propiedad type de
rdf (rdf:type). Imaginemos la expresión «Juan es una persona», donde Juan es un

recurso de la ontología «ejemplo (prefijo: ej.)». Definida mediante tripleta,


tendríamos:

Inteligencia Artificial e Ingeniería del Conocimiento


15
Tema 11. Ideas clave
ej.: Juan rdf:type foaf:Person

 rdfs:Literal: usado para definir valores «literales» (Strings, números, etc.).

 rdfs:Datatype: usado para definir propiedades de datos. Es decir, aquellas


propiedades que actúan sobre una instancia, pero sobre la que solo se pueden
definir tipos de datos (literales).

 rdfs:subClassOf: la propiedad subClassOf permite establecer jerarquía de clases.

Supongamos que tenemos nuestro vocabulario de ejemplo (ej.) donde tenemos


dos clases: Mascota y Gato. Vamos a establecer que Gato es subclase de Mascota
mediante subClassOf:

ej.: Gato rdfs:subClassOf ej.: Mascota

 rdfs:domain: se usa para definir cuál es el dominio de una propiedad/relación


(Property) o de una propiedad de datos (Datatype).

 rdfs:range: junto con el dominio, define el rango de una propiedad/relación


(Property) o de una propiedad de datos (Datatype).

El dominio y rango de una propiedad establecen los posibles valores que pueden
tomar los recursos a ambos lados del predicado. Recordemos que todo se construye
en forma de tripletas (sujeto-predicado-objeto). El dominio establece la posible
clase o conjunto de valores que aplican al sujeto y el rango los que afectan al objeto.

Supongamos que queremos modelar la siguiente frase como tripleta RDF:


© Universidad Internacional de La Rioja (UNIR)

«Juan tieneMascota Ayla»

Inteligencia Artificial e Ingeniería del Conocimiento


16
Tema 11. Ideas clave
Donde «Juan» es una instancia de tipo Persona (ya definida previamente) y «Ayla» es
una instancia de tipo Gato, siendo además gato una subclase de la clase Mascota
(recordemos el ya visto subClassOf).

La relación (el predicado) «tieneMascota» (que imaginaremos que pertenece al


vocabulario de ejemplo visto antes (ej.)) tiene dos extremos: sujeto y objeto.
Podemos definir cuál es el dominio y rango de esta relación. El dominio sería
«Persona» y el rango «Mascota» (Ayla es un gato, pero como Gato es subclase de
Mascota, la tripleta es correcta desde el punto de vista semántico; por otra parte,
también supondremos que la clase Mascota pertenece el vocabulario de ejemplo).

La definición sería:

ej.: tieneMascota rdfs:domain foaf:Person

ej.: tieneMascota rdfs:range ej.: Mascota

 rdfs:label: es una instancia de rdf:Property que se usa para proporcionar datos

que puedan ser entendidos por las personas sobre el nombre del recurso.

 rdfs:comment: como label es instancia de rdf:Property y pertenece a


proporcionar comentarios sobre un recurso.

OWL

OWL (Ontology Web Language) es una familia de lenguajes para ontologías o bases
de conocimiento. Está basado en la formalización semántica que ofrece RDF y se basa
por defecto en una serialización tipo XML. Al igual que RDF y RDFS, OWL está
© Universidad Internacional de La Rioja (UNIR)

respaldado por el W3C.

Inteligencia Artificial e Ingeniería del Conocimiento


17
Tema 11. Ideas clave
OWL está basado en DAML (Darpa Agent Markup Language), el cual a su vez se unió
a OIL (Ontology Inference Layer) dando lugar a DAML+OIL como lenguaje de
definición de ontologías. El objetivo de DAML+OIL fue estar una capa por encima de
RDFS y fue usado como influencia principal a la hora del desarrollo de OWL.

OWL es un lenguaje que está dividido en varios lenguajes o tipos y donde existen
multitud de tipos de serialización y sintaxis con nombres similares. De particular
interés es mencionar que OWL está actualmente en su versión 2 (OWL2), que son
especificaciones que salieron en 2004 y 2009 respectivamente, aunque ambos siguen
siendo utilizados en la actualidad. OWL va un paso más respecto a RDFS y se aumenta
la expresividad del lenguaje.

Dentro de cada versión existen, además, una serie de familias en función de su


expresividad y algunas características particulares.

Como sublenguajes de OWL, en función de su expresividad, tenemos los siguientes:

 OWL Lite: ideado inicialmente para ser usado por usuarios que, básicamente,
necesitaban una jerarquía de conceptos y restricciones simples sobre estos. Un
ejemplo de estas restricciones es la cardinalidad: OWL Lite soporta restricciones
de cardinalidad, aunque los valores admitidos son 0 o 1. OWL Lite pretendía ser
una fuente base que permitiera la creación de tesauros o taxonomías mediante
OWL.

 OWL DL: diseñado para proporcionar la máxima expresividad posible, pero con
completitud computacional, capacidad decisión y la existencia de algoritmos de
razonamiento que pudieran trabajar con dicha expresividad.
© Universidad Internacional de La Rioja (UNIR)

 OWL Full: diseñado como una conjunción de OWL DL y Lite, trataba de preservar
cierta compatibilidad con RDFS. Sin embargo, debido a sus características OWL Full
no es decidible, con lo que no es posible realizar un razonamiento completo sobre
él.

Inteligencia Artificial e Ingeniería del Conocimiento


18
Tema 11. Ideas clave
La siguiente imagen muestra la representación de las diferentes
especificaciones/familias de lenguajes en función de su nivel de capacidad de
decisión:

Figura 10. Diferentes especificaciones/familias de lenguajes. Fuente: http://www.w3.org/2005/Talks/1111-


Delhi-IH/#(52)

Por otra parte, en OWL2 tenemos lo que se denominan perfiles:

 OWL2 EL: perfil que proporciona una complejidad de razonamiento temporal de


tipo polinómica.
 OWL2 QL: perfil diseñado para permitir un acceso más fácil a los datos
almacenados en bases de datos.
 OWL2 RL: perfil diseñado como un subconjunto de reglas de OWL2.

11.5. Ontologías

Las ontologías, tal y como se introdujo brevemente en el tema anterior, hacen


referencia a sistemas de representación del conocimiento que pueden ser
considerados como la evolución de los tesauros.

Las ontologías son consideradas como la piedra angular de la Web Semántica, dado
© Universidad Internacional de La Rioja (UNIR)

que todo gira en torno a ellas. La Web Semántica usa esta forma de representación
como elemento básico a la hora de trabajar con bases de conocimiento.

Inteligencia Artificial e Ingeniería del Conocimiento


19
Tema 11. Ideas clave
En el tema anterior vimos la definición básica de ontología (tomando como referencia
a Gruber, 1992): «Una ontología constituye una especificación formal y explicita de
una conceptualización compartida».

A la hora de trabajar con ontologías, por otra parte, es necesario saber qué lenguaje
o especificación vamos a utilizar. Fundamentalmente tenemos dos opciones (vistas
en los apartados anteriores): RDFS y OWL. La elección de uno u otro (y en el caso de
OWL, sus diversas variantes en el caso de OWL o perfiles en el caso de OWL2)
radicará, fundamentalmente, en la expresividad que necesitemos para modelar
nuestro dominio particular.

En este sentido, para esta asignatura donde estamos haciendo una pequeña
introducción a los conceptos de la Web Semántica y las ontologías vamos a ver los
conceptos básicos con los que se trabaja, sin ahondar demasiado en el diseño de
ontologías con una gran expresividad.

La mayoría de las ontologías que pretenden proporcionar capacidad de razonamiento


(es decir, que en función del conocimiento que la ontología tiene, se pueda inferir un
nuevo conocimiento) son modeladas en OWL DL, siendo este el lenguaje que
proporciona mayor expresividad en relación a una capacidad de decisión
computacional que sea posible.

A nivel de razonamiento, para justificar y entender mejor el concepto de la ontología


y sus capacidades mediante el uso de razonadores, veremos unos pequeños
ejemplos.

Por lo tanto, ¿de qué se compone una ontología y cómo podemos crearla?
© Universidad Internacional de La Rioja (UNIR)

Inteligencia Artificial e Ingeniería del Conocimiento


20
Tema 11. Ideas clave
Elementos principales

 Clases. Las clases, al igual que se vio en la definición en RDFS de la clase Class,
hacen referencia a un modelado abstracto de un elemento del dominio en
particular con el que estemos trabajando. Una clase hace referencia al posible
conjunto de elementos que comparten las mismas características y que están
englobados o agrupados bajo una definición formal concreta.

El ejemplo más fácil de ver esto es el de «Persona». Persona se puede considerar


una clase, ya que está modelando de forma abstracta (sin entrar en
particularidades) lo que es una «Persona», con sus características (atributos) y
otras propiedades. A aquellos conocedores de la Programación Orientada a
Objetos (POO), el concepto de clase les sonará y, en cierto modo, es un concepto
muy similar cuando hablamos de ontologías.

 Instancias (en inglés: Individuals) son aquellos «objetos» de una clase. Una
instancia, nuevamente al igual que la analogía con la POO, hace referencia a un
individuo concreto de una clase que tiene identidad por sí mismo pero que no deja
de pertenecer a un grupo mayor. Si tenemos la clase «Persona» que define las
personas, con sus características, Juan podría ser una instancia de «Persona»
teniendo sus propias características.

 Atributos. Hacen referencia a las características o propiedades que los objetos


(instancias) y las clases pueden tener. Cuando hablamos de atributos, por
ejemplo, de una clase, podemos definir que un atributo de la clase «Persona» es
el nombre. De igual manera, Juan, que es una «Persona» (es instancia de la clase
«Persona») tendrá también el atributo nombre con un valor concreto.
© Universidad Internacional de La Rioja (UNIR)

Inteligencia Artificial e Ingeniería del Conocimiento


21
Tema 11. Ideas clave
A diferencia, en este caso, de la analogía POO, una clase puede tener un atributo
y tener un valor concreto, algo que en la POO se limita más bien a las instancias
de una clase por lo general (salvo en ciertos casos). Los atributos son definidos
como Datatype o Datatype Property. Los atributos se caracterizan porque a la
hora de formar la tripleta (sujeto-predicado-objeto) para atribuir un valor a un
atributo, el objeto será un valor de un tipo de dato concreto (String, int, char,
boolean…).

 Relaciones. Hacen referencia a las formas en las que tanto instancias como clases
pueden relacionarse entre ellas. Una relación, a diferencia de un atributo, en su
definición como tripleta (sujeto-predicado-objeto) el objeto hará referencia a una
clase o instancia particular, en vez de a un tipo de dato (String, int, char,
boolean…).

Un posible ejemplo de relación siguiendo con la clase «Persona» podría ser el


siguiente: Imaginemos que queremos establecer la relación «tienePareja».
Asumiendo total normalidad en el mundo, se supone que una «Persona» tiene
como pareja a otra «Persona» (no a un objeto, animal u otra entidad). Se
establecería por lo tanto una hipotética relación entre Juan (instancia de
«Persona») y María (instancia de «Persona»):

Juan tienePareja María

 Restricciones. Las restricciones hacen referencia a determinadas descripciones


descritas formalmente que tienen que ser cumplidas (obligatoriamente) en el
orden que se establezca para que una determinada afirmación pueda ser
aceptada.
© Universidad Internacional de La Rioja (UNIR)

Inteligencia Artificial e Ingeniería del Conocimiento


22
Tema 11. Ideas clave
Un ejemplo de restricción podría ser la restricción de cardinalidad, que afecta a los
umbrales de valores que deben cumplir una determinada clase o instancia.
Imaginemos que dentro de la definición de clase «Persona» establecemos que una
«Persona» solo es «Persona» si tiene al menos dos padres (sin establecer relación
de que tengan que ser de diferente sexo ya que nos estamos centrando solamente
en la restricción de cardinalidad). La relación a la que afecta la cardinalidad sería
la relación «tienePadre» (del hipotético vocabulario «ejemplo (ej.)»).

Definiríamos por lo tanto la restricción como:

ej: tienePadre owl:minCardinality 2

Además de esta restricción de cardinalidad, en función de la expresividad del


lenguaje usado, tenemos muchas otras restricciones.

 Axiomas. Los axiomas se definen como el conocimiento «base» que se supone


que tiene que ser cierto durante el proceso de inferencia. Son, precisamente,
estos axiomas los que proporcionan las bases reales sobre las que se sustentan los
procesos de inferencia/razonamiento que se realizan sobre una ontología y que
permiten inferir nuevo conocimiento a partir del ya existente y considerado como
cierto.

Los axiomas pueden ir desde declaraciones relativamente sencillas hasta muy


complejas, dando lugar a la posibilidad de inferir cada vez un conocimiento más
complejo.

 Reglas. Son una serie de sentencias de tipo if-then (antecedente-consecuente)


© Universidad Internacional de La Rioja (UNIR)

que describen las inferencias lógicas que se pueden derivar a partir de una
afirmación concreta.

Inteligencia Artificial e Ingeniería del Conocimiento


23
Tema 11. Ideas clave
Es una de las formas posibles de inferencia que también se plantean con el uso de
ontologías: por una parte, se tiene una base de conocimiento con una serie de
hechos diseñados en la propia ontología; por otra, se tienen una serie de reglas
relacionadas con ese posible conocimiento en formato if-then. Finalmente, se
tiene un razonador que se encarga de procesar ambos conjuntos de datos y sacar
una serie de conclusiones en función de la información que existe en ambos sitios.

Diseño de ontologías: software

Cuando hablamos de diseño de ontologías podemos dividir la capacidad de


diseñar/construir las ontologías en dos tipos: editores y APIs.

A nivel de editores, hace unos años había una gran oferta de aplicaciones que
permitían el diseño de ontologías. Hoy en día, el software más importante para esta
tarea es Protégé, aunque existen otros como KAON2, NeOn (en cierto desuso), u OBo-
Edit (orientado al formato OBO y a ontologías biomédicas), por citar algunos.

A nivel de APIs, existen dos muy conocidas y muy usadas: Jena y OWL API (ambas
para Java). Sin embargo, no son las únicas. Otras APIs que se pueden encontrar hoy
en día para manejo de ontologías son SemWeb y doNetRDF (para .NET), rdflib (para
Python), arc2 (para PHP) o redland (para C/C++), entre otros.

11.6. Inferencia/razonamiento

Los conceptos de inferencia y razonamiento son muy cercanos. Se conoce como


© Universidad Internacional de La Rioja (UNIR)

razonamiento al proceso que permite obtener nuevas conclusiones a partir de un


conjunto dado de premisas. Inferencia, por otra parte, es básicamente el mecanismo
por el cual el razonamiento ocurre. Se puede decir que razonamiento es el objetivo
y la inferencia es la implementación.

Inteligencia Artificial e Ingeniería del Conocimiento


24
Tema 11. Ideas clave
El proceso de razonamiento puede dividirse, fundamentalmente, en dos categorías
básicas (la tercera, razonamiento abductivo, no se va a ver):
 Razonamiento deductivo.
 Razonamiento inductivo.

Razonamiento deductivo

Se basa en la combinación de premisas para obtener una conclusión de tal forma que,
si las premisas son ciertas, la conclusión debe serlo también.

Theory

Hypothesis

Observation

Confirmation

Figura 9. Razonamiento deductivo.

Pongamos como ejemplo las siguientes premisas:


 Todo estudiante de informática es simpático.
 Arturito es estudiante de informática.

¿Conclusión?: Arturito es simpático.


© Universidad Internacional de La Rioja (UNIR)

Sin embargo, bajo estas premisas:


 Todo estudiante de informática es simpático.
 Arturito es simpático.

Inteligencia Artificial e Ingeniería del Conocimiento


25
Tema 11. Ideas clave
No se puede concluir que Arturito sea estudiante de informática. Hay que tener
cuidado con las proposiciones y como están afectadas por sus cuantificadores.

Razonamiento inductivo

Es más complejo y depende de más factores. En contraste con el razonamiento


deductivo donde la conclusión puede considerase completamente cierta, en el
razonamiento inductivo se habla de que es probablemente cierta.

Ejemplo:
 Premisa: todos los estudiantes de informática que conozco son simpáticos.
 Conclusión: seguramente todos los estudiantes de informática sean simpáticos.

No hay conclusión certera.

La inferencia o razonamiento es una de las características que las ontologías (y por


ende la Web Semántica) ofrece con la ayuda de los razonadores. Si ilustramos el caso
visto previamente sobre el núcleo familiar que vimos de ejemplo:

Alejandro tieneMadre Marisa


Marisa tieneMarido José
Alejandro tieneHermano Adrián
Alejandro tieneHermano Ana
Marisa tienePadre Alberto
José tieneMadre Laura
© Universidad Internacional de La Rioja (UNIR)

Inteligencia Artificial e Ingeniería del Conocimiento


26
Tema 11. Ideas clave
Cuya representación en RDF, de forma visual, daba lugar al siguiente grafo:

Adrián

Alberto
tieneHermano

Alejandro tienePadre

tieneHermano tieneMadre Marisa tieneMarido José

Adrián tieneMadre

Laura

Figura 10. Grafo del ejemplo.

Bajo este conocimiento que tenemos (las relaciones entre esos familiares) podríamos
establecer una serie de axiomas en la ontología que conformarían estas tripletas en
RDF de tal forma que digamos, por ejemplo, que:

 Si dos individuos comparten el mismo padre: son hermanos (relación:


tieneHermano).
 Si dos individuos son hermanos: tienen los mismos padres (relación: tienePadre y
tieneMadre).
 Si dos individuos son padre y madre de un tercero: son pareja (relación:
tienePareja).

Por lo tanto, imaginemos que, al conjunto de información anterior, además de aplicar


© Universidad Internacional de La Rioja (UNIR)

estos axiomas que acabamos de presentar, añadimos la siguiente información:

Alejandro tieneHermano Ana

Inteligencia Artificial e Ingeniería del Conocimiento


27
Tema 11. Ideas clave
¿Qué nuevas relaciones se inferirían/razonarían?

Razonamiento:

Ana tienePadre Marisa


Ana tienePadre José

Explicación:

Al ser Alejandro hermano de Ana y aplicarse la regla de que «si dos individuos son
hermanos, tienen los mismos padres» se infiere automáticamente que los padres de
Ana son Marisa y José.

Razonamiento:

Ana tieneHermano Alejandro

Explicación:

Es la relación inversa de la última que establecimos. Al haberse razonado que Ana


tenía como padres a José y Marisa, se puede establecer que Ana tiene como hermano
a Alejandro (y viceversa, aunque esta relación: Alejandro tieneHermano Ana, ya
existe).

Razonamiento:

Adrián tieneHermano Ana


© Universidad Internacional de La Rioja (UNIR)

Ana tieneHermano Adrián

Inteligencia Artificial e Ingeniería del Conocimiento


28
Tema 11. Ideas clave
Explicación:

Al ser Ana hija de José y Marisa se activa la regla de que dos individuos que compartan
padre son hermanos. Se activa para ambos lados (ver razonamiento anterior).

Razonamiento:

José tienePareja Marisa


Marisa tienePareja José

Explicación:

José y Marisa tienen como hijos a los mismos individuos, con lo que se asume que
son pareja entre ellos.

El proceso de inferencia por lo tanto ha inferido estos nuevos hechos:

José tienePareja Marisa


Marisa tienePareja José
Adrián tieneHermano Ana
Ana tieneHermano Adrián
Ana tieneHermano Alejandro
Ana tienePadre Marisa
Ana tienePadre José

Para finalizar sobre la parte de inferencia y razonamiento sin ir demasiado al grano,


es necesario avisar de una particularidad de la Web Semántica y los razonadores
© Universidad Internacional de La Rioja (UNIR)

semánticos. La Web Semántica y, por ende, los razonadores semánticos trabajan en


modo Open World Assumption (OWA).

Inteligencia Artificial e Ingeniería del Conocimiento


29
Tema 11. Ideas clave
OWA hace referencia, básicamente, al hecho de que las conclusiones a las que se
pueden llegar sobre una determinada declaración no solo dependen de la
información que sabemos, sino también de la que desconocemos.

La asunción de mundo abierto se aplica cuando estamos representando un


conocimiento que acabamos de descubrir o del que no somos plenamente
conocedores. Al no tener todas las respuestas a todas las preguntas (o, incluso, puede
que ni siquiera todas las preguntas) no podemos garantizar que tengamos un
conocimiento completo del dominio. En OWA, por lo tanto, aquellas declaraciones
que no están incluidas o han sido inferidas explícitamente a partir del conocimiento
se consideran «desconocidas» más que verdaderas o falsas.

El concepto opuesto, típicamente identificable, por ejemplo, en las bases de datos,


es el de Close World Assumption (CWA). En CWA se parte de la presunción de que
aquello que no es cierto, es falso (no deja opción a desconocimiento, a no saberlo).

Un ejemplo:
Hecho: María es ciudadana francesa.
Pregunta: ¿es Pedro ciudadano francés?

Respuesta en CWA (por ejemplo, bases de datos SQL): No → No tenemos información


realmente, pero asumimos que no.
Respuesta en OWA: Desconocido.

11.7. Linked data


© Universidad Internacional de La Rioja (UNIR)

Para finalizar el tema hablaremos de Linked Data (datos enlazados), que hace
referencia a una de las vertientes más actuales dentro de la Web Semántica.

Inteligencia Artificial e Ingeniería del Conocimiento


30
Tema 11. Ideas clave
Básicamente, es un método de publicación de datos estructurados de tal forma que
estos se puedan interconectar entre si y, por consiguiente, se pueda navegar a
través de ellos.

Esta interconexión de datos (conceptos) permitiría a agentes automáticos recuperar


información e incluso inferir nuevo conocimiento.

Se basa en las tecnologías descritas en la Web Semántica, fundamentalmente en los


conceptos de RDF, URI y el protocolo HTTP. En vez de servir páginas web, tal y como
actualmente hace la mayoría de la Web, Linked Data pretende que se sirvan los datos
de manera que estos puedan ser interpretados automáticamente por los
ordenadores.

Berners-Lee acuñó este término e introdujo el conocido concepto de la publicación


de datos en cinco estrellas. Las cinco estrellas hacen referencia a una «metodología»
por la cual cuando los datos son publicados en la web se van consiguiendo estrellas
en función de su formato y disponibilidad.

De esta forma, se define la siguiente tabla con las famosas cinco estrellas. Se supone
que cada nueva estrella aplica los criterios de las estrellas anteriores y añade uno
nuevo.

Estrellas Objetivo
Hacer que los datos estén disponibles en la web (en cualquier formato)
 pero con licencia abierta para que sean «datos abiertos».
Hacer que los datos puedan ser leídos por una máquina (por ej.: formato
 Excel en vez de una imagen escaneada de una tabla).
Hacer que los datos usen un formato no propietario (por ej.: CSV en vez

© Universidad Internacional de La Rioja (UNIR)

de Excel).
Usar estándares abiertos del W3C como RDF y SPARQL para identificar
 cosas de tal forma que la gente pueda apuntar a tus datos.
Establecer enlaces desde tus datos a los de otras personas para
 proporcionar contexto.

Tabla 1. Datos en 5 estrellas.

Inteligencia Artificial e Ingeniería del Conocimiento


31
Tema 11. Ideas clave
La publicación de datos siguiendo las cinco estrellas es lo que hace que se puedan
conformar lo que se conocen como datasets. Los datasets son conjuntos de datos
sobre un determinado dominio (generalmente, hay datasets de varios dominios
como dbpedia que, de hecho, es el núcleo central de toda la Linked Open Data Cloud)
que se relacionan unos con otros, permitiendo navegar a través de ellos.

La última imagen disponible sobre el tamaño de la Linked Open Data Cloud es la


siguiente:
© Universidad Internacional de La Rioja (UNIR)

Figura 11. Tamaño de la Linked Open Data Cloud. Fuente: http://lod-cloud.net/

Inteligencia Artificial e Ingeniería del Conocimiento


32
Tema 11. Ideas clave
Cada círculo hace referencia a un dataset que, de alguna manera, está vinculado con
el resto. Un ejemplo de aplicación precisamente de Linked Data lo podemos ver en la
siguiente imagen (presentación del Dr. Sören Auer en la conferencia RW 2011).

Figura 12. Aplicación de Linked Data. Fuente: http://lod-cloud.net/

La imagen representa la posible navegación entre conceptos a través de varios


datasets. Empezando en la página de bestbuy, con el concepto Macbook, que tiene
una serie de características como una especificación del precio que nos da el valor
actual según la moneda (1200), podemos saltar al concepto MCB de la web de Apple
(ya que los conceptos Macbook de Bestbuy y MCB de Apple son equivalentes:
owl:sameAs).
© Universidad Internacional de La Rioja (UNIR)

En la Web de Apple tenemos el title que es el nombre y, de ahí, saltamos al concepto


de Macbook en DBPedia (DBPedia es un volcado en tripletas RDF de Wikipedia: todo
el contenido de Wikipedia está semantizado, de tal forma que cada determinado
tiempo se actualiza el dataset de DBPedia con la información contenida en Wikipedia.

Inteligencia Artificial e Ingeniería del Conocimiento


33
Tema 11. Ideas clave
De ahí que DBPedia de momento sea el dataset «base» en la Linked Open Data Cloud
porque casi cualquier concepto que queremos especificar estará en Wikipedia y, por
ende, en DBPedia).

En DBPedia tenemos una referencia que nos lleva a que el desarrollador es Apple
Computer y, de ahí, a través de la información «ver también» (rdfs:seeAlso)
podemos pasar al dataset UN de indicadores medioambientales, que nos
proporciona información de Apple y su generación de CO2.

11.8. Referencias bibliográficas

Labra-Gayo, J. E. (2005). XML Technologies and Semantic Web. Universidad de


Oviedo.
© Universidad Internacional de La Rioja (UNIR)

Inteligencia Artificial e Ingeniería del Conocimiento


34
Tema 11. Ideas clave
A fondo
Fundamentos de la Web Semántica

Labra, J. E. (2005). Fundamentos de la Web Semántica. Departamento de Informática.


Universidad de Oviedo.

Transparencias del profesor Dr. José Emilio Labra Gayo sobre introducción a la Web
Semántica.

Accede al documento a través del aula virtual o desde la siguiente dirección web:
http://di002.edv.uniovi.es/~labra/cursos/ver06/pres/SemWeb.pdf

Intro to the Semantic Web

Vídeo de introducción a la Web Semántica.


© Universidad Internacional de La Rioja (UNIR)

Accede al vídeo a través del aula virtual o desde la siguiente dirección web:
https://www.youtube.com/watch?v=UoT2oava9ns

Inteligencia Artificial e Ingeniería del Conocimiento


35
Tema 11. A fondo
Linked Data

Vídeo explicativo sobre el concepto de Linked Data.

Accede al vídeo a través del aula virtual o desde la siguiente dirección web:
https://vimeo.com/42962819

Ontology Development 101: A Guide to Creating Your First Ontology

Noy, N. F. y McGuinness, D. L. (2000). Ontology Development 101: A Guide to Creating


Your First Ontology. Stanford: Universidad de Stanford.

Tutorial sobre creación de ontologías para los más novatos.

Accede al documento a través del aula virtual o desde la siguiente dirección web:
https://protege.stanford.edu/publications/ontology_development/ontology101.pdf
© Universidad Internacional de La Rioja (UNIR)

Inteligencia Artificial e Ingeniería del Conocimiento


36
Tema 11. A fondo
Actividades

Laboratorio: Diseño de una ontología

Descripción de la actividad

La actividad consiste en modelar una base de conocimiento que se utilizará en la


gestión de una biblioteca.

Este ejercicio propone realizar una pequeña aproximación de cómo se construiría una
base de conocimiento que albergara información sobre obras, autores y socios
lectores de la biblioteca.

Se propone por lo tanto crear una ontología que contenga, al menos, los siguientes
elementos básicos:

 Socios.
 Autores.
 Obras, que pueden ser: libros, películas y cómics.

Debes especificar las relaciones y las propiedades o atributos de las entidades


anteriores, teniendo en cuenta que se quiere conocer qué socio tiene prestada una
obra en un momento dado, así como poder consultar cuáles son las obras de un
determinado autor.
© Universidad Internacional de La Rioja (UNIR)

Además del modelo básico de representación, debes crear al menos una obra
específica de muestra (ej.: libro El Señor de los Anillos) con las diferentes relaciones
que se pueden dar con otras instancias (un socio de la biblioteca concreto, Tolkien,
etc.).

Inteligencia Artificial e Ingeniería del Conocimiento


37
Tema 11. Actividades
Pautas de elaboración

Los pasos que debes seguir para diseñar la ontología son los siguientes:

 Identifica los conceptos. Cada concepto equivaldrá a una clase.


 Define las propiedades de cada clase.
 Define las relaciones entre las clases.
 Genera instancias concretas.

Criterios de evaluación

En la evaluación se tendrá en cuenta la corrección en el modelo generado y en la


explicación del diseño realizado, así como la claridad en la exposición.

Entrega

Debes entregar una memoria que contenga uno o varios diagramas de la ontología
que has generado, así como una explicación textual de los mismos.

Extensión máxima: 4 páginas (Georgia 11 e interlineado 1,5).


© Universidad Internacional de La Rioja (UNIR)

Inteligencia Artificial e Ingeniería del Conocimiento


38
Tema 11. Actividades
Test
1. ¿Cuál es el esquema más básico para representar ontologías?
A. RDF.
B. RDFS.
C. OWL.
D. OWL-DL.

2. ¿Quién acuñó el término Web Semántica?


A. Allan M. Collins.
B. Ross Quillian.
C. Tim Berners Lee.
D. F. Loftus.

3. ¿Cuál es la cadena identificadora que reconoce un recurso de forma unívoca?


A. URI.
B. URL.
C. URN.
D. URT.

4. ¿Cuál es la estructura básica de una tripleta RDF?


A. Sujeto-objeto-predicado.
B. Objeto-sujeto-predicado.
C. Objeto-predicado-sujeto.
D. Sujeto-predicado-objeto.
© Universidad Internacional de La Rioja (UNIR)

5. Si quiero definir que un recurso es una clase, ¿qué debo usar?


A. rdf:type.
B. rdfs:Class.
C. rdf:Class.
D. rdfs:type.

Inteligencia Artificial e Ingeniería del Conocimiento


39
Tema 11. Test
6. ¿Qué subtipo de OWL proporciona mayor expresividad?
A. OWL Lite.
B. OWL DL.
C. OWL Full.
D. OWL Ext.

7. ¿Qué perfil de OWL2 está diseñado para acceso a datos en bases de datos?
A. OWL2 EL.
B. OWL2 QL.
C. OWL2 RL.
D. Ninguno de los anteriores.

8. ¿Cuál es, hoy en día, el editor más importante de ontologías?


A. KAON.
B. Jena.
C. SemWeb.
D. Protégé.

9. ¿Qué tipo de asunción usa la Web Semántica en términos de inferencia?


A. OWA.
B. CWA.
C. OWA con restricciones de cardinalidad.
D. CWA con restricciones de cardinalidad.

10. ¿Con qué nombre se conoce a la nube de datasets de Linked Data?


A. Linked Data Cloud.
B. Linked Open Data Cloud.
© Universidad Internacional de La Rioja (UNIR)

C. Linked Cloud.
D. Ninguna de las anteriores.

Inteligencia Artificial e Ingeniería del Conocimiento


40
Tema 11. Test

También podría gustarte