Métodos de clasificación sin métrica

Anuncio
Métodos de Clasificación sin
Métrica
Reconocimiento de Patrones- 2013
Métodos de Clasificación sin Métrica





Datos nominales sin noción de similitud o distancia (sin orden).
Escala nominal: conjunto de categorías mutuamente
excluyentes y globalmente exhaustivas.
Ej: Clasificación de frutas
 Características: color, textura, sabor, tamaño
 x={rojo, brillante, dulce, pequeño}
 Características cualitativas (categóricas):
 Ordinales (grado de educación)
 Nominales (profesión)
¿Cómo aprender clases usando datos sin métrica?
¿Cuál es la forma más eficiente de aprender usando datos nominales
para clasificar?
Árboles de Decisión





Es un clasificador con una estructura de árbol.
Regla de decisión para clasificar datos usando atributos.
El árbol consiste de nodos interiores y nodos terminales.
Nodo interior : pregunta sobre un atributo concreto (ramas
mutuamente distintas y excluyentes)
Nodo terminal u hoja: asociado a una clase.
Color?
Amarillo
Verde
Rojo
Tamaño?
Tamaño?
Grande
SANDIA
Medio
MANZANA
Chico
UVA
Medio
MANZANA
Chico
FRUTILLA
Arboles de Clasificación

Aprendizaje. Construcción del árbol a partir de un
conjunto de muestras.

Clasificación. Preguntas sobre los valores de los
atributos, empezado por el nodo raíz y siguiendo el
camino determinado por las respuestas a las preguntas
de los nodos internos, hasta llegar a un nodo hoja. La
etiqueta asignada a esta hoja es la que se asignará al
patrón a clasificar.
Árboles de Decisión






Fácilmente interpretables: interpretación de las clases
en función de los atributos. Ej: MANZANA=(verde y
medio) o (rojo y medio). Permite explicar decisiones.
Adecuados para datos cuantitativos y cualitativos.
Clasificación es rápida.
Permite incluir conocimiento a priori de expertos
Explicitan utilidad de las características.
Benchmarck (referencia) para evaluar desempeño, a
veces alcanza el desempeño de clasificadores
complejos.
Requerimientos




