Metodologia para ontologias

Page 1

Metodología para el desarrollo de ontologías Rubén Darío Alvarado* 11 de mayo de 2010

Resumen Una metodología es un conjunto de métodos y técnicas que determinan que los resultados de un proceso tengan una calidad aceptable. En contraste método es un conjunto ordenado de pasos o procedimientos utilizados en el desarrollo de un producto, mientras que técnica es un procedimiento utilizado para conseguir un objetivo (Ander-Egg, 1978). Por tanto, la metodología nos proporciona un marco de trabajo, un conjunto ordenado de pasos que nos ayudarán a construir una ontología para el dominio del proyecto. En el novel campo de la Ingeniería del Conocimiento diversos grupos de investigación buscan un método de desarrollo de ontologías adecuado pero, las variables son tantas y tan diversas que es prácticamente imposible obtener un sólo método adecuado para todos los casos. Entre los métodos más utilizados para diseñar y construir ontologías tenemos: Método de desarrollo de Ontologías de Uschold y King; Método Virtual Empresarial Toronto (TOVE) de Gruninger y Fox; Methontology; KAKTUS y, el Método de desarrollo de Ontologías propuesto por Noy y McGuiness.

1.

Generalidades

Una metodología es un conjunto de métodos y técnicas que determinan que los resultados de un proceso tengan una calidad aceptable. En contraste método es un conjunto ordenado de pasos o procedimientos utilizados en el desarrollo de un producto, mientras que técnica es un procedimiento utilizado para conseguir un objetivo (Ander-Egg, 1978). Por tanto, la metodología nos proporciona un marco de trabajo, un conjunto ordenado de pasos que nos ayudarán a construir una ontología para el dominio del proyecto. En el novel campo de la Ingeniería del Conocimiento diversos grupos de investigación buscan un método de desarrollo de ontologías adecuado pero, las variables son tantas y tan diversas que es prácticamente imposible obtener un sólo método adecuado para todos los casos. Entre los métodos más utilizados para diseñar y construir ontologías tenemos: *

Si tienes comentarios o correcciones por favor escribe al siguiente correo: ruben.dario76@gmail.com

1


Método de desarrollo de Ontologías de Uschold y King; Método Virtual Empresarial Toronto (TOVE) de Gruninger y Fox; Methontology; KAKTUS y, el Método de desarrollo de Ontologías propuesto por Noy y McGuiness.

2.

Metodología propuesta

Tomando como base las metodologías de Noy & McGuiness y Methontology, proponemos el siguiente proceso de desarrollo que pone énfasis en la construcción de un modelo conceptual robusto y en la determinación clara y concisa de los requerimientos de la ontología a construirse: 1. Determinar los requerimientos de la ontología 2. Reutilizar las ontologías o metadatos existentes 3. Elaboración del modelo conceptual 4. Implementación del modelo conceptual 5. Evaluación de la ontología A priori es necesario relevar la importancia que tiene la determinación de los requerimientos ya que su definición nos ayudará a tomar varias decisiones durante todo el proceso de desarrollo. También debemos tomar en cuenta que una ontología no es nada más (ni nada menos) que un modelo de la realidad y como tal debe reflejarla. Los procesos de evaluación y documentación son ejes transversales de este método, lo que implica su presencia continua en todos y cada uno de los pasos anteriormente citados, aunque no siempre con el mismo grado de formalidad; esto tomando en cuenta que un desmedido énfasis en la documentación de cada uno de los pasos volvería engorroso y lento el proceso de desarrollo a más de ser absolutamente innecesario. Utilizaremos varios de los instrumentos proporcionados por Methontology (esquemas, diagramas y descriptores) para documentar debidamente el proceso de elaboración del modelo conceptual (especialmente). El esquema mostrado en la figura siguiente ilustra todo el proceso de construcción e implementación de la ontología con los instrumentos y herramientas requeridos para cada paso. Como se puede observar en la figura anterior, se privilegia la facilidad de comprensión del desarrollador sobre el nivel de formalización del método; es decir, se intenta que esta primera aproximación a la creación de ontologías se realice de forma intuitiva y, conforme se avanza en el proceso, se incrementa el nivel de formalidad (y de dificultad) del mismo. Además, cabe destacar que este es un proceso iterativo; es decir, que después de obtener la versión inicial de la ontología, debemos evaluarla y corregirla; para ello utilizaremos los requerimientos obtenidos y, por supuesto, la ayuda de los expertos en el dominio.

2


Figura 1: Descripción de nuestro método de desarrollo

3.

Fases de la metodología

