You are on page 1of 12

Arboles de Clasificacin

Esta nota tcnica fue preparada por el Profesor Carlos Quintanilla A. de la Facultad de INCAE, para servir como base de discusin en clase y no como ilustracin del manejo correcto o incorrecto de una situacin administrativa. Derechos reservados@ 2010 INCAE Business School. Se prohbe la reproduccin de este material sin el permiso de INCAE Business School. Para ms informacin contacte Casos@incae.edu

Arboles de Clasificacin
Serie: Data Mining e Inteligencia de Mercados

En el captulo anterior, estudiamos el mtodo de regresin logstica. Este es un ejemplo de un mtodo de clasificacin paramtrico. Estimamos los coeficientes o parmetros de una ecuacin lineal que conecta las variables independientes con la probabilidad de xito a travs de una funcin sencilla. Los rboles de clasificacin, al otro extremo, son un ejemplo de un mtodo no-paramtrico de clasificacin. La relacin entre la variable dependiente y las variables independientes no asume ninguna forma funcional especial. De hecho, la relacin se representa gri?camente. A diferencia de la regresin logstica, que slo puede ser usado para analizar variables binomiales o binarias, los arboles pueden ser aplicados a variables categoricas con ms de dos categorias. Los rboles fueron propuestos independientemente en los aos ochentas por Leo Breiman en Estadstica y Thomas Quinlan en Computer Sciencel. El objetivo de un rbol de clasificacin es asignar un grupo de observaciones a un nmero reducido (aunque no necesariamente igual a 2) de clases, usando informacin sobre un grupo de variables independientes. Aunque las matemticas de la tcnica estn ms d a de lo que nos interesa en este curso, la presentacin de los resultados es sumamente intuitiva. El lector que haya tomado un curso de Management Science notar la semajanza con los rboles de decisin y recordara lo efectivos que stos son para representar un proceso de toma de decisiones. Los rboles de clasificacin comparten esta propiedad atractiva. La construccin de un arbol, que discutimos en la siguiente seccin, se parece mucho a la manera en que un doctor llega a un diagnstico sobre un paciente. El mdico hace una serie de preguntas de tipo si/no (tenes fiebre? te duele la cabeza? has tocido? estas cansando?). Dependiendo de las respuestas que el mdico va a recibiendo, ste cambia las preguntas que hace y finalmente llega a una conclusin. De hecho, una de las primeras aplicaciones de arboles en Estadistica fue la clasificacin de pacientes que acababan de tener un ataque al corazon como miembros de dos clases: alto riesgo y bajo riesgo de experimentar complicaciones fatales en los 30 das posteriores al ataque:

"En el Centro Medico de la Universidad de California en San


Breiman refiere una historia simptica sobre este hecho. Un par de aos despus de haber escrito el libro sobre CART, Breiman fue invitado a dar una charla sobre el t6pico en un departamento de Computer Science. Durante la conferencia, la audiencia se mostro cordial, pero poco entusiasta. Esto dejo a Breiman confundido. CART es, despues de todo, un mtodo genial de clasificar. Breiman pidi6 una explicaci6n de un colega, y este la ofreci rApidamente: "Quinlan propuso una tcnica muy parecida hace dos aos".

1 El Algoritmo CART: Cmo funciona?

Fig. 1: Ejemplo original de una aplicacin de arboles de clasificacin.

HlgbRiak 11% Low Risk 89%

Diego, cuando una persona que ha sufrido u n ataque al corazon es admitida, 19 variables son recogidas durante las primeras 24 horus. Estas incluyen presin arterial, edad y 17 otras variables binarias o numricas resumiendo todos los sntomas considerados indicadores importantes sobre la condicin del paciente. El objetivo de u n estudio reciente (...) fue desamllar u n mtodo para identificar pacientes de alto riesgo (que n o sobreviviran e n los prximos 30 dios) sobre la base de la informacin recogida durante las primeras 24 horas. La Figura 1 ilustru u n set de reglas estructurudas e n u n arbol de clasificacin que fue producido e n ese estudio. Las variables utilizadas e n el rbol son presin arterial (BP), edad (age) y taquicardia (ST). La simplicidad del arbol levanta sospechas que su precisin puede ser fcilmente mejorado con los mtodos standard de clasificacin estadstica. S i n embargo, cuando estos fueron usados, la precisin del proceso de clasificacin disminuyo" (Breiman et al., 1980)