Objetos expresables en términos de una colección fija
de atributos o propiedades. Es necesario discretizar
atributos continuos o lo debe hacer el algoritmo.
Las clases deben estar predefinidas (aprendizaje
supervisado.
Datos suficientes: usualmente cientos o miles de
muestras de entrenamiento.
Construcción del árbol a partir de un conjunto de
muestras de entrenamiento.
Construcción de árboles de decisión
(CART, ID3, C4.5)



Cart: (classification and regression trees) Breimer 1984
ID3, C4.5 Quinlann 1992
Partimos de patrones etiquetados (D)
?
?
?
Principio fundamental: simplicidad del árbol (principio
parsimonia o “navaja de Occam”)
Construcción


Proceso recursivo: dados los patrones que llegan a un
nodo:
 declarar el nodo terminal- asigna clase ó
 encontrar una nueva característica y volver a dividir los
patrones.
Preguntas:
 ¿Dos ramificaciones o más?
 ¿Qué atributo en cada nodo?
 ¿Cuando un nodo es terminal ?
 ¿Cómo asignar la clase?
Árboles Binarios

Número de ramificaciones:
 Binarias
 No binarias
Color verde?
si
Color amarillo?
si
no

Cualquier decisión (cualquier árbol) puede representarse
usando sólo decisiones binarias.

Nos concentraremos en árboles binarios (son los usados en
algoritmos prácticos) :
 Poder expresivo universal de los árboles binarios.
 Simplicidad comparativa del entrenamiento.
Construcción del árbol de clasificación




Nodo raíz- tiene a todos los prototipos
Parto el nodo raíz:

Para una característica elijo la mejor partición que
separe a los prototipos en clases más puras.

Realizo lo mismo para las otras características.
Repito para los nodos hijos hasta llegar a condición de
parada (nodo hoja).
Los prototipos asociados a un nodo hoja agrupamiento
homogéneo, al nodo se le asigna una etiqueta.
Selección de las particiones



¿De qué forma se hacen las particiones y se
selecciona la mejor de entre las posibles en cada
momento?
Objetivo de una partición: es incrementar la
homogeneidad de los conjuntos resultantes que
sean mas puros.
Medida de pureza nodo:

Impureza del nodo N: i(N).
Criterios de partición
Función de impureza  N  definida sobre c - uplas de la
forma d1,d 2 ....d c  tales que :
c
d j  0 y d j 1
1
Impureza máxima max : cuando 1/c, 1/c,....1/c  clases
estan representadas en la misma proporción.
Impureza mínima min  0 : cuando 1, 0,....0 todos los
patrones son de una clase.
i  N    Pw1 , Pw2 ...Pwc 
# j N 
ˆ
Pw j   P(x  w j / N ) 
# N 
Bondad de una partición
N
PD
PI
s
NI
ND
Bondad de la partición s en un nodo N
 s,N  : decrecimie nto en impureza
 s,N   Δi s,N   iN -PI iN I   PDiN D 
Impureza de un árbol
I T  
 I N    iN PN 
N T
N T
La selección continua de particiones que maximizan
Δ i(s,N) es equivalent e a encontrar las particiones que
minizan la impureza global I T . La suma es en el
conjunto de nodos terminale s.
Criterios de medida de impureza

Impureza de entropía – Información (ID3, C4.5)
i  N    Pw j log 2 Pw j 
c
j 1
i  N min  0
i  N máx  log 2 c
iN   0
Criterios de medida de impureza

Impureza de Gini (varianza) (CART)
i ( N )  P( w1 ) P ( w2 )
c
i ( N )   P( wi )P ( w j )
i j
i ( N ) min  0
i ( N ) máx
c2
c


2
i ( N )  1 / 2 1   P ( w j ) 
j 1


(c  1)

2c
Interpretación- Gini

Esta es la Tasa de error esperado en el nodo N : si
la clase a asignar al nodo N se sortea en forma
aleatoria usando la distribución de clases presente
en el nodo N.
P( w1 )(1  P( w1 ))  P( w1 )( P( w2 )  P( w3 )...  P( wc ))
 P(w )(1  P(w ))   P(w )   P(w )
i
i
i
i
i
i
i
2
 1   P( wi )
i
2
Criterios de medida de impureza

Impureza de error de clasificación
i( N )  1  máx( P( w j ))
j

Error de clasificación si se asigna al nodo N la
clase de la mayoría. Es la medida más picuda de
las tres cuando las probabilidades son iguales.
Derivadas discontinuas, complica búsqueda de
decisión optima.
Fig: Hastie




Entropía y Gini más sensibles
Gini más picudo cuando las probabilidades son
iguales.
Entropía o Gini se usan para crecer el árbol y error de
clasificación para podarlo.
Ej:
Error de
clasificación
Gini
Entropía
(90,10)
0,1
0,09
0,33
(45,5) (5,45)
0,1
0,09
0,33
0,066
0,19
(70,0) (10,20) 0,1
Criterios de partición

¿Cuál es la mejor característica? La que maximiza el
decremento de impureza
i N   iN   PI iN I   1  PI iN D 


Características nominales (color verde?): probar con
cada una y seleccionar la de mayor ∆i .
Decisiones sobre características ordinales o
continuas: primero encontrar el límite de decisión
óptimo para cada característica y luego elegir la
mejor.
Ejemplo

email/spam
 palabra clave: free,gift, offer, price
 presente/ausente : x={1,1, 0,1}
m =e+s
free?
si
si
spam
spam
offer?
si
m1=e1+s1
no
email
Obs: no se repiten las características
no
m2=e2+s2
Ejemplo
m =e+s
si
m1=e1+s1
no
m2=e2+s2
e
e s
s
log 2  log 2
m
m m
m
m1  e1
e1 s1
s1  m2  e2
e2 s2
s2 
 log 2


 log 2  
log 2

log 2
m  m1
m1 m1
m1  m  m2
m2 m2
m2 
i( N )  
Incorporación de atributos continuos


Requiere la discretización de las características para
poder incluirlas en el proceso de aprendizaje.
Genero una característica por ejemplo booleana
comparando la característica continua contra un
umbral. Eligiendo el umbral que produzca la mejor
ganancia de entropía.
Ejemplo
Característica continua: frecuencia de aparición
Se determina primero el límite de decisión óptimo
“free”
frec.%
“offer”
frec.%
0
0.1
0.2
0.5
0.7
1.2
email
email
spam
email
spam
spam
spam
spam
email
spam
Punto medio o promedio ponderado
Límites de decisión
z2
si
z1
no
spam
z2
z2
x
x
x
x
no
x
email
R2
R2 R1
offer<0,35?
email
free<0,65?
Capacidad expresiva
limitada de los límites
de decisión
R1
free<0,15?
si
R1
x
x
x
spam
Obs: Se puede volver a usar una
característica.
z1
Pierde facilidad de interpretación
z1
Optimalidad de la solución




Optimalidad de decisión local: elegir el mejor atributo en cada
nodo). No garantiza la optimalidad global (por ejemplo el
número mínimo de nodos)
La elección de la función de impureza no es tan determinante
como la elección del criterio de parada y los métodos de
podado.
Árbol muy grande sobreajustará a los datos, muy pequeño
puede perder capacidad de discriminación.
Tamaño: parámetro que gobierna la complejidad del modelo.
Debe elegirse de acuerdo a los datos. Se busca árbol más
simple, más compacto. Occam´s razor.
Criterio de parada