Antes de comenzar el proceso de construcción de la ontología conviene destacar algunas reglas fundamentales según Noy & McGuiness (1995): No existe una única forma correcta de modelar un dominio; al contrario, siempre hay alternativas posibles. La mejor solución casi siempre depende del propósito u objetivo final de la ontología o de sus aplicaciones. El desarrollo de una ontología es necesariamente un proceso iterativo. Los conceptos o clases de una ontología deberían ser muy cercanos a objetos o entes (tanto físicos como lógicos) y a las relaciones existentes en nuestro dominio de interés. Estos conceptos o clases serán muy probablemente nombres (objetos) o verbos (relaciones) que encontraremos en las frases que describen nuestro dominio.

3.1.

Determinación de requerimientos

Iniciamos el desarrollo de una ontología definiendo el dominio, alcance y granularidad de la misma; para ello es mejor utilizar “preguntas significativas o de competencia” (Gruninger y Fox, 1995) es decir, utilizar una lista de preguntas que el sistema debería ser capaz de contestar. En este apartado se dará respuesta a las siguientes cuestiones básicas: ¿Qué dominio cubrirá la ontología? OntoWikiUTPL permitirá modelar (representar) la estructura de una guía didáctica de la modalidad de estudios a Distancia de la UTPL. A manera de ejemplo, se modelarán los contenidos de la guía didáctica de la asignatura de Matemáticas Discretas.

3


¿Para qué se va a emplear la ontología? Esta ontología facilitará la búsqueda de conceptos, ejemplos y/o ejercicios relacionados con la asignatura de matemáticas discretas. Naturalmente, será necesaria la inclusión de los conceptos que describen tanto a la asignatura como a la guía didáctica como tal, descartando algunos elementos propios de la enseñanza de la asignatura como la gestión de la bibliografía, de sus autores o de la estructura del plan de estudios de la carrera correspondiente. ¿Qué preguntas debería contestar la ontología? En el dominio de la guía didáctica de la asignatura de matemáticas discretas, las siguientes cuestiones son relevantes (entre otras): ¿Qué es un conjunto? ¿Cuántas formas existen para determinar un conjunto? ¿Qué gráfico ilustra la relación de inclusión? ¿Cuántas y cuáles son las operaciones entre conjuntos? ¿Qué tipo de diagramas permiten la representación gráfica de las operaciones entre conjuntos? ¿Qué actividades debo desarrollar y enviar a través del entorno virtual de aprendizaje? De acuerdo a este listado de preguntas, la ontología contendrá información sobre conceptos o definiciones; ejemplos y/o ejercicios; esquemas, diagramas y figuras; todos estos, elementos constitutivos de una guía didáctica. ¿Quién utilizará y mantendrá la ontología? Los usuarios potenciales de esta ontología son los estudiantes y profesores de la carrera de sistemas informáticos y computación de la Modalidad Abierta y a Distancia de la UTPL, matriculados en la asignatura de matemáticas discretas. Los administradores de la ontología serán las personas encargadas del mantenimiento de la misma.

3.2.

Reutilización de ontologías y metadatos

En la actualidad el contenido de la web se asemeja a una biblioteca desordenada y caótica de donde es muy difícil y costoso extraer algún tipo de conocimiento. Para solucionar este problema se han desarrollado metadatos que permiten describir la información, facilitan su procesamiento por parte de las máquinas y admiten la integración y reutilización de la información contenida en la web, facilitando la extracción de conocimientos útiles para el ser humano. En general los metadatos son datos que describen a los datos. De forma específica permiten mantener un registro sobre el significado, contexto y propósito de un objeto de información para poder comprenderlo y administrarlo de la mejor manera posible. Existen diversas agrupaciones, a nivel mundial, dedicadas al desarrollo y estandarización de metadatos. Entre las principales tenemos: Dublin Core y W3C. La importancia del análisis de diversos repositorios de metadatos radica en la posibilidad de reutilizar los términos en él definidos para el desarrollo de OntoWikiUTPL. Este proceso incluye la formalización de los nombres utilizados en la ontología por sus respectivos sinónimos más usados o conocidos, lo que permitirá una mejor comprensión del modelo final. Entre los diversos estándares de metadatos y ontologías existentes en la actualidad, se realiza una descripción y comparación de aquellas cuya relación con el proyecto a

4


realizar es estrecha. La finalidad de esta sección es encontrar elementos reutilizables en el desarrollo de OntoWikiUTPL. 3.2.1.

Metadatos de Dublin Core

Dublin Core es una organización que promueve un estándar de propósito general, sencillo y descriptivo de los recursos de la web sobre cualquier materia. Promueve la iniciativa Dublin Core Metadata Initiative (DCMI) que provee una infraestructura operativa para la red semántica y el intercambio de la información por medios electrónicos. Los metadatos universales DC están diseñados específicamente para indexar documentos y recursos. Para ello contiene quince elementos básicos agrupados según el tipo de información: siete elementos de contenido, cuatro elementos con información relativa a la propiedad intelectual del recurso y cuatro elementos relativos a la identificación, formato y temporalidad del documento. Cuadro 1: Metadatos de Dublin Core Contenido

Propiedad Intelectual

