Natalia Acevedo 💜
6 min readApr 27, 2020

--

Árboles de decisiones. La matemática y estadística detrás de ellos

Esta es la segunda parte de una serie de post sobre árboles de decisiones

Se dividio así:

  1. Arboles de decisiones, todas las bases
  2. Árboles de decisiones. La matemática y estadística detrás de ellos
  3. Árboles de decisiones. Código en python paso a paso para construirlo

En este post te voy a hablar de cómo los árboles de decisiones toman decisiones, asi que aqui vamos

Medidas de selección de atributos

La medida de selección de atributos es el método encargado de seleccionar el criterio para dividir los datos de la mejor manera posible. También se conoce como reglas de división porque nos ayuda a determinar puntos de interrupción para tuplas en un nodo dado.

El atributo de mejor puntaje se seleccionará como un atributo de división. En el caso de un atributo de valor continuo, los puntos de división para las ramas también deben definirse. Las medidas de selección más populares son

Ganancia de información:

La ganancia de información es una propiedad estadística que mide qué tan bien un atributo dado separa los ejemplos de entrenamiento de acuerdo con su clasificación objetivo. En la imagen a continuación defino un poco mejor la pureza de un conjunto de datos. En el gráfico podemos decir que C es un nodo puro, B es menos impuro y A es más impuro.

Ahora, podemos llegar a la conclusión de que un nodo menos impuro requiere menos información para describirlo. Y, el nodo más impuro requiere más información.

Para poder calcular la ganancia de información, primero tenemos que introducir el término entropía de un conjunto de datos.

Entropía

La entropía mide la impureza del conjunto de entrada. En física y matemáticas, la entropía se conoce como aleatoriedad o impureza en el sistema. En teoría de la información, se refiere a la impureza en un grupo de ejemplos. La ganancia de información es una disminución de la entropía. La idea detrás de la entropía es, en términos simplificados, la siguiente: Imagina que tienes una rueda de lotería que incluye 100 bolas rosas. Se puede decir que el conjunto de bolas dentro de la rueda de lotería es totalmente puro porque solo se incluyen bolas rosas. Para expresar esto en la terminología de entropía, este conjunto de bolas tiene una entropía de 0 (también podemos decir impureza cero). Considere ahora, 30 de estas bolas son reemplazadas por bolas amarillas y 20 por bolas azules.

Si ahora saca otra bola de la rueda de lotería, la probabilidad de recibir una bola verde se ha reducido de 1.0 a 0.5. Como la impureza aumentó, la pureza disminuyó, por lo tanto también aumentó la entropía. Por lo tanto, podemos decir que cuanto más “impuro” es un conjunto de datos, mayor es la entropía y menos “impuro” es un conjunto de datos, menor es la entropía
Tenga en cuenta que la entropía es 0 si todos los miembros de S pertenecen a la misma clase. Por ejemplo, si todos los miembros son positivos, Entropía (S) = 0. La entropía es 1 cuando la muestra contiene el mismo número de ejemplos positivos y negativos. Si la muestra contiene un número desigual de ejemplos positivos y negativos, la entropía está entre 0 y 1. La siguiente figura muestra la forma de la función de entropía en relación con una clasificación booleana, ya que la entropía varía entre 0 y 1

Fórmula de la entropía

Aquí p y q es la probabilidad de éxito y fracaso respectivamente en ese nodo. La entropía también se usa con la variable objetivo categórica. Elige la división que tiene la entropía más baja en comparación con el nodo principal y otras divisiones. Cuanto menor es la entropía, mejor es.
La ganancia de información calcula la diferencia entre la entropía antes de la división y la entropía promedio después de la división del conjunto de datos en función de los valores de atributo dados

Información obtenida = Entropía (nodo principal) — [Promedio de entropía (hijos)]

Pasos para calcular la entropía para una división:

  • Calcular la entropía del nodo padre
  • Calcule la entropía de cada nodo individual de división y calcule el promedio ponderado de todos los subnodos disponibles en una división.

Ejemplo:

Supongamos que tenemos una muestra de 30 estudiantes con tres variables Sexo (Niño / Niña), Clase (IX / X) y Altura (5 a 6 pies). 15 de estos 30 juegan al cricket en el tiempo libre. Ahora, quiero crear un modelo para predecir quién jugará al cricket durante un período de ocio. En este problema, necesitamos segregar a los estudiantes que juegan al cricket en su tiempo libre en función de una variable de entrada altamente significativa entre los tres.

Arriba, puede ver que la ganancia de información para la división en género es la más alta de todas, por lo que el árbol se dividirá en género.

2. Gini

Gini dice que si seleccionamos dos elementos de una población al azar, entonces deben ser de la misma clase y la probabilidad de esto es 1 si la población es pura.

1. Funciona con la variable objetivo categórica “Éxito” o “Fracaso”.
2. Solo realiza divisiones binarias
3. Cuanto mayor sea el valor de Gini, mayor será la homogeneidad.
4. CART (Árbol de clasificación y regresión) utiliza el método Gini para crear divisiones binarias.

Pasos para calcular Gini para una división

  1. Calcule Gini para subnodes, utilizando la fórmula de suma del cuadrado de probabilidad de éxito y fracaso (p² + q²).
  2. Calcule Gini para la división utilizando la puntuación ponderada de Gini de cada nodo de esa división

Ejemplo:

  • Refiriéndonos al ejemplo utilizado anteriormente, donde queremos segregar a los estudiantes en función de la variable objetivo (jugar cricket o no). En la siguiente instantánea, dividimos la población utilizando dos variables de entrada de género y clase. Ahora, quiero identificar qué división está produciendo subnodos más homogéneos usando Gini.

Arriba, puede ver que la puntuación de Gini para Split on Gender es más alta que Split on Class, por lo tanto, la división de nodos se realizará en Gender. A menudo puede encontrar el término “impureza de Gini”, que se determina restando el valor de Gini de 1. Así que matemáticamente podemos decir:

Impureza de Gini = 1-Gini Gini es el parámetro predeterminado en el Algoritmo del árbol de decisión.

Ahora veamos la división del árbol de decisión en un código pequeño

Espero que este post les sirva tanto como me sirvio a mi.

Y gracias por leerme 💜

--

--