Hacen crecer el árbol hasta el mínimo de
impureza.
 Desventaja: sobre-ajuste (overfiting)
Alternativas:
 Pre-podado: Detener el crecimiento
 Pos- podado: Crecer hasta el límite y luego
podar
Criterios de Parada
1.
Validación (cruzada): entrenamiento (90%), test (10%).
Desventaja: se usan menos datos para entrenar. Paro
partición cuando error comienza a crecer.
E
test
entrenamiento
2.
3.
Umbral sobre la reducción de impureza: ∆i (N)≤β. Árbol
depende del β elegido por diseñador.
Umbral sobre la cantidad de patrones en un nodo. Continuar
creciendo el árbol con “pocos” patrones produciría sobreajuste. (Particiones chicas en zonas densas y grandes en
zonas dispersas similar k-vecinos).
Criterios de parada
4.
Penalizar la complejidad del árbol
 T
min C T   min   iN    T
 m1




Tamaño: # nodos, #hojas . Depende de elección de α.>0
MDL: descripción de largo mínimo- si se utiliza impureza
basada en entropía. Minimiza la suma de la complejidad del
modelo y la descripción de los patrones dado el modelo.
Dificultad determinar relación entre α y desempeño del
clasificador .
Criterios de parada
5.
Test de hipótesis- mide si reducción de impureza es
estadísticamente significativa. Compara la
distribución de clases en un nodo con la distribución
de clases luego de hacer la ramificación y establecer
si son significativamente distintos usando un test de
hipótesis.
Test ji-cuadrado: (o Pearson). Determinar si la
distribución de eventos observados en una muestra
es consistente con una cierta distribución teórica.
(Eventos excluyentes y probabilidad total =1)
Criterios de parada
C2
I

nI 1  ne1 

2
2
n  n1  n2
w1 , w2
ne1

nI 2  ne 2 

2
ne 2
nI
ne1  Pn1  n1
n
queremos ver si la partición s es distinta de randomica.
 
2
I  D
2
2
2
n
n
2
2

I 
D
2nD
2nI
x<xs
n=nI+nD
nI=nI1+nI2
nD=nD1+nD2


Hipótesis nula: las distribuciones son iguales
Umbral para cierto nivel de confianza

