SlideShare una empresa de Scribd logo
21
Lo más leído
22
Lo más leído
26
Lo más leído
Árboles de decisión:
   Algoritmo ID3



     Inteligencia Artificial
Agenda
Árboles  de Decisión
¿Qué es ID3?
Entropía
Cálculo de la Entropía
Ganancia de Información
Ejemplos desarrollados
Ventajas y Desventajas
Bibliografía
Árboles de Decisión
Reglas  para clasificar datos usando los
 atributos que tienen.
El árbol estará formado por nodos de
 decisión, y nodos-hojas:
  ◦ Un nodo de decisión está asociado a uno de los
    atributos, y tiene 2 o más ramas, cada una
    representando posibles valores del atributo.
  ◦ Los nodos-hoja están asociados al atributo objetivo
    que se quiere clasificar (todos al mismo) y, por tanto,
    es el resultado de la decisión del árbol.
Ejemplo de Árbol de Decisión




       ¿Jugamos al golf?
¿Qué es ID3?
 Un  algoritmo matemático para construir un árbol de
  decisión.
 Fue creado por J. Ross Quinlan en 1979.
 Hace uso de la Teoría de la Información, desarrollada
  por Shannon en 1948.
 Construye un árbol de arriba a abajo, de forma directa,
  sin hacer uso de backtracking.
 Se usa el concepto de Ganancia de Información para
  seleccionar el atributo más útil en cada paso.
Entropía
 Permite
        calcular el grado de incertidumbre de una
 muestra:
  ◦ Una muestra completamente homogénea tiene entropía 0.
  ◦ Una muestra igualmente distribuida tiene entropía 1.
 En   general, la fórmula de la entropía es:




 Entropía(s)
            = - P log2 (P) – N log2 (N), donde P son los
 ejemplos positivos y N los negativos.
Ejemplo de Entropía
Cálculo de la Entropía
 Recordemos    que:

                  log2(a) = log10(a) / log10(2)
                        logx(0) = error

 Por   tanto, se debe sustituir: 0 log2(0) por 0
Ganancia de Información
 La Ganancia de Información se basa en el decremento de la
  entropía cuando el conjunto de datos se divide en los valores de un
  atributo.
 ¿Qué atributo crea las ramas más homogéneas?
   ◦ Se calcula la entropía del total.
   ◦ Se divide el conjunto de datos en función de los diferentes atributos.
   ◦ Se calcula la entropía de cada rama y se suman proporcionalmente
     las ramas para cacular la entropía del total.
   ◦ Se resta este resultado de la entropía original.
   ◦ El resultado es la Ganancia de Información (descenso de entropía).
   ◦ El atributo con mayor Ganancia es señecciona como nodo de
     decisión.
Ganancia de Información
 Una  rama con entropía 0 se convierte en hoja (todos
  sus casos están ya clasificados).
 Si no es así, la rama debe seguir sudividiéndose (para
  poder clasificar mejor sus nodos).
 El algoritmo ID3 se ejecuta recursivamente en nodos
  que no son hojas, hasta que se llegue a nodos-hoja.
Ejemplo: PlayGolf
            Atributos   Objetivo
Ejemplo: PlayGolf
                    1º



                         2º
Ejemplo: PlayGolf
                    3º




                         4º
Ejemplo: PlayGolf

                5º




                     repetir




                       …repetir…
Ejemplo: PlayGolf
                    Árbol de decisión




                                …repetir…
Ejemplo: PlayGolf
                    Árbol de decisión




                                …repetir…
Ejemplo: Los Simpsons
 Personaje     Longitud
                 Pelo
                          Peso   Edad   Género


      Homer      0”       250    36       H
       Marge     10”      150    34       M
        Bart     2”       90     10       H
        Lisa     6”       78      8       M
      Maggie     4”       20      1       M
        Abe      1”       170    70       H
       Selma     8”       160    41       M
        Otto     10”      180    38       H
      Krusty     6”       200    45       H

       Comic      8”      290     38       ?
