La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

Representaciones Estructuradas Sesión 06 Eduardo Morales L. Enrique Sucar Sesión 06 Eduardo Morales L. Enrique Sucar Fundamentos de Inteligencia Artificial.

Presentaciones similares


Presentación del tema: "Representaciones Estructuradas Sesión 06 Eduardo Morales L. Enrique Sucar Sesión 06 Eduardo Morales L. Enrique Sucar Fundamentos de Inteligencia Artificial."— Transcripción de la presentación:

1 Representaciones Estructuradas Sesión 06 Eduardo Morales L. Enrique Sucar Sesión 06 Eduardo Morales L. Enrique Sucar Fundamentos de Inteligencia Artificial Fundamentos de Inteligencia Artificial

2 Las limitaciones de las representaciones en base a reglas, en particular, la necesidad de representar aspectos como estructura y relaciones, llevaron a otros esquemas que en general englobamos como representaciones estructuradas. Introducción

3 Dentro de este tipo de representaciones las dos más significativas, son: Redes Semánticas Prototipos o Marcos ( frames ) Redes Semánticas Prototipos o Marcos ( frames ) Introducción

4 Estas representaciones se basan en el uso de grafos, es decir, en representaciones en base a nodos y sus relaciones, por lo que en principio veremos algo de la teoría de grafos, su notación y conceptos básicos. Introducción

5 Grafos Un grafo consiste de un conjunto finito de vértices o nodos ( V ), y un conjunto de relaciones entre dichos nodos ( E ). E representa qué nodos son adyacentes, es decir si ( v,w ) pertenece a E, entonces v y w son adyacentes y esto se representa con un arco entre dichos nodos. Un grafo consiste de un conjunto finito de vértices o nodos ( V ), y un conjunto de relaciones entre dichos nodos ( E ). E representa qué nodos son adyacentes, es decir si ( v,w ) pertenece a E, entonces v y w son adyacentes y esto se representa con un arco entre dichos nodos.

6

7 Grafos Dirigidos Si las relaciones tienen una dirección, esto es, el orden en los pares ( v,w ) es importante entonces G es un grafo dirigido. Si restringimos a que no existan ciclos, se denomina grafo acíclico dirigido o grafo simple (DAG). Si las relaciones tienen una dirección, esto es, el orden en los pares ( v,w ) es importante entonces G es un grafo dirigido. Si restringimos a que no existan ciclos, se denomina grafo acíclico dirigido o grafo simple (DAG).

8

9 Dada una relación dirigida (v,w): v w, v es el padre de w y w es el hijo de v. Si existe una trayectoria de v a w, entonces w es un descendiente de v, y v es un ascendiente de w. Si v no tiene padres es un nodo raíz, si w no tiene hijos es un nodo hoja.   Relaciones

10 Árboles y Redes G es un árbol si es un grafo dirigido conectado en donde todos los nodos tienen un padre, excepto un nodo (raíz) que no tiene ascendientes. Un conjunto de árboles es un bosque.

11 Una red es un grafo con pesos, es decir, una red con etiquetas numéricas o pesos asociadas a los arcos y/o nodos. Una red es un grafo con pesos, es decir, una red con etiquetas numéricas o pesos asociadas a los arcos y/o nodos. nodos/vértices: normalmente con etiquetas arcos/ligas: pueden o no tener etiquetas (necesarias si existe más de un tipo de arco) nodos/vértices: normalmente con etiquetas arcos/ligas: pueden o no tener etiquetas (necesarias si existe más de un tipo de arco)

12 Representación con grafos Representación de relaciones temporales y espaciales. Representación de relaciones causales (redes de inferencia). Representación de relaciones probabilísticas (redes bayesianas). Representación de relaciones temporales y espaciales. Representación de relaciones causales (redes de inferencia). Representación de relaciones probabilísticas (redes bayesianas).

13 Representación de relaciones entre conceptos (redes semánticas o asociativas). Representación de jerarquías para discriminación y clasificación (árboles). Representación de relaciones entre conceptos (redes semánticas o asociativas). Representación de jerarquías para discriminación y clasificación (árboles). Representación con grafos

14 Redes Semánticas Modelo de memoria humana para capturar la semántica de las palabras y lograr un uso del significado parecido a los humanos [Quillian'66]. Modelo de memoria humana para capturar la semántica de las palabras y lograr un uso del significado parecido a los humanos [Quillian'66].

