Contenido
PalancaÁrbol de decisión para análisis de datos.
a árbol El procesamiento de decisiones es un enfoque de aprendizaje supervisado no paramétrico y se puede aplicar tanto a problemas de regresión como de clasificación. Siguiendo la analogía del árbol, los árboles de decisión implementan un proceso de decisión secuencial. Desde el nodo raíz, se evalúa una característica y se selecciona uno de los dos nodos (ramas).
Cada nodo del árbol es esencialmente una regla de decisión. Este procedimiento se repite hasta llegar a una hoja final, que normalmente representa el objetivo. Los árboles de decisión también son modelos atractivos si a uno le importa la interpretabilidad.
Algoritmos comunes
Existen algoritmos para crear árboles de decisión:
- ID3 (Dicotomizador iterativo 3) fue desarrollado en 1986 por Ross Quinlan. El algoritmo crea un árbol multidireccional, encontrando para cada nodo (es decir, con avidez) la característica categórica que producirá la mayor ganancia de información para los objetivos categóricos. Los árboles crecen hasta su tamaño máximo, luego generalmente se aplica un paso de poda para mejorar la capacidad del árbol para generalizar a datos invisibles.
- C4.5 fue desarrollado en 1993 por Ross Quinlan, es el sucesor de ID3 y eliminó la restricción de que las características deben ser categóricas al definir dinámicamente un atributo discreto (basado en variables numéricas) que divide el valor del atributo continuo en un conjunto discreto de intervalos. C4.5 convierte los árboles entrenados (es decir, la salida del algoritmo ID3) en conjuntos de reglas si-entonces. Luego se evalúa la exactitud de cada regla para determinar el orden en el que deben aplicarse. La poda se realiza eliminando la condición previa de una regla si la precisión de la regla mejora sin ella.
- C5.0 es la última versión con licencia patentada de Quinlan. Utiliza menos memoria y crea conjuntos de reglas más pequeños que C4.5 y, al mismo tiempo, es más preciso.
- CART (árboles de clasificación y regresión) es muy similar a C4.5, pero se diferencia en que admite variables objetivo numéricas (regresión) y no calcula conjuntos de reglas. CART construye árboles binarios utilizando la característica y el umbral que generan la mayor ganancia de información en cada nodo.
scikit-learn utiliza una versión optimizada del algoritmo CART
Terminología
De acuerdo con la analogía del árbol, la terminología se adoptó de la terminología del árbol.
- Nodo raíz: es el primer nodo de los árboles de decisión.
- División: es un proceso de dividir el nodo en dos o más subnodos, comenzando con el nodo raíz.
- Nodo: divida los resultados del nodo raíz en subnodos y divida los subnodos en otros subnodos.
- Nodo hoja o terminal: final de un nodo, ya que el nodo ya no se puede dividir
- Poda: es una técnica para reducir el tamaño del árbol de decisión eliminando subnodos del árbol de decisión. El objetivo es reducir la complejidad para mejorar la precisión predictiva y evitar el sobreajuste.
- Rama/Subárbol: una subsección de todo el árbol se denomina rama o subárbol.
- Nodo padre e hijo: un nodo dividido en subnodos se denomina nodo padre de los subnodos, mientras que los subnodos son hijos del nodo padre.
Operación general
Considere el siguiente ejemplo donde un árbol de decisiones predice el salario de un jugador de béisbol:
Usamos el conjunto de datos Hitters para predecir el salario de un jugador de béisbol (salario promedio) en función de los años (el número de años que jugó en las ligas mayores) y los hits (el número de hits que tuvo el año anterior).
Según las características, el modelo de árbol de decisión aprende una serie de reglas de división, comenzando desde la parte superior del árbol (nodo raíz).
- El nodo raíz se divide en subnodos con una regla de observación que tiene años <4,5 hacia la rama izquierda, lo que significa que los jugadores en el conjunto de datos con años <4,5 tienen un salario promedio logarítmico de 5,107 y hacemos una predicción de 5,107 mil dólares, es decir, 165,174. $ para estos jugadores.
- Los jugadores con años >=4.5 son asignados a la rama derecha, luego este grupo se subdivide en hits <177.5 con una pérdida salarial promedio de 6.
- Los jugadores con años >= 4.5 son asignados a la rama derecha, luego este grupo se subdivide en Hits >= 177.5 con una pérdida salarial promedio de 6.74.
En este caso, podemos ver que el árbol de decisión forma un segmento de tres regiones donde esta región determina los salarios de los jugadores de béisbol y podemos decir que la región es un límite de decisión.
Estas tres regiones se pueden escribir
- R1 ={X | Años<4.5 }
- R2 ={X| Años>=4.5, Visitas<117.5 }
- R3 ={X | Años>=4,5, Clics>=117,5}.
A partir de esta intuición, se produce un proceso de división de un árbol de decisión para formar una región capaz de predecir el salario de los jugadores de béisbol.
Fraccionamiento / división
Para dividir los nodos en las características más informativas utilizando el algoritmo de decisión, comenzamos en la raíz del árbol y dividimos los datos en la característica que genera la mayor ganancia de información (IG). Aquí, la función objetivo es maximizar la ganancia de información (IG) en cada división, que definimos de la siguiente manera:
f es la funcionalidad para realizar la división, Dp y Dj son el conjunto de datos del nodo padre, j-ésimo hijo, I es nuestra medida deimpureza, Np es el número total de muestras en el nodo principal y Nj es el número de muestras. en el j-ésimo nodo hijo.
Como podemos ver, la ganancia de información es simplemente la diferencia entre la impureza del nodo padre y la suma de las impurezas del nodo hijo: cuanto menor sea la impureza de los nodos hijos, mayor será la ganancia de información. Sin embargo, por simplicidad y para reducir el espacio de búsqueda combinatoria, la mayoría de las bibliotecas (incluida scikit-learn) implementan árboles de decisión binarios. Esto significa que cada nodo principal se divide en dos nodos secundarios, D-izquierda y D-derecha.
La medida de impureza implementa árboles de decisión binarios y las tres medidas de impureza o criterios de división que se usan comúnmente en los árboles de decisión binarios son la impureza de Gini (IG), la entropía (IH) y el error de clasificación (IE).