p         p               n         n 
                                          Entropía ( S ) = −          log 2 
                                                                             p+n −
                                                                                                 log 2 
                                                                                                         p+n
                                                                                                             
                                                                  p+n                       p+n           
                                           Entropía(4F,5M) = -(4/9)log2(4/9) - (5/9)log2(5/9)
                                                          = 0.9911
          Sí                      No
            Longitud Pelo <= 5?

                                                                              Dividimos por
                                                                              Dividimos por
                                                                              Longitud Pelo
                                                                              Longitud Pelo

  Entrop                                   Entro
        ía(1F,                                  pía(3
               3M                                    F,2 M
                    ) = -(1                                        ) = -(3
                           /4)log                                            /5)log
                    = 0 .8       2 (1/4) -                         = 0.9              (3/5)
                          1 13             (3/4)   log (3/               710
                                                                                  2
                                                                                            - (2/5
                                                      2      4)                                    )log   (2/5)
                                                                                                      2




    Ganancia ( A) = E (actual ) − ∑ E (ramas )

Ganancia(Long Pelo <= 5) = 0.9911 – (4/9 * 0.8113 + 5/9 * 0.9710 ) =
0.0911
p         p               n         n 
                                       Entropía ( S ) = −           log 2 
                                                                           p+n −
                                                                                               log 2 
                                                                                                       p+n
                                                                                                           
                                                                p+n                       p+n           
                                        Entropía(4F,5M) = -(4/9)log2(4/9) - (5/9)log2(5/9)
                                                       = 0.9911
       Sí                      No
                Peso <= 160?

                                                                            Dividimos por
                                                                            Dividimos por
                                                                            Peso
                                                                            Peso

Entrop                                  Entro
      ía(4F,                                 pía(0
               1M) =                              F,4 M
                     -(4/5)l                                     ) = -(0
                             og2 (4/5                                      /4)log
                 = 0 .7              ) - (1/5                    = 0                (0/4)
                         219                 )   log (1/
                                                                                2
                                                                                          - (4/4
                                                    2      5)                                    )log   (4/4)
                                                                                                    2




 Ganancia ( A) = E (actual ) − ∑ E (ramas )

 Ganancia(Peso <= 160) = 0.9911 – (5/9 * 0.7219 + 4/9 * 0 ) = 0.5900
p         p               n         n 
                                        Entropía ( S ) = −          log 2 
                                                                           p+n −
                                                                                               log 2 
                                                                                                       p+n
                                                                                                           
                                                                p+n                       p+n           
                                         Entropía(4F,5M) = -(4/9)log2(4/9) - (5/9)log2(5/9)
                                                        = 0.9911
        Sí                      No
             Peso <= 160?

                                                                            Dividimos por
                                                                            Dividimos por
                                                                            Edad
                                                                            Edad

Entrop                                   Entro
      ía(3F,                                  pía(1
             3M                                    F,2 M
                  ) = -(3                                        ) = -(1
                         /6)log                                            /3)log
                  = 1          2 (3/6) -                         = 0.9              (1/3)
                                         (3/6)   log (3/               183
                                                                                2
                                                                                          - (2/3
                                                    2      6)                                    )log   (2/3)
                                                                                                    2




 Ganancia ( A) = E (actual ) − ∑ E (ramas )

  Ganancia(Edad <= 40) = 0.9911 – (6/9 * 1 + 3/9 * 0.9183 ) = 0.0183
De los 3 atributos, el que tiene más
Ganancia es Peso. Los que tienen
un peso superior a 160 están ya
perfectamente clasificados                        Sí                   No
(hombres), pero los que están por                       Peso <= 160?

debajo de ese peso todavía no…
Así que repetimos el proceso…


                                  Sí                    No
Repitiendo el proceso se               Longitud Pelo <= 2?