15 Un tipo de red en la cual los nodos representan objetos, conceptos o situaciones y los arcos representan relaciones entre ellos. Se llama red semántica porque se usaron originalmente para representar el sentido en expresiones de lenguaje natural.

16 Ejemplo: Definición en un Diccionario Planta (1) cosa viviente con hojas y raíces (2) fábrica o edificio industrial FÁBRICA lugar donde se fabrican bienes con máquinas Planta (1) cosa viviente con hojas y raíces (2) fábrica o edificio industrial FÁBRICA lugar donde se fabrican bienes con máquinas

17 cenital SER VIVO HOJASPLANTARAICESPLANTAFABRICAEDIFICIO

18 Representación Los nodos: conceptos de palabras Los arcos: ligan conceptos para establecer la definición Los nodos: conceptos de palabras Los arcos: ligan conceptos para establecer la definición Cada palabra o nodo conceptual se consideraba la cabeza de un “plano” que tiene su definición (v.g., si banco tiene 3 significados, entonces existen 3 planos para él).

19 Las ligas en el plano representan su definición. Apuntadores fuera del plano hacen referencia a otros objetos (y planos) en donde se definen. Las ligas en el plano representan su definición. Apuntadores fuera del plano hacen referencia a otros objetos (y planos) en donde se definen.

20

21 Ejemplo de Diferentes Planos

22 Relaciones subclase (is-a): las clases de “arriba” están definidas en términos de conceptos generales que se asumen que se cumplen en todas sus subclases modificadores: propiedades particulares de conceptos específicos. subclase (is-a): las clases de “arriba” están definidas en términos de conceptos generales que se asumen que se cumplen en todas sus subclases modificadores: propiedades particulares de conceptos específicos. Existen 2 ligas principales:

23 Pueden existir apuntadores a: superclases ( is-a ), modificaciones, disjunciones, conjunciones y sujeto/objeto. Puede existir herencia (v.g., un canario es un animal) y herencia de propiedades (v.g., un canario come).

24 Case Frame

25 Case Frames El permitir tener un conjunto de arcos de salida se llama “case frame”, el cual agrupa información de un concepto posesión es una instancia de pertenencia y hereda los arcos del “case frame”. Las redes semánticas permiten tener valores por default y cierta expectación acerca de los posibles valores de un atributo. El permitir tener un conjunto de arcos de salida se llama “case frame”, el cual agrupa información de un concepto posesión es una instancia de pertenencia y hereda los arcos del “case frame”. Las redes semánticas permiten tener valores por default y cierta expectación acerca de los posibles valores de un atributo.

26 La idea es tratar de tener un conjunto adecuado (pequeño) de nodos y de “case frames” genéricos.

27 Inferencia La idea de ésta representación fué originalmente la interpretación del lenguaje. Quillian describe dos formas de uso: encontrar las similitudes y diferencias entre palabras, y expresar oraciones congruentes en base a la información en la red. La idea de ésta representación fué originalmente la interpretación del lenguaje. Quillian describe dos formas de uso: encontrar las similitudes y diferencias entre palabras, y expresar oraciones congruentes en base a la información en la red. En general podemos usar este tipo de estructuras para diferentes tipos de razonamiento.

28 Tipos de Razonamiento 1. Búsqueda asociativa: Encontrar si están relacionados dos o más conceptos, y su tipo de relación mediante el seguimiento de la red hasta encontrar las interacciones. 1. Búsqueda asociativa: Encontrar si están relacionados dos o más conceptos, y su tipo de relación mediante el seguimiento de la red hasta encontrar las interacciones.

29 2. Reconocimiento: Dada una serie de características (nodos “token”) encontrar el concepto (nodo clase) que mejor las define mediante su búsqueda y seguimiento en la red (reconocimiento de imágenes). 2. Reconocimiento: Dada una serie de características (nodos “token”) encontrar el concepto (nodo clase) que mejor las define mediante su búsqueda y seguimiento en la red (reconocimiento de imágenes).

30 3. Descripción: Expresar un concepto en base a sus componentes y relaciones entre ellas (lenguaje natural). 3. Descripción: Expresar un concepto en base a sus componentes y relaciones entre ellas (lenguaje natural).

31 Ejemplos de Inferencia

32 SCHOLAR (Carbonell): Uno de los primeros sistemas que usaron redes semánticas. Se aplicó para enseñar la geografía de sudamérica. Carbonell distingue entre: unidades conceptuales (clases) y unidades de ejemplos (instancias). SCHOLAR (Carbonell): Uno de los primeros sistemas que usaron redes semánticas. Se aplicó para enseñar la geografía de sudamérica. Carbonell distingue entre: unidades conceptuales (clases) y unidades de ejemplos (instancias). Ejemplos de sistemas basados en redes semánticas.

