Vous êtes sur la page 1sur 65

Inteligencia Artificial

Representacion del Conocimiento y Razonamiento

Universidad Politecnica
Metropolitana de Puebla
Dr. Franco Rojas L
opez

July 27, 2016

Introducci
on IA 1/41
Outline

1 Ontologa

2 Categoras y objetos

3 Clasificaci
on y predicci
on
Preparando los datos para clasificaci
on
Decision Tree Induction
Attribute Selection Measures
Gain Ratio

Introducci
on IA 2/41
Outline

1 Ontologa

2 Categoras y objetos

3 Clasificaci
on y predicci
on

Introducci
on IA 3/41
Sistemas basados en conocimiento
En la decada de los 60s los trabajos de Inteligencia Artificial se
centraban en la demostraci on de teoremas, juegos, problemas logicos,
etc. con la idea implcita de que los resultados pudieran ser aplicables
a problemas reales.

Introducci
on IA 4/41
Sistemas basados en conocimiento
En la decada de los 60s los trabajos de Inteligencia Artificial se
centraban en la demostraci on de teoremas, juegos, problemas logicos,
etc. con la idea implcita de que los resultados pudieran ser aplicables
a problemas reales.
Decada de los 60s traducci
on automatica entre lenguajes naturales.

Introducci
on IA 4/41
Sistemas basados en conocimiento (Google Translator)
Consiste de un programa que se encarga de buscar, comparar y
analizar documentos que hayan sido traducidos por personas.

Introducci
on IA 5/41
Sistemas basados en conocimiento (Google Translator)
Consiste de un programa que se encarga de buscar, comparar y
analizar documentos que hayan sido traducidos por personas.
Busca patrones en un extenso n
umero de textos que ayudan a elegir
la traduccion ms adecuada.

Introducci
on IA 5/41
Sistemas basados en conocimiento (Google Translator)
Traducci
on autom
atica
Tiene un amplio impacto Social y comercial.

Introducci
on IA 6/41
Sistemas basados en conocimiento (Google Translator)
Traducci
on autom
atica
Tiene un amplio impacto Social y comercial.
De gran impacto en comunidades multilingues especialmente
importante en la union Europea, puesto que los documentos deben
ser traducidos en 23 idiomas.

Introducci
on IA 6/41
Sistemas basados en conocimiento (Google Translator)
Traducci
on autom
atica
Tiene un amplio impacto Social y comercial.
De gran impacto en comunidades multilingues especialmente
importante en la union Europea, puesto que los documentos deben
ser traducidos en 23 idiomas.
Traducci
on autom
atica Aplicaciones
Vigilancia contra el terrorismo.
Especial interes en traducir de arabe al Ingles y de chino a Ingles.

Introducci
on IA 6/41
Lenguajes para representar el conocimiento
Definici
on de Ontologa
Esta asociado a Filosofa, a la naturaleza del ser y la posibilidad de
que el conocimiento humano pueda saber lo que son las cosas.
Studer la define como una especificaci
on formal y explcita de una
a
conceptualizacion compartida.
a
se refiere a un modelo abstracto de un fen
omeno del mundo del cual se tienen
identificados sus conceptos relevantes.

Introducci
on IA 7/41
Lenguajes para representar el conocimiento
Compartida
Hace referencia que la ontologa captura el conocimiento consensual
de una comunidad y no es privada de un individuo.
Formal
Se refiere a que las restricciones sobre los conceptos utilizados deben
ser claramente definidas.

Introducci
on IA 8/41
Definicion Ontologa
Neches et al.
Describen a una ontologa como un elemento que define los terminos
basicos y sus relaciones contenidos en un vocabulario de un dominio,
as como las reglas para combinar terminos y relaciones que definen la
extension de una conceptualizacion.

Introducci
on IA 9/41
Definicion Ontologa
W3C
una ontologa define los terminos a utilizar para describir y representar
un area de conocimiento. Las ontologas son utilizadas por las
personas, las base de datos y las aplicaciones que necesitan compartir
un dominio de interes.