encuentra que podemos
dividirlo por Longitud del
Pelo, y llegamos a una
clasificación completa.
Una vez extraídas las reglas, no                    Peso <= 160?
necesitamos almacenar los datos.

                                               Sí              No
  ¿Cómo se clasificarían
  los siguientes
  personajes?                      Longitud Pelo <= 2?
                                                            Hombre
                                   Sí                No


                           Hombre                   Mujer
Es trivial convertir el árbol de              Peso <= 160?
decisión en reglas…
                                         Sí                  No
                               Longitud Pelo <= 2?   Hombre
                             Sí                No

                     Hombre                   Mujer
  Reglas para clasificar:
  Reglas para clasificar:

   Si Peso mayor que 160, clasifica como Hombre
  Si Peso mayor que 160, clasifica como Hombre
     Si no, Si Longitud Pelo menor ooigual que 2, clasifica como Hombre
      Si no, Si Longitud Pelo menor igual que 2, clasifica como Hombre
                Si no, clasifica como Mujer
               Si no, clasifica como Mujer
Ventajas de usar ID3
 Se  obtienen reglas comprensibles de un conjunto de
  datos de entrenamiento.
 Es un algoritmo muy rápido.
 Construye un árbol pequeño.
 Sólo necesita comprobar unos cuantos datos, hasta que
  todos estén clasificados.
 Al encontrar nodos-hoja el algoritmo no continúa, por lo
  que se reduce el número de comprobaciones.
 Se usa todo el conjunto de datos que se le den.
Desventajas de usar ID3
 Es fácil incurrir en un sobreentrenamiento o una
  sobreclasificación.
 Sólo se comprueba un atributo en cada paso.
 Clasificar datos continuos puede ser
  computacionalmente muy costoso, ya que deben
  crearse muchos árboles para ver dónde romper la
  continuidad.
Bibliografía
 Quinlan,    J.R. 1986, Machine Learning, 1, 81

 http://dms.irb.hr/tutorial/tut_dtrees.php

 http://www.dcs.napier.ac.uk/~peter/vldb/dm/node11.html

 http://www2.cs.uregina.ca/~dbd/cs831/notes/ml/dtrees/4_dtre

 Professor   Sin-Min Lee, SJSU.
  http://cs.sjsu.edu/~lee/cs157b/cs157b.html

Más contenido relacionado

PPTX
Unidad 4 a HERENCIA, CLASES ABSTRACTAS, INTERFACES Y POLIMORFISMO . UML
DOC
ejercicios de subnetting
PPTX
Caracteristicas de un vtp
PDF
Taller Practico 2 Base de Datos
PPTX
Resolución de problemas (oa)
PPTX
Arreglos c++
PPTX
Etapas en el diseño de Base de Datos
Unidad 4 a HERENCIA, CLASES ABSTRACTAS, INTERFACES Y POLIMORFISMO . UML
ejercicios de subnetting
Caracteristicas de un vtp
Taller Practico 2 Base de Datos
Resolución de problemas (oa)
Arreglos c++
Etapas en el diseño de Base de Datos

La actualidad más candente (20)

DOCX
Ejercicio 1,2,3
PDF
Compilador Usando Jflex y Cup
PPTX
Proyecto De Base De Datos
DOCX
FORMULAS DEL SISTEMA DE COLA M/M/1
PPT
Motores de bases de datos
PDF
PROGRAMACIÓN ORIENTADA A OBJETOS
DOCX
Guía de ejercicios de normalizacion
PPTX
Problemas en el desarrollo de software
PDF
Base de Datos para la Farmacia Chimú
DOCX
Herramientas bind
PPTX
Ejercicio de subneteo vlsm y cidr
PDF
Bases de datos temporales
PPTX
Ejercicios del 1 al 9
DOCX
base
PPT
Datacenter
PPTX
2. El proceso del software
PDF
Ejercicios resueltos de sql
PDF
Unidad iii pilas y colas
PDF
Esquemas de seguridad en los sistemas de bases de datos juan anaya manzano
PPT
Normalizaciòn
Ejercicio 1,2,3
Compilador Usando Jflex y Cup
Proyecto De Base De Datos
FORMULAS DEL SISTEMA DE COLA M/M/1
Motores de bases de datos
PROGRAMACIÓN ORIENTADA A OBJETOS
Guía de ejercicios de normalizacion
Problemas en el desarrollo de software
Base de Datos para la Farmacia Chimú
Herramientas bind
Ejercicio de subneteo vlsm y cidr
Bases de datos temporales
Ejercicios del 1 al 9
base
Datacenter
2. El proceso del software
Ejercicios resueltos de sql
Unidad iii pilas y colas
Esquemas de seguridad en los sistemas de bases de datos juan anaya manzano
Normalizaciòn
Publicidad

