UNIVERSIDAD FERMIN TORO VICERRECTORADO ACADEMICO FACULTAD DE INGENIERIA ESCUELA DE COMPUTACION REDES SEMANTICAS CABUDARE, AGOSTO 2012
UNIVERSIDAD FERMIN TORO VICERRECTORADO ACADEMICO
FACULTAD DE INGENIERIA ESCUELA DE COMPUTACION
REDES SEMANTICAS
CABUDARE, AGOSTO 2012
UNIVERSIDAD FERMIN TORO VICERRECTORADO ACADEMICO
FACULTAD DE INGENIERIA ESCUELA DE COMPUTACION
REDES SEMANTICAS
CABUDARE, AGOSTO 2012
Autores: Grupo n° 2 Asignatura: Logica Computaciom Profesor: Hildegard Carradini
RED SEMÁNTICA Historia
Los responsables de los primeros esquemas de representación
formalizados fueron Quillian (1968) y Shapiro&Woddmansee (1971). Los
esquemas de redes semánticas tienen una fundamentación psicológica muy
sólida, por lo que se han realizado numerosos esfuerzos por llevar a cabo
implementaciones importantes basadas en ellas.
Una red semántica o esquema de representación en Red es una
forma de representación de conocimiento lingüístico en la que los conceptos
y sus interrelaciones se representan mediante un grafo. En caso de que no
existan ciclos, estas redes pueden ser visualizadas como árboles. Las redes
semánticas son usadas, entre otras cosas, para representar mapas
conceptuales y mentales.
Un ejemplo de red semántica.
En un grafo o red semántica los elementos semánticos se representan
por nodos. Dos elementos semánticos entre los que se admite se da la
relación semántica que representa la red, estarán unidos mediante una línea,
flecha o enlace o arista. Cierto tipo de relaciones no simétricas requieren
grafos dirigidos que usan flechas en lugar de líneas.
Definición
Existen diversos tipos de relaciones semánticas como la hiponimia,
hiperonimia, la meronimia, etc. Dado un conjunto de conceptos, elementos
semánticos o términos relacionados semánticamente mediante alguna
relación semántica, una red semántica representa estas relaciones en forma
de grafo. Explícitamente, dado un conjunto de términos {t1, t2,..., tn} y cierta
relación semántica simétrica entre ellos se construye un grafo G = (V,A)
cumpliendo las siguientes condiciones:
1. El conjunto V es el conjunto de vértices o nodos del grafo. Este
conjunto estará formado por n elementos (tantos vértices como términos
relacionables). A cada uno de los vértices del grafo representará uno de los
términos, por tanto los vértices del grafo se llamarán: t1, t2,..., tn.
2. El conjunto A es el conjunto de aristas o líneas del grafo. Dados
dos vértices (términos) del grafo ti y tj existirá una línea aij que une los
vértices ti y tj si y sólo si los términos ti y tj están relacionados.
Si la relación no es simétrica, entonces se usan grafos dirigidos para
representar la relación.
Las redes semánticas han sido muy utilizadas en Inteligencia Artificial
para representar el conocimiento y por tanto ha existido una gran
diversificación de técnicas. Los elementos básicos que encontramos en
todos los esquemas de redes son:
1. Estructuras de datos en nodos, que representan conceptos,
unidas por arcos que representan las relaciones entre los conceptos.
2. Un conjunto de procedimientos de inferencia que operan sobre
las estructuras de datos.
Básicamente, podemos distinguir tres categorías de redes semánticas:
1. Redes IS-A, en las que los enlaces entre nodos están
etiquetados.
2. Gráficos conceptuales: en los que existen dos tipos de nodos:
de conceptos y de relaciones.
3. Redes de marcos: en los que los puntos de unión de los
enlaces son parte de la etiqueta del nodo.
En general, cuando se habla de "redes semánticas" se suele hacer
referencia a uno de estos esquemas, normalmente a las redes IS-A o a los
esquemas basados en marcos, que comparten ciertas características
fundamentales. De entre estas características compartidas destacamos la
herencia por defecto (default inheritance). En una red semántica, los
conceptos (o estructuras, clases, marcos, dependiendo del esquema
concreto) están organizados en una red en la que existe un nodo superior
(top: T) al que se le asigna uno o varios nodos hijos, que a su vez tienen
otros conceptos hijos y así sucesivamente hasta que se alcanza el final
(bottom: ), cuyos nodos ya no son conceptos sino instancias.
La psicología cognitiva afirma:
La representación y recuperación del conocimiento se realiza a partir
de sus relaciones. Las redes semánticas intentan trasladar esa afirmación a
unformalismo.
Una red semántica será un grafo donde: Los nodos representarán conceptos.
Los arcos (dirigidos) representarán relaciones entre conceptos
Las redes semánticas son grafos orientados que proporcionan una
representación declarativa de objetos, propiedades y relaciones. Los nodos
se utilizan para representar objetos o propiedades. Los arcos representan
relaciones entre nodos del tipo, es_un, es_parte_de, etc. El mecanismo de
inferencia básico en las redes semánticas es la herencia de propiedades. La
figura representa esquemáticamente un ejemplo de red semántica:
Redes semánticas Están basadas en la idea de que los objetos o los conceptos pueden
ser unidos por alguna relación.
Estas relaciones se representan usando una liga que conecte dos
conceptos.
Los nodos y las ligas pueden ser cualquier cosa, dependiendo de la
situación a modelar.
Las redes semánticas fueron originalmente desarrolladas para
representar el significado o semántica de oraciones en inglés, en términos de
objetos y relaciones.
Actualmente, se utiliza el término redes asociativas (una forma más
amplia) ya que no sólo se usa para representar relaciones semánticas, sino
también para representar asociaciones físicas o causales entre varios
conceptos u objetos.
Herencia en redes semánticas
Un nodo hereda las propiedades de los conceptos “más altos en
jerarquía” através de relaciones del tipo subclaseDe y tipoDe. Se puede
utilizar como mecanismo de razonamiento.
Tipos de Redes: Redes IS-A Es una jerarquía taxonómica cuya espina dorsal está constituida por
un sistema de enlaces de herencia entre los objetos o conceptos de
representación, conocidos como nodos Grafos conceptuales: Los arcos no
están etiquetados, y los nodos son de dos tipos:
Nodos de concepto, que pueden representar tanto una entidad
como un estado o proceso.
Nodos de relación, que indican cómo se relacionan los nodos
de concepto.
Ejemplo de red IS-A
Grafos conceptuales Los grafos conceptuales (conceptual graphs), propuestos por Sowa
(1984), se diferencian de las redes IS-A en que los arcos no están
etiquetados, y los nodos son de dos tipos:
1. Nodos de concepto, que pueden representar tanto una entidad
como un estado o proceso.
2. Nodos de relación, que indican cómo se relacionan los nodos
de concepto.
Por tanto, son los nodos de relación los que hacen el papel de enlaces
entre las entidades.
Existen dos notaciones para los grafos conceptuales, la forma lineal
(textual) y los diagramas o displayform, que presentan tres tipos de
elementos notacionales:
1. Rectángulos, que marcan los nodos de concepto,
2. Círculos, que marcan los nodos de relación,
3. Flechas direccionadas, que marcan los arcos.
[CONCEPT1] (REL.) [CONCEPT2
Notaciones de grafos conceptuales
Esquemas de marcos Los marcos (frames), también conocidos como «estructuras» o
«unidades», introducidos por Minsky (1974), son una forma de expresar las
redes semánticas textualmente, pero además pueden incluir
representaciones de conocimiento procedimental. En efecto, cada nodo
correspondiente a un objeto o a una clase se convierte en un marco, que
consta de una primera línea con el nombre del marco y una sucesión de
líneas, llamadas «ranuras» (slots) con la sintaxis:
<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 |
<relacion específica de la aplicación>
Las dos últimas líneas de la definición de «<ranura» son las que
confieren a los sistemas basados en marcos esa posibilidad de mezclar
conocimiento procedimental con el declarativo. «<if_needed» significa que si
se necesita el valor de la propiedad se active un procedimiento para
calcularla; «<if_added» , que si en el curso del proceso se rellena o se
modifica ese valor se active un procedimiento.
A esta adición de procedimientos a un marco se le llama
adosamiento procedimental (procedural attachment).
La fundamentación psicológica de los marcos es parecida a la de los
scripts de Schank: cuando nos enfrentamos con una situación determinada,
intentamos ajustarla a otra parecida de la que ya tenemos experiencia previa
y esperamos que aparezcan un número de elementos comunes y se
sucedan algunas situaciones. La base de la teoría la conforman, por tanto,
las situaciones estereotipadas.
Informalmente, un marco es una estructura de datos compleja que
representa una situación estereotipada, por ejemplo hacer una visita a un
enfermo o acudir a una fiesta de cumpleaños. Cada marco posee un número
de casillas (slots) donde se almacena la información respecto a su uso y a lo
que se espera que ocurra a continuación. Al igual que las redes semánticas,
podemos concebir un marco como una red de nodos y relaciones entre
nodos (arcos). Una base de conocimiento basada en marcos es una
colección de marcos organizados jerárquicamente, según un número de
criterios estrictos y otros principios más o menos imprecisos tales como el de
similitud entre marcos. A nivel práctico, podemos considerar los marcos
como una red semántica con un número de posibilidades mucho mayor,
entre las que destacan especialmente, la capacidad de activación de
procesos (triggering) y de herencia no-monotónica mediante sobrecontrol
(overriding).
Formalmente, un marcoM es una lista de atributos (slots) y valores
(S, V). El valor V de un slot S puede ser:
Un valor simple, cuyo tipo se halla determinado por el slot
mismo, por una función que devuelve un valor de ese tipo, o por un puntero
al valor de otro slot de la jerarquía
Una lista de atributos:valores, donde los atributos son funciones
booleanas y los valores pueden ser funciones que devuelven valores del tipo
del valor del slot, o constantes del tipo del valor del slot.
Como es evidente, la representación de conocimiento basada en
marcos debe mucho a las redes semánticas. Sin embargo, los esquemas de
representación basados en marcos insisten en una organización jerárquica
de éstos, mientras que las redes semánticas no requieren tal organización.
La estructura de nodos de los marcos es también mucho más rica que la de
las redes semánticas, conteniendo sistemas de triggering de procedimientos.
Esto ocurre cuando en lugar de llenar un slot con un valor determinado, se
indica un procedimiento que será el encargado de devolver un determinado
valor.
Herencia y reconocimiento de patrones en marcos
Ésta es la situación conflictiva típica en la que algún proceso interno
posee una descripción parcial de una entidad desconocida y además
necesita determinar el valor de una o varias propiedades de esta entidad.
Primero llevaría a cabo el reconocimiento parcial hasta determinar al menos
la clase a la que la entidad pertenece, a continuación atribuiría las
propiedades de sus clases predecesoras en la jerarquía y volvería a intentar
el reconocimiento individual hasta llegar a su ubicación y determinación de
propiedades heredadas y locales completa.
Beneficios de la red Independencia de datos Sacar los datos de las aplicaciones para que puedan moverse entre
las aplicaciones de cierta área de competencia. Taxonomías y tesauros.
Generar una estructura o jerarquía para organizar los temas con el fin de que
las agrupaciones de términos faciliten su búsqueda.
Búsqueda, consulta y recuperación eficiente de la información
El hecho de que estas actividades sean eficientes es algo realmente
esencial para que el ser humano pueda tener acceso al conocimiento.
Modelos conceptuales y ontologías Representar un área de conocimiento a través de términos, relaciones
entre términos y atributos
Frames Son redes semánticas estructuradas, una colección de atributos y la
descripción de suscaracterísticas. Las relaciones conectan los frames entre
sí, que a su vez una estructura que permitedescribir su semántica.
El método Distsem
El Método permite extraer la constitución de una red semántica en
base a lasdistancias entre significados, constituir su matriz semántica,
describir, analizar yvisualizar su relación y distribución en 2 dimensiones y
comparar distintas matricesentre sí y evaluar su proximidad con la
configuración propuesta como correcta.
Desventajas de las redessemánticas
No existe una interpretación normalizada para el conocimiento
expresado por la red. La interpretación de la red depende
exclusivamente de los programas que manipulan la misma.
La dificultad de interpretación a menudo puede derivar eninferencias
inválidas del conocimiento contenido en la red.
La exploración de una red asociativa puede derivar en unaexplosión
combinatoria del número de relaciones que deben serexaminadas
para comprobar una relación, sobre todo si larespuesta a una
consulta es negativa.
No hay manera de insertar alguna regla heurística paraexplorar la red
de manera eficiente.
Ventajas de las redes semánticas
Permiten la declaración de importantesasociaciones en forma
explícita.
Debido a que los nodos relacionados estándirectamente conectados,
y no se expresanlas relaciones en una gran base de datos, eltiempo
que toma el proceso de búsquedapor hechos particulares puede
sersignificativamente reducido.
Las redes de significados, también llamadas redes semánticas, son
las concepciones que las personas hacen de cualquier objeto de su
entorno, de acuerdo a Figueroa (1976), mediante el conocimiento de
ellas se vuelve factible cnocer la grama de significados, expresados a
través del lenguaje cotidiano, que tiene todo objeto social, conocido.
Representación Relaciones entre clases:
es_un(persona,inicio).
es_un(alumno,persona).
es_un(profesor,persona).
Relaciones entre instancias y clases:
inst(juan,alumno).
inst(luis,alumno).
inst(pablo,profesor).
inst(pedro,profesor).
Propiedades de clases:
prop(persona,ciudad,sevilla).
prop(alumno,estado,soltero).
prop(profesor,estado,casado).
Propiedades de instancias:
prop(juan,edad,19).
prop(luis,edad,24).
prop(luis,estado,casado).
prop(pablo,edad,44).
prop(pablo,ciudad,mairena).
prop(pedro,edad,47).
Razonamiento Sesión
?- propiedades_rs(luis,P).
P = [ciudad:sevilla, edad:24, estado:casado]
Definición propiedades_rs(Inst,Props) :-
props(Inst,P_Especificas),
inst(Inst,Clase),
herencia_rs(Clase,P_Especificas,Props).
props(X,Props) :-
findall(Atr:Valor,prop(X,Atr,Valor),Props).
herencia_rs(inicio,Props,Props).
herencia_rs(Clase,P_Actuales,Props) :-
props(Clase,P_Generales),
actualiza(P_Actuales,P_Generales,N_P_Actuales),
es_un(Clase,Super_clase),
herencia_rs(Super_clase,N_P_Actuales,Props).
actualiza(Props,[],Props).
actualiza(P_Actuales,[Atr:_Valor|P_Generales],Props) :-
member(Atr:_V,P_Actuales),
actualiza(P_Actuales,P_Generales,Props).
actualiza(P_Actuales,[Atr:Valor|P_Generales],
[Atr:Valor|Props]) :-
not(member(Atr:_V,P_Actuales)),
actualiza(P_Actuales,P_Generales,Props).
Elementos de la representación Las instancias se representan por constantes Las clases se representan por constantes
Las relaciones clase–superclase se representan por hechos de la
forma es un(<clase>,<super-clase>)
Las relaciones instancia–clases se representan por hechos de la
forma inst(<instancia>,<clase>)
Cada propiedad se representa por un predicado binario de la
formaprop(<instancia o clase>,<propiedad>,valor>)
La constante inicio representa la clase inicial de la jerarquía
Las propiedades de una instancia es una lista de paresatributo–valor
Comentarios Independencia del orden de las clausulas en las propiedades
especıficas
Razonamiento sobre clases, p.e.
“¿Cuáles son las subclases de persona”
?- es_un(X,persona).
X = alumno;
X = profesor;
No
Especificación declarativa de la estrategia de herencia
Posibilidad de implementar estrategias de herenciamúltiple
Cognición y redes semánticas Cognición, es un término que describe los procesos psicológicos,
desarrollados en obtención del uso, almacenamiento y modificación del
conocimiento, acerca del mundo y de las personas.
Modelos cognitivo
Ejemplos de redes semánticas