Documentos de Académico
Documentos de Profesional
Documentos de Cultura
l Tarea:
– Aprender un modelo que mapea cada conjunto de atributos x en una de las etiquetas
predefinidas de clase y
3 No Small 70K No
6 No Medium 60K No
Training Set
Apply
Tid Attrib1 Attrib2 Attrib3 Class Model
11 No Small 55K ?
15 No Large 67K ?
10
Test Set
Clasificadores Base
– Métodos basados en Arboles de Decisión
– Métodos Basados en Reglas
– Vecino Mas cercano
– Redes Neuronales
– Deep Learning
– Naïve Bayes y Redes de Creencias Bayesianas
– Support Vector Machines (Maquinas de Soporte Vectorial)
Splitting Attributes
Home Marital Annual Defaulted
ID
Owner Status Income Borrower
1 Yes Single 125K No Home
2 No Married 100K No Owner
Yes No
3 No Single 70K No
4 Yes Married 120K No NO MarSt
5 No Divorced 95K Yes Single, Divorced Married
6 No Married 60K No
Income NO
7 Yes Divorced 220K No
< 80K > 80K
8 No Single 85K Yes
9 No Married 75K No NO YES
10 No Single 90K Yes
10
MarSt Single,
Married Divorced
Home Marital Annual Defaulted
ID
Owner Status Income Borrower
NO Home
1 Yes Single 125K No
Yes Owner No
2 No Married 100K No
3 No Single 70K No NO Income
4 Yes Married 120K No < 80K > 80K
5 No Divorced 95K Yes
NO YES
6 No Married 60K No
7 Yes Divorced 220K No
8 No Single 85K Yes
9 No Married 75K No Puede existir mas de un árbol que
ajuste al mismo conjunto de datos!!!
10 No Single 90K Yes
10
Test Data
Comenzar desde la raíz del árbol
Home Marital Annual Defaulted
Owner Status Income Borrower
No Married 80K ?
Home 10
Yes Owner No
NO MarSt
Single, Divorced Married
Income NO
< 80K > 80K
NO YES
Test Data
Home Marital Annual Defaulted
Owner Status Income Borrower
No Married 80K ?
Home 10
Yes Owner No
NO MarSt
Single, Divorced Married
Income NO
< 80K > 80K
NO YES
Test Data
Home Marital Annual Defaulted
Owner Status Income Borrower
No Married 80K ?
Home 10
Yes Owner No
NO MarSt
Single, Divorced Married
Income NO
< 80K > 80K
NO YES
Test Data
Home Marital Annual Defaulted
Owner Status Income Borrower
No Married 80K ?
Home 10
Yes Owner No
NO MarSt
Single, Divorced Married
Income NO
< 80K > 80K
NO YES
Test Data
Home Marital Annual Defaulted
Owner Status Income Borrower
No Married 80K ?
Home 10
Yes Owner No
NO MarSt
Single, Divorced Married
Income NO
< 80K > 80K
NO YES
Test Data
Home Marital Annual Defaulted
Owner Status Income Borrower
No Married 80K ?
Home 10
Yes Owner No
NO MarSt
Single, Divorced Married Asignar a “NO” por
defecto
Income NO
< 80K > 80K
NO YES
6 No Medium 60K No
Training Set
Apply Decision
Tid Attrib1 Attrib2 Attrib3 Class
Model Tree
11 No Small 55K ?
15 No Large 67K ?
10
Test Set
Varios Algoritmos:
– Algoritmo de Hunt (uno de los primeros)
– CART
– ID3, C4.5, C5.0
– SLIQ, SPRINT
Procedimiento General:
3 No Single 70K No
l
4 Yes Married 120K No
– Si Dt contiene registros que pertenecen a la 5 No Divorced 95K Yes
Dt
Aplique recursivamente el procedimiento a cada
subconjunto.
?
Yes No
Status
(3,0) Single,
Married
Defaulted = No Marital Divorced
Status
Defaulted = No
(3,0) Single,
Married
Annual
Divorced Income
(3,0)
Defaulted = Yes Defaulted = No < 80K >= 80K
Yes No
Status
(3,0) Single,
Married
Defaulted = No Marital Divorced
Status
Defaulted = No
(3,0) Single,
Married
Annual
Divorced Income
(3,0)
Defaulted = Yes Defaulted = No < 80K >= 80K
Yes No
Status
(3,0) Single,
Married
Defaulted = No Marital Divorced
Status
Defaulted = No
(3,0) Single,
Married
Annual
Divorced Income
(3,0)
Defaulted = Yes Defaulted = No < 80K >= 80K
Yes No
Status
(3,0) Single,
Married
Defaulted = No Marital Divorced
Status
Defaulted = No
(3,0) Single,
Married
Annual
Divorced Income
(3,0)
Defaulted = Yes Defaulted = No < 80K >= 80K
Split Multi-vía:
Marital
– Utilizar tantas particiones como Status
valores distintos.
Split Binario:
– Divide los valores en dos
subconjuntos
Marital Marital Marital
Status Status Status
OR OR
{Small, {Medium,
Large} Extra Large}
Introduction to Data Mining, 2nd Edition 28
Condición de Testeo para Atributos Continuos
Annual Annual
Income Income?
> 80K?
< 10K > 80K
Yes No
l Aproximación Voraz:
– Nodos con clases puras son preferidos.
C0: 5 C0: 9
C1: 5 C1: 1
l Índice de Gini
GINI (t ) = 1 − [ p( j | t )] 2
l Entropía
Entropy(t ) = − p( j | t ) log p( j | t )
j
l Error de Clasificación
Error (t ) = 1 − max P (i | t ) i
A? B?
Yes No Yes No
M1 M2
Ganancia = P – M1 vs P – M2
Introduction to Data Mining, 2nd Edition 35
Medida de Impureza: GINI
GINI (t ) = 1 − [ p( j | t )]2
j
– Máximo (1 - 1/nc) cuando los registros están igualmente distribuidos entre todas
las clases, implicando la información menos interesante.
– Mínimo (0.0) cuando todos los registros pertenecen a una sola clase, implicando
la información mas interesante
GINI (t ) = 1 − [ p( j | t )]2
j
C1 0 C1 1 C1 2 C1 3
C2 6 C2 5 C2 4 C2 3
Gini=0.000 Gini=0.278 Gini=0.444 Gini=0.500
GINI (t ) = 1 − [ p( j | t )]2
j
l Para cada valor distinto, calcular los conteos de cada clase en el dataset
l Utilizar la matriz de conteo para tomar la decisión.
– Para cada v, escanear la base de datos para encontrar la 8 No Single 85K Yes
matriz de conteo y calcular el índice de Gini 9 No Married 75K No
≤ 80 > 80
Defaulted Yes 0 3
Defaulted No 3 4
No 0 7 1 6 2 5 3 4 3 4 3 4 3 4 4 3 5 2 6 1 7 0
Gini 0.420 0.400 0.375 0.343 0.417 0.400 0.300 0.343 0.375 0.400 0.420
No 0 7 1 6 2 5 3 4 3 4 3 4 3 4 4 3 5 2 6 1 7 0
Gini 0.420 0.400 0.375 0.343 0.417 0.400 0.300 0.343 0.375 0.400 0.420
No 0 7 1 6 2 5 3 4 3 4 3 4 3 4 4 3 5 2 6 1 7 0
Gini 0.420 0.400 0.375 0.343 0.417 0.400 0.300 0.343 0.375 0.400 0.420
No 0 7 1 6 2 5 3 4 3 4 3 4 3 4 4 3 5 2 6 1 7 0
Gini 0.420 0.400 0.375 0.343 0.417 0.400 0.300 0.343 0.375 0.400 0.420
No 0 7 1 6 2 5 3 4 3 4 3 4 3 4 4 3 5 2 6 1 7 0
Gini 0.420 0.400 0.375 0.343 0.417 0.400 0.300 0.343 0.375 0.400 0.420
Entropy(t ) = − p( j | t ) log p( j | t )
j
◆ Máximo (log nc) cuando todos los registros están igualmente distribuidos entre todas las clases, implicando
la menor cantidad de información.
◆ Mínimo (0.0) cuando todos los registros pertenecen a la misma clase, implicando la máxima información.
– Los cálculos basados en entropía son similares a los cálculos del índice de GINI
Entropy(t ) = − p( j | t ) log p( j | t )
j 2
l Ganancia de Información:
n
GAIN = Entropy ( p) − Entropy (i )
k
i
n
split i =1
Las medidas de impureza de los nodos tienden a preferir splits que resulten en una
gran cantidad de particiones, cada una de ellas pequeña pero pura.
l Gain Ratio:
GAIN n n
GainRATIO = SplitINFO = − log
Split k
i i
split
SplitINFO n n i =1
l Gain Ratio:
GAIN n n
GainRATIO = SplitINFO = − log
Split k
i i
split
SplitINFO n n i =1
Error (t ) = 1 − max P (i | t ) i
– Máximo (1 - 1/nc) cuando todos los registros están igualmente distribuidos entre
todas las clases, implicando la menor cantidad de información.
– Mínimo (0) cuando todos los registros pertenecen a una sola clase, implicando la
información mas interesante.
Error (t ) = 1 − max P (i | t ) i
A? Parent
C1 7
Yes No
C2 3
Node N1 Node N2 Gini = 0.42
Gini(N1) N1 N2
= 1 – (3/3)2 – (0/3)2 Gini(Hijos)
C1 3 4 = 3/10 * 0
=0
C2 0 3 + 7/10 * 0.489
Gini(N2) Gini=0.342 = 0.342
= 1 – (4/7)2 – (3/7)2
= 0.489 Gini mejora pero el
error permanece
igual!!
7/4/2022 Introduction to Data Mining, 2nd Edition 57
Error de Clasificación vs. Índice de GINI
A? Parent
C1 7
Yes No
C2 3
Node N1 Node N2 Gini = 0.42
N1 N2 N1 N2
C1 3 4 C1 3 4
C2 0 3 C2 1 2
Gini=0.342 Gini=0.416
Z Z
X Y
7/4/2022 Introduction to Data Mining, 2nd Edition 65
Limitaciones de fronteras de decisión basadas en un único atributo
Aplicabilidad
Expresividad
Eficiencia Computacional
Valores Faltantes
Interacción entre Atributos
Atributos Irrelevantes
Atributos Redundantes
Splits Rectilíneos
Medidas de Impureza