martes, 14 de julio de 2009

Sistemas Basados en el Conocimiento

Ontología

Una ontología es una especificación formal explícita de una conceptualización compartida, éste término además se origina en el campo de la filosofía y la epistemología (Gruber, 1993).

Como ciencia, la Ontología se la define como una rama de la metafísica que se ocupa del estudio de la naturaleza de la existencia, de los seres y de sus propiedades transcendentales; sin embargo en filosofía se la considera como una explicación sistemática de la Existencia.

Si nos referimos a la definición en un diccionario, no encontramos que el término ontología se identifica como "la rama de la metafísica que estudia la naturaleza de la existencia".

A partir de este significado, el término ontología es usado en el ámbito de la organizacion del conocimiento para referirse a un conjunto de conceptos organizados jerárquicamente, representados en algún sistema informático cuya utilidad es la de servir de soporte a diversas aplicaciones que requieren de conocimiento específico sobre la materia que la ontología representa.

Cuando hablamos de ontologías como "sistemas de representación de conocimiento" debemos especificar a qué tipo de sistemas nos referimos. En realidad, las ontologías se están empleando en todo tipo de aplicaciones informáticas en las que sea necesario definir concretamente el conjunto de entidades relevantes en el campo de aplicación determinado, así como las interacciones entre las mismas.

Objetivos de la Ontologí
a

Algunos de los objetivos que se tienen para desarrollar ontologías son los siguientes:
  • Compartir entendimiento común de la estructura del conocimiento, entre personas o agentes de software.- La ontología pone a disposición de los miembros de una comunidad los términos y conceptos del dominio de interés, lo cual permitirá a las personas o agentes de software extraer y agregar información según sus necesidades.
  • Permitir reutilizar el dominio de conocimiento.- Es posible que muchos dominios hagan uso de un conocimiento específico, si este conocimiento está constituido en una ontología podrá ser reutilizado por aquellos individuos que la necesiten sin necesidad de desarrollar una ontología propia.
  • Permitir separar conocimiento de dominio del conocimiento operacional.- Una ontología expresa el conocimiento del dominio de manera general de forma tal que pueda ser utilizado y manipulado por diversas técnicas o algoritmos.
  • Analizar el conocimiento del dominio.- Específicamente en lo que se refiere al estudio de los términos y relaciones que lo configuran, ya sea formalmente o no. (Ramos, 2007).
Componentes de una ontología

Los componentes de una ontología varían de acuerdo al dominio de interés y a las necesidades de los desarrolladores. Por lo general entre los componentes se encuentran los siguientes (Ramos, 2007):
  • Clases: Las clases son la base de la descripción del conocimiento en las ontologías ya que describen los conceptos (ideas básicas que se intentan formalizar) del dominio. Las clases usualmente se organizan en taxonomías a las que por lo general se les aplican mecanismos de herencia.
  • Relaciones: Representan las interacciones entre los conceptos del dominio. Las ontologías por lo general contienen relaciones binarias; el primer argumento de la relación se conoce como el dominio y el segundo como el rango.
  • Funciones: Son un tipo concreto de relación donde se identifica un elemento mediante el cálculo de una función que considera varios elementos de una ontología.
  • Instancias: Representan objetos determinados de un concepto.
  • Taxonomía: Conjunto de conceptos organizados jerárquicamente. Las taxonomías definen las relaciones entre los conceptos pero no los atributos de éstos.
  • Axiomas: Se usan para modelar sentencias que son siempre ciertas. Los axiomas permiten, junto con la herencia de conceptos, inferir conocimiento que no esté indicado explícitamente en la taxonomía de conceptos. Los axiomas definidos en una ontología pueden ser estructurales o no estructurales: un axioma estructural establece condiciones relacionadas con la jerarquía de la ontología, conceptos y atributos definidos; un axioma no estructural establece relaciones entre atributos de un concepto y son específicos de un dominio. Los axiomas se utilizan también para verificar la consistencia de la ontología.
  • Propiedades (Slots): Son las características o atributos que describen a los conceptos. Las especificaciones, rangos y restricciones sobre los valores de las propiedades se denominan facets. Para un concepto dado, las propiedades y las restricciones sobre éstos son heredadas por las subclases y las instancias de la clase (Goméz, 1994).

