Saltar al contenido

Constructor de Árboles de Decisión · Cielos del Limarí

¿Sale el tour astronómico esta noche? ID3 y C4.5 paso a paso con las noches de Valentina.

1. Datos

Edita cualquier celda (también los encabezados). La columna sombreada es la clase. Al cambiar los datos, el árbol se reinicia.

Columna clase (lo que se quiere predecir)
Atributos que usa el árbol

2. Algoritmo y construcción

Criterio de división
Criterios de parada

Siempre: nodo puro · sin atributos disponibles · sin ganancia.

3. Árbol de decisión

Haz clic (o Tab + Enter) en un nodo para ver sus cálculos y resaltar sus filas en la tabla.
✓ SÍ hoja verde ✗ NO hoja naranja Atributo nodo de decisión Borde punteado = pendiente (paso a paso) [a, b] = conteo por clase · H = entropía

4. Cálculos del nodo seleccionado

Construye el árbol y selecciona un nodo.

5. Reglas de negocio (SI … ENTONCES)

Aún no hay reglas.

6. Predecir una noche nueva

Construye el árbol para poder predecir.

7. Fórmulas y guía

Entropía

H(S) = −Σ pi · log2(pi)

pi = proporción de filas de la clase i. H = 0 si el nodo es puro; H = 1 si hay 50 % / 50 % con dos clases. Ejemplo raíz: [9, 5] → −(9/14)·log₂(9/14) − (5/14)·log₂(5/14) = 0,940.

Ganancia de información (ID3)

Ganancia(S, A) = H(S) − Σv (|Sv| / |S|) · H(Sv)

Es la entropía antes de dividir menos el promedio ponderado de la entropía de las ramas. Se elige el atributo con mayor ganancia.

Razón de ganancia (C4.5)

InfoDiv(S, A) = −Σv (|Sv| / |S|) · log2(|Sv| / |S|)
Razón(S, A) = Ganancia(S, A) / InfoDiv(S, A)

Penaliza atributos con muchos valores, que tienen ganancia alta pero no generalizan. Ojo: con estos 14 datos el id sigue ganando (razón 0,940 / 3,807 = 0,247 contra 0,156 de Cielo). La penalización ayuda, pero no reemplaza el criterio de excluir identificadores.

⚠ Sobreajuste: un atributo con un valor distinto por fila (id, RUT, fecha) deja cada rama con una sola fila: entropía 0 en todas, ganancia máxima… y un árbol que memoriza en vez de aprender. Pruébalo marcando «id» como atributo.

Guía rápida para el estudiante

  1. Revisa los datos. «id» viene excluido: no describe la noche.
  2. Pulsa Ocultar cálculos y luego Paso a paso. Predice qué atributo irá en la raíz.
  3. Muestra los cálculos y compara: ¿acertaste? El mejor aparece con la insignia ★ Mejor.
  4. Divide con el botón de la fila del atributo (puedes elegir uno que no sea el mejor y ver qué pasa).
  5. El siguiente nodo pendiente se selecciona solo. Repite hasta que no queden pendientes, o usa «Completar el resto».
  6. Haz clic en cualquier nodo: la tabla de datos resalta (con ►) las filas que llegan a él.
  7. Lee las reglas SI … ENTONCES y prueba el formulario de predicción.
  8. Cambia a C4.5, limita la profundidad o incluye «id» y compara los árboles.
  9. Importa tu propio CSV (primera fila = encabezados, última columna = clase; separador coma o punto y coma).

Abre la consola del navegador (F12) para ver las pruebas automáticas del algoritmo.