Entrenamiento de árboles de decisión

El entrenamiento del árbol de decisión usa el árbol de decisión (como un modelo predictivo ) para pasar de observaciones sobre objetos (representados en ramas) a inferencias sobre valores objetivo de objetos (representados en hojas). Este aprendizaje es uno de los enfoques de modelado de predicción utilizados en estadísticas , minería de datos y aprendizaje automático . Los modelos de árbol en los que la variable de destino puede tomar un conjunto discreto de valores se denominan árboles de clasificación . En estas estructuras de árbol, las hojas representan etiquetas de clase y las ramas representan conjunciones de características que conducen a esas etiquetas de clase. Los árboles de decisión en los que la variable objetivo puede tomar valores continuos (normalmente números reales ) se denominan árboles de regresión .

En el análisis de decisiones, se puede usar un árbol de decisiones para representar visual y explícitamente la toma de decisiones . En la minería de datos , un árbol de decisión describe los datos (pero el árbol de clasificación resultante puede ser una entrada para la toma de decisiones ). Esta página trata sobre los árboles de decisión en la minería de datos .

Discusión

El entrenamiento de árboles de decisión es una técnica comúnmente utilizada en la minería de datos [1] . El objetivo es crear un modelo que prediga el valor de una variable objetivo en función de algunas variables de entrada. Un ejemplo se muestra en el diagrama de la derecha. Cada nodo interno corresponde a una de las variables de entrada. Hay ventajas para los niños para cada valor posible de esta variable de entrada. Cada hoja representa el valor de la variable objetivo, que está determinada por los valores de las variables de entrada desde la raíz hasta la hoja.

Un árbol de decisión es una representación simple para ejemplos de clasificación. Para esta sección, suponga que todas las características de entrada son conjuntos discretos finitos y que hay una sola característica de destino denominada "clasificación". Cada elemento de la clasificación se denomina clase . Un árbol de decisión o árbol de clasificación es un árbol en el que cada nodo interno (no hoja) está etiquetado con una característica de entrada. Los arcos que salen del nodo etiquetado por el parámetro de entrada se etiquetan con todos los valores posibles de la característica de salida, o el arco conduce a un nodo de decisión subordinado con una característica de entrada diferente. Cada hoja del árbol está etiquetada con una clase o una distribución de probabilidad sobre clases.

Un árbol se puede "entrenar" dividiendo un conjunto en subconjuntos en función de las comprobaciones de valores de atributos. Este proceso, que se repite recursivamente en cada subconjunto resultante, se denomina partición recursiva . La recursividad finaliza cuando un subconjunto en un nodo tiene el mismo valor de variable de destino, o cuando la división no agrega valor a las predicciones. Este proceso de inducción descendente de árboles de decisión ( TDIDT ) [2] es un ejemplo de un algoritmo codicioso y es la estrategia más utilizada para aprender árboles de decisión a partir de datos.  

En la minería de datos , los árboles de decisión también se pueden describir como una combinación de técnicas matemáticas y computacionales para describir, categorizar y generalizar un conjunto dado de datos.

Los datos vienen en forma de registros de la forma:

La variable dependiente Y es la variable objetivo que estamos tratando de comprender, clasificar o generalizar. El vector x se compone de características x 1 , x 2 , x 3 , etc. que se utilizan para la tarea.

Tipos de árboles de decisión

Los árboles de decisión se utilizan en la minería de datos y vienen en dos tipos principales:

El término análisis de árbol de clasificación y regresión ( CART) es un término genérico y se utiliza para referirse a los dos procedimientos mencionados anteriormente, el primero de los cuales fue introducido por Breiman y otros en 1984 [3] . Los árboles utilizados para la regresión y los árboles utilizados para la clasificación tienen algunas similitudes, pero también tienen diferencias, como el procedimiento utilizado para determinar la ubicación de la división [3] .  

Algunas técnicas, a menudo denominadas métodos de construcción , construyen más de un árbol de decisión:

Un caso especial de árboles de decisión es la lista de decisiones [8] , que es un árbol de decisión unidireccional en el que cualquier nodo interno tiene exactamente 1 hoja y exactamente 1 nodo interno como hijo (excepto el nodo inferior, cuyo hijo único es una hoja). Aunque estas listas son menos expresivas, son más fáciles de entender que los árboles de decisión generales debido a su escasez, lo que permite métodos de aprendizaje no codiciosos [9] y también permite restricciones monotónicas [10] .

El entrenamiento del árbol de decisión es la construcción de un árbol de decisión a partir de tuplas de entrenamiento etiquetadas por clase. Un árbol de decisión es una estructura similar a un diagrama de flujo en la que cada nodo interno (no hoja) representa una prueba de atributo, cada rama representa un resultado de prueba y cada hoja (nodo terminal) contiene una etiqueta de clase. El vértice superior es el nodo raíz.

Hay muchos algoritmos de árboles de decisión. Los más notables son:

ID3 y CART se desarrollaron de forma independiente y casi al mismo tiempo (entre 1970 y 1980), pero utilizan enfoques similares para entrenar un árbol de decisión a partir de tuplas de entrenamiento.

Métricas

Los algoritmos de construcción de árboles de decisión generalmente funcionan de arriba hacia abajo eligiendo una variable en cada paso que mejor divida el conjunto de elementos [14] . Diferentes algoritmos usan diferentes métricas para medir la "mejor" solución. Suelen medir la homogeneidad de la variable objetivo en subconjuntos. A continuación se dan algunos ejemplos. Estas métricas se aplican a cada subconjunto y los valores resultantes se combinan (por ejemplo, se calcula un promedio) para obtener una medida de la calidad de la partición.

Impureza (criterio) Gini

Utilizado en el algoritmo del árbol de clasificación y regresión (CART) ,  el criterio de Gini es una medida de la frecuencia con la que un elemento seleccionado aleatoriamente de un conjunto se etiqueta incorrectamente si se etiqueta aleatoriamente de acuerdo con la distribución de etiquetas en un subconjunto. El criterio de Gini se puede calcular sumando la probabilidad de un elemento con una etiqueta seleccionada multiplicada por la probabilidad de un error de categorización para ese elemento. El criterio acepta un mínimo (cero) cuando todos los casos en un nodo caen en la misma categoría objetivo.

Para calcular el criterio de Gini para un conjunto de elementos con clases, suponga que , y sea la proporción de elementos etiquetados con una clase en el conjunto.

Ganancia de información

En los algoritmos de generación de árboles ID3 , C4.5 y C5.0. se utiliza la ganancia de información , que se basa en el concepto de entropía y la cantidad de información de la teoría de la información .

La entropía se define de la siguiente manera

,

donde son fracciones que suman 1, que representan el porcentaje de cada clase obtenido de una división en el árbol [15] .

yo GRAMO ( T , a ) ⏞ Ganancia de información = H ( T ) ⏞ Entropía (padre) − H ( T | a ) ⏞ Suma ponderada de entropía (niños) {\displaystyle \overbrace {IG(T,a)} ^{\text{Ganancia de información}}=\overbrace {\mathrm {H} (T)} ^{\text{Entropía (principal)))-\overbrace { \mathrm {H} (T|a)} ^{\text{Suma ponderada de entropía (niños)}}}

en la fórmula

La ganancia de información se usa para decidir qué función usar para dividir en cada paso de la construcción del árbol. La simplicidad es la mejor opción, por lo que queremos que el árbol sea pequeño. Para hacer esto, en cada paso debemos elegir una división que conduzca a los nodos descendientes más simples. Una medida de simplicidad comúnmente utilizada se denomina información , que se mide en bits . Para cada nodo del árbol, el valor de la información "representa el número esperado que se necesita para determinar si el nuevo objeto debe clasificarse como sí o no, dado que el ejemplo llega a ese nodo"" [15] .

Considere un conjunto de datos de ejemplo con cuatro atributos: clima (soleado, nublado, lluvia), temperatura (caliente, templado, frío), humedad (alta, normal) y viento (sí, no) con una variable objetivo binaria (sí o no) juego y 14 puntos de datos. Para construir un árbol de decisión basado en estos datos, necesitamos comparar la ganancia de información de cada uno de los cuatro árboles, en los que se divide según una de las cuatro características. La división con la máxima ganancia de información se toma como la primera división y el proceso continúa hasta que todos los descendientes sean primos o hasta que la ganancia de información sea cero.

Una división utilizando la característica viento da como resultado dos nodos secundarios, un nodo para la característica viento con valor sí y un nodo con valor no . Hay seis puntos de datos en este conjunto de datos con un valor de sí para el viento , tres para el juego de valor objetivo de sí y tres de valor no . Los ocho puntos de datos restantes para el parámetro de viento con un valor de no contienen dos no y seis sí . La información del nodo viento = sí se calcula utilizando la ecuación de entropía anterior. Como hay un número igual de sí y no en este nodo, tenemos

Para un nodo con viento = no, hubo ocho puntos de datos, seis con un objetivo de sí y dos sin . Así tenemos

Para encontrar la información dividida , calculamos el promedio ponderado de estos dos números según la cantidad de observaciones que cayeron en cada nodo.

(viento - si o no)

Para encontrar la ganancia de información de una división usando viento , debemos calcular la información en los datos antes de la división. Los datos iniciales contenían nueve sí y cinco no .

Ahora podemos calcular la ganancia de información obtenida al dividir según el atributo del viento .

(viento)

Para construir un árbol, necesitamos calcular la ganancia de información de cada posible primera división. La mejor primera división es la que proporciona la mayor ganancia de información. Este proceso se repite para cada nodo (con características mixtas) hasta que se construye el árbol. Este ejemplo está tomado de un artículo de Witten, Frank y Hall [15] .

Reduciendo la varianza

