Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Basado en
Similaridades
(SBL)
árboles de
Decisión
(TDIDT)
Algoritmo ID3
Árboles de Decisión
Cómo le hace
Atributos numéricos
y manejo de ruido
Ruido y Sobreajuste
árboles de Regresión
Eduardo Morales, Hugo Jair Escalante
y de Modelos
INAOE
(INAOE) 1 / 66
Contenido
Aprendizaje
Basado en
Similaridades
(SBL)
árboles de
Decisión
1 Aprendizaje Basado en Similaridades (SBL)
(TDIDT)
Algoritmo ID3
Cómo le hace
Atributos numéricos
y manejo de ruido
Ruido y Sobreajuste
2 árboles de Decisión (TDIDT)
árboles de Regresión
y de Modelos
Algoritmo ID3
Cómo le hace
Atributos numéricos y manejo de ruido
Ruido y Sobreajuste
árboles de Regresión y de Modelos
(INAOE) 2 / 66
Aprendizaje Basado en Similaridades (SBL)
SBL
Aprendizaje
Basado en
Similaridades
(SBL)
árboles de
Atributos
Decisión
(TDIDT)
Peludo? Edad? Tamaño? Clase
Algoritmo ID3
Cómo le hace
si viejo grande león
Atributos numéricos
y manejo de ruido
no joven grande no león
Ruido y Sobreajuste
árboles de Regresión
si joven mediano león
y de Modelos
si viejo pequeño no león
si joven pequeño no león
si joven grande león
no joven pequeño no león
no viejo grande no león
(INAOE) 3 / 66
Aprendizaje Basado en Similaridades (SBL)
Árbol de Decisión
Aprendizaje
Basado en
Similaridades
(SBL) ~
Tamano
árboles de
Decisión
(TDIDT) ~
pequeno mediano
Algoritmo ID3
Cómo le hace
Atributos numéricos
grande
y manejo de ruido
Ruido y Sobreajuste
árboles de Regresión
y de Modelos leon
no leon Peludo
si no
leon no leon
(INAOE) 4 / 66
Aprendizaje Basado en Similaridades (SBL)
Reglas de Clasificación
Aprendizaje
Basado en
Similaridades
(SBL)
árboles de
Decisión
(TDIDT)
Algoritmo ID3
If Tamaño = mediano If Tamaño = pequeño
Cómo le hace
Atributos numéricos
Then león Then no león
y manejo de ruido
Ruido y Sobreajuste
árboles de Regresión
y de Modelos If Tamaño = grande If Tamaño = grande
and Peludo = si and Peludo = no
Then león Then no león
(INAOE) 5 / 66
Árboles de Decisión (TDIDT)
(INAOE) 6 / 66
Árboles de Decisión (TDIDT)
(INAOE) 7 / 66
Árboles de Decisión (TDIDT)
Expresividad
Aprendizaje
Basado en
Similaridades
(SBL)
árboles de
Decisión • Están limitados a hablar de un solo objeto (son
(TDIDT)
Algoritmo ID3 proposicionales)
Cómo le hace
Atributos numéricos
y manejo de ruido
• No pueden expresar pruebas sobre dos o más objetos
Ruido y Sobreajuste
árboles de Regresión diferentes, e.g. ∃r2 Cercano(r2 , r ) ∧ Precio(r2 , p2 ) ∧
y de Modelos
Precio(r , p) ∧ MasBarato(p2 , p)
• Podrı́amos añadir un atributo Booleano que se llame:
RestMásBaratoCerca, pero es intratable para todas las
combinaciones de atributos
(INAOE) 8 / 66
Árboles de Decisión (TDIDT)
Expresividad
Aprendizaje
Basado en
Similaridades
(SBL)
árboles de
Decisión • Por otro lado son completamente expresivos dentro de
(TDIDT)
Algoritmo ID3 la clase de lenguajes proposicionales; cualquier función
Cómo le hace
Atributos numéricos Booleana puede ser descrita por un árbol de decisión
y manejo de ruido
Ruido y Sobreajuste
árboles de Regresión
• Trivialmente, podemos tomar cada fila como un camino
y de Modelos
en la construcción de un árbol
• Para muchas funciones, los árboles son relativamente
pequeños, pero para otras funciones requieren un árbol
exponencialmente grande (e.g., paridad o mayorı́a)
(INAOE) 9 / 66
Árboles de Decisión (TDIDT)
Complejidad
Aprendizaje
Basado en
Similaridades
(SBL)
árboles de
Decisión
(TDIDT) • Para n atributos, hay 2n filas y podemos considerar la
Algoritmo ID3
Cómo le hace
salida como una función definida por 2n bits
Atributos numéricos n
y manejo de ruido
Ruido y Sobreajuste
• Con esto hay 22 posibles funciones diferentes para n
árboles de Regresión
y de Modelos
atributos (para 6 atributos, hay 2 × 1019 )
• Por lo que tenemos que usar algún algoritmo ingenioso
para encontrar una hipótesis consistente en un espacio
de búsqueda tan grande
(INAOE) 10 / 66
Árboles de Decisión (TDIDT)
(INAOE) 11 / 66
Árboles de Decisión (TDIDT)
(INAOE) 12 / 66
Árboles de Decisión (TDIDT)
(INAOE) 13 / 66
Árboles de Decisión (TDIDT)
(INAOE) 14 / 66
Árboles de Decisión (TDIDT) Algoritmo ID3
Algoritmo ID3
Aprendizaje
Basado en
if ejemplos = vacı́o then regresa default
Similaridades
(SBL)
else if todos los ejemplos tienen la misma clasificación
árboles de
then regresa la clasificación
Decisión
(TDIDT)
else if atributos = vacı́o
Algoritmo ID3
Cómo le hace
then regresa VALOR-MAYORITARIO(ejemplos)
Atributos numéricos
y manejo de ruido
else Mejor ← ESCOGE-ATRIBUTO(atributos, ejemplos)
Ruido y Sobreajuste
árboles de Regresión
Arbol ← nuevo árbol de decisión con Mejor como raı́z
y de Modelos
para cada valor vi de Mejor do
ejemplosi ← {ejemplos con Mejor = vi }
Subárbol ← ARBOL-DECISION(ejemplosi ,
atributos - mejor,
VALOR-MAYORITARIO(ejemplos))
añade una rama a Arbol con etiqueta vi y
subárbol Subárbol
end
return Arbol
(INAOE) 15 / 66
Árboles de Decisión (TDIDT) Algoritmo ID3
Tabla de Ejemplo
Aprendizaje
Basado en
Ambiente Temp. Humedad Viento Clase
Similaridades
(SBL)
soleado alta alta no N
árboles de soleado alta alta si N
Decisión
(TDIDT)
nublado alta alta no P
Algoritmo ID3
Cómo le hace
lluvioso media alta no P
Atributos numéricos
y manejo de ruido
lluvioso baja normal no P
Ruido y Sobreajuste
árboles de Regresión
lluvioso baja normal si N
y de Modelos
nublado baja normal si P
soleado media alta no N
soleado baja normal no P
lluvioso media normal no P
soleado media normal si P
nublado media alta si P
nublado alta normal no P
lluvioso media alta si N
(INAOE) 16 / 66
Árboles de Decisión (TDIDT) Algoritmo ID3
Árbol de Salida
Aprendizaje
Basado en
Similaridades
(SBL) Ambiente
árboles de
Decisión
(TDIDT)
Algoritmo ID3
soleado lluvioso
Cómo le hace nublado
Atributos numéricos
y manejo de ruido
Ruido y Sobreajuste
árboles de Regresión
y de Modelos
Humedad P Viento
alta normal si no
N P N P
(INAOE) 17 / 66
Árboles de Decisión (TDIDT) Algoritmo ID3
Aplicaciones
Aprendizaje
Basado en Es la técnica que posiblemente más se ha usado en
Similaridades
(SBL) aplicaciones reales:
árboles de
Decisión • GASOIL (1986): Diseño de sistemas de separación de
(TDIDT)
Algoritmo ID3 hidrocarburos en plataformas petroleras de BP, 2,800
Cómo le hace
Atributos numéricos reglas, 1 año-hombre de tiempo de desarrollo, 0.1 de
y manejo de ruido
Ruido y Sobreajuste mantenimiento
árboles de Regresión
y de Modelos
• BMT (1990): Configuración de equipo de protección de
incendios en edificios, > 30,000 reglas, 9 años hombre
de desarrollo y 2 de mantenimiento
• Aprendiendo a volar (1992): Datos de pilotos haciendo
plan de vuelo 30 veces. Cada acción es un ejemplo. Se
usaron 90,000 ejemplos con 20 atributos y se observó
clean-up effect
(INAOE) 18 / 66
Árboles de Decisión (TDIDT) Cómo le hace
¿Cómo le hace?
Aprendizaje
Basado en
Similaridades • La medida en ESCOGE-ATRIBUTO debe ser máxima
(SBL)
cuando el atributo discrimine perfectamente ejemplos
árboles de
Decisión positivos y negativos, y mı́nima cuando el atributo no
(TDIDT)
Algoritmo ID3 sea relevante
Cómo le hace
Atributos numéricos
y manejo de ruido
• Una posibilidad es usar una medida basada en
Ruido y Sobreajuste
árboles de Regresión
cantidad de información (basado en la teorı́a de
y de Modelos
Shannon y Weaver ’49)
• La cantidad de información mide la (im)pureza en una
colección arbitraria de ejemplos
• La cantidad de información (medida en bits) recibida
respecto a la ocurrencia de un evento es inversamente
proporcional a la probabilidad de ocurrencia de dicho
evento
(INAOE) 19 / 66
Árboles de Decisión (TDIDT) Cómo le hace
Entropı́a
Aprendizaje
Basado en
Similaridades
(SBL)
árboles de
Decisión
(TDIDT)
Si se tienen vi posibles respuestas con probabilidades
Algoritmo ID3
Cómo le hace
P(vi ), el contenido de información es:
Atributos numéricos
y manejo de ruido
Ruido y Sobreajuste
n
X
árboles de Regresión
y de Modelos I(P(v1 ), . . . , P(vn )) = − P(vi )log2 P(vi )
i=1
(INAOE) 20 / 66
Árboles de Decisión (TDIDT) Cómo le hace
Función de Entropı́a
Aprendizaje
Basado en
Similaridades
(SBL)
E
árboles de
1
Decisión
(TDIDT)
Algoritmo ID3
Cómo le hace
Atributos numéricos
y manejo de ruido
Ruido y Sobreajuste
árboles de Regresión
y de Modelos
1/2 1 P(x)
(INAOE) 21 / 66
Árboles de Decisión (TDIDT) Cómo le hace
Entropı́a
Aprendizaje
Basado en
Similaridades • En el caso de los árboles queremos estimar las
(SBL)
árboles de
probabilidades de las respuestas, lo que se hace con la
Decisión
(TDIDT)
proporción de ejemplos positivos y negativos
Algoritmo ID3
Cómo le hace
• Si se tienen p ejemplos positivos y n ejemplos
Atributos numéricos
y manejo de ruido negativos, entonces:
Ruido y Sobreajuste
árboles de Regresión
y de Modelos
p n p p n n
I( , )=− log2 − log2
p+n p+n p+n p+n p+n p+n
• Un solo atributo normalmente no nos proporciona toda
esta información, pero podemos estimar cuanta, viendo
cuanta información necesitamos después de utilizar
ese atributo
(INAOE) 22 / 66
Árboles de Decisión (TDIDT) Cómo le hace
Entropı́a
Aprendizaje
Basado en
Similaridades • Cada atributo A, divide a los ejemplos en subconjuntos
(SBL)
árboles de
E1 , E2 , . . . , Ev de acuerdo a los v valores del atributo
Decisión
(TDIDT) • Cada subconjunto Ei tiene pi ejemplos positivos y ni
Algoritmo ID3
Cómo le hace ejemplos negativos, por lo que para cada rama
Atributos numéricos
y manejo de ruido necesitamos: I( pi p+n
i
, ni ) cantidad de información
i pi +ni
Ruido y Sobreajuste
árboles de Regresión
y de Modelos
para responder a una pregunta
• Un ejemplo aleatorio tiene el valor i-ésimo del atributo
A con probabilidad: pp+n
i +ni
. Por lo que en promedio,
después de probar el atributo A, necesitamos:
v
X pi + ni pi ni
E(A) = I( , )
p + n pi + ni pi + ni
i=1
(INAOE) 23 / 66
Árboles de Decisión (TDIDT) Cómo le hace
Ganancia de Información
Aprendizaje
Basado en
Similaridades
(SBL)
• La cantidad de información que ganamos al seleccionar
árboles de un atributo está dada por:
Decisión
(TDIDT)
p n
Algoritmo ID3
Ganancia(A) = I( , ) − E(A)
Cómo le hace
Atributos numéricos
p+n p+n
y manejo de ruido
Ruido y Sobreajuste
árboles de Regresión
• La ganancia de A me dice el número de bits que
y de Modelos
ahorramos para responder a la pregunta de la clase de
un ejemplo, dado que conocemos el valor del atributo A.
• Mide que tan bien un atributo separa a los ejemplos de
entrenamiento de acuerdo a la clase
• La función de evaluación escoge el atributo de mayor
ganancia
(INAOE) 24 / 66
Árboles de Decisión (TDIDT) Cómo le hace
Ejemplo
Aprendizaje
Basado en
Similaridades
(SBL)
árboles de
• Por ejemplo, si calculamos las ganancias para los
Decisión
(TDIDT)
atributos con los datos de la tabla de Golf (suponemos
Algoritmo ID3
Cómo le hace
que: 0 × log2 (0) = 0):
9 9 5 5
Atributos numéricos
y manejo de ruido
I(9, 5) = − 14 log2 ( 14 ) − 14 log2 ( 14 ) = 0.941
Ruido y Sobreajuste
árboles de Regresión
y de Modelos
• Para Ambiente:
soleado: p1 = 2, n1 = 3, I(p1 , n1 ) = 0.971
nublado: p2 = 4, n2 = 0, I(p2 , n2 ) = 0
lluvioso: p3 = 3, n3 = 2, I(p3 , n2 ) = 0.971
Entropı́a(Ambiente) =
5 4 5
14 I(p1 , n1 ) + 14 I(p2 , n2 ) + 14 I(p3 , n3 ) = 0.694
(INAOE) 25 / 66
Árboles de Decisión (TDIDT) Cómo le hace
Ejemplo
Aprendizaje
Basado en
Similaridades
(SBL)
(INAOE) 26 / 66
Árboles de Decisión (TDIDT) Cómo le hace
Ejemplo
Aprendizaje
Basado en
Similaridades
(SBL)
árboles de
Decisión • Las ganancias son entonces:
(TDIDT)
Algoritmo ID3 Ganancia(Ambiente) = 0.246 (MAX)
Cómo le hace
Atributos numéricos
y manejo de ruido
Ganancia(Humedad) = 0.151
Ruido y Sobreajuste
árboles de Regresión
Ganancia(Viento) = 0.048
y de Modelos
Ganancia(Temperatura) = 0.029
• Por lo que ID3 escoge el atributo Ambiente como nodo
raı́z y procede a realizar el mismo proceso con los
ejemplos de cada rama
(INAOE) 27 / 66
Árboles de Decisión (TDIDT) Cómo le hace
Ejemplo
Aprendizaje
Basado en
Similaridades
(SBL)
árboles de
• Para Ambiente tenemos tres subconjuntos: soleado
Decisión
(TDIDT) (2+, 3−), nublado (4+, 0−), lluvioso (3+, 2−). Para
Algoritmo ID3
Cómo le hace
nublado, no tenemos que hacer nada, más que
Atributos numéricos
y manejo de ruido asignarle la clase P
Ruido y Sobreajuste
árboles de Regresión
y de Modelos
• Por ejemplo, para soleado harı́amos el mismo proceso:
Ganancia(Humedad) = 0.97 - [(3/5)0 + (2/5)0] = 0.97
(MAX)
Ganancia(Temperatura) = 0.97 - [(2/5)0 + (2/5)1 +
(1/5)0] = 0.570
Ganancia(Viento) = 0.97 - [(2/5)1 + (3/5)0.918] = 0.019
(INAOE) 28 / 66
Árboles de Decisión (TDIDT) Cómo le hace
árboles de
Decisión • Con el árbol construido, podemos preguntar si está bien
(TDIDT)
Algoritmo ID3 jugar el sábado en la mañana con ambiente soleado,
Cómo le hace
Atributos numéricos temperatura alta, humedad alta y con viento, a lo cual el
y manejo de ruido
Ruido y Sobreajuste ábol me responde que no
árboles de Regresión
y de Modelos
• ID3 sigue una estrategia hill-climbing, sin backtracking
• Tiende a preferir construir árboles pequeños con
atributos con ganancia de información alta cerca de la
raı́z
(INAOE) 29 / 66
Árboles de Decisión (TDIDT) Cómo le hace
Criterio de Selección
Aprendizaje
Basado en
Similaridades
(SBL)
árboles de
Decisión • El criterio de selección tiende a favorecer atributos que
(TDIDT)
Algoritmo ID3
tienen más valores
Cómo le hace
Atributos numéricos
y manejo de ruido
• Por ejemplo, un atributo con valores aleatorios. Con
Ruido y Sobreajuste
árboles de Regresión
esto el algoritmo básico construye un árbol de un sólo
y de Modelos
nivel o decision stump
• Posible solución: árbol binario. Desventaja: árboles
difı́ciles de entender + computacionalmente caro (2n
subconjuntos para n valores)
(INAOE) 30 / 66
Árboles de Decisión (TDIDT) Cómo le hace
Criterio de Selección
Aprendizaje • Otra solución: Compensar dividiendo entre la
Basado en
Similaridades información de la división (split information) que se
(SBL)
define como:
árboles de
Decisión n
(TDIDT) X
Algoritmo ID3 SI(A) = − P(Ai )log2 P(Ai )
Cómo le hace
Atributos numéricos i=1
y manejo de ruido
Ruido y Sobreajuste
árboles de Regresión
y de Modelos
• E.g., si un atributo binario divide los datos en dos
subconjuntos de igual tamaño, el contenido de
información de su división es 1. Mientras que uno los
divide en 14 subconjuntos de tamaño 1, serı́a:
14(−1/14log2 (1/14)) = −log2 (1/14).
• No siempre funciona y muchas veces se usa el atributo
de la razón de ganancia de información máxima si su
ganancia es al menos tan grande como el promedio de
ganacia del resto de los atributos
(INAOE) 31 / 66
Árboles de Decisión (TDIDT) Cómo le hace
Otras Medidas
Aprendizaje
• Se han propuesto un gran número de diferentes
Basado en
Similaridades
heurı́sticas
(SBL) • Una medida muy utilizada es el ı́ndice Gini (CART):
árboles de
Decisión
m
X
(TDIDT)
Algoritmo ID3
Gini(t) = 1 − (p(j | t))2
Cómo le hace
j=1
Atributos numéricos
y manejo de ruido
Ruido y Sobreajuste donde p(j | t) es la frecuencia relativa de la clase j en t.
árboles de Regresión
y de Modelos
• Lo que se quiere es minimizar el ı́ndice al seleccionar
un atributo. Para esto se calcula el ı́ndice en cada rama
del atributo tomando en cuenta su proporción de
ejemplos
• Si se divide en k ramas:
k
X ni
GiniA = Gini(k)
n
i=1
donde ni son los ejemplos de la rama y n los del nodo.
(INAOE) 32 / 66
Árboles de Decisión (TDIDT) Atributos numéricos y manejo de ruido
árboles de
Decisión
(TDIDT)
Algoritmo ID3
Cómo le hace
Atributos numéricos
y manejo de ruido
Hasta ahora hemos visto cómo funciona el algoritmo con
Ruido y Sobreajuste
árboles de Regresión
atributos con valores discretos finitos y con datos sin ruido.
y de Modelos
Veremos ahora algunas extensiones para estos casos.
(INAOE) 33 / 66
Árboles de Decisión (TDIDT) Atributos numéricos y manejo de ruido
Atributos Numéricos
Aprendizaje • Normalmente se ordena el atributo, se identifican
Basado en
Similaridades ejemplos adyacentes que tengan valor de clase
(SBL)
diferente y se consideran como candidatos los puntos
árboles de
Decisión medios de división del valor del atributo
(TDIDT)
Algoritmo ID3 • A cada uno de estos se le calcula su ganancia de
Cómo le hace
Atributos numéricos información
y manejo de ruido
Ruido y Sobreajuste • Ejemplo de la tabla de Golf con temperatura:
árboles de Regresión
y de Modelos
64 65 68 69 70 71 72 75 80 81 83 85
P N P P P N N P N P P N
P P
• Existen 8 posibles lugares de corte que separan el valor
de la clase y a cada uno se calcula su ganancia
tomando el punto medio.
• Por ejemplo, para 71.5, Temperatura < 71.5 tiene 4 P y
2 N, y Temperatura > 71.5 tiene 5 P y 3 N.
(INAOE) 34 / 66
Árboles de Decisión (TDIDT) Atributos numéricos y manejo de ruido
Atributos Numéricos
Aprendizaje
Basado en
Similaridades
(SBL)
árboles de
Decisión
(TDIDT)
• Cada posible partición entra en competencia con el
Algoritmo ID3
Cómo le hace
resto de los atributos
Atributos numéricos
y manejo de ruido • Los atributos numéricos pueden aparecer varias veces
Ruido y Sobreajuste
árboles de Regresión
y de Modelos
en una rama de un árbol
• Para evitar ordenar ejemplos cada vez que se
selecciona un atributo, se guarda (al principio) con cada
subconjunto el orden de acuerdo a un atributo numérico
(INAOE) 35 / 66
Árboles de Decisión (TDIDT) Atributos numéricos y manejo de ruido
Valores Faltantes
Aprendizaje
Basado en
Similaridades
(SBL)
(INAOE) 36 / 66
Árboles de Decisión (TDIDT) Atributos numéricos y manejo de ruido
Valores Faltantes
Aprendizaje
Basado en
Similaridades
(SBL)
árboles de
Lo que hace C4.5 es distribuir los objetos con valores
Decisión
(TDIDT)
desconocidos entre los demas. En donde se calcula la
Algoritmo ID3
Cómo le hace
ganacia en información como si pi fuera:
Atributos numéricos
y manejo de ruido
Ruido y Sobreajuste
árboles de Regresión
pi + pd · razoni
y de Modelos
p + ni
razoni = P i
i (pi + ni )
y pd es la probabilidad de los datos desconocidos.
Haciendo lo equivalente para ni .
(INAOE) 37 / 66
Árboles de Decisión (TDIDT) Atributos numéricos y manejo de ruido
¿Cómo clasificar?
Aprendizaje
Basado en
Similaridades
(SBL) • La otra “cara de la moneda” es cómo clasificar con un
árboles de objeto con atributos desconocidos.
Decisión
(TDIDT)
Algoritmo ID3
• Idea: seguir todas las posibles ramas pero tomando en
Cómo le hace
Atributos numéricos
cuenta que algunas son más probables que otras
y manejo de ruido
Ruido y Sobreajuste
(tienen más datos que la sorportan)
árboles de Regresión
y de Modelos
T · razoni
(INAOE) 38 / 66
Árboles de Decisión (TDIDT) Atributos numéricos y manejo de ruido
Costo de Clasificación
Aprendizaje
Basado en
Similaridades
(SBL)
• Si existe un costo en la clasificación, y éste se conoce,
árboles de
entonces se puede incorporar a la probabilidad de la
Decisión
(TDIDT)
predicción de la clase (se multiplica)
Algoritmo ID3
Cómo le hace • Normalmente se define una matriz de costo con la
Atributos numéricos
y manejo de ruido diagonal con 0’s y los elementos fuera de la diagonal
Ruido y Sobreajuste
árboles de Regresión
y de Modelos
representan el costo de equivocarse en la clasificación
• Se multiplican las probabilidades de las clases
predichas por el clasificador, por la columna
correspondiente a la clase predicha en la matriz de
costo y se selecciona la clase de menor costo esperado
• Variando las matrices de costo se puede variar la
clasificación
(INAOE) 39 / 66
Árboles de Decisión (TDIDT) Atributos numéricos y manejo de ruido
Costo de Clasificación
Aprendizaje
Basado en
Similaridades
(SBL)
• También se ha estudiado como crear árboles cuando el
árboles de
Decisión costo de (error en la) clasificación es diferente (e.g.,
(TDIDT)
Algoritmo ID3 cancer).
Cómo le hace
Atributos numéricos
y manejo de ruido
• Una forma simple y general es generar datos de
Ruido y Sobreajuste
árboles de Regresión
entrenamiento con diferente proporción en las clases
y de Modelos
(INAOE) 40 / 66
Árboles de Decisión (TDIDT) Ruido y Sobreajuste
Ruido y Overfitting
Aprendizaje
Basado en
Similaridades
(SBL) • ID3 es útil en dominios no homogeneos (diferentes
árboles de
Decisión
relaciones entre atributos en diferentes regiones del
(TDIDT)
Algoritmo ID3
espacio de problemas) y alta dimensionalidad (muchos
Cómo le hace
Atributos numéricos
atributos)
y manejo de ruido
Ruido y Sobreajuste • A pesar de que falte información relevante, se pueda
árboles de Regresión
y de Modelos construir un árbol con atributos irrelevantes
• Con muchas posibles hipótesis se pueden encontrar
“regularidades con poco sentido”
• A este problema se le llama overfitting y afecta a todos
los tipos de aprendizaje (i.e., no sólo a los árboles de
decisión).
(INAOE) 41 / 66
Árboles de Decisión (TDIDT) Ruido y Sobreajuste
Ruido y Overfitting
Aprendizaje
Basado en
Similaridades
(SBL)
árboles de
Decisión
(TDIDT) Definición: dado un espacio de hipótesis H, una
Algoritmo ID3
Cómo le hace
hipótesis h ∈ H se dice que sobreajusta los datos
Atributos numéricos
y manejo de ruido de entrenamiento si existe otra hipótesis h0 ∈ H, tal
que h tiene errores más pequeños que h0 en los
Ruido y Sobreajuste
árboles de Regresión
y de Modelos
(INAOE) 42 / 66
Árboles de Decisión (TDIDT) Ruido y Sobreajuste
Ruido y Overfitting
Aprendizaje
Basado en
Similaridades
(SBL)
árboles de
Decisión
(TDIDT) Uno de los problemas a los que se enfrentan los sistemas
Algoritmo ID3
Cómo le hace de aprendizaje, y que provocan el sobreajuste, es cuando
Atributos numéricos
y manejo de ruido los ejemplos de entrenamiento contienen ruido:
Ruido y Sobreajuste
árboles de Regresión
y de Modelos • Valores de atributos erroneos, subjetivos
• Clasificación equivocada
• Valores desconocidos
(INAOE) 43 / 66
Árboles de Decisión (TDIDT) Ruido y Sobreajuste
Ruido y Overfitting
Aprendizaje
Basado en
Similaridades
(SBL)
árboles de
Decisión
• Con ruido, se pueden tener dos ejemplos con los
(TDIDT)
Algoritmo ID3
mismos valores de atributos, pero clase diferente
Cómo le hace
Atributos numéricos
• En presencia de ruı́do, el algoritmo básico (ID3)
y manejo de ruido
Ruido y Sobreajuste construye árboles de decisión que son más grandes de
árboles de Regresión
y de Modelos lo necesario, y no clasifican adecuadamente
• En el caso de árboles de decisión se tiene que decidir:
• Cómo trabajar con atributos inadecuados
• Cuándo al añadir atributos extra no mejora la predicción
del árbol de decisión
(INAOE) 44 / 66
Árboles de Decisión (TDIDT) Ruido y Sobreajuste
Ruido y Overfitting
Aprendizaje
Basado en
Similaridades
(SBL)
árboles de
Decisión
(TDIDT) En general, existen dos métodos para manejar ruido
Algoritmo ID3
Cómo le hace (basados en la condición de terminación):
Atributos numéricos
y manejo de ruido
Ruido y Sobreajuste • Pruning (o pre-pruning): Cambiar el criterio de paro del
árboles de Regresión
y de Modelos
árbol de decisión para “podar” ramas.
• Post-pruning: “Podar” ramas una vez construı́do el
árbol.
(INAOE) 45 / 66
Árboles de Decisión (TDIDT) Ruido y Sobreajuste
Pruning
Aprendizaje
Basado en
Similaridades
(SBL)
árboles de
• En este caso, se tiene que decidir cuándo parar o dejar
Decisión
(TDIDT)
de construir el árbol a pesar de no tener hojas con
Algoritmo ID3
Cómo le hace
ejemplos de una sola clase
Atributos numéricos
y manejo de ruido • Se han propuesto técnicas usando: (i) Un umbral de
Ruido y Sobreajuste
árboles de Regresión
y de Modelos
ganancia de información, (ii) usando validación cruzada
(si no mejora la clasificación con datos desconocidos
parar), (iii) usando medidas basadas en el principio de
longitud de descripión mı́nima (MDL), ...
• El problema principal en todos estos métodos es que
se basan en información local
(INAOE) 46 / 66
Árboles de Decisión (TDIDT) Ruido y Sobreajuste
Post-Pruning
Aprendizaje
Basado en
Similaridades
(SBL)
(INAOE) 47 / 66
Árboles de Decisión (TDIDT) Ruido y Sobreajuste
Post-Pruning
Aprendizaje
Basado en
Similaridades • El estimado de re-substitución está dado por la
(SBL)
proporción de ejemplos en el nodo mal clasificados si
árboles de
Decisión se toma la clase mayoritaria en el nodo
(TDIDT)
Algoritmo ID3
Cómo le hace
• Para hacer una estimación directa del error por
Atributos numéricos
y manejo de ruido
re-substitución (poda), se hace con los mismos datos,
Ruido y Sobreajuste
árboles de Regresión
se supone que siguen una distribución Bernoulli (por
y de Modelos
ser unos cuantos (< 100), la cual se aproxima a una
Normal con muchos datos), y considerando una
estimación pesimista dentro de un nivel de confianza
• Para estimar errores se especifican niveles de
confianza y las estadı́sticas (media y varianza) se
obtienen directamente de los datos y los valores de
tablas (e.g., z)
(INAOE) 48 / 66
Árboles de Decisión (TDIDT) Ruido y Sobreajuste
Ejemplo
Aprendizaje
Basado en
Similaridades
(SBL)
• Supongamos que medimos el error de un clasificador
árboles de con datos de prueba, y nos da 25%. Lo que queremos
Decisión
(TDIDT) saber es qué tan confiable es esa estimación
Algoritmo ID3
Cómo le hace • Si obtenemos eso con 100 datos o con 10,000 le
Atributos numéricos
y manejo de ruido
Ruido y Sobreajuste
creemos más a la estimación con los 10,000 datos
árboles de Regresión
y de Modelos • En estadı́stica, un conjunto de eventos independientes
se conoce como un proceso Bernoulli (e.g., lanzar una
moneda)
• Podemos pensar en el porcentage de éxito, por lo que
queremos saber es qué tanto se acerca ese 75% de
éxito al verdadero porcentage de éxito, expresado con
intervalos de confianza
(INAOE) 49 / 66
Árboles de Decisión (TDIDT) Ruido y Sobreajuste
Ejemplo
Aprendizaje
Basado en
Similaridades • Para 750 éxitos de 1,000 pruebas se tiene un 80% de
(SBL)
árboles de
confianza de que el verdadero porcentage de éxito este
Decisión
(TDIDT)
entre 73.3% y 76.8%.
Algoritmo ID3
Cómo le hace • Para 75 éxitos de 100 pruebas el mismo 80% de
Atributos numéricos
y manejo de ruido confianza tiene un intervalo de 70% y 81%.
Ruido y Sobreajuste
árboles de Regresión
y de Modelos
• La media y la varianza de un proceso Bernoulli con
porcentage de éxito p son p y p(1 − p) respectivamente.
• Para N pruebas del proceso Bernoulli, el porcentage de
éxito es f = E/N (E = número de éxitos), y la varianza
se reduce por un factor N a p(1 − p)/N
• El valor de éxito se puede tomar como una variable
aleatoria, con su media y su varianza.
(INAOE) 50 / 66
Árboles de Decisión (TDIDT) Ruido y Sobreajuste
Ejemplo
Aprendizaje
Basado en
Similaridades
(SBL)
árboles de
Decisión
(TDIDT)
Algoritmo ID3
• La probabilidad de que una variable aleatoria con
Cómo le hace
Atributos numéricos
media cero esté en un intervalo de confianza de
y manejo de ruido
Ruido y Sobreajuste tamaño 2z es Pr [−z ≤ X ≤ z] = c.
árboles de Regresión
y de Modelos
• Para una distribución normal los valores de c y de z
están dados en tablas (ver tabla) que expresan la
probabilidad de que X sea mayor a z (Pr [X ≥ z]).
(INAOE) 51 / 66
Árboles de Decisión (TDIDT) Ruido y Sobreajuste
árboles de
Decisión
(TDIDT)
Algoritmo ID3
Pr [X ≥ z] z
Cómo le hace
Atributos numéricos
0.1% 3.09
y manejo de ruido
Ruido y Sobreajuste
0.5% 2.58
árboles de Regresión
y de Modelos 1% 2.33
5% 1.65
10% 1.28
20% 0.84
40% 0.25
(INAOE) 52 / 66
Árboles de Decisión (TDIDT) Ruido y Sobreajuste
Ejemplo
Aprendizaje
Basado en
Similaridades
(SBL)
• Las tablas nos dan sólo una mitad, pero al ser simétrica
árboles de la distribución normal podemos considerar la mitad del
Decisión
(TDIDT) intervalo que queremos y ese buscarlo en la tabla.
Algoritmo ID3
Cómo le hace • Las tablas suponen que se tiene una media 0 y
Atributos numéricos
y manejo de ruido
Ruido y Sobreajuste
varianza de 1 (z nos mide las desviaciones estandar
árboles de Regresión
y de Modelos
fuera de la media).
• Osea que para un 5% nos dice que existe un 5% que la
variable X se encuentre a más de 1.65 desviaciones
estandar arriba de la media, o un 10% que esté 1.65
desviaciones estandar (arriba o abajo) de la media.
(INAOE) 53 / 66
Árboles de Decisión (TDIDT) Ruido y Sobreajuste
Ejemplo
Aprendizaje
Basado en
Similaridades • Para cambiar a una media 0 y varianza 1 tenemos que
(SBL)
restar la media p y dividirlo por la deviación estandar
árboles de p
Decisión p(1 − p)/N. Esto nos da:
(TDIDT)
Algoritmo ID3
Cómo le hace f −p
Atributos numéricos
y manejo de ruido
Pr [−z ≤ p ≤ z] = c
Ruido y Sobreajuste p(1 − p)/N
árboles de Regresión
y de Modelos
• Para esto dado un nivel de confiaza c le restamos 1 y
dividimos el resultado entre 2 y consultamos la tabla.
• Tenemos que encontrar una expresión para p. Después
de cierta matemática nos queda:
r
z2 f f2 z2 z2
p = (f + ±z − + )/(1 + )
2N N N 4N 2 N
(INAOE) 54 / 66
Árboles de Decisión (TDIDT) Ruido y Sobreajuste
Ejemplo
Aprendizaje
Basado en
Similaridades
(SBL)
árboles de
Decisión
(TDIDT) • Esto nos da dos valores uno pesimista y otro optimista.
Algoritmo ID3
Cómo le hace • La distribución normal es válida sólo para valores
Atributos numéricos
y manejo de ruido
Ruido y Sobreajuste
grandes de N (e.g., N > 100).
árboles de Regresión
y de Modelos • Regresando a la poda de árboles, una forma es guardar
datos y usarlos para estimar estos errores. Otra
posibilidad es usar los mismos datos de entrenamiento
para esta estimación, que es lo que hace C4.5.
(INAOE) 55 / 66
Árboles de Decisión (TDIDT) Ruido y Sobreajuste
Ejemplo
Aprendizaje
Basado en
Similaridades
(SBL)
árboles de
Decisión
• El usar un estimado de éxito p o de error q es lo de
(TDIDT)
Algoritmo ID3
menos, p + q = 1. Como los valores obtenidos son de
Cómo le hace
Atributos numéricos
los datos de entrenamiento se usa el valor pesimista
y manejo de ruido
Ruido y Sobreajuste
que nos da:
árboles de Regresión
y de Modelos r
z2 f f2 z2 z2
p = (f + +z − + )/(1 + )
2N N N 4N 2 N
• Para ver como funciona esto, supongamos que
tenemos el subárbol de la figura
(INAOE) 56 / 66
Árboles de Decisión (TDIDT) Ruido y Sobreajuste
árboles de
Decisión
(TDIDT)
Algoritmo ID3
Cómo le hace
Atributos numéricos
y manejo de ruido
Ruido y Sobreajuste Temp.
árboles de Regresión
alta
y de Modelos
baja
media
2P 1P 2P
4N 1N 4N
(INAOE) 57 / 66
Árboles de Decisión (TDIDT) Ruido y Sobreajuste
Ejemplo
Aprendizaje
Basado en
Similaridades
(SBL) • Usamos c = 25% (z = 0.69). Para la rama izquierda
árboles de tenemos 2 éxitos de 6 casos, lo cual nos da una
Decisión
(TDIDT) f = 0.33. Poniendo esto en la fórmula nos da p = 0.47
Algoritmo ID3
Cómo le hace (aquı́ se ve la parte pesimista ya que en lugar un 33%
Atributos numéricos
y manejo de ruido nos da un 47%). Para la rama de en medio, tenemos 1
Ruido y Sobreajuste
árboles de Regresión
y de Modelos
éxito de 2, lo cual nos da p = 72. La rama de la
derecha es igual a la izquierda.
• La combinación de estos valores tomando en cuenta el
porcentage de ejemplos de cada uno, nos da 0.51
• Ahora para la clase mayoritaria del nodo tenemos
f = 5/14 lo cual nos da p = 0.46, que como es menor,
entonces podamos esa rama
(INAOE) 58 / 66
Árboles de Decisión (TDIDT) Ruido y Sobreajuste
Múltiples Clases
Aprendizaje
Basado en
Similaridades
(SBL)
árboles de
Decisión
Al cambiar el criterio de paro, podemos tener hojas con
(TDIDT)
Algoritmo ID3
ejemplos de diferentes clases. Posibles soluciones:
Cómo le hace
Atributos numéricos
y manejo de ruido
• Que las clases tomen valores fraccionarios (p/(p + n))
Ruido y Sobreajuste
árboles de Regresión • Tomar la clase mayoritaria (mejor si se quiere minimizar
y de Modelos
el error esperado)
En general con poco nivel de ruido, se comportan bien. No
conviene quitarle ruido a los datos si se van a probar en
ambientes ruidosos.
(INAOE) 59 / 66
Árboles de Decisión (TDIDT) Ruido y Sobreajuste
Análisis de Complejidad
Aprendizaje
Basado en
Similaridades
(SBL)
O(mnlogn) + O(n(logn)2 )
Algoritmo ID3
Cómo le hace
Atributos numéricos
y manejo de ruido
Ruido y Sobreajuste • Donde n es el número de datos y m el número de
árboles de Regresión
y de Modelos
atributos
• El primer término se refiere a construir un árbol de
decisión sin considerar podado. El segundo término se
refiere cuando realizamos podado. Esto es
independiente de que los atributos sean continuos o no.
(INAOE) 60 / 66
Árboles de Decisión (TDIDT) Ruido y Sobreajuste
Algunas Extensiones
Aprendizaje
Basado en
Similaridades
(SBL)
árboles de
• En lugar de hacer una búsqueda tipo hill climbing usar
Decisión
(TDIDT)
beam search, o hacer búsqueda tipo look-ahead
Algoritmo ID3
Cómo le hace
• Generar varios árboles de decisión y luego combinar
Atributos numéricos
y manejo de ruido
sus resultados.
Ruido y Sobreajuste
árboles de Regresión
• En forma paralela con varias subconjuntos de los datos
y de Modelos
(bagging)
• En forma secuencial considerando errores de
clasificación y modificando los datos (boosting)
• Usando varias muestras de los datos de entrenamiento
e introduciendo aleatoriedad en la selección de
atributos a considerar en cada nodo (random forest).
(INAOE) 61 / 66
Árboles de Decisión (TDIDT) Árboles de Regresión y de Modelos
árboles de
Decisión Cuando la clase a predecir es numérica existen dos
(TDIDT)
Algoritmo ID3
variantes:
Cómo le hace
Atributos numéricos • Regression trees: guardan el valor promedio de los
y manejo de ruido
Ruido y Sobreajuste
árboles de Regresión
valores en las hojas
y de Modelos
• Model trees: utilizan una regresión lineal para predecir
los valores de las clases
Los dos tipos de árboles se construyen muy parecido a los
árboles de decisión para construir un árbol inicial.
(INAOE) 62 / 66
Árboles de Decisión (TDIDT) Árboles de Regresión y de Modelos
(INAOE) 63 / 66
Árboles de Decisión (TDIDT) Árboles de Regresión y de Modelos
Valores Desconocidos
Aprendizaje
Basado en
Similaridades
(SBL)
árboles de
Decisión
Para construir y probar un modelo con un valor
(TDIDT)
Algoritmo ID3
desconocido, se usan dos técnicas:
Cómo le hace
Atributos numéricos
• Se reemplaza el valor del atributo por el valor del
y manejo de ruido
Ruido y Sobreajuste atributo más fuertemente correlacionado a él (surrogate
árboles de Regresión
y de Modelos splitting).
• Se utiliza el valor de la clase (para entrenamiento). Se
cambia por el valor promedio de los datos en ese nodo
(para prueba).
(INAOE) 65 / 66
Árboles de Decisión (TDIDT) Árboles de Regresión y de Modelos
Árboles Óptimos
Aprendizaje
Basado en
Similaridades
(SBL)
árboles de
Decisión
(TDIDT)
Algoritmo ID3
• Avances recientes en técnicas de optimización entera +
Cómo le hace
Atributos numéricos
mejoras en hardware = mejoras en factores de miles de
y manejo de ruido
Ruido y Sobreajuste millones de veces más rápidas para encontrar
árboles de Regresión
y de Modelos soluciones
• Algoritmo basado en optimización entera mixta
• Resultados con árboles de profundidad 4 (máx.)
(INAOE) 66 / 66