2
0.01(1)
Nivel de confianza
 2  6.64
 2  6.64
 :
2
 6.64
Grados de libertad: c-1
rechazamos H0 : hacemos ramificación
aceptamos H0 : se detiene crecimiento (nodo terminal)
umbral establecido por el usuario
  0
árbol completo
   10
podado severo
2
2
Métodos de podado (pos-podado)



Efecto horizonte: al detener el crecimiento podemos
perder ramificaciones posteriores beneficiosas.
Alternativa: crecer el árbol completamente y podarlo
luego. Preferible si es computacionalmente tolerable.
Idea: estimar error con y sin la ramificación y decidir
si vale la pena (si no unir los nodos)
x<xs?
Métodos de podado
1.
Remplazo de sub-árbol

Conjunto independiente para podado.
Comenzando desde hojas y hacia la raíz, remplazo nodo con
hoja etiquetada por clase mayoritaria.
Calculo error en el conjunto de podado si es menor remplazo
nodo por hoja. Obtengo árbol óptimo (para conjunto podado).


El podado por mínimo costo- complejidad puede remplazar
un sub-árbol complejo por una hoja directamente.
Poda por mínimo coste-complejidad




Complejidad de un subarbol como el número de
nodos terminales, |T |.
Error de clasificación R(T).
Medida de coste-complejidad :
R  (T) = R(T) +  |T |
 0:parámetro de complejidad
R (T ( ))  min R (T )
T Tmax
Selección del mejor árbol podado



Escoger aquel que tenga asociado el menor error
R*(Tk)
¿cómo estimar honestamente R*(Tk)?.
Estimación por validación cruzada.
Métodos de podado
2.



Elevación de Sub- árbol
Usando todo los datos para entrenamiento
Es más compleja y no necesariamente siempre es útil:
Usada en C4.5.
Estima el error cometido en un nodo cuando sustituyo
sub-árbol por una de sus ramas. Top/down.
C4.5




Usa heurística para podado basada en la significancia
estadística de las particiones.
Terminamos con un conjunto de reglas simplificada
que definen cada nodo terminal.
No usa características sustitutas cuando faltan datos.
No siempre sigue una estructura de árbol.
Árboles




Inestabilidad: sensibles al conjunto de entrenamiento,
alta varianza. Pequeño cambio en los datos puede
generar gran cambio en particiones, haciendo
interpretación precaria.
Alternativas: Bagging, Random Forest, Option Trees.
Priors y costos: Es posible incluir priors o costos
pesando los patrones de entrenamiento con el prior o
los costos.
i( N )   i , j P( wi ) P( w j )
Ej: Índice de Gini:
i, j
Datos faltantes


Construir el árbol usando los patrones que tienen
definida la característica.
Ej: Si falta x2 para un patrón x={x1, x2, x3}
i(N) con n patrones para x1 y x3, con n-1 para x2
Procedimiento: Luego de elegir una característica
para una ramificación, elegir características suplentes
en orden (surrogante) considerando la correlación
entre características.
Datos faltantes
Ej:
correlación =# patrones a la izquierda por ambas decisiones +
# patrones a la derecha por ambas decisiones

En la clasificación si el atributo sobre el que hay que decidir
falta se usa el siguiente suplente.
Duda
¿Qué clasificador es mejor?
Algunos criterios:
 Criterio de crecimiento: impureza de entropía funciona bien regla defecto.
 Podado preferible a parada con validación cruzada. Aunque
podado de conjunto de datos grandes puede ser inabordable.
 No hay un árbol superior a otro.
 Logran desempeño similar a otros métodos como redes
neuronales, k-vecinos.
 Particularmente útiles con datos no métricos.
Fortalezas y debilidades de Arboles





Interpretabilidad de las reglas de decisión
Bajo costo computacional para clasificar
Pueden usar características continuas y
categóricas
Entrenamiento computacionalmente caro (postpoda)
No tratan bien regiones no-rectangulares.
Descargar