La reducción de varianza presentada en CART [3] se usa a menudo en casos donde la variable objetivo es continua (árbol de regresión), lo que significa que el uso de muchas otras métricas requeriría un muestreo antes de la aplicación. La reducción de la varianza de un nodo N se define como la reducción general de la varianza de la variable objetivo x como consecuencia de la división en ese nodo:

,

donde , y son el conjunto de índices antes de la división, el conjunto de índices para los que la prueba se evalúa como verdadero y el conjunto de índices para los que la prueba se evalúa como falso, respectivamente. Cada uno de los términos anteriores es una estimación de la magnitud de la desviación , aunque escrita sin referencia directa a la media.

Aplicación

Beneficios

Entre otros métodos de análisis de datos, los árboles de decisión tienen una serie de ventajas:

Restricciones

Implementaciones

Muchos paquetes de minería de datos implementan uno o más algoritmos de árboles de decisión.

Algunos ejemplos son Salford Systems CART (que obtuvo la licencia del código propietario de los autores originales de CART) [3] , IBM SPSS Modeler , RapidMiner , SAS Enterprise Miner , Matlab , R (software de código abierto para computación estadística , que incluye varias implementaciones de CART, como los paquetes rpart, party y randomForest), Weka (un paquete de minería de datos de código abierto que contiene muchos algoritmos de árboles de decisión), Orange , KNIME , Microsoft SQL Server [1] y scikit -learn (una biblioteca de Python gratuita y de código abierto para el aprendizaje automático).

Extensiones

Gráficos de decisión

En un árbol de decisión, todas las rutas desde el nodo raíz hasta una hoja pasan por una conjunción ( Y ). En el gráfico de decisión, es posible utilizar la disyunción ( OR ) para combinar caminos utilizando un mensaje de longitud mínima ( inglés.  Minimal message length , MML) [25] . Los gráficos de decisión se amplían aún más con la resolución de atributos que no se usaban anteriormente para entrenarlos dinámicamente y usarlos en varios lugares del gráfico [26] . Un esquema de codificación más general da como resultado mejores predicciones y rendimiento de pérdida de registros. En general, los gráficos de decisión producen modelos con menos hojas que los árboles de decisión.

Métodos de búsqueda alternativos

Se han utilizado algoritmos evolutivos para eliminar soluciones óptimas locales y buscar árboles de decisión con un sesgo anterior más pequeño [27] [28] .

Los árboles se pueden simplificar utilizando el método de Monte Carlo para cadenas de Markov ( cadena de Markov Monte Carlo , MCMC) [29] . 

El árbol se puede ver de abajo hacia arriba [30] .

Véase también

Notas

  1. Rokach, Maimón, 2008 .
  2. Quinlan, 1986 , pág. 81-106.
  3. 1 2 3 4 Breiman, Friedman, Olshen, Stone, 1984 .
  4. Friedman, 1999 .
  5. Hastie, Tibshirani, Friedman, 2001 .
  6. Breiman, 1996 , pág. 123–140.
  7. Rodríguez, Kuncheva, Alonso, 2006 , p. 1619-1630.
  8. Rivest, 1987 , pág. 229–246.
  9. Letham, Rudin, McCormick, Madigan, 2015 , pág. 1350-1371.
  10. Wang, Rudin, 2015 .
  11. Kass, 1980 , pág. 119–127.
  12. 1 2 3 Hothorn, Hornik, Zeileis, 2006 , pág. 651–674.
  13. 1 2 Strobl, Malley, Tutz, 2009 , pág. 323–348.
  14. Rokach, Maimón, 2005 , pág. 476–487.
  15. 1 2 3 Witten, Frank, Hall, 2011 , pág. 102–103.
  16. 1 2 3 4 5 Gareth, Witten, Hastie, Tibshirani, 2015 , pág. 315.
  17. Mehtaa, Raghavan, 2002 , pág. 609–623.
  18. Hyafil, Rivest, 1976 , pág. 15–17.
  19. Murthy, 1998 .
  20. Ben-Gal, Dana, Shkolnik, Singer, 2014 , pág. 133–147.
  21. Bramer, 2007 .
  22. Deng, Runger, Tuv, 2011 , pág. 293–300.
  23. Brandmaier, von Oertzen, McArdle, Lindenberger, 2012 , pág. 71–86.
  24. Painsky y Rosset, 2017 , pág. 2142-2153.
  25. CiteSeerX . Consultado el 2 de enero de 2019. Archivado desde el original el 21 de marzo de 2008.
  26. Bronceado y Dowe (2003) . Consultado el 2 de enero de 2019. Archivado desde el original el 28 de mayo de 2016.
  27. Papagelis, Kalles, 2001 , pág. 393–400.
  28. Barros, Basgalupp, Carvalho, Freitas, 2012 , p. 291–312.
  29. Chipman, George, McCulloch, 1998 , pág. 935–948.
  30. Barros, Cerri, Jaskowiak, Carvalho, 2011 , p. 450–456.

Literatura

Lectura para leer más

Enlaces