Representación del Conocimiento Otros formalismos Introducción a la Inteligencia Artificial.

Anuncio
Representación del Conocimiento
Otros formalismos
Licenciatura en Ciencias de la Computación.
Introducción a la Inteligencia Artificial.
Conocimiento – Definición
El conocimiento es una mezcla de experiencia,
información y “saber hacer” que actúa como marco para
la incorporación de nuevas experiencias y guia la acción.
Se utiliza para alcanzar una meta
Genera nuevo conocimiento
Resulta en gran medida dependiente de la tarea
y del dominio de aplicación.
PREMISA FUNDAMENTAL DE IA:
Para que un sistema informático demuestre un
comportamiento “inteligente” en la solución
de problemas, debe poseer :
•gran cantidad de conocimientos
•un potente mecanismo de razonamiento.
IMPORTANCIA DE UNA ADECUADA
REPRESENTACION DEL CONOCIMIENTO
Niveles de representación:
Nivel del conocimiento
Hechos, comportamiento y
objetivos de los agentes.
Debe existir
correspondencia
Nivel simbólico
Símbolos manipulables
por un sistema
Adecuación representacional
Adecuación inferencial
• La representación elegida influye directamente en la
eficacia y eficiencia de la solución lograda
Representación:Modelado de un sistema
Adquisición del conocimiento
Modelo
Conceptual
Conceptos y
relaciones
No computable
Modelo
Formal
Métodos de
resolución
Representa simbólicamente
y organiza el conocimiento.
Determina el mecanismo
Semicomputable
de inferencia adecuado.
Representación: Modelado de un sistema
Modelo
Computable
Bases de Conocimiento
Mecanismos de inferencia
Mecanismos de control
Operacional
Las tareas de adquisición y modelado son difíciles y costosas.
Existen esquemas de representación útiles en dominios
variados.
Los Sistemas Basados en Conocimiento los combinan.
ELEMENTOS BASICOS QUE INTERVIENEN EN EL
DISEÑO DE UN SISTEMA BASADO EN EL
CONOCIMIENTO (KBS)
Lenguaje formal para expresar conocimiento
Forma de efectuar razonamientos
COMPONENTE MEDULAR DE UN KBS (Agente)
BASE DE CONOCIMIENTOS (KB)
Es un conjunto de representaciones de hechos
acerca del mundo
Conjunto de sentencias del lenguaje para la
representación del conocimiento
DISTINTOS FORMALISMOS
FORMALISMOS LOGICOS
SISTEMAS DE PRODUCCION
FORMALISMOS
ESTRUCTURADOS:
• REDES SEMANTICAS
• FRAMES
• OBJETOS
OTROS FORMALISMOS
Sistemas de producción
Newell & Simon - 1973
Utilizan elementos de la lógica
Salen del marco estrictamente formal
más flexibles
más eficientes
Pierden propiedades fundamentales como la
consistencia y completitud.
Sistemas de producción
Los procesos del dominio se representan como acciones
independientes que son integradas por el mecanismo de
inferencias para resolver una tarea más general.
ARQUITECTURA
BASE DE CONOCIMIENTO
Base de
Hechos
Base de
Reglas
Motor de
Inferencias
Sistemas de producción
Se utilizan Reglas de Producción para
representar el conocimiento
IF <premisa> THEN <conclusión y/o acción>
Son los elementos de deducción básicos
El proceso de inferencia se basa
fundamentalmente en la Regla de Inferencia
de la lógica denominada MP
A →B, A / ∴B
Reglas de producción
Es el modelo formal para representar un
elemento mínimo de conocimiento
IF <premisa> THEN <conclusión y/o acción>
Conclusión
Puede especificar Acción
Estrategia
La premisa puede tener conectivos lógicos
<premisa> = <cláusula1 AND/OR...AND/OR
cláusulak>
Reglas de producción- Ejemplos
Si un animal come carne entonces es
carnívoro.
Si un animal tiene dientes agudos y
garras entonces es carnívoro.
Si un animal es carnívoro y es de color
marrón-claro y tiene el pelaje franjas
negras, entonces es un tigre.
Reglas de producción- Ejemplos
Sintaxis Reglas en KAPPA-PC
MakeRule( Rtigre, [],
animal:grupo #= carnívoro And
animal:color #= leonado And
animal:pelaje #= franjas_negras,
animal:especie = tigre );
Reglas de producción- Ejemplos
Sintaxis Reglas en JESS
(defrule apagarLuces
(and
(vivienda vacia)
(luz encendida)
)
=>
(printout t "La vivienda esta vacia. Las luces
deben estar apagadas." crlf)
(retract-string "(luz encendida)")
(assert (luz apagada))
)
Sistemas de producción
Cada regla es independiente del resto de las
reglas en la BC.
Las reglas no tienen porque estar ordenadas
en la BC.
Las reglas se pueden agrupar por nociones
semánticas en “módulos” o “grupos”.
El metaconocimiento puede ser expresado
mediante reglas: metareglas
Sistemas de producción
Como razonamos???
Utilizando un
MECANISMO DE INFERENCIA
(MOTOR DE INFERENCIA)
El cual determina de que forma utilizar las
reglas para alcanzar el objetivo planteado
Sistemas de producción
Motor de Inferencia
Direcciones de búsqueda:
Hacia delante, Forward Chaining o guiada
por los hechos.
Hacia atrás, Backward Chaining o guiada
por los objetivos.
Implementa alguna estrategia de búsqueda dónde los operadores a
aplicar son las reglas de producción.
Para seleccionar las reglas candidatas en cada estado utiliza el
EMPAREJAMIENTO, FILTRADO o MATCHING.
Sistemas de producción
Motor de Inferencia
Qué dirección de encadenamiento utilizar ???
Factores a tener en cuenta
Cantidad de estados iniciales vs. objetivos
El menor
Factor de ramificación
Necesidad de justificar el razonamiento
Dirección
natural para el
problema
A veces es conveniente encarar partes del problema con cada una
Sistemas de producción
VENTAJAS
Flexibles.
Sencillos de modificar y extender.
A los expertos les resulta simple “pensar en reglas”.
PROBLEMAS
Completitud y consistencia.
El conocimiento se separa
en pequeños “gránulos”.
Es común que se los
combine con otros
formalismos.
Sistemas estructurados
ESTRUCTURAS DE RANURA Y
RELLENO (slot and filler)
REDES SEMANTICAS (Quillan 67/68)
FRAMES (Minsky, 75)
OBJETOS ( Década 80)
ONTOLOGIAS
Redes semánticas
Idea: el significado de un concepto
depende del modo en que se encuentre
conectado a otros conceptos
Representación: mediante un grafo
dirigido donde
los nodos representan objetos y
los arcos relaciones entre los conceptos
REX
PERRO
INSTANCIA
MAMIFERO
ES-UN
Redes semánticas - Ejemplo
Estudiante -UNR
ES-UN
TIENE
Estudiante -FCEIA
ES-UN
Legajo
ES-UN
Estudiante -LCC
INSTANCIA
Pedro García
TIENE
Prom1
INSTANCIA
INSTANCIA
Estudiante -IEca
INSTANCIA
Juan Perez
TIENE
Prom2
Promedio
INSTANCIA
TIENE
Legajo P-1233/5
Redes semánticas - Arcos
Etiquetas de los arcos
Generalización
“es-un” relación subclase-clase
Instanciación
“instancia” relación objeto-clase
“parte-de” relación componente-objeto
Agregación
definidas por el usuario
Descripción
Dominio de
aplicación
Sistemas basados en
Redes semánticas
Base de conocimiento
En esta representación una BC es una
colección de estos grafos
Las modificaciones se refieren a inserción
o eliminación de nodos y sus relaciones.
Redes semánticas
Como razonamos???
Búsqueda de intersección
Encontrando relaciones entre objetos
Cual es la conexión (arco) entre Rex y
mamífero?
Es Juan Pérez un estudiante de la UNR?
Cuál es el promedio de Pedro García?
Utiliza fundamentalmente la estructura
jerárquica
Marcos (frames)
Una red semántica representa conexiones entre
entidades
Problemas más complejos
Asignar más estructura a los nodos y a las
conexiones
Marcos
No existe una distinción clara entre una Red
semántica y un sistema de Marcos
Marcos (frames)
Idea: Estructura para atender la
representación del conocimiento asociado
a situaciones estereotípicas (Minsky)
Representación: Es una colección de
atributos (ranuras - slots) con valores
asociados (y posibles restricciones entre
valores, llamados facetas)
Marcos - Estructura
ENCABEZADO
ATRIBUTO1
(slots)
ATRIBUTOn
NOMBRE
ES-UN
INSTANCIA
VALOR1
•valores por
defecto
•procedimientos
•relación con
otros marcos
VALORn
Marcos - Ejemplo
Estudiante FCEIA
ES-UN
Estudiante UNR
TIENE
Legajo (letra/numerodigito)
TIENE
Promedio (procedimiento)
Estudiante Ing.Eca.
ES-UN
ESTUDIANTE FCEIA
Juan Perez
INSTANCIA Estudiante Ing.Eca.
TIENE
Promedio = 6,80
DIRECCION ...... (Defecto Rosario)
TEL
.....
TRABAJA
NO
(Defecto No)
Sistemas de Marcos
Marcos Clase
Representan conceptos, o situaciones genéricas
descriptos por propiedades comunes
Marcos Instancia
Elementos específicos. Sus propiedades se
asocian con información de cada individuo
De Clase: Atributos genéricos de un concepto,
con valores comunes a todas sus ocurrencias.
Propiedades
De Instancia: Atributos con valores particulares
para cada ocurrencia del concepto.
Slots definidos en
los marcos Clase
Sistemas de Marcos
Consideraciones al definir los Slots:
Evitar redundancias aprovechando la herencia.
Poseer información suficiente para identificar el marco clase.
En un marco clase se puede definir un slot de instancia en
base a otro marco clase.
Los slots de instancia pueden tener uno o varios valores.
En los marcos clase se pueden redefinir slots heredados
para representar excepciones a la herencia.
Sistemas de Marcos
BASE DE CONOCIMIENTO
Conjunto de marcos relacionados mediante los
valores de los slots (atributos)
INFERENCIA
Utilizar la estructura jerárquica para heredar
propiedades (valores de slots).
Tener procedimientos (reglas) para hallar
valores de los slots.
Sistemas de Marcos
Tienen mucha tradicion en IA y son antecesores de los
objetos
Los sistemas de marcos agregan expresividad a las redes
semánticas y permiten representar conocimiento
declarativo y procedimental.
Marcos se utilizan para estructurar el conocimiento
en Kappa-PC (shell-herramienta constructora de SE)
Expresividad Sistemas de Marcos - Redes
PODER EXPRESIVO
Redes Semánticas
Sistemas de Marcos
MAS CLAROS (GRAFICA)
UTILIZAN HERENCIA
Lógica de predicados
PRUEBAS DE
COMPLETITUD Y
CONSISTENCIA
Objetos
IIA
Los vemos más como una forma de representar el
mundo que como un paradigma de programación
Los encontramos en muchas herramientas dentro
del área.
Tienen ciertas características en común con los
agentes.
Objetos
OBJETO: Es una entidad que tiene un comportamiento.
ESTADO INTERNO
MENSAJES que es
capaz de responder.
ENCAPSULAMIENTO
Permite la utilización de clases con
implementaciones intercambiables.
INTERFAZ
Un PROGRAMA OO es una red de objetos cooperantes,
que interactúan entre sí, enviándose mensajes.
Cómo elegir la mejor
representación???
No hay receta establecida !!!
Frente a cada problema a resolver:
Analizar las características del
conocimiento involucrado.
Recurrir a la combinación de formalismos.
Descargar