1. El Algoritmo CART: Cmo funciona?


El nombre tcnico de esta tcnica es Particin Binaria Recursiva. Ahora vern el porque. Consideremos el ejemplo ilustrado en la Figura 2. Tenemos un grupo hipotktico de 48 individuos sobre los cuales tenemos informacin sobre edad e ingreso. Sabemos tambin si estos individuos respondieron positiva o negativamente a una oferta de venta. El color en el grafico indica la clase a la que pertenecen: negro refleja los compradores y rojo refleja los no compradores. Nuestra misin es construir una serie de reglas basadas en ingreso y edad para

1 El Algoritmo CART: Cmo funciona?

Fig. 2: Ejemplo de Construccin de Arbol.

18

20

Z 2

24

26

28

30

32

edad

clasificar a un individuo ya sea como comprador o como necomprador. Noten de entrada que mtodos de clasificacin como regresin lineal o regresin logstica que resultan en fronteras de decisin lineales estn condenados a fracasar. No hay linea que pueda separar las dos clases exitosamente. Echenle un vistazo al arbol de la pgina anterior. Cmo fue seleccionada la presin arterial para aparecer como primera variable en el arbol? Por qu le gano a las otras 18 variables posibles? Ademas, cmo fue seleccionado el valor de 91 para hacer la pregunta inicial? Claramente necesitamos una mktrica para entender porque algunas variables y algunos puntos de corte son ptimos. Esta mtrica es el ndice de Gini (no tiene nada que ver con la medida de desigualdad de ingreso). El indice de Gini trata de medir la "impureza" de una particin. Pureza mxima se alcanza cuando todas las observaciones en una particin pertenecen a la misma clase. Pureza mnima se alcanza cuando las observaciones en una particin estn igualmente repartidas entre las clases posibles (5CL50 si hay dos clases; 33.33-33.33-33.33 si hay tres clases y asi respectivamente). El indice de Gini esta definido: donde el subndice corre de 1 al nmero de clases (2 en este ejemplo). En nuestro ejemplo, en la muestra tenemos 32 observaciones de individuos que compran y 16 observaciones de individuos que no compran. Entonces

Ahora el algoritmo considerar todos y cada uno de los cortes verticales u horizontales que dividan la muestra original en 2 particiones. Por ejemplo, comenzando con edad probaremos todos los cortes posibles: Es edad < 19?

1 El Algoritmo CART: Cmo funciona?

Fig. 3: Primera Particion.

edad

Es edad < 20?

Es edad

< 31?

Despus continuaremos con ingreso: Es ingreso < 5.5?


i

Es ingreso < 6.5?

Es ingreso < 9.5? Para cada uno de esos cortes posibles, tenemos una particin resultante. D* do que el objetivo es maximizar la mtrica de pureza y el ndice de Gini mide impureza, la particin ganadora ser aquella que logre reducir el ndice lo mximo posible. Una vez que hemos encontrado el ganador, hemos logrado partir la muestra original en dos particiones. Ahora aplicamos el mismo proceso a cada una de las particiones resultantes. En nuestro ejemplo, el corte que resulta en la reduccin mxima en el ndice de Gini es "Es ingreso < 8.5?". Esta particin puede verse en la Figura 3 y result a en la primera parte del arbol que podemos ver en la Figura 4. Comentemos rpidamente este arbol. El arbol pregunta incialmente por el nivel de ingreso. Si el nivel de ingreso es menor que 8.5, tomamos el nodo de la izquierda. En este nodo hay 32 clientes en total. De ellos, 24 compran el producto y 8 no compran

1 El Algoritmo CART: Cmo funciona?

Fig. 4: Primer Nivel del Arbol.

