¿Cómo usar un árbol de decisión para juzgar si ir a una cita a ciegas?

Hola a todos, soy Wang Laoshi. En el artículo anterior, presentamos brevemente qué es un árbol de decisión. En este capítulo, veremos cómo construir un árbol de decisión basado en problemas reales y luego tomar decisiones.

1. Factores importantes que afectan la toma de decisiones, la pureza y la entropía de la información

Veamos primero un conjunto de conjuntos de datos:

inserte la descripción de la imagen aquí

¿Cómo construimos un árbol de decisiones para juzgar si ir a una cita a ciegas?

De acuerdo con los pasos para crear un árbol de decisión, primero debemos determinar el nodo raíz del árbol de decisión. Pero entre los muchos factores que influyen, cada factor que influye debe ser diferente, entonces, ¿qué atributo debemos elegir como nodo raíz?

Entonces, primero comprendamos los siguientes dos conceptos importantes: pureza y entropía de la información.

1.1 Pureza

La pureza es el tamaño de la diferencia en nuestro conjunto de datos.Otra forma de explicarlo es hacer que la divergencia de la variable objetivo sea más pequeña. A mayor pureza, menor variabilidad.

Colección 1: Ir a una cita a ciegas 6 veces;

Conjunto 2: 4 veces para ir a una cita a ciegas, 2 veces para no ir a una cita a ciegas;

Colección 3: 3 veces para ir a una cita a ciegas, 3 veces para no ir a una cita a ciegas;

Según el índice de pureza, conjunto 1 > conjunto 2 > conjunto 3. Porque el conjunto 1 tiene la menor divergencia y el conjunto 3 tiene la mayor divergencia.

1.2 Entropía de la información

La entropía de la información es un concepto básico de la teoría de la información. Describir la incertidumbre en la ocurrencia de cada evento posible de una fuente de información. En la década de 1940, Shannon (CE Shannon) tomó prestado el concepto de termodinámica y llamó a la cantidad promedio de información después de que se excluyó la redundancia en la información "entropía de la información". Puede entenderse como la incertidumbre de la información.

Existe incertidumbre en la probabilidad de que ocurran eventos aleatorios discretos. Para medir la incertidumbre de esta información, Shannon, el padre de la informática, introdujo el concepto de entropía de la información y dio la fórmula matemática para calcular la entropía de la información:
inserte la descripción de la imagen aquí

p(i|t) representa la probabilidad de que el nodo t sea de clase i, donde log2 es el logaritmo en base 2. El significado de la fórmula aquí significa: cuanto mayor es la incertidumbre, mayor es la cantidad de información que contiene y mayor es la entropía de la información .

De acuerdo con la fórmula, calculamos la entropía de información del siguiente conjunto

Conjunto 1: La entropía de la información de reunirse 6 veces es -6/6log26/6 = 0;

Conjunto 2: 4 veces para cumplir, 2 veces para no cumplir - (4/6log2 4/6+2/6log2 2/6)=0.918

Conjunto 3: 3 veces para cumplir, 3 veces para no cumplir - (3/6log2 3/6+3/6log2 3/6)=1

Se puede ver a partir de los resultados de los cálculos anteriores que cuanto mayor es la entropía de la información, menor es la pureza . Cuando todas las muestras del conjunto se mezclan uniformemente, la entropía de la información es la más grande y la pureza es la más baja.

Cuando construimos un árbol de decisiones, lo construiremos en base a la pureza. Los algoritmos comúnmente utilizados son la ganancia de información (algoritmo ID3), la tasa de ganancia de información (algoritmo C4.5) y el índice de Gini (algoritmo Car)

2. Algoritmo ID3

2.1 Introducción al algoritmo ID3

El algoritmo ID3 fue propuesto por primera vez por J. Ross Quinlan en la Universidad de Sydney en 1975 como un algoritmo de predicción de clasificación. El núcleo del algoritmo es la "entropía de la información". El algoritmo ID3 calcula la ganancia de información de cada atributo, y considera que el atributo con alta ganancia de información es un buen atributo, cada división selecciona el atributo con mayor ganancia de información como estándar de división, y repite este proceso hasta un árbol de decisión que puede Se generan muestras de entrenamiento para clasificar perfectamente.

El algoritmo ID3 calcula la ganancia de información , que en sí misma es un algoritmo codicioso.La ganancia de información significa que la división puede generar un aumento en la pureza y una disminución en la entropía de la información. Su fórmula de cálculo es la entropía de información del nodo principal menos la entropía de información de todos los nodos secundarios. En el proceso de cálculo, calcularemos la entropía de información normalizada de cada nodo hijo, es decir, calcularemos la entropía de información de estos nodos hijos según la probabilidad de que cada nodo hijo aparezca en el nodo padre. Entonces, la fórmula para la ganancia de información se puede expresar como

inserte la descripción de la imagen aquí

En la fórmula, D es el nodo principal, Di es el nodo secundario y se selecciona a en Ganancia (D,a) como el atributo del nodo D.

2.2 Usando el algoritmo ID3 para construir un árbol de decisión

