Sistemas Basados en
Conocimiento Arquitectura - Motor de Inferencias
Ingeniería del Conocimiento -EIE
Ana Casali – Andrea Torres
IC - MODULOS
• INTRODUCCION
• SISTEMAS BASADOS EN
CONOCIMIENTO
• RAZONAMIENTO APROXIMADO
• FUZZY SYSTEMS
• APRENDIZAJE AUTOMATIZADO
• AGENTES INTELIGENTES
Conjunto de Conocimientos y Técnicas que permiten aplicar
el saber científico a la utilización del conocimiento.
ADQUISICION QUE SE OCUPA DE LA REPRESENTACION INFERENCIA MANTENIMIENTO
INGENIERIA DEL CONOCIMIENTO
• Es la disciplina tecnológica que se centra en el desarrollo, funcionamiento y mantenimiento de Sistemas Basados en Conocimiento (SBC – KBS) (utilizando Ingeniería de Software) • SBC: sistema de software capaz de soportar la representación explícita de conocimiento.
INGENIERIA DEL CONOCIMIENTO
• SBC (KBS): sistema de software que mantienen una gran cantidad de conocimiento (Base de conocimiento) y que incluyen métodos adecuados para explotarlo. • Sistema Experto: es un SBC que contiene el conocimiento utilizados por expertos humanos (imita la actividad de un experto)
SISTEMA BASADO EN CONOCIMIENTO
Sistemas basados en conocimiento (SBC-KBS)
Definiciones.
Sistemas que representan el conocimiento sobre el
dominio en forma explícita y separada del resto del
sistema.
Waterman.
Sistemas basados en conocimiento (SBC-KBS)
Definiciones.
Sistemas de software capaz de soportar la
representación explícita del conocimiento de un
dominio específico y de explotarlo a través de
mecanismos apropiados de razonamiento para
proporcionar un comportamiento de alto nivel en la
resolución de problemas.
Guida y Taso
Sistemas Expertos: Definición.
Es un sistema de cómputo
capaz de simular la conducta
inteligente de un experto
humano en un dominio
específico y especializado, con
el objeto de resolver problemas.
SE/SBC: Tareas
Tareas abordadas
Síntesis: Clasificación, diagnóstico
Análisis: Planificación, diseño o modelado
Las áreas de aplicación son muy variadas !!!
Los SBC abordan problemas complejos en dominios específicos
en los que el peso de las heurísticas para acotar el espacio de
búsqueda es importante.
Primeros Sistemas Expertos
MYCIN
Stanford (Buchanan - Shortliffe 1976):
Diagnóstico y tratamiento de enfermedades
infecciosas (aprox. 500 reglas). Introduce
factores de certeza.
PROSPECTOR
Stanford-US Geological Survey (Duda-Gashning-
Hart, 1979): Evaluación de yacimientos minerales
y petrolíferos. (aprox 1600 reglas). Probabilidades
condicionales y Teorema de Bayes.
Conocimiento
inexacto
INTERNIST Pittsburg (Pople-Myers, 1977): Diagnóstico
en Medicina interna. CADUCEUS: Analiza
relaciones causales.
CASNET Rutgens (Kulikowsky-Weiss-Safir, 1977):
Oftalmología. Aplica un modelo causal para el
diagnóstico de glaucoma.
Razonamiento experto
Modelos causales
R1
MOLGEN
Carnegie Mellon (Mc Dermott): Configuración de
ordenadores VAX (aprox 500 reglas). Descompone
el diseño en distintos niveles de abstracción. Reducción espacio
de búsqueda Stanford (Stefik): Diseño de experimentos
genéticos. Utiliza abstracción.
Estructura básica de un SE/SBC.
Base de
Conocimientos
Motor de
Inferencias
I
n
t
e
r
f
a
c
e
U
s
u
a
r
i
o
Ingeniero del
conocimiento
Experto del
dominio
K
A
T
Estructura básica de un SE/SBC
Base de
Conocimientos
Su estructura de datos queda definida en
términos del esquema de representación
elegido para incorporar el conocimiento
del dominio de trabajo.
Motor de
Inferencias
Es la estructura de control de un SE,
contiene el programa que gestiona la BC y
otros mecanismos necesarios para
administrar un sistema de naturaleza
interactiva.
Separados entre sí
Habilidades que se esperan de un SE
Buena perfomance, comparable al menos a la de los especialistas.
Manipular con fluidez descripciones simbólicas.
Interfaz amigable, adecuada a las necesidades de la aplicación.
Habilidad para manipular conocimiento incompleto e impreciso.
Capacidad de explicar sus decisiones a los usuarios.
SBC: Ventajas
El conocimiento no se pierde.
Reducción del espacio de búsqueda con heurísticas para que
el problema sea tratable en un tiempo razonable.
Manejo de conocimiento incierto e incompleto.
Posibilidad de justificar el razonamiento seguido.
Hacer el conocimiento disponible en ambientes hostiles o con
carencia de especialistas.
Aumento de fiabilidad, evitando que prevalezcan las últimas
experiencias.
Modificación sencilla de la BC por su característica modular.
SBC: Inconvenientes
La adquisición del conocimiento es difícil y cara.
La reutilización del conocimiento en contextos diferentes
no es simple.
Falta de creatividad y sentido común.
Necesitan aprendizaje y adaptación.
Quedan inmersos en el campo de los Sistemas Inteligentes.
Se trabaja sobre metodología de desarrollo
Se los combina con otras tecnologías
•CONOCIMIENTO DEL MUNDO (en IA)
Es la habilidad para construir un modelo de
los objetos, sus vinculaciones y de las
acciones que pueden realizar.
•REPRESENTACION DEL CONOCIMIENTO
Es la expresión mediante algún lenguaje, de un
modelo que exprese el conocimiento sobre el
mundo.
:
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 guía la acción.
Se utiliza para alcanzar una meta
Genera nuevos hechos/conclusiones
Resulta en gran medida dependiente de la tarea
y del dominio de aplicación.
Representación: Modelado de un sistema
Modelo
Computable
Operacional
Bases de Conocimiento
Mecanismos de inferencia
Mecanismos de control
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
AÑADIR Y MODIFICAR
SENTENCIAS
BC
PREGUNTAS RESPUESTAS
MECANISMO DE INFERENCIAS
UNA KB DEBE PERMITIR CON EFICIENCIA:
DISTINTOS FORMALISMOS
FORMALISMOS LOGICOS
SISTEMAS DE PRODUCCION
FORMALISMOS ESTRUCTURADOS:
• OBJETOS
• ONTOLOGÍAS
FORMALISMOS LOGICOS
• Conocimiento es representado mediante un conjunto de fórmulas bien formadas (fbfs)
en algún sistema lógico (proposicional - predicados - multivaluada...)
• Los mecanismos de inferencia son los métodos deductivos del sistema lógico (Resolución en predicados)
PROLOG: Una implementación de
programación lógica
LOGICA DE PREDICADOS
+ DEDUCCIÓN AUTOMÁTICA
(RESOLUCION)
• Dada la BC y una fórmula podemos probar
que
» BC -
Podemos contestar perro (Rex) ?
preguntas como X / perro (X)?
OTROS FORMALISMOS
Sistemas de reglas de producción
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.
SE basados en reglas de producción
Sistemas de
producción
Al resolver problemas, las personas utilizan su memoria
a largo plazo (permanente) que aplican a situaciones
actuales contenidas en su memoria a corto plazo
(transitoria).
BC
(Reglas) Memoria de
trabajo (Hechos)
Motor de Inferencias
Mundo Exterior
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.
Motor de
Inferencias
BASE DE CONOCIMIENTO
Base de
Hechos
Base de
Reglas
ARQUITECTURA
SE basados en reglas de producción
Reglas de
producción IF < CONDICION > THEN < ACCION>
Son “gránulos” de conocimiento.
Reúnen información relativa a las condiciones de
disparo y a los efectos resultantes del disparo.
Son estructuras bidireccionales.
SI ?X ES MAMIFERO Y ?X COME CARNE
ENTONCES ?X ES CARNIVORO.
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 es un predicado (puede tener
conectivos lógicos, etc.)
<premisa> = <cláusula1 AND/OR...AND/OR
cláusulak>
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”.
El metaconocimiento puede ser expresado
mediante reglas: metareglas
SE basados en reglas de producción
Ventajas: Naturaleza modular: El conocimiento es fácil de
encapsular y expandir.
Explicaciones sencillas: El registro de reglas disparadas
permite presentar la cadena de razonamiento asociada.
Semejanza con el proceso cognitivo humano: modelo
natural del razonamiento humano.
Dificultades:
Completitud y consistencia como responsabilidad del desarrollador.
Se necesitan otras estructuras para lograr una visión global del
conocimiento del dominio.
Se las combina con otros formalismos
de representación.
Reglas de producción- Ejemplos
Sintaxis Reglas en JESS
Jess> (defrule bienvenido-menor
"Saludo para niños"
(persona {edad < 10})
=>
(printout t "Hola niño!"
crlf)
Sistemas de producción.
Un ejemplo de regla
En el desarrollo de un sistema basado en
conocimiento relativo al diagnóstico de una falla en
un auto, se puede expresar:
“ si el motor no arranca y las luces no encienden,
entonces la falla está en la batería ”.
A partir de esta expresión, se puede definir la
regla de producción asociada a las proposiciones
como:
If el motor no arranca
And las luces no encienden,
Then la falla está en la batería .
Sistemas de producción.
Un ejemplo de regla
If el motor no arranca
And las luces no encienden
Then falla la batería.
If el motor no arranca
And las luces encienden
And llega combustible
Then falla el sistema de ignición.
If el motor no arranca
And las luces encienden
And no llega combustible
Then falla el sistema de combustible.
Sistemas de producción.
Un conjunto de reglas
El desarrollo de las reglas de
producción para construir la KB.
• Cada una de estas reglas
aparece como un gránulo
de conocimiento que es
independiente
• La ampliación de la KB
puede realizarse sin mayor
problema.
El desarrollo de las reglas de
producción para construir la KB.
• estas reglas deben estar
relacionadas por los
hechos que mencionan
para que puedan ser
interpretadas durante el
proceso de inferencia.
El desarrollo de las reglas de
producción para construir la KB.
• Este es el único
requisito que requiere
el agregado de nuevas
reglas
• respetar la sintaxis e
los hechos
representados.
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
La ejecución del proceso de
inferencia en los KBS
Supóngase que se observa una falla en motor del auto y se
constata que: “no arranca el motor, ni encienden las
luces y llega combustible”.
• es necesario ingresar esta información en la memoria de
trabajo, para obtener una solución o respuesta al problema.
• la interfaz de este KBS, deberá permitir ingresar las
observaciones del caso (pueden ser sensores).
La ejecución del proceso de
inferencia en los KBS
• La respuestas
seleccionadas originan
los hechos: “el motor
no arranca”, “las luces
no encienden” y “llega
combustible” que
ingresarán a la memoria
de trabajo del KBS.
La ejecución del proceso de inferencia en
los KBS
• El proceso de ejecución que
realiza el motor de inferencia,
consiste en tomar cada una de
estas plantillas, y explorar la
KB buscando “matching” en
las premisas de cada una de las
reglas.
• La primera regla se desen-
cadena, y produce entonces la
conclusión: “falla la batería”,
y el problema queda resuelto
Inferencia en los KBS
Este proceso de comparación que explora cada una de las reglas, es prácticamente independiente del orden en que se encuentren dispuestas las mismas en la KB.
Este proceso de inferencia en los KBS, es denominado: pattern maching
Inferencia en los KBS
Las herramientas actuales soportan procesos de matching más complejos, que satisfacen algún predicado:
• que el valor de un slot de un objeto cumpla alguna condición, por ej.
• que su valor sea desconocido
• que la lista asociada a un slot tenga 3 elementos
Jess> (defrule match-tres-items
(lista-almacen ? ? ?)
=>
(printout t "Hay una lista de tres items."
crlf))
Sistemas de producción
Motor de Inferencia
Direcciones de búsqueda:
Hacia delante, Forward Chaining o guiada
por los hechos. JESS
Hacia atrás, Backward Chaining o guiada
por los objetivos. PROLOG
Para seleccionar las reglas candidatas en cada estado utiliza el
FILTRADO o MATCHING.
Sistemas de producción
Flexibles.
Sencillos de modificar y extender.
A los expertos les resulta simple “pensar en reglas”.
Completitud y consistencia.
El conocimiento se separa
en pequeños “gránulos”.
VENTAJAS
PROBLEMAS Es común que se los
combine con otros
formalismos.
Sistemas de predicción del tiempo
Los estratos son nubes de baja altura con aspecto de capas.
Los nimboestratos son nubes de altura media. Los
cirroestratos son nubes de gran altura. Los cúmulos y
cumulonimbos pueden estar a baja o gran altura y su aspecto
es como pilas de algodón, pero los cumulosnimbos son
grises, mientras que los cúmulos son blancos.
Si no hay nubes puede inferirse que el tiempo será soleado.
La presencia de cúmulos indica buen tiempo. Las nubes con
estratos indican lluvia ligera pero si el viento sopla de noreste
a sur la lluvia puede ser prolongada. Las nubes con
nimboestratos indican lluvia breve si la dirección del viento es
sur a norte, pero se indica lluvia persistente si la dirección del
viento es de noreste a sur. Los cumulonimbos indican
chubascos. Los cirroestratos indican lluvia en las 24 hs. si el
viento es norte a sur.
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 MAMIFERO
INSTANCIA ES-UN
Redes semánticas - Ejemplo
ES-UN
ES-UN
ES-UN
TIENE Estudiante -FCEIA
Estudiante -UNR
Estudiante -LCC Estudiante -IEca
Juan Perez Pedro García Legajo P-1233/5
Legajo
Prom1 Prom2
Promedio
TIENE
INSTANCIA
INSTANCIA INSTANCIA
TIENE TIENE
INSTANCIA INSTANCIA
Redes semánticas - Arcos
Etiquetas de los arcos
“es-un” relación subclase-clase
“instancia” relación objeto-clase
“parte-de” relación componente-objeto
definidas por el usuario
Dominio de
aplicación
Generalización
Instanciación
Agregación
Descripción
Objetos
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.
INTERFAZ
Un PROGRAMA OO es una red de objetos cooperantes,
que interactúan entre sí, enviándose mensajes.
ENCAPSULAMIENTO
Objetos
Una CLASE es una definición de las características
comunes de un conjunto de objetos semejantes.
CLASE
ESTRUCTURA: Conjunto de
variables de clase e instancia.
INTERFAZ: conjunto de
métodos. Los objetos concretos
buscan en su clase la definición
cuando reciben un mensaje.
Objetos
Las CLASES se
organizan en jerarquías
modelizando el dominio
De Estructura: Más estática.
De Comportamiento: Ocurre en ejecución.
HERENCIA
Esquema de colaboración
entre objetos (explícito en
el código)
Cuando un objeto recibe un mensaje, busca el
código en su clase, y si no lo encuentra recorre la
jerarquía.
Es una especificación explícita de una conceptualización. [Gruber]
Conceptos en un dominio: clases
Propiedades de cada concepto describiendo
características y atributos: slots
Restricciones sobre los slots: facetas
Las Ontologías en el desarrollo de Sistemas de Información
permite establecer correspondencias y relaciones
entre diferentes dominios.
Ontología
Ontologías: OWL editor Protege
Top Related