Introducci
on IA 10/41
Introducci
on IA 11/41
Introducci
on IA 12/41
Porque desarrollar una ontologa?
Compartir el entendimiento com
un de la informacion entre personas y
programas de software.
Permitir la reutilizaci
on del conocimiento acerca de un dominio.
Hacer expltas las suposiciones acerca de un dominio y permitir que
estas cambien si el conocimiento cambia.
Analizar el conocimiento acerca de un dominio.

Introducci
on IA 13/41
Outline

1 Ontologa

2 Categoras y objetos

3 Clasificaci
on y predicci
on

Introducci
on IA 14/41
Categoras y objetos

Introducci
on IA 15/41
Categoras y objetos

La organizacion de objetos en categoras es una parte vital de la


Representacion del Conocimiento.
Las categoras sirven para hacer predicciones sobre los objetos una vez
que estan clasificados.

Introducci
on IA 15/41
Clasificacion

Introducci
on IA 16/41
Clasificacion

Introducci
on IA 17/41
Clasificacion
Existen dos opciones para representar categoras en l
ogica de primer orden
Predicados
Objetos
Predicado: mi arbol(MyAsh)
Categora: arboles
miembro(MyAsh, arboles)

Es posible abreviarlo como:


MyAsh  arboles

Introducci
on IA 18/41
Clasificacion
Categora, es un conjunto que agrupa a sus miembros.
Las categoras sirven para organizar y simplificar el conocimiento
base, a traves de la herencia.
Se dice que todos los objetos de la categora alimentos son
comestibles, y se afirma que Fruta es una subclase de Alimentos y
que Manzanas es una subclase de Fruta, entonces cualquier manzana
es comestible.

Introducci
on IA 19/41
Taxonomia frutas

Taxonoma: Ciencia que trata de los principios, metodos y fines de la clasi-


ficacion, generalmente cientfica; se aplica, en especial, dentro de la biologa
para la ordenacion jerarquizada y sistematica de los grupos de animales y
de vegetales.

Introducci
on IA 20/41
Outline

1 Ontologa

2 Categoras y objetos

3 Clasificaci
on y predicci
on
Preparando los datos para clasificaci
on
Decision Tree Induction
Attribute Selection Measures
Gain Ratio

Introducci
on IA 21/41
Reglas de clasificacion

Introducci
on IA 22/41
Reglas de clasificacion

Introducci
on IA 23/41
Reglas de clasificacion
Data Cleaning. Se refiere al procesamiento de los datos para
remover o reducir el ruido y el tratamiento de valores perdidos.

Introducci
on IA 24/41
Reglas de clasificacion
Data Cleaning. Se refiere al procesamiento de los datos para
remover o reducir el ruido y el tratamiento de valores perdidos.
Relevance Analysis. Muchos de los atributos en los datos pueden
ser redudantes.

Introducci
on IA 24/41
Reglas de clasificacion
Data Cleaning. Se refiere al procesamiento de los datos para
remover o reducir el ruido y el tratamiento de valores perdidos.
Relevance Analysis. Muchos de los atributos en los datos pueden
ser redudantes. Analisis de correlacion puede ser usado para
identificar si dos atributos estan estadsticamente relacionados.

Introducci
on IA 24/41
Reglas de clasificacion
Data Cleaning. Se refiere al procesamiento de los datos para
remover o reducir el ruido y el tratamiento de valores perdidos.
Relevance Analysis. Muchos de los atributos en los datos pueden
ser redudantes. Analisis de correlacion puede ser usado para
identificar si dos atributos estan estadsticamente relacionados.
Data transformation and reduction. Los datos pueden ser usados
por transformacion. Normalizaci
on involucra escalar todos los
valores para un atributo dado.

Introducci
on IA 24/41
Decision tree

A decision tree for the concept buys computer, indicating whether a


customer at AllElectronics is likely to purchase a computer. Each internal
(nonleaf) node represents a test on an attribute. Each leaf node represents
a class (either buys computer = yes or buys computer = no).

Introducci
on IA 25/41
Porque los clasificadores basados en arboles de decision son
populares?
No requiere ning
un conocimiento de dominio o configuracion de
parametros.

Introducci
on IA 26/41
Porque los clasificadores basados en arboles de decision son
populares?
No requiere ning
un conocimiento de dominio o configuracion de
parametros.
Pueden manejar grandes cantidades de datos.

