Está en la página 1de 90

Fundamentos de Minera de Datos

Clasificacin
Fernando Berzal
fberzal@decsai.ugr.es
http://elvex.ugr.es/idbis/dm/
Intelligent Databases and Information Systems research group

Department of Computer Science and Artificial Intelligence


E.T.S Ingeniera Informtica Universidad de Granada (Spain)

Clasificacin
Introduccin
Tcnicas
rboles
Reglas
Otros
Evaluacin
Bibliografa

Clasificacin vs. Prediccin

Clasificacin: Para predecir el valor de un


atributo categrico (discreto o nominal).
Prediccin: Para modelar funciones que toman
valores continuos (esto es, predecir valores
numricos desconocidos).

Aplicaciones

Concesin de crditos
Campaas de marketing dirigido
Diagnstico mdico
Deteccin de fraudes

Clasificacin
Construccin del modelo

El conjunto de datos utilizado para


construir el modelo de clasificacin
se denomina conjunto de entrenamiento.
Cada caso/tupla/muestra corresponde a una
clase predeterminada: los casos de
entrenamiento vienen etiquetados por su
atributo de clase.

Uso del modelo

El modelo construido a partir del conjunto de


entrenamiento se utiliza para clasificar nuevos
datos.

Clasificacin
Aprendizaje
Supervisado vs. No Supervisado

Aprendizaje supervisado (clasificacin):


Los casos del conjunto de entrenamiento
aparecen etiquetados con la clase a la que
corresponden.
Aprendizaje no supervisado (clustering) :
No se conocen las clases de los casos del
conjunto de entrenamiento (ni siquiera su
existencia).

Clasificacin

Evaluacin

La evaluacin de un algoritmo de clasificacin


se puede realizar atendiendo a distintos
aspectos del modelo creado o del proceso
utilizado para crearlo:
Precisin
(porcentaje de casos clasificados
correctamente).
Eficiencia
(tiempo necesario para construir/usar el
clasificador).
Robustez
(frente a ruido y valores nulos)
Escalabilidad
(utilidad en grandes bases de datos)
Interpretabilidad
6
(el clasificador, es slo una caja negra?)

Evaluacin
Estimacin de la precisin del
modelo

Antes de construir el modelo de clasificacin, se


divide el conjunto de datos disponible en un
conjunto de entrenamiento (para construir el
modelo) y un conjunto de prueba (para evaluar
el modelo).
Una vez construido el modelo, se usa para
clasificar los datos del conjunto de prueba:
Comparando los casos etiquetados del conjunto
de prueba con el resultado de aplicar el modelo,
se obtiene un porcentaje de clasificacin.
Si la precisin del clasificador es aceptable,

Evaluacin
Estimacin de la precisin del
modelo

Cuanto mayor sea su complejidad, los modelos


de clasificacin tienden a ajustarse ms al
conjunto de entrenamiento utilizado en su
construccin (sobreaprendizaje).
El conjunto de prueba debe ser independiente
del conjunto de entrenamiento.
El error de clasificacin en el conjunto de
entrenamiento NO es un buen estimador de la
precisin del clasificador.

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:

Comenzamos con todos los ejemplos de


entrenamiento en la raz del rbol de
decisin.
Los ejemplos se van dividiendo en
funcin del atributo que se seleccione
para ramificar el rbol en cada nodo.
Los atributos que se usan para ramificar
18
se eligen en funcin de una heurstica.

rboles de decisin
Construccin de rboles de
decisin
Criterios de parada: Cundo se
detiene
la construccin del rbol de decisin?

Cuando todos los ejemplos que quedan


pertenecen a la misma clase (se aade
una hoja al rbol con la etiqueta de la
clase).
Cuando no quedan atributos por los que
ramificar (se aade una hoja etiquetada
con la clase ms frecuente en el nodo).
19

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):

Ganancia de informacin (ID3, C4.5)

ndice de Gini (CART, SLIQ, SPRINT)

Existen otras muchas reglas de divisin:


2, MDL (Minimum Description Length)
22

rboles de decisin
m

Info( D) pi log 2 ( pi )

Entropa

i 1

