Skip to the content.

Árboles de Decisión (Decision Trees)

Los árboles de decisión son uno de los métodos de clasificación que utilizan reglas de decisión simples basadas en atributos de entrada para predecir un atributo de clase.

Construcción del Árbol y Ganancia de Información (Information Gain):

Para construir un árbol de decisión, se busca un atributo que proporcione la mayor cantidad de información sobre el atributo de clase.

  1. Manejo de Variables Numéricas: Las variables numéricas (como la edad) no deben dividirse en demasiados valores, por lo que se utiliza la categorización o binning (por ejemplo, “joven” o “senior”). El algoritmo debe decidir los puntos de corte, lo que puede implicar una búsqueda exhaustiva de todos los posibles puntos de división para calcular la ganancia y elegir el mejor.
  2. Entropía: Para medir qué tan informativo es un atributo, se utiliza la entropía. La entropía es una medida de la incertidumbre o aleatoriedad de un valor.
    • Si un valor es muy uniforme (distribución igualitaria, por ejemplo, mitad “sí”, mitad “no”), tiene una entropía alta (máxima).
    • Si solo hay un valor (por ejemplo, todos son “sí”), la entropía es baja (cero).
    • Shannon introdujo este concepto, donde una alta entropía indica que se necesitan muchos bits para codificar la información.
  3. Cálculo de la Ganancia: La ganancia de información se calcula restando la entropía después de la división (según un atributo) de la entropía que se tenía antes. El objetivo es elegir el atributo que maximice esta ganancia. La entropía después de la división se calcula tomando la entropía de cada partición (subconjunto) y ponderándola por la proporción de datos que van a esa partición.
  4. Criterio de Parada: La construcción del árbol continúa de forma recursiva hasta que un nodo se vuelve “puro” (solo contiene una clase, por ejemplo, solo “sí” o solo “no”), momento en el que la entropía es cero y no hay nada más que ganar.

Sobreajuste (Overfitting) y Poda (Pruning):

Ventajas y Desventajas de los Árboles:

Ensembles (Conjuntos de Modelos):

En muchas aplicaciones del mundo real, se utilizan conjuntos (ensembles) de árboles de decisión para mejorar significativamente la precisión y la robustez.


Introducción a la Clasificación Bayesiana

El objetivo de la clasificación es encontrar el valor de clase $Y$ (por ejemplo, rating de crédito) dado un vector de valores de entrada $X$ (edad, estudiante, etc.).

Teorema de Bayes:

El Teorema de Bayes permite calcular la probabilidad posterior $P(H X)$ (la probabilidad de que la hipótesis $H$ sea verdadera dadas las observaciones $X$).
\[P(H|X) = \frac{P(X|H) \cdot P(H)}{P(X)}\]
En clasificación, se quiere asignar una muestra $X$ a la clase $C_j$ con la mayor probabilidad posterior. Dado que $P(X)$ es constante para todas las clases, se puede ignorar en el proceso de maximización, haciendo que la clasificación sea proporcional a $P(X C_j) \cdot P(C_j)$.

El Problema de la Combinación Completa:

Para una clasificación óptima, se requeriría calcular la probabilidad condicional de la combinación exacta de todos los atributos de entrada, $P(X_1, X_2, …, X_n C_j)$. El problema es que en la práctica, especialmente con un gran número de atributos, la mayoría de las combinaciones posibles no existen en el conjunto de datos de entrenamiento (resultando en probabilidades de cero). Almacenar todas estas probabilidades condicionales requeriría un espacio exponencial en el número de atributos, lo cual es inviable.

Clasificación Naive Bayes:

Para solucionar esto, se introduce la Suposición Naive Bayes. Esta suposición sostiene que los atributos son condicionalmente independientes entre sí.

Aunque esta suposición a menudo no se cumple en la realidad (por ejemplo, la edad y los ingresos suelen estar correlacionados), permite simplificar el cálculo: en lugar de calcular la probabilidad de la combinación completa, simplemente se multiplican las probabilidades condicionales de los atributos individuales.

\[P(X|C_j) \approx \prod_{i=1}^{n} P(X_i|C_j)\]

De esta manera, las probabilidades de cada atributo dado cada clase se pueden precalcular fácilmente en el tiempo de entrenamiento y utilizarse para predecir nuevos puntos de datos de manera eficiente.