3.4 Alternativas a los árboles CART

Una de las alternativas más populares es la metodología C4.5 (Quinlan, 1993), evolución de ID3 (Quinlan, 1986), que en estos momentos se encuentra en la versión C5.0 (y es ya muy similar a CART). C5.0 se utiliza solo para clasificación e incorpora boosting (que veremos en el tema siguiente). Esta metodología está implementada en el paquete C50 (Kuhn et al., 2014).

Ross Quinlan desarrolló también la metodologia M5 (Quinlan, 1992) para regresión. Su principal característica es que los nodos terminales, en lugar de contener un número, contienen un modelo (de regresión) lineal. El paquete Cubist (Kuhn y Quinlan, 2023) es una evolución de M5 que incorpora un método ensemble similar a boosting.

La motivación detrás de M5 es que, si la predicción que aporta un nodo terminal se limita a un único número (como hace la metodología CART), entonces el modelo va a predecir muy mal los valores que realmente son muy extremos, ya que el número de posibles valores predichos está limitado por el número de nodos terminales, y en cada uno de ellos se utiliza una media. Por ello, M5 le asocia a cada nodo un modelo de regresión lineal, para cuyo ajuste se utilizan los datos del nodo y todas las variables que están en la ruta del nodo. Para evaluar los posibles cortes que conducen al siguiente nodo, se utilizan los propios modelos lineales para calcular la medida del error.

Una vez se ha construido todo el árbol, para realizar la predicción se puede utilizar el modelo lineal que está en el nodo terminal correspondiente, pero funciona mejor si se utiliza una combinación lineal del modelo del nodo terminal y de todos sus nodos ascendientes (es decir, los que están en su camino).

Otra opción es CHAID (CHi-squared Automated Interaction Detection, Kass, 1980), que se basa en una idea diferente. Es un método de construcción de árboles de clasificación que se utiliza cuando las variables predictoras son cualitativas o discretas; en caso contrario, deben ser categorizadas previamente. Y se basa en el contraste chi-cuadrado de independencia para tablas de contingencia.

Para cada par \((X_i, Y)\), se considera su tabla de contingencia y se calcula el p-valor del contraste chi-cuadrado, seleccionándose la variable predictora que tenga un p-valor más pequeño, ya que se asume que las variables predictoras más relacionadas con la respuesta \(Y\) son las que van a tener p-valores más pequeños y darán lugar a mejores predicciones. Se divide el nodo de acuerdo con los distintos valores de la variable predictora seleccionada, y se repite el proceso mientras haya variables significativas. Dado que el método exige que el p-valor sea menor que 0.05 (o el nivel de significación que se elija), y hay que hacer muchas comparaciones, es necesario aplicar una corrección para comparaciones múltiples, por ejemplo la de Bonferroni.

Lo que acabamos de explicar daría lugar a árboles no necesariamente binarios. Como se desea trabajar con árboles binarios (si se admite que de un nodo salga cualquier número de ramas, con muy pocos niveles de profundidad del árbol ya nos quedaríamos sin datos), es necesario hacer algo más: forzar a que las variables predictoras tengan solo dos categorías mediante un proceso de fusión. Se van haciendo pruebas chi-cuadrado entre pares de categorías y la variable respuesta, y se fusiona el par con el p-valor más alto, ya que se trata de fusionar las categorías que sean más similares.

Para árboles de regresión hay metodologías que, al igual que CHAID, se basan en el cálculo de p-valores, en este caso de contrastes de igualdad de medias. Una de las más utilizadas son los conditional inference trees (Hothorn et al., 2006)42, implementada en la función ctree() del paquete party (Hothorn et al., 2010).

Un problema conocido de los árboles CART es que sufren un sesgo de selección de variables: los predictores con más valores distintos son favorecidos. Esta es una de las motivaciones de utilizar estos métodos basados en contrastes de hipótesis. Por otra parte, hay que ser conscientes de que los contrastes de hipótesis y la calidad predictiva son cosas distintas.

A modo de ejemplo, siguiendo con el problema de clasificación anterior, podríamos ajustar un árbol de decisión empleando la metodología de inferencia condicional mediante el siguiente código:

library(party)
tree2 <- ctree(taste ~ ., data = train) 
plot(tree2)
Árbol de decisión para clasificar la calidad del vino (winetaste$taste) obtenido con el método condicional.

Figura 3.18: Árbol de decisión para clasificar la calidad del vino (winetaste$taste) obtenido con el método condicional.

En la representación del árbol (ver Figura 3.18) se muestra el p-valor (ajustado por Bonferroni) en cada nodo interno y se representa la proporción de cada clase en los nodos terminales.

Para más detalles, ver la vignette del paquete party: A Laboratory for Recursive Partytioning.

Bibliografía

Hothorn, T., Hornik, K., Strobl, C., y Zeileis, A. (2010). Party: A laboratory for recursive partytioning. https://cran.r-project.org/web/packages/party/
Hothorn, T., Hornik, K., y Zeileis, A. (2006). Unbiased recursive partitioning: A conditional inference framework. Journal of Computational and Graphical Statistics, 15(3), 651-674. https://doi.org/10.1198/106186006x133933
Kass, G. V. (1980). An exploratory technique for investigating large quantities of categorical data. Journal of the Royal Statistical Society: Series C (Applied Statistics), 29(2), 119-127. https://doi.org/10.2307/2986296
Kuhn, M., y Quinlan, J. R. (2023). Cubist: Rule- And Instance-Based Regression Modeling. https://cran.r-project.org/web/packages/Cubist/
Kuhn, M., Weston, S., Coulter, N., y Quinlan, J. R. (2014). C50: C5.0 Decision Trees and Rule-Based Models. https://cran.r-project.org/web/packages/C50/
Loh, W.-Y. (2002). Regression tress with unbiased variable selection and interaction detection. Statistica Sinica, 361-386.
Quinlan, J. R. (1992). Learning with continuous classes. 5th Australian joint conference on artificial intelligence, 343-348.
Quinlan, J. R. (1986). Induction of decision trees. Machine Learning, 1, 81-106.
Quinlan, J. R. (1993). C4.5: Programs for Machine Learning. Elsevier.

  1. Otra alternativa es GUIDE (Generalized, Unbiased, Interaction Detection and Estimation, Loh, 2002).↩︎