Unidad 3 Representación del conocimiento y razonamiento

Anuncio
Unidad 3
Representación del conocimiento y
razonamiento
Inteligencia Artificial
domingo 11 de mayo de 14
•
•
•
•
•
•
domingo 11 de mayo de 14
3.1. Sistemas basados en conocimiento.
•
•
3.1.1. Concepto de conocimiento.
3.1.2. Lenguajes utilizados en la
representación de conocimiento.
3.2. Mapas conceptuales.
3.3. Redes semánticas.
3.4. Lógica de predicados.
•
•
•
•
3.4.1. Sintaxis.
3.4.2. Semántica.
3.4.3.Validez.
3.4.4. Inferencia.
3.5. Razonamiento con incertidumbre.
•
•
•
•
3.5.1. Aprendizaje.
3.5.2. Razonamiento probabilístico.
3.5.3. Lógicas multivaluadas.
3.5.4. Lógica difusa.
3.6. Demostración y métodos.
Sistemas Basados en el
Conocimiento
•
Los Sistemas basados en Conocimiento representan un
paso delante de los sistemas de información convencionales
al pretender representar funciones cognitivas del ser
humano como el aprendizaje y el razonamiento.
•
Esta clase de aplicaciones descansan en las contribuciones
de la Inteligencia Artificial en lo general y en la Ingeniería
del Conocimiento en lo particular.
•
Su orientación es la automatización del análisis de
problemas, la búsqueda de soluciones, la toma de decisiones
y el empleo de conocimiento especializado en un campo
específico de aplicación.
domingo 11 de mayo de 14
Sistemas Basados en el
Conocimiento
•
Entre los productos más significativos de los Sistemas
basados en Conocimiento se encuentran los Sistemas
Expertos, los cuales están encargados de representar el
conocimiento de los especialistas de una rama en la
procura de su aprovechamiento para tareas de
diagnóstico, enseñanza y control.
•
La composición de los Sistemas basados en
Conocimiento consta de: Un mecanismo de
aprendizaje, una base de conocimientos, un motor de
razonamiento, y medios de comunicación hombremáquina.
domingo 11 de mayo de 14
Sistemas Expertos
INTELIGENCIA ARTIFICIAL
SISTEMAS BASADOS EN EL CONOCIMIENTO
SISTEMAS EXPERTOS
domingo 11 de mayo de 14
Estructura de un SBC
Usuario
Hechos
Preguntas
Interface de
Usuario
Resultados
Sistema de
Inferencia
Ingenierio
del Conocimiento
Y experto
Interface
Experta
Conocimiento
Base de
Conocimientos
Sistema Basado En el Conocimiento
domingo 11 de mayo de 14
Conocimiento: Datos No Estructurados
Todos sabemos que la ciencia e ingeniería son
dominados por principios.
Es decir reglas generales, las cuales si se aplican de manera
uniforme resuelven todos los problemas de una misma
clase
Esto es visible principalmente en las matemáticas, donde
una de sus principales tareas es reducir problemas
aparentemente complejos, mediante un conjunto de
principios mínimos para su solución mas fácil
Las computadoras fueron
creadas por matemáticos
domingo 11 de mayo de 14
Conocimiento: Datos No Estructurados
(Cont..)
Es por eso que son maquinas que se adaptan muy bien a
implementar los principios matemáticos
Las nociones algorítmicas base reflejan siempre el concepto de
maquinas de calculo
Por lo contrario el comportamiento humano se rige por otro
tipo de principios (en teoría muy pocos). Dice un viejo
proverbio que “no hay regla sin excepción”, de tal forma que las
excepciones hacen mal funcionar a los principios en dominios
donde se aplican un poco de principios conocidos.
domingo 11 de mayo de 14
Conocimiento: Datos No Estructurados
(Cont..)
En términos computacionales, es posible distinguir entre un
tratamiento de datos estructurados y no estructurados. La
Computación clásica se adapta al tratamiento de datos
estructurados por ejemplo :
Cifras, Códigos y otros
contenidos de bases de datos
Por lo contrario, el comportamiento humano se basa sobre
una inmensidad de datos no estructurados: reglas de normas
sociales así como también información con incertidumbre.
Este ultimo tipo de datos son difícilmente formalizables bajo
un formato estructurado. Ya que de manera general son
incompletos, ambiguos y muchas veces inconsistentes.
domingo 11 de mayo de 14
Conocimiento: Datos No Estructurados
(Cont..)
Para la Inteligencia Artificial a estos datos les llama
CONOCIMIENTO
domingo 11 de mayo de 14
Lenguajes utilizados para la
Representación del Conocimiento
•
Se han diseñado a lo largo de los años diversos formalismos y
lenguajes que permiten modelar de un modo formal el conocimiento.
•
Existen diversos formalismos para la representación del
conocimiento, cada uno con sus propios lenguajes y cada uno con sus
ventajas e inconvenientes.
•
En esto, al igual que en la Ingeniería del Software, no existe la técnica
ideal que nos permita resolver cualquier problema de la mejor
manera.
•
Dependerá del tipo de problema, del conocimiento que se quiera
representar, de la expresividad que se necesite, y del uso que se le
quiera dar, el que un formalismo y un lenguaje sea más conveniente
que otro.
domingo 11 de mayo de 14
Lenguajes utilizados para la
Representación del Conocimiento
•
•
Lenguajes Basados en Lógica Formal
•
La lógica formal aporta un buen número de ventajas
para la representación del conocimiento y su
manejo, partiendo de una sintaxis y semántica bien
definidas que detallan perfectamente la forma de
construir sentencias y razonamientos sobre ellas.
domingo 11 de mayo de 14
Muchos de los sistemas de representación del
conocimiento de la actualidad se basan en algún
tipo de lógica formal.
Lenguajes utilizados para la
Representación del Conocimiento
• Ejemplos:
• Lógica Proposicional
• Lógica de Primer Orden
• KIF
• Lógicas Descriptivas
domingo 11 de mayo de 14
Lenguajes utilizados para la
Representación del Conocimiento
domingo 11 de mayo de 14
•
•
Lenguajes Basados en Frames o Marcos
•
Uno de los posibles lenguajes basados en frames
es KM.
Estos lenguajes son similares a los lenguajes de
programación orientados a objetos, en el sentido
de que modelan el conocimiento utilizando clases
(frames), atributos, objetos y relaciones, y utilizan
relaciones de generalización y especialización
para representar la organización jerárquica de los
conceptos.
Lenguajes utilizados para la
Representación del Conocimiento
•
•
Lenguajes Basados en Reglas
•
Estos lenguajes son fáciles de entender debido a su
sencillez conceptual y a su paralelismo con las
estructuras de control más simples utilizadas en
programación.
domingo 11 de mayo de 14
Estos lenguajes han sido durante mucho tiempo
posiblemente los más usados de todos,
principalmente debido a su estrecha relación con
los Sistemas Expertos utilizados en Inteligencia
Artificial.
Lenguajes utilizados para la
Representación del Conocimiento
•
Este tipo de lenguajes han recibido también un fuerte
impulso a partir de la aparición de la web semántica, ya
que que se piensa en ellos como herramientas para
definir servicios web, y como herramienta base que
permita definir la forma en la que pueden interactuar
las aplicaciones de comercio electrónico.
•
Para ello se ha creado una iniciativa “Rule Markup
Initiative” que ha diseñado el lenguaje RuleML, basado
en XML y que por lo tanto está pensado desde su
concepción para garantizar la interoperabilidad
necesaria en el web.
domingo 11 de mayo de 14
Mapa Conceptual
• Organización del Conocimiento
domingo 11 de mayo de 14
Redes Semánticas
domingo 11 de mayo de 14
Redes Semánticas
domingo 11 de mayo de 14
Redes Semánticas
y podríamos incluir otra frase, “Garfield es un Gato”
Garfield
es un
gato
es un
animal
De donde es posible inferir la respuesta a
¿ Garfield es un animal ?
domingo 11 de mayo de 14
Extracción de frases del modelo
domingo 11 de mayo de 14
Construir la red semántica
• Los Hobbits son personas pequeñas
• Frodo es un Hobbit
• Los Hobbits tienen dedos gordos
• Frodo posee un anillo mágico
• El anillo fue encontrado en una cueva
• Los Hobbits son personas míticas
domingo 11 de mayo de 14
Lógica de Predicados
• Sintaxis
domingo 11 de mayo de 14
Lógica de Predicados
• Semántica
• Todos los informaticos son listos, Juan es
informatico, luego juan es listo
domingo 11 de mayo de 14
Lógica de Predicados
•
Un predicado con variables libres no es verdadero ni
falso, hasta que se asignen valores para dichas variables.
•
Algunos de ellos serán siempre verdaderos
independientemente de los valores que se escojan:
estos son predicados válidos.
•
Un predicado que es verdadero o falso dependiendo
de los valores elegidos se dice que es satisfacible.
•
Un predicado que es siempre falso se dice que es no
satisfacible.
domingo 11 de mayo de 14
•
domingo 11 de mayo de 14
Razonamiento con
Incertidumbre
Los principales formalismos que permiten el tratamiento
de información
•
Factores de Certeza y su generalización en lógica
difusa, fáciles de aplicar pero sin bases teóricas solidas.
•
Los Cálculos probabilisticos mediante las teorias de
Dempster y Schafer, muy bien fundamentadas en la
teoría de la probabilidad, pero difíciles de aplicar.
•
Las Redes Bayesianas, las cuales están bien
fundamentadas, pero necesitan un modelo de la
realidad que no siempre esta presente.
Manipulación del
Conocimiento Incierto
•
Supongamos que hacemos uso de la lógica de
predicados para hacer una aplicación de
diagnóstico dental.
∀x Sintoma(x,dolor-de-muelas)
Enfermedad(x,Caries)
• El problema que la regla es errónea. No todos
los pacientes con dolores de muelas tienen
caries, algunos tienen dolencias de encias. Un
absceso, u otro problema disntinto.
domingo 11 de mayo de 14
Manipulación del
Conocimiento Incierto
∀x Sintoma(x,dolor-de-muelas)
Enfermedad(x,Caries)⋁
Enfermedad(x,Problema-Encias ) ⋁
Enfermedad(x,Absceso )
•
Desafortunadamente para hacer la regla
cierta, tendríamos que añadir una lista casi
ilimitada de causas posibles.
domingo 11 de mayo de 14
Manipulación del
Conocimiento Incierto
•
Una solución podría ser convertir la regla a
formula clausal.
•
∀x Enfermedad(x,Caries)
de-muelas)
•
•
Pero esta regla también es errónea porque no
todas las caries causan dolencias.
Inclusive existe la posibilidad de que el
paciente podría tener un dolor de muelas y
una caries que no estén relacionados.
domingo 11 de mayo de 14
Sintoma(x,dolor-
Manipulación del
Conocimiento Incierto
• La conexión entre dolor de muelas y caries
no es exactamente una consecuencia lógica
en ninguna dirección.
• Nuestra principal herramienta para tratar
este caso sería la teoría de la probabilidad,
que asigna a cada hecho un grado numérico
de creencia entre 0 y 1.
domingo 11 de mayo de 14
Manipulación del
Conocimiento Incierto
• No podríamos saber con seguridad lo que
aqueja a un paciente en particular, pero
podríamos creer que hay, digamos un 80
por ciento de posibilidades (esto es, una
probabilidad de 0.8) de que el paciente que
tiene una caries si tiene un dolor de
muelas.
domingo 11 de mayo de 14
•
•
Notación Básica con
probabilidades
Proposiciones
Los grados de creencias se aplican siempre a las
proposiciones (afirmaciones de que tal o cual es
el caso)
•
Recordemos la lógica proposicional y la lógica de
predicados.
•
Pero en la teoría de la probabilidad típicamente
usa un lenguaje que es ligeramente mas expresivo
que la lógica proposicional.
domingo 11 de mayo de 14
•
Notación Básica con
probabilidades
El elemento básico del lenguaje es la variable aleatoria,
que puede pensarse como algo que se refiere a “una”
parte del mundo cuyo estatus es desconocido
inicialmente.
•
Por ejemplo: Caries podría referirse a si mi muela del
juicio inferior izquierda tiene una caries.
•
•
Se recomienda escribir en mayúsculas.
domingo 11 de mayo de 14
Cada variable aleatoria tiene un dominio de posibles
valores que puede tomar. Por ejemplo el dominio de la
variable Caries podría ser ⟪cierto, falso⟫
•
•
•
•
domingo 11 de mayo de 14
Notación Básica con
probabilidades
Variables Aleatorias Booleanas
•
Caries = cierto
Variables Aleatorias Discretas. Sea el dominio
Tiempo
•
⟪soleado,lluvioso,nublado,nevado⟫
Variables Aleatorias Continuas. Toman sus valores
de los números reales.
X=4.02
¿Que son las
probabilidades?
domingo 11 de mayo de 14
Los valores numéricos
de las probabilidades
domingo 11 de mayo de 14
Consecuencias de los
axiomas de probabilidad
domingo 11 de mayo de 14
Variables Aleatorias
domingo 11 de mayo de 14
Variables Aleatorias
domingo 11 de mayo de 14
Distribución de
Probabilidad
domingo 11 de mayo de 14
Proposiciones mas
Complejas
domingo 11 de mayo de 14
Ejemplo de distribución conjunta
domingo 11 de mayo de 14
La importancia de la
distribución conjunta
domingo 11 de mayo de 14
Probabilidad Condicional
domingo 11 de mayo de 14
Distribución Condicional
domingo 11 de mayo de 14
Razonamiento con probabilidades:
La regla de Bayes
domingo 11 de mayo de 14
1
Regla de Bayes: Forma General
Regla de Bayes: Forma General
• Forma general de la Regla de Bayes
– Si se tiene un conjunto de proposiciones {A1, A2,..., Am}
completas y mutuamente excluyente se tiene:
P(Ai|B)=
P(B|Ai) P(Ai)
P(B|A1) P(A1)+... P(B|An) P(Am)
O lo que es lo mismo, si tiene una variable aleatoria A con
valores a1, a2,..., am
P(ai|B)=
domingo 11 de mayo de 14
P(B|ai) P(ai)
P(B|a1) P(a1)+... P(B|an) P(am)
1
La
de de
Bayes:
Ejemplo
LaRegla
Regla
Bayes:
Ejemplo
• Intentemos resolver un caso real con
probabilidades:
– Se pretende determinar si un alumno conoce un concepto en
base a la resolución de un ejercicio.
• En este caso:
– Hipótesis (SC): Sabe_Concepto (variable aleatoria con dos valores verdadero y
falso)
– Evidencia (RE): Resuelve_Ejercicio (variable aleatoria con dos valores positivo y
negativo)
• Aplicando la Regla de Bayes:
P(sc|re)= P(re|sc) P(sc) /(P(re|sc)
P(sc)
+ P(re|
¬
sc)
P(¬ sc))=0.95
P(¬ sc |re)=0.05
• Al elegir la hipótesis más probable debemos concluir que si resuelve el
ejercicio sabe el concepto
domingo 11 de mayo de 14
Calculo
P(sc|re)= [(0.76)*(0.80)]/[(0.76)*(0.80)+(0.18)*(0.20)]= 0.95
0.76
re
0.8
¬re
0.04
sc
¬sc
0.2
0.18
re
¬re
domingo 11 de mayo de 14
0.02
1
La Regla
de Bayes:
Ejemplo
La Regla
de Bayes:
Ejemplo
• Continuamos con el ejemplo:
– ¿Y si hay varios ejercicios E1,..., Em?
• Supondremos que cada ejercicio RE1, RE2,..., REm es una variable aleatoria
que indica si se resuelve con dos valores: verdadero y falso.
– Entonces si queremos calcular la probabilidad de que el alumno
sepa el concepto necesitamos calcular:
P(SC| E1,RE2,...,REm)=P(RE1,,...,REm|SC)P(SC)/P(RE1,RE2,...,REm)
– Si al alumno se le hace un conjunto de 7 ejercicios:
domingo 11 de mayo de 14
do Pérez Nava
• Entonces para almacenar la tabla de probabilidad conjunta
P(RE1,RE2,...,REm| SC) se necesitan guardar unos 27 números reales (un
DVD por alumno).
• ¿De donde sacamos los números ?
• ¿Cómo hacemos los cálculos computacionalmente eficientes?
1
Independencia:
Solución?
Independencia¿Una
¿ Una
Solución
?
• Independencia
– Decimos que dos proposiciones A1 y A2 son independientes si el
conocimiento de una no cambia la probabilidad de la otra
• Por ejemplo si
– A1=“Es rubio” , A2=“Tiene la piel clara” ,A3=“Lloverá mañana”
– A1 y A3 son independientes A1 y A2 no.
– Formalmente A1,A2 son independientes si P(A1|A2)=P(A1)
o de forma equivalente: P(A2|A1)=P(A2)
o utilizando la regla del producto P(A1∧A2)= P(A1) P(A2)
– Dos variables aleatorias son independientes si el conocimento
del valor que toma una no cambia la probabilidad de los valores
de la otra: P(A1=c|A2 =d) = P(A1=c)
Programa de Doctorado de Física e Informática. Bienio 04-06. Dept. Estadística, I.O. y Computación. Universidad de la Laguna
domingo 11 de mayo de 14
Fernando Pérez Nava
– Entonces P(A1 ∧ A2 ∧... ∧ An)= P(A1) P(A2)... P(An)
Para especificar la distribución conjunta de n variables se
necesitan o(n) números en lugar de o(2n)
Redes Bayesianas:
Introducción
domingo 11 de mayo de 14
• En una RB, la información proporcionada por una
o más variables que se observan (evidencia) se
propaga por la red y actualiza nuestra creencia
acerca de las variables no observadas. A este
proceso se le llama inferencia.
• Es posible aprender las probabilidades
condicionales que describen las relaciones entre
las variables a partir de los datos. Incluso es
posible aprender la estructura completa de la red
a partir de datos completos o con algunos de sus
valores desconocidos.
• Las RB pueden utilizarse para tomar decisiones
óptimas introduciendo posibles acciones y la
utilidad de sus resultados
Programa de Doctorado de Física e Informática. Bienio 04-06. Dept. Estadística, I.O. y Computación. Universidad de la Laguna
domingo 11 de mayo de 14
Fernando Pérez Nava
Redes bayesianas: Inferencia,
Redes
Bayesianas:
Inferencia,
Decisión
y
Aprendizaje
1
Decisión y Aprendizaje
Redes Bayesianas:
Redes Bayesianas: Utilización
Utilización
1
• Algunas aplicaciones de RB en empresas
– Microsoft
• Answer Wizard (Office)
• Diagnóstico de problemas de usuario (Aladdin)
• Home Health en la red de Microsoft (MSN)
– Intel
• Diagnóstico de fallos de procesadores
– HP
• Diagnóstico de problemas de impresora
– Nokia
• Diagnóstico de redes celulares
– Nasa
• Sistema de ayuda a la decisión en misiones espaciales
domingo 11 de mayo de 14
Red
Bayesiana: Ejemplo
Red Bayesiana:Ejemplo
Diagnóstico de Problemas de Impresión (Heckerman)
Programa de Doctorado de Física e Informática. Bienio 04-06. Dept. Estadística, I.O. y Computación. Universidad de la Laguna
domingo 11 de mayo de 14
Fernando Pérez Nava
1
1
Red Bayesiana:Ejemplo
Red Bayesiana: Ejemplo
Diagnóstico de Problemas en redes celulares para Nokia (Barco y otros)
Programa de Doctorado de Física e Informática. Bienio 04-06. Dept. Estadística, I.O. y Computación. Universidad de la Laguna
domingo 11 de mayo de 14
Redes Bayesianas:
Redes Bayesianas: Algunas
Algunas Herramientas
Herramientas
1
• Norsys
– Programa: Netica
– Descarga de: http://www.norsys.com/netica.html
• Microsoft
Programa de Doctorado de Física e Informática. Bienio 04-06. Dept. Estadística, I.O. y Computación. Universidad de la Laguna
domingo 11 de mayo de 14
Fernando Pérez Nava
– MSBNx
– Descarga de: http://research.microsoft.com/adapt/MSBNx/
¿1 Que
es
una
red
bayesiana
?
¿Qué es un Red Bayesiana (RB)?
• Una RB es un grafo dirigido en el que
cada nodo contiene información
probabilística.
• Para determinar una RB hace falta:
– Un conjunto de variables aleatorias que forman los nodos de la
red. Las variables pueden ser discretas o continuas
– Un conjunto de enlaces dirigidos (arcos) que conectan parejas
de nodos. Si hay un arco del nodo X al Y se dice que X es el
padre de Y.
– Cada nodo Xi tiene una distribución de probabilidad condicional:
P(Xi|Padres (Xi)) que mide el efecto de los padres de ese nodo.
– El grafo no tiene ciclos dirigidos (y por tanto es un grafo dirigido
acíclico o DAG)
Programa de Doctorado de Física e Informática. Bienio 04-06. Dept. Estadística, I.O. y Computación. Universidad de la Laguna
domingo 11 de mayo de 14
Fernando Pérez Nava
• El significado intuitivo de un arco desde el nodo X al Y es que X tiene una
influencia directa en Y
Descargar