Ventajas

El uso de ontologías para la recuperación de la información tiene ciertas ventajas sobre los métodos de acceso simples basados en palabras clave.

Estas ventajas son:

  • Una ontología suministra un vocabulario compartido común para expresar información sobre el contenido de los documentos.
  • Las ontologías incluyen axiomas para especificar relaciones entre conceptos.
  • Facilidad de uso que ofrece, frente a otros sistemas que requieren un mayor entrenamiento por parte de los compiladores de la ontología.
  • Posibilidad de crear un recurso independiente y autónomo.
  • Riqueza de la información que permite representar.
  • Trazar una estructura conceptual tan detallada y completa como sea necesario.

Construcción de la ontología utilizando el método Methontology

La metodologia Menthontology es una metodología creada en el Laboratorio de Inteligencia Artificial de la Universidad Técnica de Madrid. La creación de la ontología puede empezar desde cero o en base a la reutilización de otras existentes. Methontology incluye la identificación del proceso de desarrollo de la ontología (calendario, control, aseguramiento de calidad, adquisición de conocimiento), un ciclo de vida basado en la evolución de prototipos, para la cual sigue los pasos definidos en el estándar IEEE 1074 de desarrollo de software. Sus pasos principales son:

  • Especificación.- Definir el alcance y granularidad de la ontología.
  • Conceptualización.- Permite organizar y estructurar el conocimiento adquirido mediante tablas, lenguaje UML, jerarquías etc.
  • Implementación.- Representa la formalización de la ontología, es decir pasar la conceptualización de la ontología a un lenguaje como RDF, OWL, etc.
  • Evaluación.- Comprobar el funcionamiento de la ontología(Rojas, et al., 2009).
EJEMPLO DE ONTOLOGIA

El tema de la ontología a construir es “INFORMÁTICA”, en la que se pretende dar a conocer su concepto de manera general.
Siguiendo los pasos de la metodologia Methontology tenemos:

Especificación

Con la ontología de “INFORMÁTICA” se busca obtener información cuando se realiza una consulta sobre un tema, respondiendo a las siguientes preguntas:
  • ¿Qué es informática?
  • ¿En qué materias se aplica la informática?
  • ¿Qué tipos de computadoras existen?
  • ¿Qué tipos de Sistemas Operativos existen en la actualidad?
  • ¿Cuáles son las marcas de las portátiles?
  • ¿Cuáles son las marcas de los servidores?
  • ¿De qué se compone una computadora?
  • ¿Qué tipo de hardware tiene un computador?
  • ¿Qué tipo de software posee un computador?


Conceptualización

El enlace de la conceptualizacion la puedes encontrar aqui
Este ejemplo esta hecho en CmapTools, (Herramienta para modelar el conocimiento)

Mapa conceptual Versión 1.0

Descargar archivo cmapV1.0

Formalización Versión 2.0


Descargar archivo cmapV2.0

Formalización Versión 3.0



Descargar archivo cmapV3.0

Implementación

Para la implementación se han realizado una descripción breve de las tripletas utilizando lenguaje RDF-OWL, las mismas que se describen a continuación exaltando las más importantes dentro de la ontología.

ONTOLOGIA EN PROTEGE

Para poder ejecutar esta ontología en protege: Protege_informatica.owl

TRIPLETAS RDF-OWL

Para poder realizar las tripletas se ha exportado la ontología a un archivo XML_Informatica.xml para despues validarlo en W3C (World Wide WEB Consortium).


Ontología en Protégé

Para poder ejecutar la ongologia en protégé la podemos encontrar aqui: protege_informatica.owl

FUENTE BIBLIOGRÁFICA