Redes semánticas
-
Upload
edith-lopez -
Category
Documents
-
view
974 -
download
1
Transcript of Redes semánticas
= REPRESENTACIÓN DEL CONOCIMIENTO =
El conocimiento es importante y primordial entodas sus aplicaciones, su representaciónconstituye una de las prioridades de lainvestigación en IA.
El conocimiento puede ser representado como:
Imágenes mentales Palabras habladas o escritas en algún lenguaje Forma gráfica o en imágenes Cadenas de caracteres, etc.
En términos generales, se recomienda que elconocimiento esté representado de tal forma que:
Capture generalizaciones Pueda ser comprendido tanto por las personas queproporcionan información como por las que la procesan Pueda ser fácilmente modificado Pueda ser utilizado en diversas situaciones, aúncuando no sea totalmente exacto o completo Pueda ser utilizado para reducir el rango deposibilidades que usualmente debería considerarse parabuscar soluciones.
Dentro del estudio de IA, se consideran las representacionesescritas y sus correspondientes estructuras de datos utilizadaspara su almacenamiento en una computadora.
Redes semánticas
Representación gráfica de lasrelaciones entre los elementos de undominio.
Se compone de nodos y enlaces
• Los nodos representan a los elementosdel dominio (nombres o conceptos)
• Los enlaces se muestran como vectoresde un nodo a otro y expresan lasrelaciones entre éstos
Redes semánticas
Un enlace y dos nodos relacionadospueden representar
• Un predicado con dos argumentos (redeslógicas)
• Objetos, atributos y valores (redesconceptuales)
• Relaciones no binarias, como acciones
Ejemplo:
Ejemplo:
Paulina es una niña de 10 años que le gustajugar con su perrita Chary
es_una(Paulina,niña)tiene(Paulina,10-años) juega(Paulina,chary) es_una(chary,perrita)
Redes semánticas
El problema para utilizarlos comoredes lógicas es representar lacuantificación, la negación, laimplicación (reglas) y la disyunción
En las redes conceptuales elproblema es diferenciar los tipos derelaciones
Red semántica
Transporte
Avión Tren Coche
Motor
Ruedas
Volante
es-un-tipo-de
tiene-un
Redes semánticas
Tripleta OAV objeto-atributo-valor
Avión es-una-clase-de
Transporte
Tren es-una-clase-de
Transporte
Coche es-una-clase-de
Transporte
Coche tiene-un Motor
Coche tiene-un Volante
Coche tiene-un Ruedas
Tripletas OAV (Objeto, Atributo, Valor)
Un atributo puede tener más de un valor
Ejemplo: Juan toma clases de Algebra y Música.En Algebra obtuvo un 8 y en Música un 9
**** Representarlo gráficamente ****
oav(juan,algebra,8). oav(juan,algebra,9). oav(juan,algebra,7). oav(juan,musica,9).
main :-findall(X,oav(juan,algebra,X),L), write('Resultado: '), write(L).
Ejemplo representado en Prolog
Redes semánticas
Ventajas
No depende del orden
Se pueden relacionar varias redes semánticas entre sí
Red semántica
Raúl
InésPepe
Leticia
abuelo-de
Alicia
azules
padre-de
padre-de
esposo-de
esposa-de
sillaEl
cielo
Redes semánticas
Limitantes
No informa en qué contexto se encuentra
Se tiene independencia del contexto a riesgode perder el significado
Se corre el riesgo de perder información
Esquema Si __ tiene X Entonces tome Y
• Si una persona tiene fiebre entonces tome unaaspirina
• Si una persona tiene agua entonces tome unacoca cola
Sistemas de Marcos (frames)
Es una colección de atributos que definen el estado deun objeto y su relación con otros objetos
Estructura para representar objetos que son comunesa una situación dada
Son muy útiles para simular conocimiento de sentidocomún (área de muy difícil manejo en Computación)
Representa conocimiento relacionado con un temaconcreto que cuenta con mucho conocimientopredeterminado
Es análogo a un registro (estructura en C)
Marcos (frames)
Cada marco representa una clase deelementos de la misma manera que un nodoen una red semántica
Consiste en una serie de slots (ranuras) querepresentan una propiedad o atributo delelemento. El slot nos da un lugar paracolocar sistemáticamente un componente denuestras experiencias anteriores con relacióna las clases de elementos representados
Se les pueden dar valores y tipos default
Marcos (frames)
La información varía dependiendo del contexto Los fillers (rellenos) pueden ser valores, como
una propiedad en la ranura del nombre o unrango de valores, como la ranura de tipos
Se pueden tener fillers (rellenos) que seanresultado de un procedimiento adjunto (hacenllamadas a proc)• Es-necesario proc que se ejecutarán cuando se
necesita un valor de relleno pero no hay ningunopresente o el valor por default no es adecuado
• Si-añadido se ejecuta cuando se agrega un valor deuna ranura
• Si-es-eliminado se ejecuta cada vez que se elimina unvalor de una ranura. Generalmente cuando un valor esobsoleto
Esquema
Nombre Propiedad
especialización de una-clase-de-objeto
tipo (coche,bote, casa)
Si-añadido. Proc. AÑADE-PROPIEDAD
dueño default: gobierno
si-requerido. Proc ENCUENTRA-DUEÑO
ubicación (casa, trabajo, móvil)
Marcos (frames)
Los marcos (frames), también conocidos como«estructuras» o «unidades», [Minsky, 1974], sonuna forma de expresar las redes semánticastextualmente, pero además pueden incluirrepresentaciones de conocimiento procedimental.
En efecto, cada nodo correspondiente a un objetoo a una clase se convierte en un marco, queconsta de una primera línea con el nombre delmarco y una sucesión de líneas, llamadas«ranuras»(slots) con la sintaxis:
Marcos (frames)
<ranura> ::= <nombre de relación>: <objeto relacionado> | <nombre de relación>: <clase relacionada> | <nombre de propiedad>: <valor de la propiedad> | <nombre de propiedad>: (excep) <valor de la propiedad> | <nombre de propiedad>: if_needed <procedimiento> | <nombre de propiedad>: if_added <procedimiento> <nombre de relación> ::= es_un | tipo_de | <relación específica de la aplicación>
Ejemplo:
Las dos últimas líneas de la definición de«<ranura» son las que confieren a los sistemasbasados en marcos esa posibilidad de mezclarconocimiento procedimental con el declarativo.
«<if_needed» significa que si se necesita elvalor de la propiedad se active un procedimientopara calcularla;
«<if_added», que si en el curso del proceso serellena o se modifica ese valor se active unprocedimiento.
Ejemplo:
A esta adición de procedimientos a un marco se lellama adosamiento procedimental (proceduralattachment).
También es fácil introducir en la representaciónmetaconocimiento, es decir, conocimiento sobre elmarco mismo. Como en las tres primeras ranurasde este ejemplo:
Ejemplo:
marco_avestruz
descripción: caracterización básica de una avestruz autor : Edith fecha : 19-mar-12
tipo_de : ave patas : largas vuela : (exc) no_puede
Ejemplo:
Ejemplo Marco (Frame) en Prolog
Un frame es un conjunto de slots.
Cada slot puede ser a su vez otro frame, undato, una imagen, una subrutina, una regla, etc.
Ejemplo: Juan está en 8 semestre de IC de laFacultad de Ingeniería, cursa IA y Redes
frame(1,slot(nombre,juan)). frame(1,slot(semestre,8)). frame(1,slot(carrera,ic)). frame(1,slot(escuela,uat)). frame(1,slot(materia,ia)). frame(1,slot(materia,redes)). frame(1,slot(aprobado,R)) :- aprueba2(juan,R).
frame(2,slot(nombre,ana)). aprueba2(X,si) :- aprueba(X), !. aprueba2(_,no). % ?- frame(1,slot(R,X)), number(X).
Ejemplo Marco (Frame) en Prolog
Scripts (guiones)
Es una especialización del concepto generalde marco
Es una estructura que se usa para guardarprototipos de secuencias de sucesos en uncontexto en particular
Scripts (guiones)
Se pueden usar componentes como:
• Condiciones de entrada, condiciones quedeben existir para que se aplique el guión
• Resultados del guión. Condiciones queserán verdaderas después de los eventos delguión
• Utilería. Ranuras que presentan objetosinvolucrado en el guión
• Papeles. Ranuras que representan agentesque realizan sucesos en el guión
• Escenas Secuencias específicas de eventos
Scripts (guiones)
Razonamiento por guiones:
Los guiones se activan por coincidencia denombre, precondiciones, papeles, etc.
Objetivo: inferir, por medio de razonamientopor defecto, conocimiento que no ha sidodado de forma explícita
Scripts (guiones)Ejemplo:
• NOMBRE: Cine
• PAPELES: cinéfilo, taquillero, portero, acomodador
• CONDICIONES DE ENTRADA: cinéfilo desea ver película
• PROPIEDADES: película, butaca, dinero, entrada
• ESCENAS:
-Solicitar entradaCinéfilo MTRANS “deme butaca” a taquillero
Cinéfilo ATRANS dinero a taquillero
Taquillero ATRANS entrada a cinéfilo
-Entrar en salaCinéfilo ATRANS entrada a portero
Portero ATRANS entrada a cinéfilo
Cinéfilo PTRANS cinéfilo a sala
-Acomodarse ...................
-Ver película ..................
-Salir de sala ..................
• RESULTADOS:-Cinéfilo ha visto la película
-Taquillero tiene más dinero
-Cinéfilo tiene menos dinero