Calculamos la ganancia de información de cada atributo de acuerdo con la fórmula de ganancia de información para seleccionar un atributo más adecuado como nodo raíz

7 piezas de datos, según los resultados, 4 piezas no cumplen y 3 piezas cumplen, por lo que la entropía de información del nodo raíz es:

Entropía(D)=-(4/7log2 4/7+3/7log2 3/7)=0.985

Si las condiciones económicas se clasifican como atributos, hay tres subnodos, que son ricos, medios y pobres, los marcamos con D1, D2 y D3, y usamos + y - para representar los resultados de sus reuniones correspondientes. Entonces el método de cálculo de la condición económica como nodo de atributo es el siguiente:

ganancia de información de condición económica

D1 (condiciones económicas = rico) = {1-, 2-, 6+}=Ent(D1)=-(2/3log2 2/3+1/3log2 1/3)=0.918

D2 (Condiciones Económicas=General)={3+,7-}=Ent(D2)=-(1/2log2 1/2+1/2log2 1/2)=1

D3 (condiciones económicas = sin dinero) = {4+, 5-}=Ent(D2)=-(1/2log2 1/2+1/2log2 1/2)=1

Normalización de la entropía de la información 3/7 0,918+2/7 1+2/7*1=0,965

La ganancia de información de las condiciones económicas como nodos de atributos es Ganancia (D, economía) = 0.985-0.965 = 0.020.

De la misma manera, otros atributos se calculan como la ganancia de información del nodo raíz de la siguiente manera:

ganancia de información de altura

D1(altura=altura)={5-}=Ent(D1)=-(1log2 1+1log2 1)=0

D2(altura=promedio)={6+,7–}=Ent(D2)=-(1/2log2 1/2+1/2log2 1/2)=1

D3(altura=baja)={1-,2-,3+,4+}=Ent(D2)=-(1/2log2 1/2+1/2log2 1/2)=1

La entropía de información normalizada es 1/7 0+2/7 1+4/7*1=0.857

La ganancia de información es Ganancia (D, condiciones económicas) = ​​0.985-0.857 = 0.128

ganancia de información de apariencia

D1 (mirar = guapo) = {3+, 4±, 5-, 6-}=Ent(D1)=-(2/4log2 2/4+2/4log2 2/4)=1

D2 (mirar = no guapo)={1-,2-,6+}=Ent(D2)=-(2/3log2 2/3+1/3log2 1/3)=0.918

La entropía de información normalizada es 4/7 1+3/7 0.918=0.965

La ganancia de información es Ganancia (D, apariencia) = 0.985-0.965 = 0.02

La entropía de información normalizada y los datos de ganancia de información de cada atributo como un nodo de atributo se obtienen de la siguiente manera:

Atributos entropía de información normalizada ganancia de información
economía 0.965 0.02
altura 0.857 0.128
mirar 0.965 0.02
adjuntar 0.965 0.02

Por lo tanto, tomar la altura como el nodo raíz tiene la mayor ganancia de información, y el algoritmo ID3 usa el nodo con la mayor ganancia de información como nodo principal para obtener un árbol de decisión de alta pureza. Por lo tanto, tomando la altura como nodo raíz, la forma del árbol de decisión es la siguiente

inserte la descripción de la imagen aquí

Continúe dividiendo hacia abajo, continúe dividiendo hacia abajo con nodos de atributos bajos y calcule la ganancia de información de diferentes atributos

mirar

D1 (mirar = guapo) ={3+, 4+}=Ent(D1)=-(1log2 1 +10log2 0)=0

D2 (aspecto = no guapo)={1-, 2-}=Ent(D2)=-(1log2 1 +10log2 0)=0

La entropía de la información normalizada es 0

La ganancia de información es Ganancia (D, apariencia) = 1-0 = 1

Condiciones económicas

D1 (condiciones económicas = rico) = {1-, 2-}=Ent(D1)=-(1log2 1 +1log2 1)=0

D2 (condiciones económicas = general) ={3+}=Ent(D2)=-(1log2 1 +1log2 1)=0

D3 (condiciones económicas = sin dinero) = {4+} = Ent(D2) = 0

La entropía de la información normalizada es 0

La ganancia de información es Ganancia (D, condiciones económicas) = ​​1-0 = 1

adjuntar

D1 (otras ventajas = si) = {1-, 3+, 4+}=Ent(D1)=-(1/3log2 1/3 +2/3log2 2/3)=0,918

D2 (otras ventajas = ninguna) = {2-}=Ent(D2)=-(1log2 1 +1log2 1)=0

La entropía de información normalizada es 3/4 0.918+1/4 0 = 0.6885

La ganancia de información es Ganancia (D, condiciones económicas) = ​​1-0.689 = 0.3115

Atributos entropía de información normalizada ganancia de información
mirar 0 1
economía 0 1
adjuntar 0.6885 0.3115

Se puede ver que la apariencia y las condiciones económicas pueden obtener la mayor ganancia de información, y puede elegir la apariencia o la economía como el nodo de atributo del siguiente nodo.