Introducci
on IA 26/41
Porque los clasificadores basados en arboles de decision son
populares?
No requiere ning
un conocimiento de dominio o configuracion de
parametros.
Pueden manejar grandes cantidades de datos.
La representacion del conocimiento adquirido en forma de arbol es
intuitivo y facil de asimilar por los humanos.

Introducci
on IA 26/41
Porque los clasificadores basados en arboles de decision son
populares?
No requiere ning
un conocimiento de dominio o configuracion de
parametros.
Pueden manejar grandes cantidades de datos.
La representacion del conocimiento adquirido en forma de arbol es
intuitivo y facil de asimilar por los humanos.
Los pasos de clasificaci
on y de aprendizaje del arbol de decision son
simples y rapidos.

Introducci
on IA 26/41
Porque los clasificadores basados en arboles de decision son
populares?
No requiere ning
un conocimiento de dominio o configuracion de
parametros.
Pueden manejar grandes cantidades de datos.
La representacion del conocimiento adquirido en forma de arbol es
intuitivo y facil de asimilar por los humanos.
Los pasos de clasificaci
on y de aprendizaje del arbol de decision son
simples y rapidos.
En general los algoritmos basados en arbol de decision tiene buena
precision.

Introducci
on IA 26/41
Porque los clasificadores basados en arboles de decision son
populares?
No requiere ning
un conocimiento de dominio o configuracion de
parametros.
Pueden manejar grandes cantidades de datos.
La representacion del conocimiento adquirido en forma de arbol es
intuitivo y facil de asimilar por los humanos.
Los pasos de clasificaci
on y de aprendizaje del arbol de decision son
simples y rapidos.
En general los algoritmos basados en arbol de decision tiene buena
precision.
Facil de implementar por los alumnos de la UPMP.

Introducci
on IA 26/41

Arbol de decision (Aplicaciones)
Medicina
Manufactura y producci
on
Analisis financiero
Astronomia
Biologa Molecular

Introducci
on IA 27/41
Decision Tree Induction
Medicina
Manufactura y producci
on
Analisis financiero
Astronomia
Biologa Molecular

Introducci
on IA 28/41
Decision tree (algorithm)

Introducci
on IA 29/41
Decision tree (algorithm)

Introducci
on IA 30/41
Decision tree algorithm Steps
El algoritmo es llamado con 3 parametros: D, attribute list y
attribute selection method

Introducci
on IA 31/41
Decision tree algorithm Steps
El algoritmo es llamado con 3 parametros: D, attribute list y
attribute selection method
I D se refiere a la partici
on de datos.

Introducci
on IA 31/41
Decision tree algorithm Steps
El algoritmo es llamado con 3 parametros: D, attribute list y
attribute selection method
I D se refiere a la partici
on de datos.
I El parametro attribute list es una lista de atributos que describen las
tuplas

Introducci
on IA 31/41
Decision tree algorithm Steps
El algoritmo es llamado con 3 parametros: D, attribute list y
attribute selection method
I D se refiere a la partici
on de datos.
I El parametro attribute list es una lista de atributos que describen las
tuplas
I attribute selection method es una heurstica para seleccionar el atributo
que mejor discrimina las tuplas dadas de acuerdo a la clase.

Introducci
on IA 31/41
Decision tree algorithm Steps
El arbol empieza con un solo nodo, N, representando las tuplas de
entrenamiento en D.

Introducci
on IA 32/41
Decision tree algorithm Steps
El arbol empieza con un solo nodo, N, representando las tuplas de
entrenamiento en D.
Si las tuplas en D son todas de la misma clase, entonces el nodo N es
etiquetado con esa clase.

Introducci
on IA 32/41
Decision tree algorithm Steps
El arbol empieza con un solo nodo, N, representando las tuplas de
entrenamiento en D.
Si las tuplas en D son todas de la misma clase, entonces el nodo N es
etiquetado con esa clase.
En otro caso, el algoritmo llama attribute selection method para
determinar el criterio de divisi
on.