Medida basada en la Teora de la


Informacin
C1
0
C2

Entropa = 0 log 0 1 log 1 = 0

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

Estimacin de la probabilidad de que


un ejemplo de D pertenezca a la clase C i
m

Entropa

Info( D ) pi log 2 ( pi )
i 1

(informacin necesaria para clasificar un ejemplo en


D)

Informacin necesaria para clasificar D


v |D |
despus de usar el atributo A para
dividir
D
j
Info A ( D )
I (D j )
en v particiones:
j 1 | D |
Ganancia
Gain(A) obtenida
Info(D) Info A(D)
al ramificar utilizando el atributo A:

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):

GainRatio(A) = Gain(A) / SplitInfo(A)


25

rboles de decisin
ndice de Gini
(CART, SLIQ, SPRINT)

n 2
gini ( D) 1 p j
j 1

Medida estadstica de impureza


C1
0
C2
6
Gini=0.000

C1
1
C2
5
Gini=0.278

C1
2
C2
4
Gini=0.444

C1
3
C2
3
Gini=0.500

Para construir el rbol, elegimos el atributo


que proporciona la mayor reduccin de
impureza
26

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.

Criterio de proporcin de ganancia


Tiende a preferir particiones poco balanceadas
(con una particin mucho ms grande que las otras)

ndice de Gini
Funciona peor cuando hay muchas clases y tiende a
favorecer particiones de tamao y pureza similares.

Ninguna regla de divisin es


significativamente mejor que los dems
28

rboles de decisin
Otros aspectos

rboles binarios o n-arios?


(CART binario; C4.5 n-ario para atributos
categricos, binario para atributos
continuos)
Manejo de atributos continuos
(seleccin del conjunto de tests candidatos
para ramificar el rbol, p.ej. discretizacin
previa)
Manejo de valores nulos
(cmo se tratan los valores

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

PUBLIC (Rastogi & Shim,


VLDB1998)
integra la poda en el proceso de construccin del
rbol

RainForest (Gehrke et al.,


VLDB1998)
separa lo que determina la escalabilidad del
algoritmo

32

rboles de decisin
Ventajas de los rboles de
decisin

Fcil interpretacin

Rapidez para clasificar nuevos datos

(cuando son pequeos)

Precisin comparable a otras


tcnicas
33

rboles de decisin
DEMO

TDIDT
Top-Down Induction of Decision Trees
34

Reglas
Existen muchas formas de construir
modelos de clasificacin basados en
reglas:

A partir de un rbol de decisin


Diseando algoritmos
especficos
de induccin de reglas

Metodologa STAR de Michalski


Listas de decisin (p.ej. RIPPER)

A partir de reglas de asociacin


37

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

IF (age<=30) AND (student=no)no


yes
THEN buys_computer = no
IF (age<=30) AND (student=yes)
THEN buys_computer = yes
IF (30<age<=40)
THEN buys_computer = yes
IF (age>40) AND (credit_rating=excellent)
THEN buys_computer = yes
IF (age>40) AND (credit_rating=fair)
THEN buys_computer = no

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:

dejan de ser mutuamente excluyentes:


varias reglas pueden ser vlidas para un
mismo ejemplo (hay que establecer un
orden entre las reglas [lista de decisin]
o realizar una votacin).

Dejan de ser exhaustivas: puede que


ninguna regla sea aplicable a un
40
ejemplo concreto (hace falta incluir una

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

Modelos de clasificacin parcial


vg: Bayardo, KDD1997

Modelos asociativos de clasificacin


vg: CBA (Liu, Hsu & Ma, KDD1998)
RCBT (Cong et al., SIGMOD2005)

Patrones emergentes
vg: CAEP (Dong et al., ICDS1999)

rboles de reglas
vg: Wang et al., KDD2000

Reglas con excepciones

48

Reglas
Modelos basados en reglas de
asociacin

CMAR
Classification based on Multiple Association
Rules

Li, Han & Pei, ICDM2001


CPAR
Classification based on Predictive Association
Rules

Yin & Han, SDM2003


ART
Association Rule Trees
Berzal et al., Machine Learning, 2004

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

Extraccin de reglas: Hiptesis candidatas


MinSupp
MinConf

Umbral de soporte mnimo


Umbral de confianza mnima

Umbral fijo
Seleccin automtica

52

ART: Construccin
K=1
Extraccin
Seleccin

Ramificacin

K++

Seguir?

Hoja

Seleccin de reglas:

Reglas agrupadas por conjuntos de


atributos.
Criterio de preferencia.

53

ART: Ejemplo

Conjunto de datos

54

ART: Ejemplo

Nivel 1

K=1

NIVEL 1 - Extraccin de reglas de asociacin


Umbral de soporte mnimo = 20%
Seleccin automtica del umbral de confianza

S1: if (Y=0) then C=0 with confidence 75%


if (Y=1) then C=1 with confidence 75%

S2: if (Z=0) then C=0 with confidence 75%


if (Z=1) then C=1 with confidence 75%

55

ART: Ejemplo

Nivel 1

K=2

NIVEL 1 - Extraccin de reglas de asociacin


Umbral de soporte mnimo = 20%
Seleccin automtica del umbral de confianza
S1: if (X=0 and Y=0) then C=0 (100%)
if (X=0 and Y=1) then C=1 (100%)

S2: if (X=1 and Z=0) then C=0 (100%)


if (X=1 and Z=1) then C=1 (100%)

S3: if (Y=0 and Z=0) then C=0 (100%)


if (Y=1 and Z=1) then C=1 (100%)

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%)

X=0 and Y=0: C=0 (2)


X=0 and Y=1: C=1 (2)
else
...

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

ART vs. TDIDT

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

P(C | X) P(X | C )P(C )


i
i
i

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)