el producto. Podriamos afirmar entonces que la probabilidad de compra en este nodo es 75 %. Si tuvieramos que clasificar a una persona que caiga en este nodo, muy probablemente la clasificariamos como un comprador2. Si el nivel de ingreso es mayor que 8.5, tomamos el nodo de la derecha. En este nodo hay 16 clientes. De ellos, 8 compran y 8 no compran. Es decir, en este nodo la probabilidad de compra es 50 %. Sin mayor informacin sobre los costos de cometer los distintos errores en clasificacin seriamos indiferentes entre clasificar alguien que caiga en este nodo como comprador o no. Ahora el proceso se repite. Primero para la particin superior (ingreso>8.5). Alli el corte que maximizar pureza es obvio (Es ingreso < 25?). Con este corte logramos pureza mxima y ya no haremos ms preguntas sobre estas dos particiones nuevas resultantes. Para la particin inferior (ingreso>8.5), no hay corte que logre pureza perfecta. Asi que, de nuevo trataremos de minimizar el Gini. El corte que logra es, por casualidad, el mismo que para la particin superior, "Es ingreso < 25?". En este segundo arbol, tenemos 4 posibles nodos hales. En tres de ellos, la pureza es mxima en el sentido de que todos los clientes que caigan en esas particiones pertenecen a uno de los dos grupos: compradores o no compradores. Noten una caracterstica atractiva sobre el arbol de clasificacin: si el arbol es pequeo, es increiblemente intuitivo. De hecho, nos ayuda enormemente a construir el perfil de quienes son nuestros compradores. De acuerdo a este segundo arbol, los compradores son o clientes de alto ingreso y edad relativamente alta (grupo en la extrema derecha de la Figura 6) o clientes de ingreso bajo y edad relativamente baja (grupo en la extrema izquierda). Finalmente, slo nos queda una particin con que lidiar (edad > 25 e ingreso < 8.5). Para esta, el corte que logra pureza perfecta tambikn es obvio (ingreso < 6.5). La muestra original ha sido cortada en una serie de rectangulos (recuerden que solo cortes verticales u horizontales son permitidos) que forman las distintas particiones. En cada particin hemos logrado pureza perfecta. La particin final
&almente esto depende de la probabilidad de corte que estemos usando. Esta a su vez, depender&de los costos relativos de cometer los dos errores en clasificaci6n.

1 El Algoritmo CART: Cmo funciona?

Fig. 5: Segunda Particin.

edad

Fig. 6: Segundo nivel del arbol.

2 Bondad de Ajuste

Fig. 7: Ultima particin.

18

20

22

24

26

28

30

32

edad

y el arbol final pueden verse en las figuras 7 y 8. En este ejemplo inicial, hemos ilustrado el principio de que aumentando la complejidad de un modelo, es posible eliminar todo error en los datos que se nos da para entrenar ese modelo. La complejidad de un rbol se mide por el nmero de niveles que tiene el rbol. La pregunta crtica en este momento es: Vale la pena alcanzar pureza perfecta o debimos habernos detenido antes de lograrla? El lector que ha leido atentamente estas notas ya conoce la respuesta. Aumentaremos la complejidad del modelo siempre y cuando esto nos compre poder de prediccin con observaciones nuevas. Por lo tanto, seleccionaremos la complejidad del modelo usando validacin simple o validacin cruzada. Usando una muestra de entrenamiento estimar arboles de distintas complejidades. Utilizares una muestra de validacin para evaluar el desempeo de estos distintos arboles. Me quedar con el arbol que pronostique mejor esta muestra de validacin. Ese es el nivel ptimo de complejidad de un arbol.

2.

Bondad de Ajuste

Qu tan xitoso es un rbol como mtodo de clasificacin? La mtrica que usamos para evaluar el rbol es la misma que utilizamos para evaluar la regresin logstica o KNN para clasificacin. Le pedimos al algoritmo que clasifique cada observacin en la muestra de validacin y comparamos estos resultados con las clases observadas en la realidad. Tratemos de calcular la matriz de confusin para los arboles de la seccin anterior. Para el primer arbol que corresponde a las Figuras 3 y 4, nuestra prediccin para la particin inferior es que todos los clientes en esa particin

