Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Clasificacin
Fernando Berzal
fberzal@decsai.ugr.es
http://elvex.ugr.es/idbis/dm/
Intelligent Databases and Information Systems research group
Clasificacin
Introduccin
Tcnicas
rboles
Reglas
Otros
Evaluacin
Bibliografa
Aplicaciones
Concesin de crditos
Campaas de marketing dirigido
Diagnstico mdico
Deteccin de fraudes
Clasificacin
Construccin del modelo
Clasificacin
Aprendizaje
Supervisado vs. No Supervisado
Clasificacin
Evaluacin
Evaluacin
Estimacin de la precisin del
modelo
Evaluacin
Estimacin de la precisin del
modelo
Sobreaprendizaje
Sobreaprendizaje debido
a la complejidad del clasificador
Sobreaprendizaje
Sobreaprendizaje debido
a la presencia de ruido en los datos
10
Sobreaprendizaje
Sobreaprendizaje debido
a la escasez de muestras
11
Tcnicas
Se pueden construir distintos tipos de clasificadores
rboles de decisin
Reglas (p.ej. Listas de decisin)
Clasificadores basados en casos
Clasificadores paramtricos
Redes neuronales
Redes bayesianas
SVMs (Support Vector Machines)
12
rboles de decisin
Caso de prueba
Refund
Yes
No
NO
Refund Marital
Status
Taxable
Income Cheat
No
80K
Married
10
MarSt
Single, Divorced
TaxInc
< 80K
NO
Married
NO
> 80K
YES
Modelo de clasificacin:
rbol de decisin
13
rboles de decisin
Caso de prueba
Refund
Yes
No
NO
MarSt
Single, Divorced
TaxInc
< 80K
NO
Married
NO
> 80K
YES
Modelo de clasificacin:
rbol de decisin
14
rboles de decisin
Caso de prueba
Refund
Yes
No
NO
MarSt
Single, Divorced
TaxInc
< 80K
NO
Married
NO
Clase No
> 80K
YES
Modelo de clasificacin:
rbol de decisin
15
rboles de decisin
o
o
ic
ic
uo
r
r
n
ti
g
g
n
se
e
e
t
t
o
a
c
cl
ca
ca
Tid Refund Marital
Status
Taxable
Income Cheat
Yes
Single
125K
No
No
Married
100K
No
No
Single
70K
No
Yes
Married
120K
No
No
Divorced 95K
Yes
No
Married
No
Yes
Divorced 220K
No
No
Single
85K
Yes
No
Married
75K
No
10
No
Single
90K
Yes
60K
Refund
Yes
No
NO
MarSt
Single, Divorced
Married
TaxInc
NO
< 80K
NO
> 80K
YES
10
Conjunto de
entrenamiento
Modelo de clasificacin:
rbol de decisin
16
rboles de decisin
o
o
ic
ic
uo
r
r
n
ti
g
g
n
se
e
e
t
t
o
a
c
cl
ca
ca
Tid Refund Marital
Status
Taxable
Income Cheat
Yes
Single
125K
No
No
Married
100K
No
No
Single
70K
No
Yes
Married
120K
No
No
Divorced 95K
Yes
No
Married
No
Yes
Divorced 220K
No
No
Single
85K
Yes
No
Married
75K
No
10
No
Single
90K
Yes
60K
Podemos construir
distintos rboles:
cul es mejor?
MarSt
Married
NO
Single,
Divorced
Refund
No
Yes
NO
TaxInc
< 80K
NO
> 80K
YES
10
Conjunto de
entrenamiento
Modelo de clasificacin:
rbol de decisin
17
rboles de decisin
Construccin de rboles de
decisin
Estrategia greedy (problema NP)
Algoritmo divide y vencers:
rboles de decisin
Construccin de rboles de
decisin
Criterios de parada: Cundo se
detiene
la construccin del rbol de decisin?
rboles de decisin
Construccin de rboles de
decisin
Qu heursticas se pueden utilizar
para decidir cmo ramificar el rbol?
Cul es mejor?
20
rboles de decisin
Construccin de rboles de
decisin
Qu heursticas se pueden utilizar
para decidir cmo ramificar el rbol?
La que nos
proporciona
nodos
ms
Necesitamos
medir
la impureza
de un
nodo
homogneos
21
rboles de decisin
Construccin de rboles de
decisin
Reglas de divisin
(heursticas para la seleccin de atributos):
rboles de decisin
m
Info( D) pi log 2 ( pi )
Entropa
i 1
C1
C2
1
5
Entropa = 0.65
= (1/6) log2 (1/6) (5/6) log2 (1/6)
C1
C2
2
4
Entropa = 0.92
= (2/6) log2 (2/6) (4/6) log2 (4/6)
23
rboles de decisin
Ganancia de informacin (ID3)
pi
Entropa
Info( D ) pi log 2 ( pi )
i 1
24
rboles de decisin
Criterio de proporcin de
ganancia (Gain Ratio, C4.5)
ID3 tiende a ramificar el rbol utilizando los
atributos que tengan ms valores
diferentes,
por lo que se normaliza la ganancia de
informacin usando la entropa de la
particin
v |D |
| Dj |
j
(que ser
mayor
cuantas
pequeas
SplitInfo
) ms particiones
log 2 (
)
A (D
|D|
j 1 | D |
haya):
rboles de decisin
ndice de Gini
(CART, SLIQ, SPRINT)
n 2
gini ( D) 1 p j
j 1
C1
1
C2
5
Gini=0.278
C1
2
C2
4
Gini=0.444
C1
3
C2
3
Gini=0.500
rboles de decisin
Comparacin de reglas de divisin
Para problemas con dos clases:
27
rboles de decisin
Comparacin de reglas de divisin
Ganancia de informacin
Sesgado hacia atributos con muchos valores
diferentes.
ndice de Gini
Funciona peor cuando hay muchas clases y tiende a
favorecer particiones de tamao y pureza similares.
rboles de decisin
Otros aspectos
29
rboles de decisin
El problema del sobreaprendizaje
Los rboles de decisin tienden a ajustarse
demasiado al conjunto de entrenamiento
utilizado para construir el rbol
Demasiadas ramas del rbol reflejan
anomalas del conjunto de
entrenamiento (ruido y outliers).
El rbol resultante es ms complejo de
lo que debera ser.
Como consecuencia, disminuye la
precisin
30
del clasificador de cara a situaciones
rboles de decisin
Una solucin
al problema del
sobreaprendizaje:
Tcnicas de Poda
Una vez construido el rbol, se van
eliminando ramas: utilizando un conjunto
de datos distinto al conjunto de
entrenamiento [CART: Poda por costecomplejidad] o no [C4.5: Poda pesimista].
31
rboles de decisin
Ventajas de los rboles de
decisin
Algoritmos eficientes y escalables
32
rboles de decisin
Ventajas de los rboles de
decisin
Fcil interpretacin
rboles de decisin
DEMO
TDIDT
Top-Down Induction of Decision Trees
34
Reglas
Existen muchas formas de construir
modelos de clasificacin basados en
reglas:
Reglas
A partir de un rbol de decisin
Por qu?
Las reglas son ms fciles de interpretar
que un rbol de decisin complejo.
Cmo?
Se crea una regla para cada hoja del
rbol.
Las reglas resultantes son
mutuamente excluyentes
38
exhaustivas
Reglas
A partir de un rbol de decisin
age?
<=30
31..40
student?
no
yes
yes
>40
credit rating?
excellent
fair
yes
no
39
Reglas
A partir de un rbol de decisin
Las reglas que se derivan de un rbol se
pueden
simplificar (generalizar), aunque entonces:
Reglas
Directamente
a partir del conjunto de
entrenamiento
p.ej. LISTAS DE DECISIN
Cmo?
Las reglas se aprenden de una en una.
Cada vez que se escoge una regla, se
eliminan del conjunto de entrenamiento
todos los casos cubiertos por la regla
seleccionada.
El proceso se repite iterativamente
41
hasta que se cumpla alguna condicin
Reglas
(ii) Step 1
R1
(iii) Step 2
42
Reglas
Directamente
a partir del conjunto de
entrenamiento
p.ej. LISTAS DE DECISIN
Cmo se aprende una regla?
Se empieza con la regla ms general
posible.
Se le van aadiendo antecedentes a la
regla para maximizar la calidad de la
regla (cobertura y precisin).
43
Reglas
A3=1&&A1=2
A3=1&&A1=2
&&A8=5
A3=1
Ejemplos
positivos
Ejemplos
negativos
44
Reglas
Directamente
a partir del conjunto de
entrenamiento
p.ej. LISTAS DE DECISIN
Algoritmos de induccin de reglas
FOIL (Quinlan, Machine Learning, 1990)
CN2 (Clark & Boswell, EWSL1991)
RIPPER (Cohen, ICML1995)
PNrule (Joshi, Agarwal & Kumar,
SIGMOD2001)
45
Reglas
DEMO
CN2
Metodologa STAR: Unordered CN2
Listas de decisin: Ordered CN2
RIPPER
Repeated Incremental Pruning to Produce Error
Reduction
46
(basado en IREP, Iterative Reduced Error Pruning)
Reglas
Modelos basados en reglas de
asociacin
Por qu?
Buscando entre las mejores reglas de
asociacin, se superan algunas
limitaciones de los rboles de decisin
(que slo consideran los atributos de
uno en uno [y parcialmente]).
47
Reglas
Modelos basados en reglas de
asociacin
Patrones emergentes
vg: CAEP (Dong et al., ICDS1999)
rboles de reglas
vg: Wang et al., KDD2000
48
Reglas
Modelos basados en reglas de
asociacin
CMAR
Classification based on Multiple Association
Rules
49
ART
SPLICE
50
ART: Construccin
K=1
Extraccin de reglas
con K items en su antecedente
S
existen reglas
adecuadas?
No
S
Ramificacin del rbol
con las reglas seleccionadas
y procesamiento recursivo
de la rama else del rbol
K=K+1
K <= MaxSize ?
No
Creacin de un nodo hoja
etiquetado
con la clase ms frecuente
51
ART: Construccin
K=1
Extraccin
Seleccin
K++
Ramificacin
Seguir?
Hoja
Umbral fijo
Seleccin automtica
52
ART: Construccin
K=1
Extraccin
Seleccin
Ramificacin
K++
Seguir?
Hoja
Seleccin de reglas:
53
ART: Ejemplo
Conjunto de datos
54
ART: Ejemplo
Nivel 1
K=1
55
ART: Ejemplo
Nivel 1
K=2
56
ART: Ejemplo
Nivel 1
NIVEL 1
Seleccin del mejor conjunto de
reglas
p.ej. S1
S1: if (X=0 and Y=0) then C=0 (100%)
if (X=0 and Y=1) then C=1 (100%)
57
ART: Ejemplo
Nivel 1 Nivel 2
58
ART: Ejemplo
Nivel 2
NIVEL 2
Extraccin de reglas
S1: if (Z=0) then C=0 with confidence 100%
if (Z=1) then C=1 with confidence 100%
RESULTADO
X=0 and Y=0: C=0 (2)
X=0 and Y=1: C=1 (2)
else
Z=0: C=0 (2)
Z=1: C=1 (2)
59
ART: Ejemplo
ART
TDIDT
XY
00
0
e ls e
01
0
0
1
1
0
0
1
1
0
0
60
ART
DEMO
ART
Association Rule Tree
61
Otros modelos
Clasificadores bayesianos
p.ej. Nave Bayes
Aplicando el Teorema de Bayes, se maximiza
n
P ( X | C i ) P( x | C i ) P ( x | C i ) P ( x | C i ) ... P( x | C i )
k
1
2
n
k 1
Ventaja
Basta con recorrer los datos una sola
vez
Desventajas
Interpretabilidad del modelo
62
Otros modelos
SVMs (Support Vector Machines)
x
x
x
x
x
ooo
o
o
o o
x
o
o
o o
o
o
63
Otros modelos
SVMs (Support Vector Machines)
Ventajas
Precisin generalmente alta
Robustez frente a ruido
Desventajas
Costosos de entrenar
(eficiencia y escalabilidad)
Difciles de interpretar
(basados en transformaciones matemticas para
conseguir que las clases sean linealmente
64
separables)
Otros modelos
Clasificadores basados en casos
(lazy learners)
Almacenan el conjunto de
entrenamiento (o parte de l) y lo
utilizan directamente para clasificar
nuevos datos.
Ejemplos
k-NN (k Nearest Neighbors)
Razonamiento basado en casos (CBR)
65
Otros modelos
k-NN (k vecinos ms cercanos)
K demasiado pequeo
Sensible a ruido
K demasiado grande
El vecindario puede incluir puntos de otras
clases
66
Otros modelos
Ensembles
67
Evaluacin
Mtricas
Cmo evaluar la calidad de un modelo de
clasificacin
Mtodos
Cmo estimar, de forma fiable, la calidad de un
modelo.
Comparacin
Cmo comparar el rendimiento relativo
de dos modelos de clasificacin alternativos
68
Evaluacin: Mtricas
Matriz de confusin
(confusion matrix)
Prediccin
Clase real
CP
CP
CN
TP: True
positive
FN: False
negative
69
Evaluacin: Mtricas
Limitaciones de la precisin (accuracy) :
Supongamos un problema con 2 clases:
10 ejemplos de la clase 2
Si el modelo de clasificacin siempre dice que
los ejemplos son de la clase 1, su precisin es
9990/10000 = 99.9%
Totalmente engaosa, ya que nunca
detectaremos ningn ejemplo de la clase 2.
70
Evaluacin: Mtricas
Alternativa: Matriz de costes
C(i|j)
Prediccin
Clase real
CP
CN
CP
C(P|P)
C(N|P)
CP
C(P|N)
C(N|N)
71
Evaluacin: Mtricas
Medidas cost-sensitive
Prediccin
Clase real
CP
CP
CN
TP: True
positive
FN: False
negative
precision = TP/(TP+FP)
True positive recognition rate
recall = sensitivity = TP/P = TP/(TP+FN)
True negative recognition rate
72
specificity = TN/N = TN/(TN+FP)
Evaluacin: Mtricas
Medidas cost-sensitive
Prediccin
Clase real
CP
CP
CN
TP: True
positive
FN: False
negative
F = 2*precision*recall / (precision+recall)
F= 2TP / (2TP+FP+FN)
73
Evaluacin: Mtricas
Prediccin
CP
CN
CP
CN
CP
TP
FN
CP
TP
FN
CN
FP
TN
CN
FP
TN
Real
Real
Prediccin
Accuracy
Recall
Prediccin
CP
CN
CP
CN
CP
TP
FN
CP
TP
FN
CN
FP
TN
CN
FP
TN
Precision
Real
Real
Prediccin
F-measure
74
Evaluacin: Mtodos
Para evaluar la precisin de un modelo de
clasificacin nunca debemos utilizar el conjunto de
entrenamiento (lo que nos dara el error de
resustitucin del clasificador), sino un conjunto
de prueba independiente:
Por ejemplo, podramos reservar 2/3 de los
ejemplos disponibles para construir el clasificador
y el 1/3 restante lo utilizaramos de conjunto de
prueba para estimar la precisin del clasificador.
75
Evaluacin: Mtodos
Validacin cruzada
(k-CV: k-fold Cross-Validation)
76
Evaluacin: Mtodos
Validacin cruzada
Variantes de la validacin cruzada
77
Evaluacin: Mtodos
Bootstrapping
Muestreo uniforme con reemplazo de los
ejemplos disponibles (esto es, una vez que se
escoge un ejemplo, se vuelve a dejar en el
conjunto de entrenamiento y puede que se
vuelva a escoger).
Evaluacin: Comparacin
Precisin [Accuracy]
100
90
audiology
car
chess
hayesroth
lenses
lungcancer
mushroom
nursery
soybean
splice
tictactoe
titanic
vote
80
70
60
50
40
30
20
10
0
ART
C4.5
CN2-STAR
CN2-DL
RIPPER
79
Evaluacin: Comparacin
Complejidad del clasificador
1000
audiology
car
chess
hayesroth
lenses
lungcancer
mushroom
nursery
soybean
splice
tictactoe
titanic
vote
100
10
1
ART
C4.5
AQR
CN2-STAR
CN2-DL
RIPPER
80
Evaluacin: Comparacin
Tiempo de entrenamiento
1000000
audiology
car
chess
hayesroth
lenses
lungcancer
mushroom
nursery
soybean
splice
tictactoe
titanic
vote
100000
10000
1000
100
10
1
ART
C4.5
CN2-STAR
CN2-DL
RIPPER
Naive Bayes
81
Evaluacin: Comparacin
Operaciones de E/S: Recorridos
1000000
audiology
car
chess
hayesroth
lenses
lungcancer
mushroom
nursery
soybean
splice
tictactoe
titanic
vote
100000
10000
1000
100
10
1
ART
C4.5
CN2-STAR
CN2-DL
RIPPER
Naive Bayes
82
Evaluacin: Comparacin
Operaciones de E/S: Registros
1000000000
100000000
audiology
car
chess
hayesroth
lenses
lungcancer
mushroom
nursery
soybean
splice
tictactoe
titanic
vote
10000000
1000000
100000
10000
1000
100
10
1
ART
C4.5
CN2-STAR
CN2-DL
RIPPER
Naive Bayes
83
Evaluacin: Comparacin
Operaciones de E/S: Pginas
1000000000
100000000
ART
10000000
C4.5
1000000
CN2 - STAR
100000
CN2 - DL
10000
RIPPER
1000
Naive Bayes
100
10
1
1
16
32
64
Tamao de pgina
128
256
512
1024
84
Evaluacin: Comparacin
Curvas ROC (Receiver Operating Characteristics)
Eje vertical:
(TP+FN)
Eje horizontal:
85
false positive rate FPR =
Evaluacin: Comparacin
Curvas ROC
Evaluacin: Comparacin
Curvas ROC
Evaluacin: Comparacin
Curvas ROC
Cmo construir la curva ROC?
88
Evaluacin: Comparacin
Curvas ROC
Ejemplo
P(+|E)
Clase
0.95
0.93
0.87
0.85
0.85
0.85
0.76
0.53
0.43
10
0.25
0.25
0.43
0.53
0.76
0.85
0.85
0.85
0.87
0.93
0.95
1.00
TP
FP
TN
FN
TPR
0.8
0.8
0.6
0.6
0.6
0.6
0.4
0.4
0.2
FPR
0.8
0.8
0.6
0.4
0.2
0.2
Class
P
89
Bibliografa
J. Gehrke, V. Gant, R. Ramakrishnan, and W.-Y. Loh, BOAT -Optimistic Decision Tree Construction. SIGMOD'99.
90
Bibliografa
H. Yu, J. Yang, and J. Han. Classifying large data sets using SVM
with hierarchical clusters. KDD'03.
91
Crditos
Jiawei Han (University of Illinois at UrbanaChampaign): Data Mining: Concepts and
Techniques, captulo 6, 2006
Pang-Ning Tan (Michigan State University),
Michael Steinbach & Vipin Kumar (University of
Minnesota): Introduction to Data Mining,
captulos 4 y 5, 2006
92