33 Explota el uso de etiquetas ( tags ). Por ejemplo, la etiqueta de irrelevancia aumenta la distancia semántica y guía hacia los atributos más relevantes. También utilizó etiquetas temporales y permitió poner procedimientos mezclados dentro de la red (para inferir hechos). Explota el uso de etiquetas ( tags ). Por ejemplo, la etiqueta de irrelevancia aumenta la distancia semántica y guía hacia los atributos más relevantes. También utilizó etiquetas temporales y permitió poner procedimientos mezclados dentro de la red (para inferir hechos).

34 SCHOLAR continent latitude country superconcept superpart examples... Argentina superconcept location Latitude 22 to 55 Bordering Countries: eastern... Brazil... Uruguay... South America superconcept... countries... state...

35 Otro Ejemplo ARCH (Winston): sistema para aprender conceptos de estructuras físicas a partir de ejemplos de estructuras descritos en forma de redes semánticas. El proceso de generalización permite cambiar relaciones entre objetos.

36 ARCH E312 abc polygonobject blank texture size medium HAS-AS-PART A-KIND-OF HAS-PROPERTY-OF ON-TOP BENEATH

37 Redes Semánticas en el Web Incoporar “significado” a la información el las páginas en el WWW: – Ontologías de conceptos en diversos dominios – Relaciones entre conceptos Esto facilitará a agentes el “entender” la información y hacer búsquedas mucho más sofisticadas Uso de estándares como XML y RDF

38 Ventajas Representación “estructurada” del conocimiento. Economía cognoscitiva : no es necesario representar en forma explícita todas las propiedades. Representación “estructurada” del conocimiento. Economía cognoscitiva : no es necesario representar en forma explícita todas las propiedades. Definición de distancia semántica entre conceptos (número de ligas a recorrer). Representación “analógica” de conocimiento. Definición de distancia semántica entre conceptos (número de ligas a recorrer). Representación “analógica” de conocimiento.

39 Problemas Las redes semánticas no son muy escrupulosas en cuanto al significado de los nodos (v.g., perro se refiere a la clase, el concepto o un perro en particular).

40 Para establecer si existe relación entre dos conceptos, se sigue un proceso de búsqueda de intersección. Esto, sin embargo, no evita la explosión combinatoria. Problemas

41 Finalmente una red semántica tiene: nodos, arcos y reglas de combinación (sintáxis) y lo que significan (semántica). El problema es por falta de distinción entre lo intensional (sense/meaning) y extensional (reference/denotation), por ejemplo: Finalmente una red semántica tiene: nodos, arcos y reglas de combinación (sintáxis) y lo que significan (semántica). El problema es por falta de distinción entre lo intensional (sense/meaning) y extensional (reference/denotation), por ejemplo:

42 rojo: todas las cosas rojas (extensional) la propiedad de ser rojo (intensional)

43 Implementación Representación alternativa a lógica en forma de cláusulas restringidas a predicados binarios.

44 Predicados binarios representan las relaciones correspondientes a los arcos en el grafo: el símbolo del predicado corresponde a la etiqueta del arco, los argumentos del predicado corresponden a los vértices incidentes de dicho arco.

45 La dirección del arco se expresa en el orden de los argumentos. Ejemplos: isa(tanque, componente)  pared(tanque, acero)  La dirección del arco se expresa en el orden de los argumentos. Ejemplos: isa(tanque, componente)  pared(tanque, acero) 

46 Implementación Esta representación se puede extender utilizando variables y predicados no aterrizados. De esta forma una cláusula representa una “subred”.

47 Ejemplos: pared(X, acero)  isa(X, tanque) contenido(X, agua)  isa(X, tanque) isa(X, tanque)  isa(X, tanque-domo) En principio no es un problema la restricción a predicados binarios, ya que un predicado de grado n > 2 se puede representar como n + 1 predicados binarios.

48 FRAMES Frames: estructuras de datos representando situaciones prototípicas (Minsky '75) Una de las ideas intuitivas detrás de los Frames, es que la memoria se basa mucho en estereotipos (propiedades típicas de los objetos) Frames: estructuras de datos representando situaciones prototípicas (Minsky '75) Una de las ideas intuitivas detrás de los Frames, es que la memoria se basa mucho en estereotipos (propiedades típicas de los objetos)