Similar a Arboles decision id3 (20)

DOCX
Logaritmo definición
PDF
Logaritmos
PDF
Numeros pseudoaleatorios
PPT
FuncióN Exponencial FuncióN LogaríTmica
PDF
Numero Pi
PDF
Matemáticas Octavo Grado
PDF
Exponenciales logaritmos
PPT
PPSX
Logaritmnos
PDF
Integracion
PDF
logaritmo septiembre 2022 kada.pdf
DOC
Soluciones A - B - C
DOC
Soluciones A - B - C
PDF
Alea 0506 resumen-----simulacion
DOC
Guia logaritmo prop
DOC
Guia de Logaritmos
PDF
Matbtema1ejerciciosresueltos
PDF
T2 logaritmos
Logaritmo definición
Logaritmos
Numeros pseudoaleatorios
FuncióN Exponencial FuncióN LogaríTmica
Numero Pi
Matemáticas Octavo Grado
Exponenciales logaritmos
Logaritmnos
Integracion
logaritmo septiembre 2022 kada.pdf
Soluciones A - B - C
Soluciones A - B - C
Alea 0506 resumen-----simulacion
Guia logaritmo prop
Guia de Logaritmos
Matbtema1ejerciciosresueltos
T2 logaritmos
Publicidad

Más de Fernando Sancho Caparrini (20)

PPTX
NetLogo 5th IISM
PPTX
03 la cultura como objeto de estudio
PPTX
17 arte contemporáneo
PPTX
15 dr. glearning
PPTX
13 herramientas para la publicación
PPTX
12 la gestión cultural en el ámbito de la conservación en museos de arte cont...
PPTX
11 taller sylva
PPTX
10 bases de datos
PPTX
09 bases de datos. practica
PPTX
08 catalogación
PPTX
07 herramientas para la investigación
PPTX
06 aplicaciones museo ac
PPTX
05 el gestor cultural
PPTX
04 la clase creativa
PPTX
02 del proyecto barroco a culture plex
PPTX
01 objetivos e introducción
PPTX
16 un resumen aplicado
PPT
Introduccion-a-la-inteligencia-artificial
NetLogo 5th IISM
03 la cultura como objeto de estudio
17 arte contemporáneo
15 dr. glearning
13 herramientas para la publicación
12 la gestión cultural en el ámbito de la conservación en museos de arte cont...
11 taller sylva
10 bases de datos
09 bases de datos. practica
08 catalogación
07 herramientas para la investigación
06 aplicaciones museo ac
05 el gestor cultural
04 la clase creativa
02 del proyecto barroco a culture plex
01 objetivos e introducción
16 un resumen aplicado
Introduccion-a-la-inteligencia-artificial