Instanciación

Título (title)

Autor (creator)

Fecha (date)

Tema (subject)

Editor (publisher)

Formato (format)

Descripción (description)

Colaborador (contributor)

Identificador (identifier)

Tipo (type)

Derechos (rights)

Lengua (language)

Fuente (source) Relación (relation) Ámbito (coverage)

3.2.2.

WikiOnt

Esta ontología fue desarrollada por estudiantes del DERI de la National University of Ireland. WikiOnt es el acrónimo de Wikipedia Ontology, fue creada para tener una definición común de la estructura de la información contenida en la Wikipedia. La ontología es una representación de Wikipedia (interpretable por un computador) que permite que el software consulte y reutilice los datos. Una descripción completa de la ontología (en inglés) se encuentra en la página http:// sw.deri.org/2005/04/wikipedia. A continuación presentamos un resumen de las clases y propiedades descritas en WikiOnt. Las principales clases identificadas son: article, category, image y stub. Ambas stub y category son subclases de Article. Las instancias de las clases se conectan mediante propiedades. Se definieron algunas propiedades, pero en general se trató de reutilizar elementos de ontologías existentes como Dublin Core y SKOS cuando eran apropiados.

5


Cuadro 2: Descripción de WikiOnt Clases

Propiedades

Article

contentType

Contributor

Sioc views

Category

externalLink

DC date

Skos narrower

Image

internalLink

DC title

Skos subject

Stub

Image height

DC creator

Text

Image width

Link

redirectsTo

Al realizar la definición de la ontología, en lugar de abundar en clases y propiedades, se trató de capturar la esencia de un artículo publicado en la Wikipedia. 3.2.3.

Swim Ontology

Definida por Christoph Lange estudiante de la Jacobs University de Bremen (Alemania) para el proyecto SWIM - A semantic wiki for mathematical knowledge management http://kwarc.info/projects/swim/. Esta basada en la estructura del documento OMDOC y su esquema en XML, modelada en OWL-DL. Todos los conceptos y relaciones expuestas en la ontología tienen su contraparte explícita en la sintaxis OMDOC. En el cuadro 3 presentamos un resumen de las clases y relaciones utilizadas en esta wiki semántica (SWIM). Cuadro 3: Descripción de la ontología SWIM Clases

Relaciones

Theory

Definition defines symbol

Statement

Example exemplifies statements

Proof

Example corroborates assertion

Assertion

Example refutes assertion

Example

Proof proves assertion

Definition Symbol Del cuadro anterior se puede inferir la total especialización de la ontología, puesto que describe fielmente el formato OMDOC utilizado exclusivamente para la creación de documentos del área de matemática. SWIM es manejada exclusivamente por el desarrollador de la wiki.

6


3.2.4.

Análisis comparativo

En el cuadro 4 se ilustra el análisis comparativo de las principales características de las ontologías que sirven de base a diversas wikis semánticas. Cuadro 4: Análisis comparativo de las ontologías Característica

WikiOnt

Ontología SWIM

Documentación

Abundante

Escasa

Nivel de especialización

Bajo, ontología general para artículos de la wiki

Alto, ontología sólo para documentos matemáticos

Lenguaje de representación

OWL

OWL

Aplicaciones

Utilizada en el proyecto Semantic Media Wiki

Utilizada en el proyecto SWIM

Motor de wiki

Media Wiki

IkeWiki

Licencia

Licencia pública general (GNU-GPL)

Licencia pública general (GNU-GPL)

Basándonos en la descripción de las dos ontologías y en el cuadro 4 podemos concluir que: Las ontologías analizadas poseen licencia GNU-GPL lo cual nos permite utilizar alguno de sus elementos o en su conjunto. La abundante documentación existente acerca de WikiOnt nos permite detallar todos sus elementos lo que no es posible con SWIM. El lenguaje de implementación (OWL) facilita la integración de estas ontologías en cualquier proyecto a desarrollarse. Finalmente, el nivel de especialización de las dos ontologías no permite usarlas en este trabajo investigativo, utilizaremos los elementos de cualquiera de ellas que más se adecúen al propósito de este proyecto. 3.2.5.

Elementos a reutilizar

En el apartado anterior se realizó un estudio tanto de los metadatos como de las ontologías utilizadas como base para diversos motores de wikis semánticas, de esta manera se logró determinar algunas clases y propiedades que pueden ser reutilizadas en la creación de OntoWikiUTPL: De la ontología WikiOnt, se han tomado algunas propiedades como: link, externalLink, internalLink y text.

7


De la ontología desarrollada para SWIM, las clases definition y example. La reutilización de estos elementos se verá de forma explícita en la sección siguiente que detalla la construcción del modelo conceptual de la ontología OntoWikiUTPL.

3.3.

Elaboración del modelo conceptual

3.3.1.

Definición de términos de la ontología