(a) 1-nearest neighbor

(b) 2-nearest neighbor

(c) 3-nearest neighbor

K demasiado pequeo
Sensible a ruido
K demasiado grande
El vecindario puede incluir puntos de otras
clases

66

Otros modelos
Ensembles

Combinan varios modelos con el objetivo


de mejorar la precisin final del
clasificador.

Bagging: Votacin por mayora

Varios clasificadores diferentes votan para


decidir la clase de un caso de prueba (ver
bootstrapping).

Boosting: Votacin ponderada

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

CN FP: False TN: True


positive negative

Precisin del clasificador


accuracy = (TP+TN)/(TP+TN+FP+FN)

69

Evaluacin: Mtricas
Limitaciones de la precisin (accuracy) :
Supongamos un problema con 2 clases:

9990 ejemplos de la clase 1

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)

El coste de clasificacin ser proporcional


a la precisin del clasificador slo si
i,j: i j C(i|j) = C(j|i)
C(i|i) = C(j|j)

71

Evaluacin: Mtricas
Medidas cost-sensitive
Prediccin

Clase real

CP

CP

CN

TP: True
positive

FN: False
negative

CN FP: False TN: True


positive 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

CN FP: False TN: True


positive negative
F-measure

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)

Se divide aleatoriamente el conjunto de datos


en k subconjuntos de interseccin vaca (ms o
menos del mismo tamao). Tpicamente, k=10.
En la iteracin i, se usa el subconjunto i como
conjunto de prueba y los k-1 restantes como
conjunto de entrenamiento.
Como medida de evaluacin del mtodo de
clasificacin se toma la media aritmtica de las
k iteraciones realizadas.

76

Evaluacin: Mtodos
Validacin cruzada
Variantes de la validacin cruzada

Leave one out: Se realiza una validacin


cruzada con k particiones del conjunto de
datos, donde k coincide con el nmero de
ejemplos disponibles.
Validacin cruzada estratificada: Las
particiones se realizan intentando mantener en
todas ellas la misma proporcin de clases que
aparece en el conjunto de datos completo.

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).

0.632 bootstrap: Dado un conjunto de d