inserte la descripción de la imagen aquí

De esta forma, hemos construido un árbol de decisiones, y según las condiciones proporcionadas por la otra parte, podemos usar el árbol de decisiones para decidir si debemos reunirnos o no.

Las reglas del algoritmo de ID3 son relativamente simples y altamente interpretables. También hay defectos, por ejemplo, encontraremos que el algoritmo ID3 tiende a seleccionar atributos con más valores.

Un inconveniente de ID3 es que algunos atributos pueden no tener mucho efecto en la tarea de clasificación, pero aun así pueden seleccionarse como el atributo óptimo. Este tipo de defecto no ocurre siempre, pero existe una cierta probabilidad. ID3 produce clasificaciones de árboles de decisión decentes en la mayoría de los casos. En respuesta a posibles defectos, las generaciones posteriores propusieron un nuevo algoritmo de mejora, es decir, C4.5.

3.C4.5 Algoritmo

3.1.C4.5 idea de algoritmo

1. Uso de la tasa de ganancia de información

Porque ID3 tiende a seleccionar atributos con muchos valores a la hora de calcular. Para evitar este problema, C4.5 usa la tasa de ganancia de información para seleccionar atributos. Tasa de ganancia de información = ganancia de información / entropía de atributos.

2. Utilice la poda pesimista

Cuando ID3 construye un árbol de decisión, es propenso a sobreajustarse. En C4.5, se utiliza la poda pesimista (PEP) después de la construcción del árbol de decisión, lo que puede mejorar la capacidad de generalización del árbol de decisión.

La poda pesimista es una de las técnicas posteriores a la poda. Calcula recursivamente la tasa de error de clasificación de cada nodo interno y compara la tasa de error de clasificación de este nodo antes y después de la poda para decidir si se poda. Este método de poda ya no requiere un conjunto de datos de prueba separado.

3. Discretización de atributos continuos

C4.5 puede tratar con atributos continuos y discretizar atributos continuos. Por ejemplo, el atributo "altura" de una cita a ciegas no se divide según "alto y bajo", sino que se calcula según la altura, por lo que es posible tomar cualquier valor para la altura.

C4.5 selecciona el umbral correspondiente a la partición con mayor ganancia de información.

4. Manejo de valores faltantes

3.2 ¿Cómo maneja el algoritmo C4.5 los valores faltantes?

Veamos el siguiente conjunto de datos: ¿Cómo seleccionar atributos cuando falta el conjunto de datos? Si se ha hecho la división de atributos, pero falta la muestra en este atributo, ¿cómo se debe dividir la muestra?

inserte la descripción de la imagen aquí

Si no se considera la información exacta, la información de altura se puede expresar como = {2-, 3+, 4+, 5-, 6+, 7-}, y la información de entropía del atributo de cálculo

Altura=baja=D1={2-,3+,4+} información de entropía=-(1/3 log2 1/3+2/3 log2/3)=0,918

Altura=general=D2={6+,7-} entropía de información=-(1/2 log2 1/2+1/2 log1/2)=1

Altura=alta=D3={5-} entropía de información=-(1 log2 1)=0

Calcular ganancia de información Ganancia(D, altura)=Ent(D)-0.792=1-0.792=0.208

Atributo entropía=-3/6log3/6 - 1/6log1/6 - 2/6log2/6=1.459

Tasa de ganancia de información Gain_ratio(D′, temperatura)=0.208/1.459=0.1426

El número de muestras de D′ es 6 y el número de muestras de D es 7, por lo que la relación de peso es 6/7, por lo que la relación de peso de la ganancia (D′, temperatura) es 6/7, por lo que: Gain_ratio( D, temperatura)=6/7*0,1426=0,122.

De esta forma, incluso si falta el valor del atributo de temperatura, aún podemos calcular la ganancia de información y seleccionar el atributo.

3.2 Comparación del algoritmo C4.5 y el algoritmo ID3

algoritmo ID3

ventaja:

  • El algoritmo es simple y fácil de entender.

defecto:

  • no puede manejar los valores faltantes
  • Solo puede manejar valores discretos, no valores continuos
  • El uso de la ganancia de información como regla de división tiende a seleccionar características con más valores. Porque cuantos más valores de características, menor será la incertidumbre de la división y mayor será la ganancia de información.
  • propenso al sobreajuste

Algoritmo C4.5

ventaja:

  • Capacidad para manejar valores predeterminados
  • Capacidad para procesar discretamente valores continuos
  • El uso de la relación de ganancia de información puede evitar sesgar la selección de características con más valores. Debido a que la relación de ganancia de información = ganancia de información/entropía de atributo, la entropía de atributo se calcula de acuerdo con el valor del atributo y se compensará cuando se divida
  • En el proceso de construcción del árbol, se podarán las ramas para reducir el sobreajuste
    Desventajas: la construcción de un árbol de decisiones requiere múltiples escaneos y clasificación de los datos, lo cual es ineficiente

Supongo que te gusta

Origin blog.csdn.net/b379685397/article/details/127124263
Recomendado
Clasificación