En este paso se realiza un listado de todos los términos que tienen relación con el dominio; el cuadro denominado Glosario de Términos (cuadro 5 y cuadro 6) detalla el nombre de cada concepto acompañado de una breve descripción del mismo. Los términos se han seleccionado a partir de la documentación (artículos, libros, sitios web, etc., en nuestro caso particular el mapa conceptual de la guía didáctica mostrado en la sección ??) y de las respuestas a las “preguntas relevantes” obtenidas en la primera parte de este proceso. Cuadro 5: Glosario de Términos (parte 1) Nombre

Descripción

Área

Nombre del área a la que pertenece la carrera.

Carrera

Nombre de la carrera a la que pertenece la asignatura.

Asignatura

Nombre de la asignatura de la guía didáctica.

Ciclo

Agrupación de asignaturas en un período de tiempo.

Período

Espacio de tiempo en el que se desarrolla el ciclo (en nuestro caso cinco meses).

Guía didáctica

Documento que facilita la comprensión del material didáctico por parte del estudiante y orienta y organiza el trabajo del educando integrando los elementos didácticos para el estudio de una asignatura.

Índice

Lista ordenada que detalla los capítulos y secciones de la guía didáctica indicando el lugar (página) donde aparecen.

Introducción

Sección inicial que establece el propósito y los objetivos del contenido de la guía didáctica.

Objetivos

Elementos que identifican los resultados o logros que alcanzará el estudiante en la asignatura.

8


Cuadro 6: Glosario de Términos (parte 2) Nombre

Descripción

Contenido

Conjunto secuencial de los temas fundamentales de la asignatura organizados por capítulo y sección.

Bibliografía

Descripción de los libros o direcciones electrónicas consultadas para la elaboración de la guía didáctica.

Orientaciones

Sugerencias al estudiante para mejorar el proceso de enseñanza-aprendizaje.

Glosario

Definición de los términos nuevos.

Evaluación

Elemento educativo cuyo fin es verificar los conocimientos adquiridos por el estudiante.

Dirección electrónica

Elemento que hace referencia a un recurso digital en internet.

Capítulo

División de la guía didáctica cuyo contenido pertenece a un mismo tema.

Sección

División del capítulo.

Definición

Proposición que reúne las propiedades generales y diferenciadoras de algo material o inmaterial.

Ejercicio

Enunciado cuyo desarrollo permite la comprensión de la teoría. Es más sencillo que un problema.

3.3.2.

Definición de las clases y de la jerarquía

Tomando como base el glosario de términos desarrollado en el apartado anterior, se selecciona aquellos conceptos que describen objetos independientes para constituir las clases, mientras que los vocablos que describen cómo son esos objetos se los deja para un análisis posterior (posiblemente puedan constituir las propiedades de una o más clases de la ontología). Algunas reglas generales que nos ayudan a decidir cuándo introducir una clase nueva, según Noy & McGuiness (1995), se detallan a continuación: Una nueva subclase de una clase generalmente: 1. Debería tener nuevas propiedades que no posee la clase 2. Debería tener diferentes valores para las propiedades que los de la clase 3. Debería participar en diferentes relaciones que la clase. En jerarquías terminológicas, las nuevas clases no tienen por qué introducir nuevas propiedades.

9


Si un factor es importante en el dominio y pensamos en los objetos con diferentes valores para ese factor como diferentes clases de objetos, entonces deberíamos crear una nueva clase o clases considerando dicho factor. Las instancias son los conceptos más específicos representados en una ontología. Si los conceptos de un dominio forman una jerarquía natural, debemos representarlos como clases, aunque sean clases abstractas. Considerando las reglas mencionadas, a continuación se presentan las clases definidas para OntoWikiUTPL. Cuadro 7: Listado de clases de la ontología Asignatura

Orientación

Enlace

Capítulo

Objetivo

Contenido

Evaluación

Sección

Guía didáctica

Bibliografía

Autoevaluación

Definición

Índice

Glosario

Solucionario

Ejercicio

Introducción

Palabra clave

Unidad de información

Ejercicio propuesto Ejercicio resuelto

Luego, deben organizarse las clases en una jerarquía de clases. Cuando desarrollamos la taxonomía de clases se deben considerar ciertas reglas generales (Noy & McGuiness, 1995). Así: Si una clase A es una superclase de la clase B, entonces toda instancia de B es también una instancia de A. Una subclase de una clase representa un concepto que es un tipo especial o una subespecie dentro del concepto representado por la clase. Si B es una subclase de A y C es una subclase de B, entonces C es una subclase de A. No debemos emplear sinónimos de un mismo concepto para representar clases diferentes, sino que los sinónimos deben considerarse denominaciones diferentes para un mismo y único concepto. No deben aparecer ciclos o bucles en la jerarquía de clases. Los conceptos de un mismo nivel de la jerarquía o clases hermanas (excepto los que derivan directamente de la raíz) deben presentar el mismo nivel de generalidad. Cada clase debería tener entre 2 y 12 subclases directas.

