Una explicación intuitiva del algoritmo AdaBoost
Permítanme ampliar la excelente respuesta de @Randel con una ilustración del siguiente punto
- En AdaBoost, las "deficiencias" se identifican mediante puntos de datos de alta ponderación
Resumen de AdaBoost
Dejemos que $G_m(x) \ m = 1,2,...,M$ sea la secuencia de clasificadores débiles, nuestro objetivo es construir lo siguiente:
$$G(x) = \text{sign} \left( \alpha_1 G_1(x) + \alpha_2 G_2(x) + ... \alpha_M G_M(x)\right) = \text{sign} \left( \sum_{m = 1}^M \alpha_m G_m(x)\right)$$
-
La predicción final es una combinación de las predicciones de todos los clasificadores mediante un voto mayoritario ponderado
-
Los coeficientes $\alpha_m$ son calculados por el algoritmo de refuerzo, y ponderan la contribución de cada $G_m(x)$ . El efecto es dar mayor influencia a los clasificadores más precisos de la secuencia.
-
En cada impulsando paso, los datos se modifican aplicando ponderaciones $w_1, w_2, ..., w_N$ a cada observación de entrenamiento. En el paso $m$ las observaciones que fueron clasificado erróneamente previamente tienen su peso aumentado
-
Tenga en cuenta que en el primer paso $m=1$ los pesos se inicializan uniformemente $w_i = 1 / N$
AdaBoost en un ejemplo de juguete
Consideremos el conjunto de datos de juguete sobre el que he aplicado AdaBoost con la siguiente configuración: Número de iteraciones $M = 10$ clasificador débil = Árbol de decisión de profundidad 1 con 2 nodos de hoja. El límite entre los puntos de datos rojos y azules es claramente no lineal, pero el algoritmo lo hace bastante bien.
Visualización de la secuencia de aprendices débiles y de los pesos de la muestra
Los 6 primeros alumnos débiles $m = 1,2,...,6$ se muestran a continuación. Los puntos de dispersión se escalan según su respectivo peso de la muestra en cada iteración
Primera iteración:
- El límite de decisión es muy sencillo (lineal) ya que se trata de alumnos débiles
- Todos los puntos son del mismo tamaño, como se esperaba
- 6 puntos azules están en la región roja y están mal clasificados
Segunda iteración:
- El límite de decisión lineal ha cambiado
- Los puntos azules anteriormente mal clasificados son ahora más grandes (mayor peso de la muestra) y han influido en el límite de decisión
- 9 puntos azules están ahora mal clasificados
Resultado final después de 10 iteraciones
Todos los clasificadores tienen un límite de decisión lineal, en diferentes posiciones. Los coeficientes resultantes de las 6 primeras iteraciones $\alpha_m$ son :
1.041, 0.875, 0.837, 0.781, 1.04, 0.938...
Como era de esperar, la primera iteración tiene el mayor coeficiente, ya que es la que tiene menos errores de clasificación.
Próximos pasos
Una explicación intuitiva del refuerzo de gradiente - por completar
Fuentes y lecturas adicionales: