Documente Academic
Documente Profesional
Documente Cultură
Supervisado
Árboles de
Decisión
Modelo general de los métodos de Clasificación
|Id Reembolso Estado Ingresos
Civil Anuales Fraude Algoritmo
de
1 Sí Soltero 125K No
Aprendizaje
2 No Casado 100K No Generar
3 No Soltero 70K No el
4 Sí Casado 120K No Modelo
Divorcia
5 No 95K Sí
do
6 No Casado 60K No
10
Modelo
Tabla de Aprendizaje
Id Reembolso Estado Ingresos
Civil Anuales Fraude
Aplicar
7 No Soltero 80K No el
8 Si Casado 100K No Evaluar Modelo Nuevos
9 No Soltero 70K No Individuos
10
Tabla de Testing
Definición de Clasificación
• Dada una base de datos ! = {$1 , $2 , … , $) } de tuplas o registros
(individuos) y un conjunto de clases + = {+1 , +2 , … , +, }, el
problema de la clasificación es encontrar una función .: ! → +
tal que cada $1 es asignada una clase +2 .
1 Sí Soltero 125K No
2 No Casado 100K No
Reembolso
3 No Soltero 70K No Sí No
4 Sí Casado 120K No
NO Es-Civil
Divorcia
5 No 95K Sí Soltero, Divorciado Casado
do
6 No Casado 60K No
Ingresos NO
Divorcia
7 Sí 220K No < 80K > 80K
do
8 No Soltero 85K Sí
NO SÍ
9 No Casado 75K No
10 No Soltero 90K Sí
10
Datos de Prueba
Inicia desde la raíz del árbol Reebolso Estado Ingresos
Civil Fraude
No Casado 80K ?
Reembolso
10
Sí No
NO Es-Civil
Soltero, Divorciado Casado
Ingresos NO
< 80K > 80K
NO SÍ
Aplicando el modelo de árbol para predecir la
clase para una nueva observación
Datos de Prueba
Reebolso Estado Ingresos
Civil Fraude
No Casado 80K ?
Reembolso
10
Sí No
NO Es-Civil
Soltero, Divorciado Casado
Ingresos NO
< 80K > 80K
NO SÍ
Aplicando el modelo de árbol para predecir la
clase para una nueva observación
Datos de Prueba
Reebolso Estado Ingresos
Civil Fraude
No Casado 80K ?
Reembolso 10
Sí No
NO Es-Civil
Soltero, Divorciado Casado
Ingresos NO
< 80K > 80K
NO SÍ
Aplicando el modelo de árbol para predecir la
clase para una nueva observación
Datos de Prueba
Reebolso Estado Ingresos
Civil Fraude
No Casado 80K ?
Reembolso
10
Sí No
NO Es-Civil
Soltero, Divorciado Casado
Ingresos NO
< 80K > 80K
NO SÍ
Aplicando el modelo de árbol para predecir la
clase para una nueva observación
Datos de Prueba
Reebolso Estado Ingresos
Civil Fraude
No Casado 80K ?
10
Reembolso
Sí No
NO Es-Civil
Soltero, Divorciado Casado
Ingresos NO
< 80K > 80K
NO SÍ
Aplicando el modelo de árbol para predecir la
clase para una nueva observación
Datos de Prueba
Reebolso Estado Ingresos
FRAUDE (S/N) Civil Fraude
No Casado 80K ?
Reembolso 10
Si No
NO Est.Civil
Soltero, Divorciado Casado Asigna “No” a la variable
de Clase “Fraude”
Ingresos NO
<= 80K > 80K
NO YES
¿Cómo se generan los árboles de decisión?
Sí No 1 Sí Soltero 125K No
2 No Casado 100K No
No Fraude
Fraude 3 No Soltero 70K No
4 Sí Casado 120K No
5 No Divorciado 95K Sí
6 No Casado 60K No
Reembolso Reembolso 7 Sí Divorciado 220K No
Sí No 8 No Soltero 85K Sí
Sí No
9 No Casado 75K No
No Estado No Estado 10 No Soltero 90K Sí
Fraude
Civil Fraude
Civil
10
Soltero, Soltero,
Casado Casado
Divorciado Divorciado
Fraude No No
Fraude Ingresos
Fraude
Anuales
< 80K >= 80K ¿Cómo se escoge el
No Fraude orden de las variables?
Fraude
¿Cómo aplicar el algoritmo de Hunt?
Sí No
Pregunta #2: Se usarán los siguientes criterios
de IMPUREZA: el Error de Clasificación, el Índice
de Gini y la Entropía, para esto se define la
siguiente probabilidad:
Padre
GINI (t ) = 1 - å[ p( j | t )]2
j
C1 0
Error Clasificación = 1-max[0/6,6/6]= 0
C2 6
C1 1
Error Clasificación = 1-max[1/6,5/6]= 0,167
C2 5
C1 2
Error Clasificación = 1-max[2/6,4/6]= 0,333
C2 4
Comparación Gráfica
Gini Split
k
ni
GINI split = å GINI (i )
i =1 n
Ejemplo de cálculo GINISplit
|padre|=18 Padre
Cardinalidad=18
En este caso todos los pesos son iguales porque todas las clases tienen 6 elementos
Entropía Split
k
ni
Entropiasplit = å Entropia(i )
i =1 n
Error de Clasificación Split
k
ni
EC split = å EC (i )
i =1 n
Ejemplo con error de
clasificación
C2 6
Probabilidades:
n P(C1/N1)=0/6=0
n P(C2/N1)=6/6=1
EC(N1)=1-max(0,1)=0
Calculo para el nodo N2
Cálculos para N2
C1 4
C2 4
Probabilidades:
n P(C1/N2)=4/8=0.5
n P(C2/N2)=4/8=0.5
EC(N2)=1-max(0.5,0.5)=0.5
Calculo para el nodo N3
Cálculos para N3
C1 2
C2 3
Probabilidades:
n P(C1/N3)=2/5=0.4
n P(C2/N3)=3/5=0.6
EC(N3)=1-max(0.4,0.6)=0.4
Calculo para el nodo N4
Cálculos para N4
C1 1
C2 5
Probabilidades:
n P(C1/N4)=1/6=0.1667
n P(C2/N4)=5/6=0.8333
EC(N3)=1-max(0.1667,0.8333)=0.1667
Error de clasificación Split
Datos previos
ECS= (6/25)*0+(8/25)*0.5+(5/25)*0.4+(6/25)*0.1667=0.280008
Información Ganada à IGSplit
ü Cada vez que se va a hacer una nueva división en el árbol (split
the tree) se debe comparar el grado de impureza del nodo padre
respecto al grado de impureza de los nodos hijos.
ü Esto se calcula con el índice de Información Ganada (IG), que es
la resta de la impureza del nodo padre menos el promedio
ponderado de las impurezas de los nodos hijos.
ü La idea en IGSplit sea máximo y esto se logra si el promedio
ponderado de las impurezas de los nodos hijos es mínimo.
æ k ni ö
D = IGsplit = I ( padre ) - ç å I (i) ÷
è i =1 n ø
Gini(N1) A?
= 1 – (3/3)2 – (0/3)2 Gini(N2)
Sí No
=0 = 1 – (4/7)2 – (3/7)2
= 0.490
Nodo N1 Nodo N2
GINIsplit =
= 3/10 * 0 + 7/10 * 0.49 N1 N2
C1 3 4
= 0.343
C2 0 3
Gini=0.361
æ k ni ö
IGsplit = I ( padre ) - ç å I (i ) ÷ = 0.42 - 0.343 = 0.077
è i =1 n ø
¿Cómo escoger la mejor división?
1 Sí Soltero 125K No
pero aparece de primero
2 No Casado 100K No
3 No Soltero 70K No
4 Sí Casado 120K No
5 No Divorciado 95K Sí
Reembolso
6 No Casado 60K No
Sí No
7 Sí Divorciado 220K No
No(F) 3 No(F) 4 8 No Soltero 85K Sí
Sí(F) 0 Sí(F) 3 9 No Casado 75K No
10 No Soltero 90K Sí
10
1 Sí Soltero 125K No
pero aparece de primero
2 No Casado 100K No
3 No Soltero 70K No
4 Sí Casado 120K No
Estado 5 No Divorciado 95K Sí
Soltero Civil 6 No Casado 60K No
Divorciado Casado 7 Sí Divorciado 220K No
GINI(Casado) = 1-(0/4)2-(4/4)2 = 0
1 Sí Soltero 125K No
pero aparece de primero
2 No Casado 100K No
3 No Soltero 70K No
4 Sí Casado 120K No
Ingresos 5 No Divorciado 95K Sí
Anuales 6 No Casado 60K No
< 80K >=80K 7 Sí Divorciado 220K No
Dado que tomamos el 70% de los datos para la tabla de training entonces
contamos con 105 individuos de los 150 totales, de los cuales el 31% (33
datos) son setosas, el 33% (35 datos) son versicolor y el 35% (37 datos)
virginica. Esto es a lo que llamamos la probabilidad de acierto, que suman
entre todas 100% aproximadamente.
Reglas en predictoR
Ahora pasemos a la regla número 2; en esta se tiene un cover que
representa un 31% del total de los datos, de los cuales el 100% se
clasifican como setosas, el 0% como versicolor y el 0% como virginica.
Para nuestro caso particular podemos ver que la regla 2-12-7 son mejores que
la 13, pues esta última tiene un cover muy bajo.
Reglas en PredictoR
Reglas en PredictoR
Árbol como reglas:
IngresoNeto GradoAcademico
1=Muy Bajo 1=Bachiller
2=Bajo 2=Licenciatura
3=Medio 3=Maestría
4=Alto 4=Doctorado
CoeficienteCreditoAvaluo BuenPagador
1=Muy Bajo 1=NO
2=Bajo 2=Si
3=Medio
4=Alto
Problema desequilibrado
Árboles de Decisión en predictoR
Reglas en predictoR
Reglas en predictoR
• Rule number: 11 [BuenPagador=Si cover=1024 (26%) prob=0.97]
CoefCreditoAvaluo=4,6,8,9,11 GradoAcademico=Licenciatura
MontoCredito< 5.813e+04
• Rule number: 3 [BuenPagador=Si cover=2482 (62%) prob=0.93]
CoefCreditoAvaluo=1,2,3,5,7,10,12
• Rule number: 43 [BuenPagador=Si cover=148 (4%) prob=0.75]
CoefCreditoAvaluo=4,6,8,9,11 GradoAcademico=Licenciatura
MontoCredito>=5.813e+04 CoefCreditoAvaluo=4,11
MontoCuota=Alto,Bajo,Medio
• Rule number: 20 [BuenPagador=No cover=41 (1%) prob=0.17]
CoefCreditoAvaluo=4,6,8,9,11 GradoAcademico=Licenciatura
MontoCredito>=5.813e+04 CoefCreditoAvaluo=8,9
• Rule number: 42 [BuenPagador=No cover=19 (0%) prob=0.16]
CoefCreditoAvaluo=4,6,8,9,11 GradoAcademico=Licenciatura
MontoCredito>=5.813e+04 CoefCreditoAvaluo=4,11 MontoCuota=MuyBajo
• Rule number: 4 [BuenPagador=No cover=286 (7%) prob=0.05]
CoefCreditoAvaluo=4,6,8,9,11 GradoAcademico=Bachiller
Matriz de confusión en predictoR
(Matriz de Error)
Comparación de Modelos predictoR
Curva ROC
Gracias….