10


Se debe recordar que no es necesario especializar o generalizar una ontología más de lo que se necesite para la aplicación. La jerarquía de clases de OntoWikiUTPL es:

Figura 2: Jerarquía de clases de la ontología

11


En un intento de clasificación y jerarquización de los diversos elementos que forman la guía didáctica se propone el concepto unidad de información que facilita la inclusión de varios componentes genéricos en los que cada autor divide al contenido. Otro factor importante en la definición de unidad de información es el grado de granularidad necesario para que la ontología pueda reutilizarse en diferentes asignaturas. Se propone tener tres tipos de unidad de información de diferente granularidad: capítulo, sección y, definición y ejercicio. Los capítulos tienen granularidad gruesa y estan formados por un conjunto de secciones (granularidad media). Las secciones se explican en base a una colección de definiciones y ejercicios (granularidad fina); estos últimos se eligen convenientemente por el autor de la guía. De esta forma se puede reutilizar la unidad de información en tres niveles distintos, es decir, se puede reutilizar un capítulo entero, secciones de un capítulo o las definiciones y ejercicios que componen una sección. 3.3.3.

Definición de las propiedades de las clases

Definidas las clases se describen sus atributos y las relaciones existentes entre ellas mediante el diagrama de relaciones binarias. Como las clases fueron seleccionadas del glosario de términos, la mayoría de los términos que quedan son probablemente sus propiedades. En general, las características de los objetos que pueden convertirse en propiedades o slots en una ontología son las siguientes: Todas las subclases de una clase heredan las propiedades de dicha clase, por lo que una propiedad debería ser adscrita a la clase más general que posea dicha propiedad. Garantizar la consistencia de la base de conocimiento cuando existan propiedades o relaciones inversas en una ontología. El cuadro siguiente muestra el listado de las clases con sus respectivos atributos: Cuadro 8: Listado de atributos de las clases de la ontología Clase Asignatura

Objetivo Guía didáctica

Atributos

Clase

Atributos

Universidad, modalidad, área, carrera, docente, estudiante.

Enlace

Tipo

Tipo, bimestre. Ciclo, período, autor.

Orientación

Tipo.

Contenido

Bimestre

Bibliografía

Tipo.

Capítulo

Bimestre

Definición

Texto, imagen.

Ejercicio

Texto, imagen.

Autoevaluación

Capítulo

Solucionario

Capítulo

12


El Diagrama de Relaciones Binarias permite conocer el tipo de relaciones entre clases, las relaciones que se muestran a continuaciĂłn son parte de OntoWikiUTPL.

Figura 3: Diagrama de relaciones binarias de la ontologĂ­a El Diccionario de Clases de la OntologĂ­a (cuadro 9 y cuadro 10) permite definir las relaciones, los atributos de las clases y los atributos de las instancias. Finalmente, en la figura 4 se presenta el Modelo Conceptual de OntoWikiUTPL.

13


Cuadro 9: Diccionario de clases de la ontología (parte 1) Clase

Instancia

Atributos de clase

Atributos de instancia

Relaciones

Asignatura

Matemáticas discretas

Universidad

UTPL

tiene guía didáctica

Modalidad

Abierta

tiene objetivo

Área

Técnica

Carrera

Ingeniería en Sistemas

Docente

Paola Sarango

Estudiante

Fausto Maldonado

Tipo

General o específico

Bimestre

Primero o segundo

Período

Abril - agosto, octubre - febrero

alcanza objetivo; tiene unidad de información; tiene índice;

Ciclo

Primero, . . . décimo

tiene introducción; tiene orientación;

Autor

Paola Sarango

tiene bibliografía; tiene glosario; tiene palabra clave; tiene enlace;

Tipo

General o específico

Objetivo

Guía didáctica

Objetivo 1

Guía didáctica de matemáticas discretas

Índice

Índice 1

Introducción

Introducción 1

Orientación

Orientación 1

14


Cuadro 10: Diccionario de clases de la ontología (parte 2) Clase

Instancia

Atributos de clase

Atributos de instancia

Relaciones

Contenido

Contenido 1

Bimestre

Primero o segundo

Bibliografía

Libro 1

Tipo

Básica, complementaria o dirección electrónica

Glosario

Entrada 1

tiene palabra clave

Palabra clave

Palabra 1

tiene enlace

Enlace

Enlace 1

Tipo

Interno o externo

Autoevaluación

Autoevaluación 1

Capítulo

1

Solucionario

Solucionario 1

Capítulo

1

Capítulo

Capítulo 1

Bimestre

Primero o segundo

Sección

Sección 1

Definición

Definición 1

Ejercicio

Ejercicio 1

Evaluación

Unidad de Información tiene sección tiene definición; tiene ejercicio

Tipo

15

Propuesto o resuelto

