Entropía: cómo los árboles de decisión toman decisiones

Se preparó una traducción del artículo antes del inicio del curso de Machine Learning .




Usted es un especialista en ciencia de datos que actualmente sigue un camino de aprendizaje. Y has recorrido un largo camino desde que escribiste tu primera línea de código en Python o R. Conoces Scikit-Learn como el dorso de tu mano. Ahora estás más sentado en Kaggle que en Facebook. No es nuevo en la creación de impresionantes bosques aleatorios y otros modelos de árboles de decisión que hacen un excelente trabajo. Sin embargo, sabe que no logrará nada si no se desarrolla de manera integral. Desea profundizar y comprender las complejidades y conceptos que subyacen a los populares modelos de aprendizaje automático. Bueno, yo también.

Hoy hablaré sobre el concepto de entropía, uno de los temas más importantes en estadística, y luego hablaremos sobre el concepto de Ganancia de información (ganancia de información) y descubriremos por qué estos conceptos fundamentales forman la base de cómo se construyen los árboles de decisión a partir de los datos obtenidos.

Bueno. Ahora transgiremos.

¿Qué es la entropía? En términos simples, la entropía no es más que una medida de desorden. (También se puede considerar una medida de pureza, y pronto verá por qué. Pero me gusta más el desorden porque suena más fresco.) La

fórmula matemática de la entropía es la siguiente:


Entropía. A veces se escribe como H.

Aquí p i es la probabilidad de frecuencia de un elemento / clase i de nuestros datos. Por simplicidad, supongamos que tenemos solo dos clases: positiva y negativa. Entonces tomaré el valor de "+" o "-". Si tuviéramos un total de 100 puntos en nuestro conjunto de datos, 30 de los cuales pertenecerían a la clase positiva y 70 a la negativa, entonces p + sería 3/10, y p- será el 7/10. Todo es simple aquí.

Si calculo la entropía de las clases a partir de este ejemplo, esto es lo que obtengo usando la fórmula anterior: la



entropía es aproximadamente 0,88. Este valor se considera bastante alto, es decir, tenemos un alto nivel de entropía o trastorno (es decir, un bajo valor de pureza). La entropía se mide en el rango de 0 a 1. Dependiendo del número de clases en su conjunto de datos, el valor de la entropía puede ser mayor que 1, pero significará lo mismo ya que el nivel de trastorno es extremadamente alto. Para simplificar la explicación, en el artículo de hoy tendremos una entropía que va de 0 a 1.

Eche un vistazo a la tabla a continuación.



En el eje X, se refleja el número de puntos de la clase positiva en cada círculo, y en el eje Y, las entropías correspondientes. Puede notar de inmediato la forma de U invertida del gráfico. La entropía será la más pequeña en los extremos cuando no haya elementos positivos en el círculo en principio, o cuando solo haya elementos positivos en ellos. Es decir, cuando hay elementos idénticos en un círculo, el trastorno será 0. La entropía será más alta en el medio del gráfico, donde los elementos positivos y negativos se distribuirán uniformemente dentro del círculo. Aquí se logrará la mayor entropía o desorden, ya que no habrá elementos predominantes.

¿Hay alguna razón por la que la entropía se mide usando el logaritmo de base 2, o por qué la entropía se mide entre 0 y 1, y no en un rango diferente? No, no hay razón. Esto es solo una métrica. No es tan importante entender por qué sucede esto. Es importante saber cómo se calcula lo que obtuvimos arriba y cómo funciona. La entropía es una medida de confusión o incertidumbre, y el objetivo de los modelos de aprendizaje automático y especialistas en ciencia de datos en general es reducir esta incertidumbre.

Ahora sabemos cómo se mide el desorden. A continuación, necesitamos un valor para medir la reducción de este trastorno en la información adicional (atributos / variables independientes) de la variable / clase objetivo. Aquí es donde entra en juego la ganancia de información o la ganancia de información. Desde el punto de vista de las matemáticas, se puede escribir de la siguiente manera:



Simplemente restamos la entropía Y de X de la entropía Y para calcular la disminución de la incertidumbre sobre Y, siempre que X esté disponible sobre Y. Cuanto más fuerte disminuya la incertidumbre, más información se puede obtener de Y sobre X.

Veamos un ejemplo simple de tabla de contingencia para que Acérquese a la cuestión de cómo los árboles de decisión usan la entropía y la ganancia de información para decidir sobre qué base romper los nodos en el proceso de aprendizaje de los datos.

Ejemplo: tabla de conjugación



Aquí, nuestra variable objetivo será Responsabilidad , que solo puede tomar dos valores: "Normal" y "Alto". También tenemos un solo signo, que se llama Calificación crediticia, distribuye los valores en tres categorías: "Excelente" , "Bueno" y "Malo" . Se hicieron un total de 14 observaciones. 7 de ellos pertenecen a la clase de Responsabilidad Normal , y 7 más a la clase de Alta Responsabilidad . Esta es una división en sí misma.

Si observamos la suma total de los valores en la primera fila, veremos que tenemos 4 observaciones con un valor excelente basado en la calificación crediticia . Además, incluso puedo decir que mi variable objetivo está rota por la calificación crediticia "Excelente" . Entre las observaciones con el valor "Excelente" por atributoCalificación crediticia , hay 3 que pertenecen a la clase de Responsabilidad Normal y 1 que pertenece a la clase de Alta Responsabilidad . Del mismo modo, puedo calcular resultados similares para otros valores de Calificación crediticia de la tabla de contingencia.

Por ejemplo, utilizo la tabla de contingencia anterior para calcular de forma independiente la entropía de nuestra variable objetivo y luego calcular su entropía, teniendo en cuenta información adicional del atributo de calificación crediticia . Entonces puedo calcular cuánta información adicional me dará la calificación crediticia para la variable objetivo de responsabilidad .

Entonces empecemos.



La entropía de nuestra variable objetivo es 1, lo que significa un desorden máximo debido a la distribución uniforme de los elementos entre "Normal" y "Alto" . El siguiente paso es calcular la entropía de la variable objetivo del pasivo , teniendo en cuenta información adicional de la calificación crediticia . Para hacer esto, calculamos la entropía del pasivo para cada valor de calificación crediticia y los sumamos usando el índice de observación promedio ponderado para cada valor. Por qué usamos el promedio ponderado será más claro cuando hablamos de árboles de decisión.



Obtuvimos la entropía de nuestra variable objetivo con el atributo Calificación crediticia. Ahora podemos calcular la ganancia de responsabilidad informativa de la calificación crediticia para comprender cuán informativa es esta característica.



Conocer la calificación crediticia nos ha ayudado a reducir la incertidumbre de nuestra variable objetivo de responsabilidad .. ¿No es una buena señal que debería funcionar? Danos información sobre la variable objetivo? Bueno, por esta misma razón, los árboles de decisión usan entropía y ganancia informativa. ¡Determinan según qué criterio dividir los nodos en ramas, para acercarse a la variable objetivo con cada partición subsiguiente, y también para comprender cuándo debe completarse la construcción del árbol! (además de hiperparámetros como la profundidad máxima, por supuesto). Veamos cómo funciona todo esto en el siguiente ejemplo usando árboles de decisión.

Ejemplo: Árbol de decisión

Veamos un ejemplo de cómo construir un árbol de decisión para predecir si el crédito de una persona se cancelará o no. La población será de 30 copias. 16 pertenecerán a la clase de amortización , y los otros 14 serán"No amortización" . Tendremos dos signos, a saber, "Balance" , que puede tomar dos valores: "<50K" o "> 50K", y "Residencia" , que toma tres valores: "PROPIO" , "ALQUILER" u "OTRO" . Demostraré cómo el algoritmo del árbol de decisión decidirá qué atributo romper primero y qué atributo será más informativo, es decir, elimina mejor la incertidumbre de la variable objetivo utilizando el concepto de entropía y ganancia de información.

Síntoma 1: Equilibrio