Arboles decision id3

  • 1. Árboles de decisión: Algoritmo ID3 Inteligencia Artificial
  • 2. Agenda Árboles de Decisión ¿Qué es ID3? Entropía Cálculo de la Entropía Ganancia de Información Ejemplos desarrollados Ventajas y Desventajas Bibliografía
  • 3. Árboles de Decisión Reglas para clasificar datos usando los atributos que tienen. El árbol estará formado por nodos de decisión, y nodos-hojas: ◦ Un nodo de decisión está asociado a uno de los atributos, y tiene 2 o más ramas, cada una representando posibles valores del atributo. ◦ Los nodos-hoja están asociados al atributo objetivo que se quiere clasificar (todos al mismo) y, por tanto, es el resultado de la decisión del árbol.
  • 4. Ejemplo de Árbol de Decisión ¿Jugamos al golf?
  • 5. ¿Qué es ID3?  Un algoritmo matemático para construir un árbol de decisión.  Fue creado por J. Ross Quinlan en 1979.  Hace uso de la Teoría de la Información, desarrollada por Shannon en 1948.  Construye un árbol de arriba a abajo, de forma directa, sin hacer uso de backtracking.  Se usa el concepto de Ganancia de Información para seleccionar el atributo más útil en cada paso.
  • 6. Entropía  Permite calcular el grado de incertidumbre de una muestra: ◦ Una muestra completamente homogénea tiene entropía 0. ◦ Una muestra igualmente distribuida tiene entropía 1.  En general, la fórmula de la entropía es:  Entropía(s) = - P log2 (P) – N log2 (N), donde P son los ejemplos positivos y N los negativos.
  • 8. Cálculo de la Entropía  Recordemos que: log2(a) = log10(a) / log10(2) logx(0) = error  Por tanto, se debe sustituir: 0 log2(0) por 0
  • 9. Ganancia de Información  La Ganancia de Información se basa en el decremento de la entropía cuando el conjunto de datos se divide en los valores de un atributo.  ¿Qué atributo crea las ramas más homogéneas? ◦ Se calcula la entropía del total. ◦ Se divide el conjunto de datos en función de los diferentes atributos. ◦ Se calcula la entropía de cada rama y se suman proporcionalmente las ramas para cacular la entropía del total. ◦ Se resta este resultado de la entropía original. ◦ El resultado es la Ganancia de Información (descenso de entropía). ◦ El atributo con mayor Ganancia es señecciona como nodo de decisión.
  • 10. Ganancia de Información  Una rama con entropía 0 se convierte en hoja (todos sus casos están ya clasificados).  Si no es así, la rama debe seguir sudividiéndose (para poder clasificar mejor sus nodos).  El algoritmo ID3 se ejecuta recursivamente en nodos que no son hojas, hasta que se llegue a nodos-hoja.
  • 11. Ejemplo: PlayGolf Atributos Objetivo
  • 12. Ejemplo: PlayGolf 1º 2º
  • 13. Ejemplo: PlayGolf 3º 4º
  • 14. Ejemplo: PlayGolf 5º repetir …repetir…
  • 15. Ejemplo: PlayGolf Árbol de decisión …repetir…
  • 16. Ejemplo: PlayGolf Árbol de decisión …repetir…
  • 17. Ejemplo: Los Simpsons Personaje Longitud Pelo Peso Edad Género Homer 0” 250 36 H Marge 10” 150 34 M Bart 2” 90 10 H Lisa 6” 78 8 M Maggie 4” 20 1 M Abe 1” 170 70 H Selma 8” 160 41 M Otto 10” 180 38 H Krusty 6” 200 45 H Comic 8” 290 38 ?
  • 18. p  p  n  n  Entropía ( S ) = − log 2   p+n −  log 2   p+n  p+n   p+n   Entropía(4F,5M) = -(4/9)log2(4/9) - (5/9)log2(5/9) = 0.9911 Sí No Longitud Pelo <= 5? Dividimos por Dividimos por Longitud Pelo Longitud Pelo Entrop Entro ía(1F, pía(3 3M F,2 M ) = -(1 ) = -(3 /4)log /5)log = 0 .8 2 (1/4) - = 0.9 (3/5) 1 13 (3/4) log (3/ 710 2 - (2/5 2 4) )log (2/5) 2 Ganancia ( A) = E (actual ) − ∑ E (ramas ) Ganancia(Long Pelo <= 5) = 0.9911 – (4/9 * 0.8113 + 5/9 * 0.9710 ) = 0.0911
  • 19. p  p  n  n  Entropía ( S ) = − log 2   p+n −  log 2   p+n  p+n   p+n   Entropía(4F,5M) = -(4/9)log2(4/9) - (5/9)log2(5/9) = 0.9911 Sí No Peso <= 160? Dividimos por Dividimos por Peso Peso Entrop Entro ía(4F, pía(0 1M) = F,4 M -(4/5)l ) = -(0 og2 (4/5 /4)log = 0 .7 ) - (1/5 = 0 (0/4) 219 ) log (1/ 2 - (4/4 2 5) )log (4/4) 2 Ganancia ( A) = E (actual ) − ∑ E (ramas ) Ganancia(Peso <= 160) = 0.9911 – (5/9 * 0.7219 + 4/9 * 0 ) = 0.5900
  • 20. p  p  n  n  Entropía ( S ) = − log 2   p+n −  log 2   p+n  p+n   p+n   Entropía(4F,5M) = -(4/9)log2(4/9) - (5/9)log2(5/9) = 0.9911 Sí No Peso <= 160? Dividimos por Dividimos por Edad Edad Entrop Entro ía(3F, pía(1 3M F,2 M ) = -(3 ) = -(1 /6)log /3)log = 1 2 (3/6) - = 0.9 (1/3) (3/6) log (3/ 183 2 - (2/3 2 6) )log (2/3) 2 Ganancia ( A) = E (actual ) − ∑ E (ramas ) Ganancia(Edad <= 40) = 0.9911 – (6/9 * 1 + 3/9 * 0.9183 ) = 0.0183
  • 21. De los 3 atributos, el que tiene más Ganancia es Peso. Los que tienen un peso superior a 160 están ya perfectamente clasificados Sí No (hombres), pero los que están por Peso <= 160? debajo de ese peso todavía no… Así que repetimos el proceso… Sí No Repitiendo el proceso se Longitud Pelo <= 2? encuentra que podemos dividirlo por Longitud del Pelo, y llegamos a una clasificación completa.
  • 22. Una vez extraídas las reglas, no Peso <= 160? necesitamos almacenar los datos. Sí No ¿Cómo se clasificarían los siguientes personajes? Longitud Pelo <= 2? Hombre Sí No Hombre Mujer
  • 23. Es trivial convertir el árbol de Peso <= 160? decisión en reglas… Sí No Longitud Pelo <= 2? Hombre Sí No Hombre Mujer Reglas para clasificar: Reglas para clasificar: Si Peso mayor que 160, clasifica como Hombre Si Peso mayor que 160, clasifica como Hombre Si no, Si Longitud Pelo menor ooigual que 2, clasifica como Hombre Si no, Si Longitud Pelo menor igual que 2, clasifica como Hombre Si no, clasifica como Mujer Si no, clasifica como Mujer
  • 24. Ventajas de usar ID3  Se obtienen reglas comprensibles de un conjunto de datos de entrenamiento.  Es un algoritmo muy rápido.  Construye un árbol pequeño.  Sólo necesita comprobar unos cuantos datos, hasta que todos estén clasificados.  Al encontrar nodos-hoja el algoritmo no continúa, por lo que se reduce el número de comprobaciones.  Se usa todo el conjunto de datos que se le den.
  • 25. Desventajas de usar ID3  Es fácil incurrir en un sobreentrenamiento o una sobreclasificación.  Sólo se comprueba un atributo en cada paso.  Clasificar datos continuos puede ser computacionalmente muy costoso, ya que deben crearse muchos árboles para ver dónde romper la continuidad.
  • 26. Bibliografía  Quinlan, J.R. 1986, Machine Learning, 1, 81  http://dms.irb.hr/tutorial/tut_dtrees.php  http://www.dcs.napier.ac.uk/~peter/vldb/dm/node11.html  http://www2.cs.uregina.ca/~dbd/cs831/notes/ml/dtrees/4_dtre  Professor Sin-Min Lee, SJSU. http://cs.sjsu.edu/~lee/cs157b/cs157b.html