ilustra definición


16 Figura 4: Modelo conceptual de la ontologĂ­a


3.3.4.

Definición de las restricciones de las propiedades

En una ontología, las propiedades pueden tener diferentes facetas, éstas describen o caracterizan el tipo de valor que posee una propiedad. Las restricciones más comunes aplicadas a las propiedades son: los valores permitidos y el número de valores posibles (cardinalidad). A continuación una breve descripción de cada una de ellas: Cardinalidad: Establece cuántos valores puede tener una propiedad o slot. Algunos sistemas distinguen únicamente entre cardinalidad simple (como máximo un valor) y cardinalidad múltiple (se permiten cualquier número de valores). Tipo de valor: Describe qué tipo de valores puede poseer una propiedad. Los más frecuentes son: String [Cadena de caracteres], Number, Boolean, Symbol, e Instance. Dominio y rango de una propiedad o slot: Se suele denominar rango de una propiedad a las clases permitidas para una propiedad de tipo instancia. El dominio de una propiedad es el conjunto de clases que describe o caracteriza dicha propiedad. En la construcción de OntoWikiUTPL se han considerado las restricciones siguientes:

Figura 5: Restricciones de las propiedades de la ontología

17


Como se puede apreciar en la tabla anterior, se ha detallado para cada una de las propiedades de cada clase, determinada en la sección 3.2, el tipo de valor requerido, la cardinalidad (utilizando los valores simple y múltiple), y las restricciones propias del tipo de dato symbol. 3.3.5.

Definición de los axiomas formales

La tabla de axiomas lógicos define las expresiones lógicas que, en la ontología, son siempre verdaderas. La definición de cada axioma incluye el nombre, la descripción de la regla en lenguaje natural, el concepto al que se refiere el axioma, la expresión lógica que describe formalmente el axioma utilizando FOPC (cálculo de predicados de primer orden) y la relación.

Figura 6: Axiomas de la ontología 3.3.6.

Creación de instancias

El último paso consiste en crear las instancias individuales de cada una de las clases. La definición de una instancia individual para una clase determinada exige el siguiente proceso:

18


Elegir una clase Crear una instancia individual para esa clase Llenar los valores de las propiedades. A continuación se lista como ejemplo los valores de las instancias para las clases: asignatura, objetivo, guía didáctica, orientación, bibliografía, enlace y capítulo con sus respectivas propiedades.

Figura 7: Algunas instancias de la ontología

3.4.

Implementación

Para la implementación de la ontología se eligió Protégé por su portabilidad entre diversas plataformas, su extenso uso y abundante documentación. Esta herramienta posee una interfaz gráfica que facilita el desarrollo de la ontología sin tener que preocuparse por la sintaxis del lenguaje de definición de ontologías escogido (OWL). La codificación en Protégé del modelo conceptual, desarrollado en el apartado anterior, se realizó de la siguiente manera:

19


3.4.1.

Definición de los conceptos

Para la especificación de los conceptos de la jerarquía utilizaremos la pestaña Classes de Protégé. Debemos especificar el nombre de la clase, la superclase (clase padre), y las clases disjuntas (ubicadas en el mismo nivel jerárquico).

Figura 8: Definición de clases en Protégé 3.4.2.

Definición de las relaciones entre clases

Definimos las relaciones entre clases utilizando la pestaña Object Properties de Protégé. Para cada relación se debe anotar: el nombre, el dominio y el rango; así:

Figura 9: Definición de relaciones en Protégé

20


3.4.3.

Definición de atributos

Al definir los atributos, cuya función es describir los conceptos, utilizamos la pestaña Data Properties. Para cada atributo se debe especificar: el nombre, tipo de valor, cardinalidad, clase a la que pertenece y valores por defecto.

Figura 10: Definición de atributos. 3.4.4.

Definición de axiomas

En la definición de axiomas se utilizan las relaciones y las clases existentes en la ontología cuantificándolas de forma universal y existencial.

Figura 11: Definición de axiomas de la clase Asignatura

21


La figura anterior muestra la definición de los axiomas que pertenecen a la clase asignatura: Uno existencial: Algunas asignaturas tienen una guía didáctica. Otro universal: Toda asignatura tiene objetivos. 3.4.5.

Declaración de instancias

Se definen las instancias pertenecientes a cada clase (o concepto) con sus respectivos atributos.

Figura 12: Declaración de instancias de la clase Asignatura La figura anterior muestra los tres paneles en los que se divide Protégé al realizar la creación de instancias de una clase: class browser, instance browser e individual editor. En el primero se escoge la clase de la cual se van a crear las instancias y, en el segundo se realiza el proceso de creación.

22


Figura 13: Atributos de la instancia de la clase Asignatura La figura anterior muestra la utilización del tercer panel (individual editor) en el que se muestran los atributos y relaciones de la instancia de la clase a los cuales se les debe asignar un valor determinado.

