1
Historia
Las categorías son los bloques de construcción primarios para cualquier esquema de representación del conocimiento.
Las redes semánticas proporcionan:
una ayuda gráfica para visualizar una base de conocimiento
algoritmos eficientes para inferir propiedades de un objeto en base a su pertenencia a una categoría.
Charles S. Peirce (1909) desarrolló los grafos existenciales como el primer formalismo de redes semánticas usando lógica moderna.
2
Historia
Ross Quillian (1961) inició el trabajo con las redes semánticas dentro del campo de la IA.
Un artículo influyente de Marvin Minsky (1975) presentó una nueva versión de las redes semánticas: los marcos.
Un marco era una representación de un objeto o categoría o concepto, con atributos y relaciones con otros objetos o categorías o conceptos.
El artículo fue criticado por ser un conjunto de ideas recicladas desarrolladas en el campo de la programación orientada a objetos, como la herencia y el uso de valores por defecto.
3
Historia
En los años 90, en el campo de la IA, se adoptó el termino ontología para los esquemas de representación del conocimiento basados en redes semánticas o marcos.
Una ontología es una especificación formal y explícita de una conceptualización compartida, que puede ser leída por un ordenador (Gruber, 1993; Borst, 1997; Studer et al., 1998; Ceccaroni, 2001).
4
Redes semánticas
Una red semántica es un grafo donde:
los nodos representan conceptos
los arcos (dirigidos) representan relaciones entre conceptos
Mecanismos de razonamiento específicos permiten responder a preguntas sobre la representación:
¿Están relacionados dos conceptos?
¿Que relaciona dos conceptos?
¿Cuál es el concepto mas cercano que relaciona dos conceptos?
5
Marcos
A los marcos se asocia normalmente una parte procedimental.
Las relaciones y atributos, y no solo las categorías, tienen una estructura que permite describir su semántica.
Ejemplo de marco:
Arteria
superclases: Vaso sanguíneo
pared: Muscular
forma:
6
Marcos
Un marco está generalmente dividido en:
una parte declarativa (atributos o slots)
una procedimental (métodos o demons)
La parte procedimental permite obtener más información o hacer cálculos sobre sus características o las relaciones que pueda tener con otros marcos.
La descripción de los atributos también está estructurada: un atributo puede tener propiedades (facets).
En el caso más general se pueden tener taxonomías de atributos.
7
Marcos
Las relaciones poseen una descripción formal que establece su semántica y su funcionamiento.
Dividimos las relaciones en dos simples clases:
taxonómicas:
enlace ES-UN (subclase/clase)
enlace INSTANCIA-DE (instancia/clase)
no taxonómicas
8
Marcos
Los atributos poseen un conjunto de propiedades que permiten establecer su semántica:
dominio
rango
cardinalidad
valor por defecto
métodos
…
Permiten definir procedimientos de manera que se realicen cálculos bajo ciertos eventos (a través de los métodos).
9
Marcos
Los métodos pueden ser:
if-needed (se activan al consultar el atributo);
if-added (se activan al asignar valor al atributo);
if-removed (se activan al borrar el valor del atributo);
if- modified (se activan al modificar el valor del atributo).
Se puede declarar como el mecanismo de herencia afecta a los atributos.
9
10
Marcos: atributos
Etiqueta
nombre:
valor:
dominio: lista de marcos donde puede aparecer
rango (tipo de valores que admite): lista, clase
cardinalidad máxima:
cardinalidad mínima (si es = 1, el atributo es obligatorio):
valor-por-defecto (a usar si no hay valor):
función para calcular valor:
métodos (funciones con activación condicionada):
condiciones de herencia (atributo + valor): sí/no (por defecto: relaciones taxonómicas = sí; otras = no)
Para acceder al valor de un atributo se usa la sintaxis:
< nombre marco>.< nombre atributo> (valor o lista de valores)
11
Marcos: ejemplo de atributo
owl:edad
nombre: Edad
valor:
dominio (lista de marcos donde puede aparecer): clase Persona
rango (tipo de valores que admite): entero [0..140]; joven/viejo
cardinalidad máxima: 1
cardinalidad mínima (si es = 1, el atributo es obligatorio): 0
valor-por-defecto (a usar si no hay valor):
función para calcular valor:
métodos (funciones con activación condicionada):
condiciones de herencia (atributo + valor): sí/no (por defecto: relaciones taxonómicas = sí; otras = no)
Para acceder al valor del atributo se usa la sintaxis:
Persona.edad
11
12
Marcos: métodos
Son acciones o funciones que permiten obtener información sobre el mismo marco u otros marcos.
Los métodos pueden invocarse desde marcos abstractos (clases) o marcos concretos (instancias).
Pueden ser heredables (se permite invocarlos en los descendientes) o no heredables (exclusivos del marco donde están definidos).
A veces, pueden ser invocados con parámetros.
Ejemplo de método if-modified:
Si Deunan.edad tenía valor 28 y se modifica a 32, se activa un método que cambia el valor del atributo Deunan.ganas-de-casarse de 1 a 5.
12
Página siguiente ![]() |