49 Los sistemas de frames razonan acerca de clases de objetos usando representaciones prototípicas, pero que pueden modificarse para capturar las complejidades del mundo real.

50 Representación Idea: tener una sola estructura de datos para poner el conocimiento relevante acerca de una clase de objetos, en lugar de tener el conocimiento distribuido en forma de reglas o fórmulas lógicas. Permite construir conocimiento declarativo y procedural en un registro con slots y fillers o facets.

51 (frame (nombre camión) (is-a objeto) (color rojo) (llantas 10)...) Los slots pueden tener valores múltiples Los slots son atributos y los fillers o facets son los valores, v.g.,

52 Jerarquías de Frames Frames están puestos en una jerarquía en donde los frames de “abajo” pueden heredar los valores de los slots de los frames de “arriba” Normalmente la herencia se hace por medio de los arcos: is-a (al final instance-of )

53 En general los frames de “arriba” tienen información típica (poco variable) mientras que los de “abajo” tienen información más específica. En ausencia de ésta, se utiliza la de los padres. Se pueden hacer deducciones a través de la jerarquía (se distinguen entre los frames clases o genéricos y los frames instancias).

54 Ejemplo de Jerarquía Jerarquía de los componentes de los sistemas de lubricación de una planta de energía.

55 Excepciones, Defaults y Demons (facets/fillers) El permitir que un slot esté presente en más de un frame nos permite manejar excepciones (v.g., pingüino).

56 Se puede tener información adicional, como: procedimientos para calcular el valor de un slot cuando no se tiene, procedimientos para actualizar valores de un slot cuando un valor de otro slot es actualizado, restricciones en los valores que puede tener un slot, etc.

57 Procedimientos Datos, definiciones y procedimientos están agrupados en módulos que pueden compartir información y procedimientos por medio de mecanismos de herencia.

58 Los fillers o facets pueden tener varias formas de calcular un valor: value, default y demons. Pegados a los slots pueden existir procedimientos que se activan cuando el slot es accesado o actualizado.

59 Ejemplo - VALUE/DEFAULT VALUE : (color (valor rojo)) DEFAULT : si no tiene un valor, toma el de default, e.g., (frame coche (color (valor ?)) (llantas (valor ?) (default 4)))

60 Ejemplo - DEMONS/MÉTODOS IF-NEEDED: si no tiene un valor y se necesita, se invoca al procedimiento escrito en el facet if-needed (éste podría ser preguntarle al usuario, por ejemplo)

61 (frame tanque (largo (valor 3)) (ancho (valor 5)) (area (valor ?) (if-needed (func-area (ancho largo))))) (frame tanque1 (is-a tanque) (largo (valor 2)) (ancho (valor ?)) (area (valor ?))) (defun func-area (A L) (* A L))

62 Ejemplo - DEMONS/MÉTODOS IF-ADDED: al añadir un valor en un slot se puede activar un procedimiento (el cual puede afectar el valor de otro slot) (frame tanque1 (área (valor ?) (if-added (mult*2 área) (imprime: el doble del área))))

63 IF-REMOVED: al quitar un valor de un slot se activa un procedimiento. También se puede tener: before y after, los cuales se activan antes y después de obtener un valor.

64 Inferencia 1. Reconocimiento: dados ciertos valores (atributos) encontrar el Frame. 2. Valores típicos/Demons: deducir información faltante de un Frame 3. Herencia: obtener información de instancias o subclases a partir de sus ascendientes.

65 Estrategias 1. Valores, defaults, demons en un nivel, y luego hacia arriba (herencia-Z). Idea: los valores que se puedan obtener en un nivel son más confiables que los de sus niveles superiores. 1. Valores, defaults, demons en un nivel, y luego hacia arriba (herencia-Z). Idea: los valores que se puedan obtener en un nivel son más confiables que los de sus niveles superiores.

66 2. Valores hacia arriba, defaults hacia arriba y demons hacia arriba (herencia-N). Idea: si se puede obtener un valor es más confiable del que se obtenga por default o por medio de los demons. 2. Valores hacia arriba, defaults hacia arriba y demons hacia arriba (herencia-N). Idea: si se puede obtener un valor es más confiable del que se obtenga por default o por medio de los demons.

67 Procedimiento de Herencia Sea F un frame y S un slot UNTIL se encontró un valor para S o F = nil IF F tiene un valor para S acaba ELSE sea F = superclase de F por medio del slot IS-A Con default o demon sería: Sea F un frame y S un slot UNTIL se encontró un valor para S o F = nil IF F tiene un (demon/default) para S Then (ejecuta el demon/asigna el default) y acaba ELSE sea F = superclase de F por medio del slot IS-A cenital