Figura 14: Diagrama de clases de la ontología OntoWikiUTPL Finalmente, la figura anterior muestra el diagrama de clases de OntoWikiUTPL, generado gracias al plugin TGViz de Protégé. 3.4.6.

Definición de consultas

A continuación se muestran los resultados de dos consultas realizadas sobre el dominio de la ontología; la primera busca todas las definiciones que contengan la palabra conjunto

23


y la segunda busca los ejemplos que se refieran al concepto conjunto.

Figura 15: Creación de la primera consulta La figura anterior ilustra el proceso de creación de la consulta que nos permitirá buscar la palabra conjunto dentro de todas las instancias de la clase definición utilizando para ello el atributo texto definido para esta clase.

Figura 16: Búsqueda de datos de la primera consulta El resultado de esta búsqueda se muestra en la figura anterior. El panel search results exhibe todas las instancias que continen la palabra conjunto.

3.5.

Validación de la ontología

Mediante el uso del razonador Pellet, Protégé permite validar algunos aspectos de la ontología, entre ellos: chequear la consistencia de la ontología, obtener automáticamente la clasificación taxonómica y computar los tipos inferidos.

24


Los resultados de la aplicación de estas pruebas de validación a la ontología OntoWikiUTPL se muestran a continuación:

Figura 17: Verificación de inconsistencia de clases Comprobación de la consistencia: permite constatar que no existen contradicciones en la ontología. La semántica de OWL define una especificación formal para la definición de la consistencia en una ontología empleando Pellet.

Figura 18: Verificación de la taxonomía de clases Validación de la taxonomía de clases: observa la relación entre cada clase y comprueba la jerarquía de clases completa.

Figura 19: Verificación de inferencia de clases

25


Verificación de inferencia de clases: encuentra las clases más específicas a las que pertenece una instancia; en otras palabras, determina la clase a la que pertenece cada uno de los individuos.

4. 4.1.

Evaluación de OntoWikiUTPL Evaluación de versiones de la ontología

La creación de una ontología es un proceso iterativo e incremental por lo tanto, es una actividad que se realiza de manera paralela a cada una de las fases de la metodología utilizada; esto permite detectar errores y documentar cada fase de desarrollo. Durante el proceso de desarrollo de OntoWikiUTPL se realizó un refinamiento de tres versiones. A continuación las detallamos: Cuadro 11: Primera versión de OntoWikiUTPL Criterio

Valor

Número de clases

25

Número de atributos

14

Número de relaciones

24

En esta primera versión, la dificultad mayor consistió en la diferenciación entre clase y atributo; a ello se debe el alto número de clases existentes. También se tomó en cuenta algunas relaciones entre conceptos triviales cuya depuración terminaría en la tercera versión de la ontología. Cuadro 12: Segunda versión de OntoWikiUTPL Criterio

Valor

Número de clases

21

Número de atributos

16

Número de relaciones

20

En la segunda versión se solucionó el problema de diferenciación entre clase y atributo, por lo que algunos conceptos considerados clases en la primera versión se transformaron en atributos en la segunda. La principal dificultad en esta versión consistió en la consideración de varias clases vacías, es decir que no tenían instancias asociadas; esto se solucionó en la tercera versión de la ontología.

26


Cuadro 13: Tercera versión (definitiva) de OntoWikiUTPL Criterio

Valor

Número de clases

19

Número de atributos

19

Número de relaciones

17

Para la tercera y definitiva versión se consolidaron el número de clases, atributos y relaciones, eliminado las clases no instanciadas, los atributos no utilizados y las relaciones no recorridas. Como resultado se logró obtener una ontología compacta y con un nivel de expresividad suficiente para los fines planteados. Cuadro 14: Análisis comparativo de las versiones de OntoWikiUTPL Criterio

Versión 1

Versión 2

Versión 3

Número de clases

25

21

19

Número de atributos

14

16

19

Número de relaciones

24

20

17

Número de axiomas

4.2. 4.2.1.

16

Evaluación a nivel estructural Métricas de cohesión

Para este tipo de evaluación se consideraron los criterios provisto en Gangemi et al. ya que permiten evaluar la ontología en función de su estructura y funcionalidad. En cuanto a la escala de evaluación, se tomo en consideración la proporcionada por Yao, Orme y Etzkorn (2005) así: Cuadro 15: Escala de valores para la evaluación Criterio

Valor

Bajo

0.00

Moderado

0.25

Promedio

0.50

Alto

0.75

Excelente

1.00

27


Los valores encontrados para OntoWikiUtpl son: Cuadro 16: Métricas de Cohesión de OntoWikiUTPL Criterio

Valor

Número de clases raíces (NCR)

14

Número de clases hoja (NCH)

17

Promedio de profundidad de herencia del árbol de nodos hoja (PPH-ANH)

0.86

Cuadro 17: Cálculo del PPH-ANH Concepto