Introducci
on IA 32/41
Decision tree algorithm Steps
El arbol empieza con un solo nodo, N, representando las tuplas de
entrenamiento en D.
Si las tuplas en D son todas de la misma clase, entonces el nodo N es
etiquetado con esa clase.
En otro caso, el algoritmo llama attribute selection method para
determinar el criterio de divisi
on.
I El criterio de divisi
on nos dice que atributo probar en N para
determinar la mejor forma de separar o particionar las tuplas en D en
clases individuales. Objetivo buscar particiones purasa
El Node N es etiquetado con el criterio de divisi
on, el cual sirve como
una prueba en el nodo.
a
Es pura si todas las tuplas pertenecen a la misma clase

Introducci
on IA 32/41
Decision tree (algorithm)

Introducci
on IA 33/41
El particionamiento se detiene s
olo cuando algunas de las condiciones son
verdaderas.
Pasos
Todas las tuplas en la partici
on D pertenecen a la misma clase.

Introducci
on IA 34/41
El particionamiento se detiene s
olo cuando algunas de las condiciones son
verdaderas.
Pasos
Todas las tuplas en la partici
on D pertenecen a la misma clase.
No existen mas atributos para dividir las tuplas.

Introducci
on IA 34/41
El particionamiento se detiene s
olo cuando algunas de las condiciones son
verdaderas.
Pasos
Todas las tuplas en la partici
on D pertenecen a la misma clase.
No existen mas atributos para dividir las tuplas.
No existen tuplas para una rama dada, es decir la particion Dj es
vaca.

Introducci
on IA 34/41
El particionamiento se detiene s
olo cuando algunas de las condiciones son
verdaderas.
Pasos
Todas las tuplas en la partici
on D pertenecen a la misma clase.

Introducci
on IA 35/41
El particionamiento se detiene s
olo cuando algunas de las condiciones son
verdaderas.
Pasos
Todas las tuplas en la partici
on D pertenecen a la misma clase.
No existen mas atributos para dividir las tuplas.

Introducci
on IA 35/41
El particionamiento se detiene s
olo cuando algunas de las condiciones son
verdaderas.
Pasos
Todas las tuplas en la partici
on D pertenecen a la misma clase.
No existen mas atributos para dividir las tuplas.
No existen tuplas para una rama dada, es decir la particion Dj es
vaca.

Introducci
on IA 35/41
Ganancia de informaci
on
info(D) = m
i=1 pi log2 (pi ) (1)

Donde pi es la probabilidad de que una tupla x pertenece a la clase


Ci y estimado por |Ci,D |/|D|. Se usa log2 porque la informacion en
codificada en bits.

Introducci
on IA 36/41
Ganancia de informaci
on
info(D) = m
i=1 pi log2 (pi ) (1)

Donde pi es la probabilidad de que una tupla x pertenece a la clase


Ci y estimado por |Ci,D |/|D|. Se usa log2 porque la informacion en
codificada en bits.
Cuando informacion necesitamos para llegar a una clasificacion exacta?
esta cantidad es medida por

|Dj |
InfoA (D) = vj=1 xInfo(Dj ) (2)
|D|
|D |
El termino |D|j actua como el peso para la jth partici
on. InfoA (D) es la
informacion esperada requerida para clasificar una tupla desde D basada
en el particionamiento por A.

Introducci
on IA 36/41
Ganancia de informaci
on
Gain(A) = Info(D) InfoA (D) (3)

Introducci
on IA 37/41
Resultados de Ganancia de informaci
on
info(D) = 0.94027
infoage (D) = 0.694
Gain(age) = info(D) - infoage = 0.94027- 0.694 = 0.246 bits

infoincome (D) = 0.90735


Gain(income) = 0.9420 - 0.90735 = 0.034

Gain(student) = 0.151
Gain(credit rating) = 0.048
Age tiene la Ganancia de informaci on mas alta entre los atributos por lo
tanto age es seleccionado para dividir los atributos.

Introducci
on IA 38/41
Introducci
on IA 39/41
Gain ratio
v
X |Dj | |Dj |
SplitInfoA (D) = log2 ( ) (4)
|D| |D|
j=1

This value represents the potential information generated by splitting the


training data set, D, into v partitions, corresponding to the v outcomes of
a test on attribute A.
Gain(A)
GainRatio(A) = (5)
SplitInfo(A)

The attribute with the maximun gain is selected as the splitting attribute.

Introducci
on IA 40/41
Introducci
on IA 41/41

Vous aimerez peut-être aussi