Aquí los círculos pertenecen a la clase de "cancelación" , y las estrellas corresponden a la clase de "no cancelación" . Particionar una raíz principal por atributoEl equilibrio nos dará 2 nodos herederos. En el nodo izquierdo habrá 13 observaciones, donde 12/13 (probabilidad 0,92) de observaciones de la clase de "cancelación" y solo 1/13 (probabilidad de 0,08) de observaciones de la clase "no cancelación" . En el nodo derecho habrá 17 de 30 observaciones, donde 13/17 (probabilidad 0.76) de observaciones de la clase de "cancelación" y 4/17 (probabilidad 0.24) de observaciones de la clase de "no cancelación" .

Calculemos la entropía de la raíz y veamos cuánto puede reducir la incertidumbre el árbol utilizando una partición basada en Balance .



Una división basada en Balance dará una ganancia informativa de 0.37. Vamos a contar lo mismo para el signo de residenciay compara los resultados.

Síntoma 2: Residencia La



división de un árbol basado en Residencia le dará 3 nodos herederos. El nodo descendente izquierdo recibirá 8 observaciones, donde 7/8 (probabilidad 0,88) de observaciones de la clase de cancelación y solo 1/8 (probabilidad 0,12) de observaciones de la clase de no cancelación . El nodo sucesor promedio recibirá 10 observaciones, donde 4/10 (probabilidad 0.4) de observaciones de la clase de cancelación y 6/10 (probabilidad 0.6) de observaciones de la clase de no cancelación . El heredero correcto recibirá 12 observaciones, donde 5/12 (probabilidad 0,42) de observaciones de la clase de cancelación y 7/12 (probabilidad 0,58) de observaciones de la clase de no cancelación. Ya conocemos la entropía del nodo padre, por lo que simplemente calculamos la entropía después de la partición para comprender la ganancia informativa del atributo Residencia .



¡La ganancia informativa del atributo Balance es casi 3 veces más que la de la Residencia ! Si observa nuevamente los gráficos, verá que la partición de acuerdo con Balance dará nodos descendientes más limpios que de acuerdo con Residence . Sin embargo, el nodo más a la izquierda en Residencia también está bastante limpio, pero es aquí donde entra en juego el promedio ponderado. A pesar de que el nodo está limpio, tiene el menor número de observaciones, y su resultado se pierde en el recálculo general y el cálculo de la entropía total según la Residencia. Esto es importante porque estamos buscando el contenido informativo general del atributo y no queremos que el resultado final sea distorsionado por el raro valor del atributo.

El atributo Balance en sí mismo proporciona más información sobre la variable objetivo que Residencia . Por lo tanto, la entropía de nuestra variable objetivo se reduce. El algoritmo del árbol de decisión utiliza este resultado para realizar la primera división de acuerdo con Balancepara luego decidir sobre qué base romper los siguientes nodos. En el mundo real, cuando hay más de dos características, el primer desglose ocurre de acuerdo con la característica más informativa, y luego, con cada ruptura posterior, la ganancia de información se contará para cada característica adicional, ya que no será lo mismo que la ganancia de información de cada característica individualmente. La entropía y la ganancia informativa deben calcularse después de que se hayan producido una o varias particiones, lo que afectará el resultado final. ¡El árbol de decisión repetirá este proceso a medida que crezca en profundidad, hasta que alcance una cierta profundidad o algún tipo de división conduzca a una mayor ganancia de información sobre un cierto umbral, que también se puede especificar como un hiperparámetro!

¡Eso es todo! Ahora ya sabe qué entropía, ganancia de información y cómo se calculan. Ahora comprende cómo el árbol de decisión, por sí mismo o como parte de un conjunto, toma decisiones sobre el mejor orden de partición por atributos y decide cuándo detenerse al aprender los datos disponibles. Bueno, si tiene que explicarle a alguien cómo funcionan los árboles de decisión, espero que pueda hacer frente adecuadamente a esta tarea.

Espero que hayas aprendido algo útil para ti de este artículo. Si me perdí algo o me expresé de manera incorrecta, escríbeme al respecto. ¡Te estaré muy agradecido! Gracias.



Aprende más sobre el curso.



All Articles