Caminos por concepto

Nodos por camino

Asignatura

1

1

Bibliografía

1

1

Contenido

1

1

Enlace

1

1

Evaluación

2

2

Índice

1

1

Introducción

1

1

Objetivo

1

1

Orientación

1

1

Palabra clave

1

1

Solucionario

1

1

Glosario

1

1

Guía didáctica

1

1

Unidad de información

5

8

Total

19

22

Considerando los resultados obtenidos a nivel estructural, con un valor de 0.86 para el promedio de profundidad de herencia del árbol de nodos hoja, podemos afirmar que OntoWikiUTPL tiene un valor de cohesión alto muy adecuado para el propósito de la misma.

28


5.

Conclusiones y Líneas Futuras 1. No es necesario tener una vasta experiencia en el campo de la ingeniería del conocimiento para construir una ontología; lo realmente importante es el escogitamiento de una metodología comprensible que explicite el proceso de desarrollo y la colaboración de los expertos en el dominio de la ontología a desarrollarse. 2. La metodología propuesta permite un tratamiento ágil con un buen nivel de documentación además de facilitar la comprensión del proceso de construcción gracias al apoyo de esquemas y organizadores gráficos en cada una de las etapas del proceso. 3. Este proyecto permite la estructuración semántica de una guía didáctica de cualquier asignatura utilizando una wiki semántica.

Referencias [1] Abián, Miguel Ángel (2005). El futuro de la web: XML, RDF/RDFS, Ontologías y Web Semántica. [2] Antoniou, G. and Van Harmelen, F. (2004). A Semantic Web Primer. Cambridge, Massachusetts: The MIT Press. [3] Booch, G., Rumbaugh, J. and Jacobson, I. (1997). The Unified Modeling Language user guide. Addison-Wesley. [4] Breitman, K. K., Casanova, M. A. and Truszkowski, W. (2007). Semantic Web: Concepts, Technologies and Applications. Springer. [5] Fensel, D., Hendler, J., Lieberman, H. and Wahlster, W. (2005). Spinning the Semantic Web. Cambridge, Massachusetts: The MIT Press. [6] Grüninger, M., Fox, M. S. (1995). Methodology for the Design and Evaluation of Ontologies. Conf. AI Workshop on Basic Ontological Issues in Knowledge Sharing. [7] Hepp, M., De Leenheer, P., De Moor, A., and Sure, Y. (2008). Ontology Management: Semantic Web, Semantic Web Services, and Business Applications. Springer. [8] Noy, Natalya y McGuinness, Debora (2005). Desarrollo de Ontologías 101: Guía para crear la primera ontología. Universidad de Stanford, California. [9] Rumbaugh, J., Blaha, M., Premerlani, W., Eddy, F. and Lorensen, W. (1991). Object-Oriented modeling and design. Englewood Cliffs, New Jersey: Prentice Hall. [10] Uschold, M., Grüninger, M. (1996). Ontologies: Principles, Methods and Applications. Knowledge Eng. Rev., Vol. 11, Nº 2. [11] Hendler, J. (2001). Agents and the Semantic Web. IEEE Intelligent Systems, March/April 2001.

29


[12] Aguilar, F., Ruth, M. (2007). Orientaciones Generales para la elaboración de guías didácticas en la Modalidad de Educación a Distancia. UTPL, Loja. [13] Völkel, M., Oren, E. (2006). Personal Knowledge Management with Semantic Wikis. [14] Schaffert, S., Gruber, A., Westenhaler, R. (2005). A Semantic Wiki for Collaborative Knowledge Formation. In: Semantics 2005, Vienna, Austria. [15] Guarino, N. (1998). Formal ontology and information systems. In: Proceedings of the First International Conference on Formal Ontologies in Information Systems, FOIS’98, Trento, Italia. [16] Berners-Lee, T.; Lassila, O.; Hendler, J. (2001). The Semantic Web: A new form of Web content that is meaningful to computers will unleash a revolution of new possibilities. Scientific American, 284(5), pp. 34-43. [17] Protégé (2000). The Protégé Project: http://protege.stanford.edu [18] W3C Semantic Web: http://www.w3.org/2001/sw/ [19] CO-ODE: http://www.co-ode.org/ [20] OnToKnowledge Project: www.ontoknowledge.org/ [21] Dublin Core http://dublincore.org [22] Ontolingua: http://www-ksl-svc.stanford.edu:5915/doc/ ontology-server-projects.html [23] WebOnto: http://eldora.open.ac.uk:3000/Webonto [24] DAML Library: http://www.daml.org/ontologies/ [25] SchemaWeb: http://www.schemaWeb.info/ [26] OilEd: http://oiled.man.ac.uk

30


Turn static files into dynamic content formats.

Create a flipbook
Issuu converts static files into: digital portfolios, online yearbooks, online catalogs, digital photo albums and more. Sign up and create your flipbook.