datos, se toman d muestras. Los datos que no
se escojan formarn parte del conjunto de
prueba.
En torno al 63.2% de las muestras estarn
en el
bootstrap (el conjunto de
entrenamiento) y el
36.8% caer en el
conjunto kde prueba ya que
(1-1/d)d e-1
=0.368
78_ set )
acc( M ) (0.632 acc( M i )test _ set 0.368 acc( M i )train
i 1

Evaluacin: Comparacin
Precisin [Accuracy]
100
90
audiology
car
chess
hayesroth
lenses
lungcancer
mushroom
nursery
soybean
splice
tictactoe
titanic
vote

Precisin del clasificador

80
70
60
50
40
30
20
10
0
ART

C4.5

CN2-STAR

CN2-DL

RIPPER

Naive Bayes Por defecto

79

Evaluacin: Comparacin
Complejidad del clasificador

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

Tiempo de entrenamiento (ms)

100000

10000

1000

100

10

1
ART

C4.5

CN2-STAR

CN2-DL

RIPPER

Naive Bayes

81

Evaluacin: Comparacin
Operaciones de E/S: Recorridos

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

Operaciones de E/S (registros)

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

Operaciones de E/S (pginas)

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)

true positive rate TPR = TP/

Eje horizontal:

85
false positive rate FPR =

Evaluacin: Comparacin
Curvas ROC

Desarrolladas en los aos 50 para analizar


seales con ruido: caracterizar el compromiso
entre aciertos y falsas alarmas.
Permiten comparar visualmente distintos
modelos de clasificacin.
El rea que queda bajo la curva es una medida
de la precisin (accuracy)
accuracy del clasificador:
Cuanto ms cerca estemos de la diagonal
(rea cercana a 0.5), menos preciso ser el
modelo.
Un modelo perfecto tendr rea 1.
86

Evaluacin: Comparacin
Curvas ROC

Ningn modelo es consistentemente mejor que


el otro: M1 es mejor para FPR bajos, M2 para
FPR altos.
87

Evaluacin: Comparacin
Curvas ROC
Cmo construir la curva ROC?

Se usa un clasificador que prediga la


probabilidad de que un ejemplo E pertenezca a
la clase positiva P(+|E)

Se ordenan los ejemplos en orden decreciente


del valor estimado P(+|E)

Se aplica un umbral para cada valor distinto de


P(+|E), donde se cuenta el nmero de TP, FP, TN
y FN.
TPR = TP/(TP+FN)
FPR = FP/(FP+TN)

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

F. Berzal, J.C. Cubero, D. Snchez, and J.M. Serrano: ART: A hybrid


classification method. Machine Learning, 2004

L. Breiman, J. Friedman, R. Olshen, and C. Stone. Classification and


Regression Trees. Wadsworth International Group, 1984.

W. Cohen. Fast effective rule induction. ICML'95

R. O. Duda, P. E. Hart, and D. G. Stork. Pattern Classification, 2ed.


John Wiley and Sons, 2001

U. M. Fayyad. Branching on attribute values in decision tree


generation. AAAI94

Y. Freund and R. E. Schapire. A decision-theoretic generalization


of on-line learning and an application to boosting. J. Computer
and System Sciences, 1997.

J. Gehrke, V. Gant, R. Ramakrishnan, and W.-Y. Loh, BOAT -Optimistic Decision Tree Construction. SIGMOD'99.

J. Gehrke, R. Ramakrishnan, and V. Ganti. Rainforest: A framework


for fast decision tree construction of large datasets. VLDB98.

90

Bibliografa

T.-S. Lim, W.-Y. Loh, and Y.-S. Shih. A comparison of prediction


accuracy, complexity, and training time of thirty-three old
and new classification algorithms. Machine Learning, 2000.

S. K. Murthy, Automatic Construction of Decision Trees from


Data: A Multi-Disciplinary Survey, Data Mining and Knowledge
Discovery 2(4): 345-389, 1998

J. R. Quinlan. Induction of decision trees. Machine Learning, 1:81106, 1986.

J. R. Quinlan and R. M. Cameron-Jones. FOIL: A midterm report.


ECML93.

J. R. Quinlan. C4.5: Programs for Machine Learning. Morgan


Kaufmann, 1993.

J. R. Quinlan. Bagging, boosting, and c4.5. AAAI'96.

R. Rastogi and K. Shim. Public: A decision tree classifier that


integrates building and pruning. VLDB98

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

También podría gustarte