2 Bondad de Aiuste

Fig. 8: Arbol final.

3 Arboles de Regresin

sern compradores. Acertamos para 24 de los 32 (los puntos negros) y nos equivocamos en 8 de ellos (los puntos rojos). Para los clientes en la particion superior, pronosticamos que todos los clientes son compradores (realmente somos indiferentes. Pudimos haberlos pronosticados todos no-compradores tambikn). Por lo tanto, acertamos en 8 de 16 y nos equivocamos en 8 de 16. La tasa de error global es 16/48 = 33.33 %. A manera de ejercicio traten de calcular la tasa de error para el segundo y tercer arbol.

3.

Arboles de Regresin

Es fcil adaptar el algoritmo arboles de clasificacin para lidiar con proble mas de prediccin. Invito al lector a que trate de pensar que haria para desarrollar este algoritmo antes de continuar leyendo esta seccin. La idea de particiones recursivas binarias todava aplica al problema de prediccin (variable dependiente es continua ahora). Lo que cambia es la mtrica que utilizamos para hallar el mejor corte y la mejor variable para cortar. Consideren una variacin del ejemplo que hemos discutido en este capitulo. Ahora en lugar de clasificar a un cliente como comprador o no, queremos pronosticar cuanto va a comprar un cliente. La ltima columna de la Figura 11 contiene esta informacin. Los datos fueron creados artificialmente usando la siguiente regla:
m

ingreso bajo, edad baja, compras = Normal (media=50, desviacion standard=5) ingreso alto, edad alta, compras = Normal (media=100, desviacion standard=lO) ingreso bajo, edad alta, compras = Normal (media=lO, desviacion standard=2) ingreso alto, edad baja, compras = Normal (media=30, desviacion standard=5)

Es posible con estos datos correr una regresin de compras contra edad e ingreso. Si lo hacemos obtenemos, la ecuacin
C o m p r a s = -70,44

+ 2,68 * edad + 8,03 * ingreso

con un R-cuadrado de 27.72 % y un RMSE=29.765. Para construir nuestro arbol de regresin podramos usar la mtrica del RMSE. Nuestro prnostico en cada particin ser&igual al promedio de la variable compras de todos los miembros de esa particin. Por ejemplo, antes de empezar a crear nuestro arbol, todas las observaciones pertenecen a la misma particin. Nuestro pronstico es igual a la media de todas las observaciones. El RMSE es igual a 35.012. Ahora empezamos a considerar todos los cortes posibles ya sea de edad o de ingreso. Esto es exactamente igual que para el caso de clasificacin. Pero ahora

3 Arboles de Regresin

10

Fig. 9: Arbol de Regresin: Primer Nivel

Fig. 10: Arbol de Regresin Final.

para cada dos particiones resultantes calculamos el RMSE en cada particin (en lugar del indice de Gini). El corte que resulte en la mayor reduccin en el RMSE es nuestra particin ganadora. La variable ganadora resulta ser ingreso (y el corte <6.5). El RMSE cae a 29.00. El arbol resultante puede verse en la Figura 9. El arbol se lee de la siguiente manera. Si el ingreso del cliente es mayor que 6.5, entonces mi prediccin de sus compras sera $70.95. De lo contrario, mi prediccin cae a $28.71. Ahora con las dos particiones resultantes, comenzamos nuestro trabajo de nuevo. Buscamos por separado para cada particin, cual es la mejor variable y el mejor corte. En este caso, el arbol resultante recobra los parmetros utilizados para simular los datos con sorprendente exactitud. La Figura 10 reporta nuestro arbol final. El RMSE de este arbol ha caido a 8.55, el 28 % del de la regresin lineal.

3 Arboles de Regresin

11

Fig. 11: Datos Usados en este Captulo

45 46 47 48

32 32 32 32

7 compra 8 compra 9 compra 1 0 compra

$115.23 $114.76 $ 97.43 $105.53

You might also like