68 Herencia-Z: Para combinar: valor, demon, default Sea F un frame y S un slot UNTIL se encontró un valor para S o F = nil IF F tiene un valor para S Then asigna el valor ELSE IF F tiene un demon, Then ejecuta el demon. ELSE IF F tiene un default para S, Then usa el default ELSE sea F = superclase de F por medio del slot IS-A cenital

69 Herencia-N: Realiza: herencia con valor herencia con demons herencia con defaults herencia con valor herencia con demons herencia con defaults

70 Perspectivas Un objeto puede verse desde varias perspectivas: ladrillo - estructural - función = soporte ladrillo - juguete - función = juego ladrillo - regalo - función = adorno ladrillo - arma - función = romper cabezas ladrillo - cultural - función = detener libros... ladrillo - estructural - función = soporte ladrillo - juguete - función = juego ladrillo - regalo - función = adorno ladrillo - arma - función = romper cabezas ladrillo - cultural - función = detener libros...

71 Herencia Múltiple y Ambigüedad A veces se quiere heredar información de más de un frame (la organización se vuelve más una red que un árbol). Con herencias múltiples no se tiene problemas mientras no exista conflicto en la información. En herencia múltiple se tiene que incluir un método que decida de donde heredar.

72 Manejo de Conflictos Algunos sistemas no deciden (escépticos) por ser contradictorios. Algunos permiten varias conclusiones (crédulos) Se puede usar información adicional para resolver la ambigüedad (v.g., con un demonio: IF-NEEDED) Algunos sistemas no deciden (escépticos) por ser contradictorios. Algunos permiten varias conclusiones (crédulos) Se puede usar información adicional para resolver la ambigüedad (v.g., con un demonio: IF-NEEDED)

73 En algunos sistemas se permiten que los valores de slots apunten a otros frames A veces se cancelan líneas de herencia para eliminar ambigüedades ( preclusión ).

74 Ejemplo de Herencia Múltiple Vaso sanguíneo Arteria pulmonar Arteria poco oxi.

75 SCRIPTS Los frames se pueden utilizar para entender historias (idea de los Scripts) v.g.,

76 (frame evento (frame desastre (lugar L) (es-un evento) (día D) (muertos N) (Tiempo T)) (heridos M) (sin-casa O) (frame terremoto (daños P)) (magnitud X) (falla Y)) (frame inundación (is-a desastre) (frame huracán (rio R)) (vel-viento V) (nombre N)) (frame evento-social (es-un evento) (frame boda (invitados I) (es-un evento-social) (casa-de C)) (novia NA) (novio NO) (padres-novia PNA) (padres-novio PNO) (vestido-novia VN))

77 Análisis Los Frames tienen ventajas y desventajas similares a las redes semánticas.

78 Implementación Podemos representar un “frame” en lógica como una serie de predicados aterrizados (hechos). Existen varias formas de hacerlo, tres posibles son: 1. frame(objeto,atributo,valor) 2. objeto(atributo,valor) 3. atributo(objeto,valor)

79 Ejemplo de Frames en Prolog isa(tubo-alta-presión,tubo). isa(tubo,componente). componente(uso,sistema-lubricación). tubo(forma,tubular). tubo-alta-presión(pared,acero). tubo-alta-presión(contiene,aceite). isa(tubo-alta-presión,tubo). isa(tubo,componente). componente(uso,sistema-lubricación). tubo(forma,tubular). tubo-alta-presión(pared,acero). tubo-alta-presión(contiene,aceite).

80 % Procedimiento para obtener el valor de un atributo con herencia simple: valor(Frame,Atrib,Valor) :- Meta =.. [Frame,Atrib,Valor], call(Meta). valor(Frame,Atrib,Valor) :- isa(Frame,Frame2), valor(Frame2,Atrib,Valor). % Procedimiento para obtener el valor de un atributo con herencia simple: valor(Frame,Atrib,Valor) :- Meta =.. [Frame,Atrib,Valor], call(Meta). valor(Frame,Atrib,Valor) :- isa(Frame,Frame2), valor(Frame2,Atrib,Valor).

81 FIN


Descargar ppt "Representaciones Estructuradas Sesión 06 Eduardo Morales L. Enrique Sucar Sesión 06 Eduardo Morales L. Enrique Sucar Fundamentos de Inteligencia Artificial."

Presentaciones similares


Anuncios Google